HLS with VP9 (.mp4)/MJPEG (.mov) video tracks and Opus/MP3 audio tracks. Video.js enabled to provide HLS-over-MSE for Chrome/Firefox/desktop Safari.
+
HLS with VP9 in mp4, JPEG in mp4, and Opus and AAC in mp4
+
Overridden HLS
-
Current behavior:
-
Browsers that play the VP9 track will get sharp video, those that play the MJPEG track will get blurry video. Audio should sound the same either way.
-
-
MSE-based streaming with VHS
-
-
Firefox seems to work with VP9 & Opus tracks via video.js
-
Chrome works (needed to fix an output setting)
-
Safari uses the MP3 audio tracks and VHS gets confused because it tries to parse them as MP4 (not Safari's fault)
-
-
-
Apple HLS player
-
-
macOS 13's Safari 16 plays MJPEG on most of my test machines, though macOS 12 ~2015 systems with Intel graphics require lying about the type.
-
iOS 16 plays VP9 if supported, or MJPEG if no hardware codec
-
Those last two will also play h.263 or MPEG-4 visual IF labeled as if h.264 in the playlist; MJPEG can be properly labeled as "jpeg". I haven't found a supported labeling that is correct yet.
-
no access to iOS 13-15
-
iOS 13 doesn't seem to like mjpeg in .mp4, but .mov is fine
-
iOS 12 doesn't seem to like any version on an old iPad Air, except with h264 video
-
no access to iOS 11
-
iOS 10 on iPhone 5C plays h.263, or mpeg-4 visual IF labeled as false avc1.blah. It will also play mjpeg if so mislabeled, but only in .mov not in .mp4 as above.
-
iOS 9 doesn't understand the required version of HLS playlist format, and fails.
-
-
-
+
HLS with VP8 in mp4, JPEG in mp4, and Opus and AAC in mp4