From 1a2a21819bdcecf3253ebfbf5fcd38a98e0beb1d Mon Sep 17 00:00:00 2001 From: bicarus <202771338+bicarus-dev@users.noreply.github.com> Date: Sat, 22 Aug 2026 23:13:41 -0700 Subject: [PATCH] Updated Video Stream (markdown) --- Video-Stream.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Video-Stream.md b/Video-Stream.md index 8d31178..25ba104 100644 --- a/Video-Stream.md +++ b/Video-Stream.md @@ -79,7 +79,9 @@ The server ends the connection if the game changes resolution. Treat a closed co `stream.mjpg` needs no container support at all and every frame stands alone, so it is the fallback when nothing else works. It is expensive on bandwidth and on client CPU. -In a secure browser context, WebCodecs can consume the H.264 access units directly. Where WebCodecs is unavailable, MediaSource can still play H.264 after the client wraps it in fragmented MP4. The MP4 track header needs the correct display dimensions before the first sample is appended; use the `width` and `height` reported for the selected screen rather than hardcoding or guessing them. The [substream](https://github.com/spice2x/substream) reference client implements both paths. +WebCodecs can consume the H.264 access units directly; however, many modern browsers will prevent you from doing this in `http` unless the client is also localhost. Surprisingly, this works fine with iOS Safari. + +Where WebCodecs is unavailable, MediaSource can still play H.264 after the client wraps it in fragmented MP4. The MP4 track header needs the correct display dimensions before the first sample is appended; use the `width` and `height` reported for the selected screen rather than hardcoding or guessing them. The [substream](https://github.com/spice2x/substream) reference client implements both paths. ## Quality