Questions for OBS about problems with the OBS and the Elgato 4K X on Apple Silicon M1 Max and M1 SoCs

David Harry

New Member
Hi. Could someone from OBS please help me with these questions regarding problems I'm having with OBS and the Elgato 4K X, specifically on Apple Silicon with the M1 Max SoC. However, I also have the same issues on M1 as well.

I appreciate that some of these questions may be for Elgato and I will be asking them the same questions. However, I would greatly appreciate any help from OBS with regard any answers to any of these questions that are specific to the use of OBS.

Question 1:

Is it the UVC device that signals the host as to what standards it's able to stream to the host. As in. Does the UVC device, in this instance the Elgato 4K X, tell the host, in this instance OBS, what resolutions, frame rates, colour standards, video transport stream types (NV12 etc.) that it's capable of sending. If it's not the function of the UVC device (Elgato 4K X) to communicate its capabilities with the host recording software (OBS). Then how does the host recoding software (OBS) know what capabilities the UVC device (Elgato 4K X) has?

Question 2:

After recent beta software update and now the latest official software update to the 4K X, I am no longer able to select rec.709. There is only only one option, CS 601. I'm unaware of of what CS 601 is, although, I suspect this to be a bug and it should indicate rec.601. It's also worth noting that during this time of using different Elgato software that the firmware has not changed. To be clear, before the beta and the latest official Elgato software, I was able to select rec.709.

Question 3:

This falls in with question 2. I do not have the option for full or limited with the luma range. Although, this could be due to the limit of whatever this CS 601 thing is.

Question 4:

I suspect that MJPG is being used when NV12 is selected, at least for 4K. When in 5Gb/s mode with the 4K X, OBS is saying that NV12 is being used for 4K/60. However, this is impossible as the bandwidth requirements of NV12 at 4K/60 exceed the 5Gb/s bandwidth of the USB bus speed. However, the resulting encode is indeed 4K/60. The only way 4K/60 can be achieved with a 5Gb/s bandwidth limit with any UVC device and host recording application, is to use MJPG. So I think that it's fairly safe to say that MJPG is being used, even though OBS is saying that NV12 is being used.

To further compound this issue. When the 4K X is switched over to 10Gb/s via the Elgato software, OBS still registers NV12 as the video transport stream option. Now, at 10Gb/s it is obviously possible to record 4K/60 using NV12 as the necessary bandwidth for sending the video transport stream between the 4K X and the host and OBS is available with a 10Gb/s USB bus speed. However, the problem is that at 10Gb/s, the recorded video is exactly the same quality as it is at 5Gb/s.

For the comparison between the 5Gb/s and 10Gb/s recordings, I'm using ProRes 422 HQ as the recording codec. While the video transport stream being sent to OBS from the 4K X is not 10Bit with 4:2:2 chroma sub-sampling, as in the specifications of ProRes 422 HQ and it's only 8Bit 4:2:0 padded into the 10Bit 4:2:2 space of the ProRes 422 HQ codec. Recording this way obviously gives the advantage of an intra-frame codec with relatively low compression, compared to an inter-frame codec with a much higher compression ratio, such as the typical settings for H.265, H264 etc.

So with ProRes 422 HQ being used to record the exact same video footage from the 4K X set to 5Gb/s and 10Gb/s. Analysing the footage as a split screen A/B and zooming in (re-framing) to obvious parts of the picture that would be subject to the obvious issues of using a video compression codec as the video transport stream. Shows both recordings suffering from the exact same picture degradation, artefacts and mosaic patterning (macro-blocking) that would be expected when using MJPG. So given that the 5Gb/s recording must be utilising MJPG as the video transport stream option between the 4K X and OBS and it looks identical to the 10Gb/s recoding on close examination. I think it's safe to say that MJPG is being used in both 5Gb/s and 10Gb/s modes when recoding at 4K/60, even though OBS is saying that NV12 is being used in both examples of 5Gb/s and 10Gb/s modes.

Further tests using a different 5Gb/s UVC capture interface and recording 4K/30 using NV12, compared to the 4K X set to 5Gb/s and also set to 4K/30 and supposedly using NV12. Results in very noticeable differences where the other UVC device's capture does not exhibit the same artefacts and picture degradation that the 4K X's recoding does. This is also the same difference when the 4K X is set to 10Gb/s. So this is also suggesting that MJPG is being used by the 4K X when recoding 4K/30 in both its 5Gb/s and 10Gb/s modes, even though OBS is saying that NV12 is being used.

Question 4: (Specifically for Elgato)

Since using the beta and now the latest official software for macOS, my 4K X will no longer work with my M2 iPad Pro. Given that I had been using the 4K X with my M2 iPad Pro and had posted a number of examples on one of my YouTube channels, there has definitely been an issues since the software update. Again, this is happening in spite of their being no change in hardware with no change to the firmware.



Anyway. The answers that I'm looking for are very clear from my questions and descriptions of the problems I'm having with the 4K X and OBS on both a Mac Mini M1 and MacBook Pro M1 Max. I would greatly appreciate answers to these questions so I'm properly informed for some of my upcoming YouTube videos about Elgato and OBS workflows, specifically on Apple Silicon with the 4K X.

Cheers,
Dave.
 
Top