Skip to content

Instantly share code, notes, and snippets.

@KhaosT
Last active February 10, 2026 01:18
Show Gist options
  • Select an option

  • Save KhaosT/e9b60fc0fb99b9f4512759b953cbf38c to your computer and use it in GitHub Desktop.

Select an option

Save KhaosT/e9b60fc0fb99b9f4512759b953cbf38c to your computer and use it in GitHub Desktop.
Guide for using Apple Vision Pro as HDMI display

Displaying HDMI sources on Apple Vision Pro

While it's possible to stream most content to Apple Vision Pro directly over the internet, having the ability to use Apple Vision Pro as an HDMI display can still be useful.

Since Apple Vision Pro does not support connecting to an HDMI input directly or using an HDMI capture card, we have to be a little creative to make this work. NDI provides the ability to stream HDMI content over a local network with really low latency, and it works great with Apple Vision Pro.

This page shows the setup I’m using.

What’s needed

  • HDMI NDI Encoder
    • Personally, I recommend the Kiloview N40, as it supports streaming up to 4K60 while being fan-less, and can use USB-C as a power input.
    • Kiloview N60 comes with more features, but it’s larger and has a fan.
  • Vxio app
    • I made this one, you can also use other NDI monitor apps as well.
    • Separately, Finn made Castaway that makes it possible to use a USB Capture Card + Mac/iPad instead of an NDI encoder. It's a more cost effective option for most people I imagine.

Things to consider

  • To ensure high video quality, an NDI stream typically consumes significantly more bandwidth than a typical H.264/H.265 stream. Before purchasing the encoder, make sure your network can support data transfers at that speed.
    • For 4K60 stream, the bandwidth required is typically around 250~300mbps. If you're having issue to stream smoothly, try go to the encoder's settings page and reduce the streaming quality.
    • You can test this with some free software NDI encoders.
  • Since this setup requires encode and decode the video content, it is not latency free. From my experience, I typically see 3~4 frames (~50ms, same as moonlight based on my measurement) of delay from the content source.

Setup

Setting up an NDI encoder is pretty straightforward. Just connect the device to your local network via Ethernet, supply power, and connect the HDMI input to the encoder.

If the visionOS shows the Local Network permission dialog, and after granting the permission the app still shows searching, you may need to force close the app, and reopen it.

After that, you should be able to see the encoder show up as a source in the Vxio app. Select the source, and you'll get your HDMI display 🎉

Screenshot

Misc

Adjusting audio queue size

Depending on the NDI encoder, the default audio queue size might be too small for some devices. In that situation, try increasing the audio queue size so that the audio no longer experiences abrupt stops between samples.

Disable Multi-TCP

If your Wi-Fi channel is congested, you can try force N40 to use UDP instead of Multi-TCP. In my experience, UDP performs a lot better in those network condition. You can do so from the N40's configuration UI, select NDI Connection -> Multi-TCP Disallowed.

UDP

Portable setup

I was able to make this setup portable by getting one of those mini router (GL.iNet Beryl AX) with a LAN port.

IMG_3978 IMG_3979

#AppleVisionPro #visionOS

@sparkpeter
Copy link

Thank you for creating this, greatly appreciated. I'm after some help please. I've got a Kiloview N60 and a Vision Pro M5.

  1. Video seems to run smooth for a few seconds then goes stutters a bit then catches up. I'm using wired GigE to a Wi-Fi 5 (802.11ac) router. The Kiloview is reporting a bitrate of ~220-260mbit/sec. I think this should be fast enough? Would I be better buying a GL.iNet Beryl AX in addition and connecting to that via WiFi6?

  2. I'm trying to input a 4k HDR (HLG) HDMI source. I've tried both the EDID's linked above by @pavloPL and neither seem to work with this. The first triggers HDR but the colours aren't right. The 2nd triggers HDR (PQ) and while closer, the colours still aren't right. Is anyone able to provide me with a EDID that will trigger the HDR (HLG) correctly?

Thanks!

@pavloPL
Copy link

pavloPL commented Feb 5, 2026

