Re: [PATCH] [media] v4l2: Add AV1, AVS and AVS2 format

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

 



Le vendredi 26 août 2022 à 12:15 +0300, Laurent Pinchart a écrit :
> Hello Shi,
> 
> Thank you for the patch.
> 
> On Fri, Aug 26, 2022 at 11:00:03AM +0800, Shi Hao wrote:
> > From: "hao.shi" <hao.shi@xxxxxxxxxxx>
> > 
> > Add AV1, AVS and AVS2 compressed pixel formats. They are
> > the more common formats.
> > 
> > Signed-off-by: Shi Hao <hao.shi@xxxxxxxxxxx>
> > ---
> >  drivers/media/v4l2-core/v4l2-ioctl.c | 3 +++
> >  include/uapi/linux/videodev2.h       | 3 +++
> 
> The patch also needs to document the formats, in
> Documentation/userspace-api/media/v4l/.
> 
> >  2 files changed, 6 insertions(+)
> > 
> > diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c
> > index c314025d977e..7b102c2f59b1 100644
> > --- a/drivers/media/v4l2-core/v4l2-ioctl.c
> > +++ b/drivers/media/v4l2-core/v4l2-ioctl.c
> > @@ -1497,6 +1497,9 @@ static void v4l_fill_fmtdesc(struct v4l2_fmtdesc *fmt)
> >  		case V4L2_PIX_FMT_MT21C:	descr = "Mediatek Compressed Format"; break;
> >  		case V4L2_PIX_FMT_QC08C:	descr = "QCOM Compressed 8-bit Format"; break;
> >  		case V4L2_PIX_FMT_QC10C:	descr = "QCOM Compressed 10-bit Format"; break;
> > +		case V4L2_PIX_FMT_AV1:		descr = "AV1"; break;

A recommendation while adding proper spec/doc. AV1 have multiple representation,
the exact expected representation should be specified in the doc. This will
avoid similar issues we had with H.264 (Annex B. vs AVCc formats).

> > +		case V4L2_PIX_FMT_AVS:		descr = "AVS"; break;
> > +		case V4L2_PIX_FMT_AVS2:		descr = "AVS2"; break;

Same things should be checked for these two, they aren't very common outside of
China, at least I didn't had a chance to play with these so far.

cheers,
Nicolas

> >  		default:
> >  			if (fmt->description[0])
> >  				return;
> > diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h
> > index 01e630f2ec78..fa8ec0ddde3d 100644
> > --- a/include/uapi/linux/videodev2.h
> > +++ b/include/uapi/linux/videodev2.h
> > @@ -738,6 +738,9 @@ struct v4l2_pix_format {
> >  #define V4L2_PIX_FMT_FWHT_STATELESS     v4l2_fourcc('S', 'F', 'W', 'H') /* Stateless FWHT (vicodec) */
> >  #define V4L2_PIX_FMT_H264_SLICE v4l2_fourcc('S', '2', '6', '4') /* H264 parsed slices */
> >  #define V4L2_PIX_FMT_HEVC_SLICE v4l2_fourcc('S', '2', '6', '5') /* HEVC parsed slices */
> > +#define V4L2_PIX_FMT_AV1      v4l2_fourcc('A', 'V', '1', '0') /* AV1 */
> > +#define V4L2_PIX_FMT_AVS      v4l2_fourcc('A', 'V', 'S', '0') /* AVS */
> > +#define V4L2_PIX_FMT_AVS2     v4l2_fourcc('A', 'V', 'S', '2') /* AVS2 */
> >  
> >  /*  Vendor-specific formats   */
> >  #define V4L2_PIX_FMT_CPIA1    v4l2_fourcc('C', 'P', 'I', 'A') /* cpia1 YUV */
> > 
> > base-commit: 568035b01cfb107af8d2e4bd2fb9aea22cf5b868
> 





[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