转自:http://docs.gstreamer.com/display/GstSDK/Playback+tutorial+8%3A+Hardware-accelerated+video+decoding
GStreamer needs to keep track of where these “hardware buffers” are though, so conventional buffers still travel from element to element, but their only content is a hardware buffer ID, or handler. If retrieved with an appsink
, for example, hardware buffers make no sense, since they are meant to be handled only by the plugin that generated them.
To indicate this, these buffers have special Caps, like video/x-vdpau-output
or video/x-fluendo-va
. In this way, the auto-plugging mechanism of GStreamer will not try to feed hardware buffers to conventional elements, as they would not understand the received buffers. Moreover, using these Caps, the auto-plugger is able to automatically build pipelines that use hardware acceleration, since, after a VAAPI decoder, a VAAPI sink is the only element that fits.