lkml.org 
[lkml]   [2021]   [Jun]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] media: uvc: limit max bandwidth for HDMI capture
    Em Mon, 21 Jun 2021 21:22:26 +0300
    Laurent Pinchart <laurent.pinchart@ideasonboard.com> escreveu:

    > Hi Mauro,
    >
    > Thank you for the patch.

    Thanks for reviewing it!

    >
    > On Mon, Feb 01, 2021 at 08:08:59PM +0100, Mauro Carvalho Chehab wrote:
    > > This device:
    > > 534d:2109 MacroSilicon
    > >
    > > Announces that it supports several frame intervals for
    > > their resolutions for MJPEG compression:
    > >
    > > VideoStreaming Interface Descriptor:
    > > bLength 46
    > > bDescriptorType 36
    > > bDescriptorSubtype 7 (FRAME_MJPEG)
    > > bFrameIndex 1
    > > bmCapabilities 0x00
    > > Still image unsupported
    > > wWidth 1920
    > > wHeight 1080
    > > dwMinBitRate 768000
    > > dwMaxBitRate 196608000
    > > dwMaxVideoFrameBufferSize 4147200
    > > dwDefaultFrameInterval 166666
    > > bFrameIntervalType 5
    > > dwFrameInterval( 0) 166666
    > > dwFrameInterval( 1) 333333
    > > dwFrameInterval( 2) 400000
    > > dwFrameInterval( 3) 500000
    > > dwFrameInterval( 4) 1000000
    > >
    > > However, the highest frame interval (166666), which means 60 fps
    > > is not supported. For such resolution, the maximum interval
    > > is, instead 333333 (30 fps).
    >
    > What happens if you try to select it ?

    Basically, URBs get lost: they cause apps like qv4l2 to crash
    sometimes, with:

    v4l-convert: libjpeg error: Corrupt JPEG data: premature end of data segment

    The image keeps blinking, and part of the image is replaced by
    white noise.

    Clearly, it tries to send more data than the maximum available bandwidth
    on this chipset.


    Sent a v2 addressing the issues you pointed.


    Thanks,
    Mauro

    \
     
     \ /
      Last update: 2021-06-22 10:33    [W:5.546 / U:0.520 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site