diff --git a/fmp4-alt.html b/fmp4-alt.html new file mode 100644 index 0000000..1087245 --- /dev/null +++ b/fmp4-alt.html @@ -0,0 +1,80 @@ + + + + + HLS VP9/fMP4 test + + + +

HLS VP9/fMP4 test

+ +

Caminandes - Llamigos

+ + + +

With fallbacks

+ +

HLS with VP9 (.mp4)/MJPEG (.mov) video tracks and Opus/MP3 audio tracks. Custom MSE wrapper enabled to provide HLS-over-MSE for Mac Safari/Chrome/Firefox.

+
+ +
+ + + + \ No newline at end of file diff --git a/make-fmp4.sh b/make-fmp4.sh index 9d823a3..07db65e 100755 --- a/make-fmp4.sh +++ b/make-fmp4.sh @@ -45,8 +45,8 @@ set -e # Note use duration, not keyframe interval, for fragments, # because all are keyframes! -ffmpeg -i $INFILE -an $VIDEO_MJPEG $AUDFLAGS -y fmp4.120p.mjpeg.mp4 -ffmpeg -i $INFILE -an $VIDEO_MJPEG $AUDFLAGS -y fmp4.120p.mjpeg.mov +#ffmpeg -i $INFILE -an $VIDEO_MJPEG $AUDFLAGS -y fmp4.120p.mjpeg.mp4 +#ffmpeg -i $INFILE -an $VIDEO_MJPEG $AUDFLAGS -y fmp4.120p.mjpeg.mov # Playlist processing php extract-playlist.php fmp4.audio.mpeg.mp3 > fmp4.audio.mpeg.mp3.m3u8 @@ -68,7 +68,15 @@ MPEG_TRACK=audio.mpeg.mp3 php meta-playlist.php fmp4 audio.opus.mp4 $MPEG_TRACK 480p.vp9.mp4 > fmp4.vp9.m3u8 php meta-playlist.php fmp4 audio.opus.mp4 $MPEG_TRACK 480p.h264.mp4 > fmp4.h264.m3u8 php meta-playlist.php --lie fmp4 audio.opus.mp4 $MPEG_TRACK 480p.mpeg4.mp4 > fmp4.mpeg4.m3u8 +php meta-playlist.php --lie=mp4v fmp4 audio.opus.mp4 $MPEG_TRACK 480p.mpeg4.mp4 > fmp4.mpeg4.mp4v.m3u8 +php meta-playlist.php --lie=mp4v.20 fmp4 audio.opus.mp4 $MPEG_TRACK 480p.mpeg4.mp4 > fmp4.mpeg4.mp4v.20.m3u8 +php meta-playlist.php --lie=mp4v.20.9 fmp4 audio.opus.mp4 $MPEG_TRACK 480p.mpeg4.mp4 > fmp4.mpeg4.mp4v.20.9.m3u8 php meta-playlist.php --lie fmp4 audio.opus.mp4 $MPEG_TRACK 288p.h263.3gp > fmp4.h263.3gp.m3u8 +php meta-playlist.php --lie=h263 fmp4 audio.opus.mp4 $MPEG_TRACK 288p.h263.3gp > fmp4.h263.3gp.h263.m3u8 +php meta-playlist.php --lie=s263 fmp4 audio.opus.mp4 $MPEG_TRACK 288p.h263.3gp > fmp4.h263.3gp.s263.m3u8 +php meta-playlist.php --lie=3gp fmp4 audio.opus.mp4 $MPEG_TRACK 288p.h263.3gp > fmp4.h263.3gp.3gp.m3u8 +php meta-playlist.php --lie=3gpp fmp4 audio.opus.mp4 $MPEG_TRACK 288p.h263.3gp > fmp4.h263.3gp.3gpp.m3u8 + php meta-playlist.php fmp4 audio.opus.mp4 $MPEG_TRACK 120p.mjpeg.mp4 > fmp4.mjpeg.m3u8 php meta-playlist.php fmp4 audio.opus.mp4 $MPEG_TRACK 120p.mjpeg.mov > fmp4.mjpeg.mov.m3u8 php meta-playlist.php --lie fmp4 audio.opus.mp4 $MPEG_TRACK 120p.mjpeg.mp4 > fmp4.mjpeg.lie.m3u8 diff --git a/meta-playlist.php b/meta-playlist.php index af5fabb..168dd25 100644 --- a/meta-playlist.php +++ b/meta-playlist.php @@ -3,7 +3,11 @@ $argv = $_SERVER['argv']; $self = array_shift( $argv ); if ( ( $argv[0] ?? '' ) === '--lie') { - $lie = array_shift( $argv ); + array_shift( $argv ); + $lie = 'avc1.42e00a'; +} elseif ( preg_match( '/^--lie=(.*)$/', $argv[0] ?? '', $matches ) ) { + array_shift( $argv ); + $lie = $matches[1]; } else { $lie = false; } @@ -33,9 +37,9 @@ $videoCodecs = [ if ( $lie ) { // These lies work on iOS 10 and iOS 16 too - $videoCodecs['mjpeg'] = 'avc1.42e00a'; - $videoCodecs['h263' ] = 'avc1.42e00a'; - $videoCodecs['mpeg4'] = 'avc1.42e00a'; + $videoCodecs['mjpeg'] = $lie; + $videoCodecs['h263' ] = $lie; + $videoCodecs['mpeg4'] = $lie; }