Le lundi 07 février 2022 à 17:19 +0300, Dmitry Osipenko a écrit : > Add new V4L2_H264_DECODE_PARAM_FLAG_P/BFRAME flags that are needed by > NVIDIA Tegra video decoder. Userspace will have to set these flags in > accordance to the type of a decoded frame. > > Signed-off-by: Dmitry Osipenko <digetx@xxxxxxxxx> > --- Can you share here (out of commit) a userland implementation that was used to demonstrate the new API ? It does not matter which project (GStreamer, FFMPEG, Chromium, your_test_progtram). Should be fairly straightforward. This is just to be transparent. > .../userspace-api/media/v4l/ext-ctrls-codec-stateless.rst | 6 ++++++ > include/uapi/linux/v4l2-controls.h | 2 ++ > 2 files changed, 8 insertions(+) > > diff --git a/Documentation/userspace-api/media/v4l/ext-ctrls-codec-stateless.rst b/Documentation/userspace-api/media/v4l/ext-ctrls-codec-stateless.rst > index cc080c4257d0..f87584ad90ba 100644 > --- a/Documentation/userspace-api/media/v4l/ext-ctrls-codec-stateless.rst > +++ b/Documentation/userspace-api/media/v4l/ext-ctrls-codec-stateless.rst > @@ -616,6 +616,12 @@ Stateless Codec Control ID > * - ``V4L2_H264_DECODE_PARAM_FLAG_BOTTOM_FIELD`` > - 0x00000004 > - > + * - ``V4L2_H264_DECODE_PARAM_FLAG_PFRAME`` > + - 0x00000008 > + - > + * - ``V4L2_H264_DECODE_PARAM_FLAG_BFRAME`` > + - 0x00000010 > + - > > .. raw:: latex > > diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h > index c8e0f84d204d..e3d48d571062 100644 > --- a/include/uapi/linux/v4l2-controls.h > +++ b/include/uapi/linux/v4l2-controls.h > @@ -1563,6 +1563,8 @@ struct v4l2_h264_dpb_entry { > #define V4L2_H264_DECODE_PARAM_FLAG_IDR_PIC 0x01 > #define V4L2_H264_DECODE_PARAM_FLAG_FIELD_PIC 0x02 > #define V4L2_H264_DECODE_PARAM_FLAG_BOTTOM_FIELD 0x04 > +#define V4L2_H264_DECODE_PARAM_FLAG_PFRAME 0x08 > +#define V4L2_H264_DECODE_PARAM_FLAG_BFRAME 0x10 > > #define V4L2_CID_STATELESS_H264_DECODE_PARAMS (V4L2_CID_CODEC_STATELESS_BASE + 7) > /** Please update the doc too, see: Documentation/userspace-api/media/v4l/ext-ctrls-codec-stateless.rst: