[FFmpeg-devel] [H264] How to access the DPB?
Sat Jan 31 17:13:14 CET 2009
Gwenol? Beauchesne wrote:
> How one does access the decoded picture buffer?
> VDPAU uses an union of H264Context::short_ref and long_ref.
> Likewise for VA API but in reverse order to preserve this
> the oldest reference picture at the lowest array index (temporal
> order). Though this strategy improved the visual experience for
> certain streams (NeroAVC improved, not fully fixed), it still fails
> for others ("300" movie trailer we have locally). Most of other
> streams work though (with ReferenceFrames filled in either
> The VA API spec only mentions:
> VAPictureH264 ReferenceFrames; /* in DPB */
> and, in my experience, it seems the order of the elements in that
> array has an importance for VA API, which VDPAU doesn't care much
Yes, VDPAU does not care about the order of the entries in the
referenceFrames array. Instead, it uses the frame_idx field (and maybe
is_long_term in conjunction) as a "sort" key internally, when mapping the
referenceFrames data into the data structures sent to the HW, and/or
for internal management.
More information about the ffmpeg-devel