logo

Live Production Software Forums


Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Options
Go to last post Go to first unread
kgoodyer  
#1 Posted : Thursday, April 11, 2019 3:09:13 AM(UTC)
kgoodyer

Rank: Advanced Member

Groups: Registered
Joined: 6/16/2015(UTC)
Posts: 193
Man
United Kingdom
Location: Milton Keynes, UK

Thanks: 10 times
Was thanked: 53 time(s) in 27 post(s)
I have several of each of the two versions of the BRIO, but one reacts VERY differently from the other. So I decided to 'dig' into things and use ffmpeg to request what formats are available from each version of the camera. You will see from the two outputs below, that the 'BRIO 4K Stream Edition' does not seem to support any of the 4K resolutions. It also seems to have an extra capture pin expressing a low resolution Logitech propriety 'thumbnail' output.

Any ideas, surly Logitech arnt pushing a 4K webcam that can't actualy do 4K?

Keith

Logitech BRIO

[dshow @ 000002a2f6d9a880] DirectShow video device options (from video devices)
[dshow @ 000002a2f6d9a880] Pin "Capture" (alternative pin name "0")
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=340x340 fps=30 max s=340x340 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=340x340 fps=30 max s=340x340 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=424x240 fps=5 max s=424x240 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=424x240 fps=5 max s=424x240 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=440x440 fps=30 max s=440x440 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=440x440 fps=30 max s=440x440 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=480x270 fps=5 max s=480x270 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=480x270 fps=5 max s=480x270 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=800x600 fps=5 max s=800x600 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=800x600 fps=5 max s=800x600 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=848x480 fps=5 max s=848x480 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=848x480 fps=5 max s=848x480 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=960x540 fps=5 max s=960x540 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=960x540 fps=5 max s=960x540 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=1024x576 fps=5 max s=1024x576 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=1024x576 fps=5 max s=1024x576 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=1280x720 fps=5 max s=1280x720 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=1280x720 fps=5 max s=1280x720 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=1600x896 fps=5 max s=1600x896 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=1600x896 fps=5 max s=1600x896 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=1920x1080 fps=5 max s=1920x1080 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=yuyv422 min s=1920x1080 fps=5 max s=1920x1080 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=640x480 fps=5 max s=640x480 fps=120
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=640x480 fps=5 max s=640x480 fps=120
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=424x240 fps=5 max s=424x240 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=424x240 fps=5 max s=424x240 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=480x270 fps=5 max s=480x270 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=480x270 fps=5 max s=480x270 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=800x600 fps=5 max s=800x600 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=800x600 fps=5 max s=800x600 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=848x480 fps=5 max s=848x480 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=848x480 fps=5 max s=848x480 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=960x540 fps=5 max s=960x540 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=960x540 fps=5 max s=960x540 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=1024x576 fps=5 max s=1024x576 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=1024x576 fps=5 max s=1024x576 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=1280x720 fps=5 max s=1280x720 fps=90.0001
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=1280x720 fps=5 max s=1280x720 fps=90.0001
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=1600x896 fps=5 max s=1600x896 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=1600x896 fps=5 max s=1600x896 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=1920x1080 fps=5 max s=1920x1080 fps=60.0002
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=1920x1080 fps=5 max s=1920x1080 fps=60.0002
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=2560x1440 fps=5 max s=2560x1440 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=2560x1440 fps=5 max s=2560x1440 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=3840x2160 fps=5 max s=3840x2160 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=3840x2160 fps=5 max s=3840x2160 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=4096x2160 fps=5 max s=4096x2160 fps=30
[dshow @ 000002a2f6d9a880] vcodec=mjpeg min s=4096x2160 fps=5 max s=4096x2160 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=nv12 min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=nv12 min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=nv12 min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=nv12 min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=nv12 min s=1280x720 fps=5 max s=1280x720 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=nv12 min s=1280x720 fps=5 max s=1280x720 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=nv12 min s=1920x1080 fps=5 max s=1920x1080 fps=30
[dshow @ 000002a2f6d9a880] pixel_format=nv12 min s=1920x1080 fps=5 max s=1920x1080 fps=30


BRIO 4K Stream Edition