Thank you for creating this, greatly appreciated. I'm after some help please. I've got a Kiloview N60 and a Vision Pro M5.

  1. Video seems to run smooth for a few seconds then goes stutters a bit then catches up. I'm using wired GigE to a Wi-Fi 5 (802.11ac) router. The Kiloview is reporting a bitrate of ~220-260mbit/sec. I think this should be fast enough? Would I be better buying a GL.iNet Beryl AX in addition and connecting to that via WiFi6?
  2. I'm trying to input a 4k HDR (HLG) HDMI source. I've tried both the EDID's linked above by @pavloPL and neither seem to work with this. The first triggers HDR but the colours aren't right. The 2nd triggers HDR (PQ) and while closer, the colours still aren't right. Is anyone able to provide me with a EDID that will trigger the HDR (HLG) correctly?

Thanks!

  1. Try to benchmark your network, eg use app on iPhone and Vision Pro for testing network bandwidth like iPerfman.
    If your results are more than 300Mb/s than is not a network issue. If less probably you need to tinker with settings, making sure you have 5GHz network enabled and connected, wide channels 160Mhz or at least 80Mhz, etc.

  2. For HLG you need to change colour profile in Vixio for the stream to be: Rec. 2100 HLG and Default 2D Renderer: RealityKit. Then it will show colours correctly.

@sparkpeter
Copy link

Thanks for your help.

  1. Upgrading to a dedicated Beryl AX seems to have made it better. It's not perfect and I'm still getting occasional stutters but it's much better. On the N60 I'm using NDI HB (No Record), default quality 10 bit colour depth, auto color format. In connection I have "Multi-TCP Disallowed".

  2. This is still not working correctly for 4K HDR (HLG) unfortunately. I'm trying to pass through to my TV so my wife can watch on the TV and I can watch on the headset using the TV for volume. The TV without the N60 in the chain displays HDR (HLG) and the picture looks great. When I put the N60 in the chain it disables HDR by default and just displays a non HDR image. Using your iCloud links I can get it to trigger HDR (PQ) but it looks completely off on both the TV and headset. Ideally I need to get it to trigger HDR (HLG) so that the TV it's passing through to will look correct?

@pavloPL
Copy link

pavloPL commented Feb 9, 2026

@sparkpeter I I tested a video out from N60 and TV and yes looks like N60 is not actually passthough original input but output its own signal which is converted to HDR 10 but with HLG colour space. That makes TV to display wrong colours. If you can change a Colour Gamut in your TV to correct one that's great but usually is not possible.

I incorectlly however told you about Colour Override, I checked and it should be: Rec. 2100 HLG I tested with my HLG from Sky box and colours looks right.

IMG_0044

I have a different setup however which can work with watching HLG input on both TV and AVP. You need however an AV receiver with 2 HDMI outputs and than you can setup to output HLG input on both so TV will get original (untouched signal) on Output 1 and you plug N60 to Output 2, something that can look like that:

IMG_0048

@sparkpeter
Copy link

@pavloPL thanks so much for you help!

I'm also using a UK Sky Q HDR (HLG) feed. Setting Vxio to Default 2D Renderer: RealityKit and colour override to Rec 2100 HLG has it looking perfect in my Vision Pro now!

As you mentioned, I now need a HDMI splitter/duplicator which will take 1 HDMI input and then output to two HDMI ports passing the correct HDR (HLG) signal. I don't suppose you know of one? If not, I'll do some trial and error then report back once I find a working solution in case it helps anyone else.

@pavloPL
Copy link

pavloPL commented Feb 9, 2026

@sparkpeter I have at home extra device HDFury Arcana2, which is a multifunction device but it is a splitter as well.
Other function of this device is to allow to convert Dolby Vision to HDR 10 which then can be used on N60.
Just tested the Arcana2 splitting one to TV and one to AVP and does a trick, TV gets the original HLG stream.
Setup sth like that:

IMG_0434

And one more thing when you watch SDR content you need to change Renderer to: AVF and Color Override: Rec. 709, a bit of pain as all this auto settings does not work.

IMG_0050

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment