decoder: introduce lists of units to decode before/after frame.
authorGwenole Beauchesne <gwenole.beauchesne@intel.com>
Thu, 27 Dec 2012 17:52:43 +0000 (18:52 +0100)
committerGwenole Beauchesne <gwenole.beauchesne@intel.com>
Thu, 3 Jan 2013 08:08:19 +0000 (09:08 +0100)
commit63a7e424847d55a0531f106777c528385ed8131e
treea847a77faa55decd2b126d259d367e0586222c67
parentc727e5b6d6944851d1dd19b3b45eabefb039d899
decoder: introduce lists of units to decode before/after frame.

Theory of operations: all units marked as "slice" are moved to the "units"
list. Since this list only contains slice data units, the prev_slice pointer
was removed. Besides, we now maintain two extra lists of units to be decoded
before or after slice data units.

In particular, all units in the "pre_units" list will be decoded before
GstVaapiDecoder::start_frame() is called and units in the "post_units"
list will be decoded after GstVaapiDecoder::end_frame() is called.
gst-libs/gst/vaapi/gstvaapidecoder.c
gst-libs/gst/vaapi/gstvaapidecoder_frame.c
gst-libs/gst/vaapi/gstvaapidecoder_frame.h
gst-libs/gst/vaapi/gstvaapidecoder_unit.h