[dshow @ 000001b22da0a440] DirectShow video device options (from video devices)
[dshow @ 000001b22da0a440] Pin "Capture" (alternative pin name "0")
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=340x340 fps=30 max s=340x340 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=340x340 fps=30 max s=340x340 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=424x240 fps=5 max s=424x240 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=424x240 fps=5 max s=424x240 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=440x440 fps=30 max s=440x440 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=440x440 fps=30 max s=440x440 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=480x270 fps=5 max s=480x270 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=480x270 fps=5 max s=480x270 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=800x600 fps=5 max s=800x600 fps=24
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=800x600 fps=5 max s=800x600 fps=24
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=848x480 fps=5 max s=848x480 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=848x480 fps=5 max s=848x480 fps=30
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=960x540 fps=5 max s=960x540 fps=15
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=960x540 fps=5 max s=960x540 fps=15
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=1024x576 fps=5 max s=1024x576 fps=15
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=1024x576 fps=5 max s=1024x576 fps=15
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=1280x720 fps=5 max s=1280x720 fps=10
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=1280x720 fps=5 max s=1280x720 fps=10
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=1600x896 fps=5 max s=1600x896 fps=7.5
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=1600x896 fps=5 max s=1600x896 fps=7.5
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=1920x1080 fps=5 max s=1920x1080 fps=5
[dshow @ 000001b22da0a440] pixel_format=yuyv422 min s=1920x1080 fps=5 max s=1920x1080 fps=5
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=424x240 fps=5 max s=424x240 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=424x240 fps=5 max s=424x240 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=480x270 fps=5 max s=480x270 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=480x270 fps=5 max s=480x270 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=800x600 fps=5 max s=800x600 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=800x600 fps=5 max s=800x600 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=848x480 fps=5 max s=848x480 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=848x480 fps=5 max s=848x480 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=960x540 fps=5 max s=960x540 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=960x540 fps=5 max s=960x540 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=1024x576 fps=5 max s=1024x576 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=1024x576 fps=5 max s=1024x576 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=1280x720 fps=5 max s=1280x720 fps=60.0002
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=1280x720 fps=5 max s=1280x720 fps=60.0002
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=1600x896 fps=5 max s=1600x896 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=1600x896 fps=5 max s=1600x896 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=1920x1080 fps=5 max s=1920x1080 fps=30
[dshow @ 000001b22da0a440] vcodec=mjpeg min s=1920x1080 fps=5 max s=1920x1080 fps=30
[dshow @ 000001b22da0a440] Pin "Capture" (alternative pin name "1")
[dshow @ 000001b22da0a440] unknown compression type 0x32 min s=340x340 fps=30 max s=340x340 fps=30
[dshow @ 000001b22da0a440] unknown compression type 0x32 min s=340x340 fps=30 max s=340x340 fps=30


mjgraves  
#2 Posted : Tuesday, April 23, 2019 1:38:46 AM(UTC)
mjgraves

Rank: Advanced Member

Groups: Registered
Joined: 7/1/2015(UTC)
Posts: 1,150
Man
United States
Location: Houston TX

Thanks: 319 times
Was thanked: 263 time(s) in 233 post(s)
Actually, both versions of Brio are identical. Only the marketing/packaging differs. I have this right from the product manager, who I interviewed when the product launched.

As a long-time blogger in the Unified Communications space, I got a sample Brio on release. I noted that it could deliver 4K30 when used with MS Camera, with very low latency.

Brio isn't the issue. Access via DirectShow is the problem. Direct Show is a legacy access mechanism that is long deprecated, but still widely used.

It comes down to this, to get 4K30 over USB3 you must encode carefully. Using DirectShow you must use MJPEG. It works, but there is considerable latency.

If a developer implements device access using the newer Microsoft Media Framework (MMF) Brio can deliver 4k30 using NV 12 encoding with low latency. This is optimal.

I took the finding to Martin who implemented MF access for Brio in vMix 22. The camera is listed as "Logitech Brio MF" to indicate the new access method.

I detailed all of this in a review on my blog: https://www.mgraves.org/...echs-brio-4k-webcam-pro/

Note that the current release of OBS still uses Direct Show. As a result, you can access Brio at 4k30 by manually selecting MJPEG encoding, but there's considerable latency.
mjgraves  
#3 Posted : Tuesday, April 23, 2019 1:50:40 AM(UTC)
mjgraves

Rank: Advanced Member

Groups: Registered
Joined: 7/1/2015(UTC)
Posts: 1,150
Man
United States
Location: Houston TX

Thanks: 319 times
Was thanked: 263 time(s) in 233 post(s)
The same holds true for the Logitech Rally 4K PTZ camera, which I also have in-house. However, it's in some way different. Martin added MF access for Rally, but it doesn't work as expected. The device is not common so there's been little reason to solve that problem.
Users browsing this topic
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.