25.01.2022 23:37, Nicolas Dufresne пишет: > Le dimanche 16 janvier 2022 à 21:55 +0300, Dmitry Osipenko a écrit : >> Document that frame type flags must be set for the coded buffer. >> Decoders, like NVIDIA Tegra h264 decoder for example, won't work >> properly without these flags. >> >> Signed-off-by: Dmitry Osipenko <digetx@xxxxxxxxx> >> --- >> .../userspace-api/media/v4l/dev-stateless-decoder.rst | 3 +++ >> 1 file changed, 3 insertions(+) >> >> diff --git a/Documentation/userspace-api/media/v4l/dev-stateless-decoder.rst b/Documentation/userspace-api/media/v4l/dev-stateless-decoder.rst >> index 4a26646eeec5..845f4481d34f 100644 >> --- a/Documentation/userspace-api/media/v4l/dev-stateless-decoder.rst >> +++ b/Documentation/userspace-api/media/v4l/dev-stateless-decoder.rst >> @@ -271,6 +271,9 @@ A typical frame would thus be decoded using the following sequence: >> we are not sure that the current decode request is the last one needed >> to produce a fully decoded frame, then >> ``V4L2_BUF_FLAG_M2M_HOLD_CAPTURE_BUF`` must also be set. >> + ``V4L2_BUF_FLAG_KEYFRAME``, ``V4L2_BUF_FLAG_PFRAME`` and >> + ``V4L2_BUF_FLAG_BFRAME`` must be set if relevant to the coded >> + format. > > I think I would rather keep this in the CODEC specific APIs (BFrame being an > MPEG specific concept). If I knew about this before we made the API final, I > would have added the slice_type bitstream parameter in the > v4l2_h264_decode_params structure. But as the types are rather limited, I would > preserve our "reservered" space and make that part of the > V4L2_H264_DECODE_PARAM_FLAGS_{} instead. Do you also need that for HEVC ? (do > you have HEVC on that generation of tegra ?) That generation of Tegra doesn't support HEVC. I'll try to move frame type to v4l2_h264_decode_params, thank you.