lkml.org 
[lkml]   [2020]   [Jun]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [RFC PATCH] uvcvideo: Add mapping for HEVC payloads
    Hi Dmitry,

    Thank you for the patch.

    On Fri, May 29, 2020 at 11:05:47AM +1000, Dmitry Buzdyk wrote:
    > Add HEVC GUID and assotiate with HEVC pixel format so that frame
    > based format descriptors recognized by the UVC video driver.

    The patch itself looks OK to me, but could you share a bit more
    information about which device(s) implement this ? Are they UVC 1.1
    devices ? Could you share their full USB descriptors (retrieved with
    'lsusb -v', running as root if possible) ?

    Is there anything else needed to get HEVC capture working, such as
    extension unit controls, or is this patch enough ? What userspace
    software do you use to capture and decode HEVC (or capture it to disk) ?

    > Signed-off-by: Dmitry Buzdyk <dima.buzdyk@gmail.com>
    > ---
    > drivers/media/usb/uvc/uvc_driver.c | 5 +++++
    > drivers/media/usb/uvc/uvcvideo.h | 4 ++++
    > 2 files changed, 9 insertions(+)
    >
    > diff --git a/drivers/media/usb/uvc/uvc_driver.c b/drivers/media/usb/uvc/uvc_driver.c
    > index 431d86e1c94b..825ee3601661 100644
    > --- a/drivers/media/usb/uvc/uvc_driver.c
    > +++ b/drivers/media/usb/uvc/uvc_driver.c
    > @@ -214,6 +214,11 @@ static struct uvc_format_desc uvc_fmts[] = {
    > .guid = UVC_GUID_FORMAT_CNF4,
    > .fcc = V4L2_PIX_FMT_CNF4,
    > },
    > + {
    > + .name = "HEVC",
    > + .guid = UVC_GUID_FORMAT_HEVC,
    > + .fcc = V4L2_PIX_FMT_HEVC,
    > + },
    > };
    >
    > /* ------------------------------------------------------------------------
    > diff --git a/drivers/media/usb/uvc/uvcvideo.h b/drivers/media/usb/uvc/uvcvideo.h
    > index 6ab972c643e3..c7f043121b41 100644
    > --- a/drivers/media/usb/uvc/uvcvideo.h
    > +++ b/drivers/media/usb/uvc/uvcvideo.h
    > @@ -165,6 +165,10 @@
    > {0x32, 0x00, 0x00, 0x00, 0x02, 0x00, 0x10, 0x00, \
    > 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71}
    >
    > +#define UVC_GUID_FORMAT_HEVC \
    > + { 'H', 'E', 'V', 'C', 0x00, 0x00, 0x10, 0x00, \
    > + 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71}
    > +
    >
    > /* ------------------------------------------------------------------------
    > * Driver specific constants.

    --
    Regards,

    Laurent Pinchart

    \
     
     \ /
      Last update: 2020-06-07 03:08    [W:2.947 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site