CESNET / UltraGrid

UltraGrid low-latency audio and video network transmission system
http://www.ultragrid.cz
Other
489 stars 55 forks source link

Apple Mac Silicone on 1.8 #276

Closed TheSashmo closed 1 year ago

TheSashmo commented 1 year ago

Enumeration of capture sources changes almost every time it runs. One time it gives this: *0: Studio Display Camera 0: 420v 640x480 (max frame rate 30 FPS) 1: 420v 1280x720 (max frame rate 30 FPS) 2: 420v 1664x1248 (max frame rate 30 FPS) 3: 420v 1920x1080 (max frame rate 30 FPS) 1: Studio Display Camera 0: 420v 640x480 (max frame rate 30 FPS) 1: 420v 1280x720 (max frame rate 30 FPS) 2: 420v 1664x1248 (max frame rate 30 FPS) 3: 420v 1920x1080 (max frame rate 30 FPS) 2: Blackmagic Design 0: 420v 1920x1080 (max frame rate 59.9999 FPS) 3: NDI Video 0: 2vuy 1280x720 (max frame rate 30 FPS) 4: Studio Display Camera 0: 420v 640x480 (max frame rate 30 FPS) 1: 420v 1280x720 (max frame rate 30 FPS) 2: 420v 1664x1248 (max frame rate 30 FPS) 3: 420v 1920x1080 (max frame rate 30 FPS) 5: OBS Virtual Camera 0: 2vuy 1280x720 (max frame rate 30 FPS)

Then when I run it again I get this:

*0: NDI Video 0: 2vuy 1280x720 (max frame rate 30 FPS) 1: Studio Display Camera 0: 420v 640x480 (max frame rate 30 FPS) 1: 420v 1280x720 (max frame rate 30 FPS) 2: 420v 1664x1248 (max frame rate 30 FPS) 3: 420v 1920x1080 (max frame rate 30 FPS) 2: Studio Display Camera 0: 420v 640x480 (max frame rate 30 FPS) 1: 420v 1280x720 (max frame rate 30 FPS) 2: 420v 1664x1248 (max frame rate 30 FPS) 3: 420v 1920x1080 (max frame rate 30 FPS) 3: Blackmagic Design 0: 420v 1920x1080 (max frame rate 59.9999 FPS) 4: Studio Display Camera 0: 420v 640x480 (max frame rate 30 FPS) 1: 420v 1280x720 (max frame rate 30 FPS) 2: 420v 1664x1248 (max frame rate 30 FPS) 3: 420v 1920x1080 (max frame rate 30 FPS) 5: OBS Virtual Camera 0: 2vuy 1280x720 (max frame rate 30 FPS)

It seems that each source that I select, the next time around gets detected as the first source next pass.

Update, yes I can confirm this is the case. After selecting mode 2 on one attempt and it starts working, then on the next time I run "/Applications/uv-qt.app/Contents/MacOS/uv -t avfoundation:help" it gives device 0 as the last device I successfully ran. Which means each time I run it, the order changes and can't re-run....

Sorry I can't do a regression test on this setup so I don't know how it was on 1.7.

MartinPulec commented 1 year ago

Confirmed. The ordering, however, is provided by the system, but I've modified it to be sorted according to device UID, which is stable. The fix will be available immediately in continuous build and it will reach v1.8.1 when released as well.

Also, it is now possible to use either uid or device name directly (see :help), which would be useful to prevent renumbering when some device is connected or disconnected.