Re: [RFC] media: uapi: Add VP8 low-level decoder API compound controls.

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

 



Le lundi 25 février 2019 à 14:34 +0900, Tomasz Figa a écrit :
> On Fri, Feb 15, 2019 at 9:06 AM Ezequiel Garcia <ezequiel@xxxxxxxxxxxxx> wrote:
> > On Wed, 2019-02-13 at 21:35 -0500, Nicolas Dufresne wrote:
> > > Le mer. 13 févr. 2019 à 16:23, Ezequiel Garcia
> > > <ezequiel@xxxxxxxxxxxxx> a écrit :
> > > > Hi,
> > > > 
> > > > On Wed, 2019-02-13 at 18:15 -0300, Ezequiel Garcia wrote:
> [snip]
> > > > > +     __u8 version;
> > > > > +
> > > > > +     /* Populated also if not a key frame */
> > > > > +     __u16 width;
> > > > > +     __u16 height;
> > > > > +     __u8 horizontal_scale;
> > > > > +     __u8 vertical_scale;
> > > > > +
> > > > > +     struct v4l2_vp8_segment_header segment_header;
> > > > > +     struct v4l2_vp8_loopfilter_header lf_header;
> > > > > +     struct v4l2_vp8_quantization_header quant_header;
> > > > > +     struct v4l2_vp8_entropy_header entropy_header;
> > > > > +
> > > > > +     __u8 sign_bias_golden;
> > > > > +     __u8 sign_bias_alternate;
> > > > > +
> > > > > +     __u8 prob_skip_false;
> > > > > +     __u8 prob_intra;
> > > > > +     __u8 prob_last;
> > > > > +     __u8 prob_gf;
> > > > > +
> > > > > +     __u32 first_part_size;
> > > > > +     __u32 first_part_offset; // this needed? it's always 3 + 7 * s->keyframe;
> > > > 
> > > > As the comment says, it seems the first partition offset is always
> > > > 3 + 7 * s->keyframe. Or am I wrong?
> > > 
> > > I can't find it in VA API or GStreamer parsers. Ideally we need to
> > > look in the spec, if it's calculated it does not belong here.
> > > 
> > 
> > Looking into the spec, I don't think it's part of it.
> > 
> > > https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/blob/master/gst-libs/gst/codecparsers/gstvp8parser.h#L255
> > > https://github.com/intel/libva/blob/master/va/va_dec_vp8.h#L72
> > > 
> > > Notice that VA splits this in two, the some part in the picture
> > > parameter, and some parts as SliceParameters. I believe it's to avoid
> > > having conditional field base on if key_frame == 0.
> > > 
> > 
> > That might make sense. Something to look into.
> 
> Yeah, sounds reasonable, although VAAPI naming is a bit off, since VP8
> doesn't have a notion of slices...

Agreed, VAAPI uses slices to fit their abstraction. VP8 is just a
special case where you only have one slice per frame. It's not needed
in this uAPI for the kernel.

> 
> Best regards,
> Tomasz

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