1
0
Fork 0
mirror of https://github.com/pikvm/pikvm.git synced 2026-03-02 18:16:56 -05:00

No Video when using iOS Device with iCloud Private Relay Enabled #785

Closed
opened 2026-02-20 14:06:15 -05:00 by deekerman · 1 comment
Owner

Originally created by @abol01 on GitHub (Dec 12, 2023).

Originally assigned to: @mdevaev on GitHub.

Describe the bug
There is no video displayed when iCloud Private Relay is enabled and trying to access from an iPad Pro. Primarily using the WebRTC/H.264 video mode.

To Reproduce
Steps to reproduce the behavior, like:

  1. Enable iCloud Private Relay
  2. Access the pikvm WebUI and access KVM
  3. No video will display
  4. To workaround, go to Settings on Apple Device, and Disable Private Relay for the day. (Sometimes have to reboot the pikvm as well), and then the video starts to render again.

Expected behavior
Video displays even when accessing via device with private relay.

Desktop (please complete the following information):

  • OS: iPad OS 17.1.2
  • Browser: Safari

PiKVM info:

  • Raspberry Pi board version: CM4
  • PiKVM platform: v4 Plus
  • Video capture type: Source input v4 Plus board
  • KVMD version: pacman -Q | grep kvmd
    kvmd 3.280-1
    kvmd-fan 0.26-1
    kvmd-oled 0.26-1
    kvmd-platform-v4plus-hdmi-rpi4 3.280-1
    kvmd-webterm 0.44-1
  • uStreamer version: ustreamer 5.45-1
  • Linux kernel: Linux pikvm 6.1.61-1-rpi-ARCH #1 SMP Fri Nov 3 20:48:52 MSK 2023 armv7l GNU/Linux
Originally created by @abol01 on GitHub (Dec 12, 2023). Originally assigned to: @mdevaev on GitHub. **Describe the bug** There is no video displayed when iCloud Private Relay is enabled and trying to access from an iPad Pro. Primarily using the WebRTC/H.264 video mode. **To Reproduce** Steps to reproduce the behavior, like: 1. Enable iCloud Private Relay 2. Access the pikvm WebUI and access KVM 3. No video will display 4. To workaround, go to Settings on Apple Device, and Disable Private Relay for the day. (Sometimes have to reboot the pikvm as well), and then the video starts to render again. **Expected behavior** Video displays even when accessing via device with private relay. **Desktop (please complete the following information):** - OS: iPad OS 17.1.2 - Browser: Safari **PiKVM info:** - Raspberry Pi board version: CM4 - PiKVM platform: v4 Plus - Video capture type: Source input v4 Plus board - KVMD version: pacman -Q | grep kvmd kvmd 3.280-1 kvmd-fan 0.26-1 kvmd-oled 0.26-1 kvmd-platform-v4plus-hdmi-rpi4 3.280-1 kvmd-webterm 0.44-1 - uStreamer version: ustreamer 5.45-1 - Linux kernel: Linux pikvm 6.1.61-1-rpi-ARCH #1 SMP Fri Nov 3 20:48:52 MSK 2023 armv7l GNU/Linux
Author
Owner

@mdevaev commented on GitHub (Dec 14, 2023):

As far as I understand, this is not yet a stable enough service from Apple, and it does not work well with WebRTC. That is, we can't fix it from our side. The only thing we can do for our part is to advise disabling it while working with PiKVM. Also, even if it worked, it would have a negative impact on video performance.

That is a real possibility. Remember WebRTC is supposed to be peer-to-peer as much as possible. For input-sensitive low-latency streaming, relaying traffic via not one but two entities (in separate organizations) seems like a terribly bad idea. We hope Apple’s relay servers have been thoroughly tested and preserve the standard properties of WebRTC and ICE like 5-tuples. They will also need to deal with streaming bitrates of tens of megabits per second without adding much latency or packet loss. If not, then WebRTC services may need to ask their users to turn off Private Relay when using WebRTC in Safari.

@mdevaev commented on GitHub (Dec 14, 2023): As far as I understand, this is not yet a stable enough service from Apple, and it does not work well with WebRTC. That is, we can't fix it from our side. The only thing we can do for our part is to advise disabling it while working with PiKVM. Also, even if it worked, it would have a [negative impact on video performance](https://webrtchacks.com/apples-not-so-private-relay-fails-with-webrtc/). > That is a real possibility. Remember WebRTC is supposed to be peer-to-peer as much as possible. For input-sensitive low-latency streaming, relaying traffic via not one but two entities (in separate organizations) seems like a terribly bad idea. We hope Apple’s relay servers have been thoroughly tested and preserve the standard properties of WebRTC and ICE like [5-tuples](https://datatracker.ietf.org/doc/html/rfc8835). They will also need to deal with streaming bitrates of tens of megabits per second without adding much latency or packet loss. If not, then WebRTC services may need to ask their users to turn off Private Relay when using WebRTC in Safari.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/pikvm-pikvm#785
No description provided.