Re: [PATCH RESEND v7 1/2] media: uapi: Add H264 low-level decoder API compound controls.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Le vendredi 05 avril 2019 à 17:15 +0200, Maxime Ripard a écrit :
> Hi Nicolas,
> 
> On Thu, Apr 04, 2019 at 11:41:13AM -0400, Nicolas Dufresne wrote:
> > > > > +    * - __u16
> > > > > +      - ``pic_width_in_mbs_minus1``
> > > > > +      -
> > > > > +    * - __u16
> > > > > +      - ``pic_height_in_map_units_minus1``
> > > > > +      -
> > > > 
> > > > We recently had some reflection with Alex that this is redundant with
> > > > the width and height in the OUTPUT format. It may also apply to some
> > > > other fields in these structs. I feel like they should be removed and
> > > > passed via corresponding generic V4L2 properties - format, selection,
> > > > etc.
> > > > 
> > > > The same problem is also present in the MPEG2 controls. In fact, there
> > > > was a patch already which used some fields from the controls to
> > > > calculate the destination buffer strides, rather than bytesperline in
> > > > the format.
> > > > 
> > > > Since we're in staging, it could be done with a follow-up patch, though.
> > > 
> > > Just my two cents. I played with some codecs a while back. IIRC some
> > > specify a "codec" size in addition to the actual picture size, like
> > > when the encoder does padding to fit the requirements of the codec
> > > (spec). Is this needed anywhere?
> > 
> > With state-less encoders, the headers, which contains the crop
> > information is created by userspace and for state less decoder, the
> > headers that contains this information is parsed by userspace. So I
> > believe that in theory, the accelerator does not strictly need to be
> > aware of the cropped dimensions.
> > 
> > Another thing, is that there is not guarantied matches between e.g.
> > depth of the chrome/luma and the final image buffers. Some hardware may
> > have bandwidth limitation or internal converter and could possibly
> > decode 10bit data into 8bit buffers.
> > 
> > A third reason why I would not try and encode this header information
> > is that there can be multiple PPS/SPS at the same time, and I think
> > it's confusing if the relevant information to differentiate them is
> > removed.
> 
> Sorry if that sounds a bit dumb, but it's not really clear to me if
> you're arguing for the removal of the data as Tomasz suggests, or if
> you want to keep them.
> 
> The first paragrah seems to advocate for the former, but the two
> others for the latter.

I think the data should stay. As I said, there can be multiple SPS/PPS,
while there is only one format. That being said, how does SPS/PPS
activation works ? How do you tell the driver about all the SPS/PPS and
which one is being activated ?

> 
> Thanks!
> Maxime
> 
> --
> Maxime Ripard, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com

Attachment: signature.asc
Description: This is a digitally signed message part


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux