On Fri, Jun 26, 2020 at 10:20:04PM +0000, Laurence Tratt wrote:
> This turns out to be a total red herring -- modern FFmpeg deals with the
> MJPEG fine and you *can* get it to work for pointlessly small resolutions on
> OpenBSD. Using this command:
> 
>   ffplay -f v4l2 -input_format mjpeg -video_size 160x90 -i /dev/video0
> 
> one can quickly map which resolutions work and which don't. There is some
> variation from reboot to reboot, but the approximate summary for MJPEG
> resolutions is roughly as follows:
> 
>   160x90       Works
>   160x120      Works
>   176x144      Works
>   320x180      Mostly works
>   320x240      Sometimes works
>   352x288      Sometimes works
>   432x240      Breaks up
>   640x360      Breaks up
>   640x480      Breaks up
>   800x448      Breaks up
>   800x600      Breaks up
>   864x480      Breaks up
>   960x720      Breaks up
>   1024x576     Breaks up
>   1280x720     Breaks up
>   1600x896     Breaks up
>   1920x1080    Breaks up

Same behavior with an old MS LifeCam NX-6000 (which only supports
MJPEG). It works up to 160x120 without problems on USB3 ports and up to
the maximum resolution supported by the camera on USB2 ports (i.e., USB3
disabled in the BIOS).

By the way nice observation; I always thought that this camera does not
work at all with USB3 ...

For the higher resolutions with USB3:

[mjpeg @ 0xffad3cb2000] Found EOI before any SOF, ignoring
[mjpeg @ 0xffad3cb2000] No JPEG data found in image
[mjpeg @ 0xffad3cb2000] overread 8aq=    0KB vq=    0KB sq=    0B f=0/0   
[mjpeg @ 0xffad3cb2000] mjpeg: unsupported coding type (cb)
[mjpeg @ 0xffad3cb2000] unable to decode APP fields: Invalid data found when 
processing input
[mjpeg @ 0xffad3cb2000] Found EOI before any SOF, ignoring=    0B f=0/0

Reply via email to