Skip to content

vadecoder: Remove GstVaDecodePicture struct

Seungha Yang requested to merge seungha.yang/gstreamer:vadec-cleanup into main
Some duplicated codes are removed by using GstCodecPicture
struct, and GstCodecPicture will hold GstBuffer instead of
GstVaDecodePicture.

* Removing GstVaDecodePicture sturct usage:
Decoder does not need to allocate GArray per picture. Allocates
the GArray only once when decoder object is initialized.

* Unify decoding surface management:
vah265dec held surface GstBuffer in GstCodecPicture's user data,
while it's stored at GstVideoCodecFrame::output_buffer in the other
decode cases. In this patch, it's unified so that only GstCodecPicture
can hold the surface buffer.

* Change return types of some helper functions to GstFlowReturn

Merge request reports