Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Does UG transcode output to NDI or pass through? #429

Open
vanderhoff opened this issue Feb 12, 2025 · 1 comment
Open

Does UG transcode output to NDI or pass through? #429

vanderhoff opened this issue Feb 12, 2025 · 1 comment

Comments

@vanderhoff
Copy link

vanderhoff commented Feb 12, 2025

Hello, I could not find reference to it in the docs.
If I set -d ndi, will UG always allow NDI to transcode or will it attempt to pass thorough if the video is a matching codec,

for example if the input source is h.264 8b 4:2:0 YUV(A) will UG attempt to use HX2 or HX3
or will it handover to NDI to transcode into Speedhq.

If it does handover the transcode, is there anyway to benchmark the gpu utilization of this step?

Thanks
Art

@MartinPulec
Copy link
Collaborator

Hi, the NDI library comes in 2 variants - the "basic" NDI SDK and NDI Advanced SDK - the licensing of the latter one is quite restrictive (IIRC only for OEMs/partners), so UG uses NDI SDK. Then normal NDI SDK (in contrary to NDI Advanced SDK) doesn't allow access to compressed stream at all. So I think that it is not possible to pass through the compressed stream with NDI SDK.

Regarding the output codec that UG/NDI uses - that is quite tricky question because I think that NDI SDK doesn't provide a mean to set the compression explicitly, so I guess that the selection is up to the NDI library.

If it does handover the transcode, is there anyway to benchmark the gpu utilization of this step?

Do you have some information about the how NDI uses GPU? I am not aware that NDI use any kind of HW acceleration but since the library is proprietary, it is hard to say. Also if the codec something that is directly accelerated by GPU, like H.264/H.265, it may use system API. In either case, you might be able to see the utilization by some generic tools like Windows built-in System Monitor or in Linux intel_gpu_top or nvtop.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants