Hi, On Mon, 2019-06-10 at 10:52 +0200, Boris Brezillon wrote: > Looks like some stateless decoders expect slices to be prefixed with > ANNEX B start codes (they most likely do some kind of bitstream parsing > and/or need that to delimit slices when doing per frame decoding). > Since skipping those start codes for dummy stateless decoders (those > expecting all params to be passed through controls) should be pretty > easy, let's mandate that all slices be prepended with ANNEX B start > codes. > > If we ever need to support AVC headers, we can add a new menu control > to select the type of NAL header to use. > > Signed-off-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxx> Looks good to me: Reviewed-by: Paul Kocialkowski <paul.kocialkowski@xxxxxxxxxxx> Cheers, Paul > --- > Changes in v2: > * None > > Note: we might want to add a nal_header_size field to allow drivers to > quickly find where the actual payload start. That'd be particularly > useful here since ANNEX B start codes can be of arbitrary size > (2+(0x00 bytes) + 1(0x01 byte)). The other option would be to enforce > the number of leading 0x00 bytes (a minimum of 2 is required). > --- > Documentation/media/uapi/v4l/ext-ctrls-codec.rst | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/Documentation/media/uapi/v4l/ext-ctrls-codec.rst b/Documentation/media/uapi/v4l/ext-ctrls-codec.rst > index d6ea2ffd65c5..82547d5de250 100644 > --- a/Documentation/media/uapi/v4l/ext-ctrls-codec.rst > +++ b/Documentation/media/uapi/v4l/ext-ctrls-codec.rst > @@ -1726,6 +1726,7 @@ enum v4l2_mpeg_video_h264_hierarchical_coding_type - > :ref:`h264`, section 7.4.3 "Slice Header Semantics". For further > documentation, refer to the above specification, unless there is > an explicit comment stating otherwise. > + All slices should be prepended with an ANNEX B start code. > > .. note:: > -- Paul Kocialkowski, Bootlin Embedded Linux and kernel engineering https://bootlin.com