H264 fmp4 HLS will not play

480 views
Skip to first unread message

Edwin Bradford

unread,
Feb 14, 2018, 4:34:08 AM2/14/18
to Shaka Packager Users
I've had no problems generating fmp4 DASH and HLS files that work fine in Bento4 but I've been unable to get Shaka Packager to generate any fmp4 HLS files that play in any HLS player on or offline. The Shaka Packager fmp4 DASH files play without issue. I initially tried packaging some working pre-existing mp4s I had encoded with fixed two second GOPs in x264 for Bento4 and MP4Box but when that failed I decided to follow the Shaka Packager encoding guide to the letter and encode new mp4s using ffmpeg as shown. Neither ffmpeg nor Shaka Packager give any errors during the encodes, I am using Shaka Packager v2.0.0 binary for Windows, I understand there was a problem with 1.6.2 and it did not work with fmp4 for both DASH and HLS at the same time.

I've tried playing the HLS files in video.js with videojs-contrib-hls on localhost and my external IP, the Bitmovin MPEG-DASH & HLS Player Test, and the Kaltura Player with no success. Both the Bento4 HLS and DASH files play without issue using on-demand and live profiles in all these tests.

Video.js gives the error:

VIDEOJS: ERROR: (CODE:3 MEDIA_ERR_DECODE) The media playback was aborted due to a corruption problem or because the media used features your browser did not support

The windows batch file I'm running to generate the files is (the caret (^) symbol acts as a line break in batch files) :


  set k00128="aac_lc_128k"
  set k01000="h264_360p_01000k"
  set k02000="h264_540p_02000k"
  set k03000="h264_720p_03000k"
  set k04500="h264_1080p_04500k"
  set k06000="h264_1080p_06000k"
  set k07800="h264_1080p_07800k"

  REM Package mp4
  packager-win ^
  in=mp4/%k00128%.mp4,stream=audio,output=fmp4/%k00128%.mp4,playlist_name=audio.m3u8,hls_group_id=audio,hls_name=ENGLISH ^
  in=mp4/%k01000%.mp4,stream=video,output=fmp4/%k01000%.mp4,playlist_name=%k01000%.m3u8,iframe_playlist_name=%k01000%_iframe.m3u8 ^
  in=mp4/%k02000%.mp4,stream=video,output=fmp4/%k02000%.mp4,playlist_name=%k02000%.m3u8,iframe_playlist_name=%k02000%_iframe.m3u8 ^
  in=mp4/%k03000%.mp4,stream=video,output=fmp4/%k03000%.mp4,playlist_name=%k03000%.m3u8,iframe_playlist_name=%k03000%_iframe.m3u8 ^
  in=mp4/%k04500%.mp4,stream=video,output=fmp4/%k04500%.mp4,playlist_name=%k04500%.m3u8,iframe_playlist_name=%k04500%_iframe.m3u8 ^
  in=mp4/%k06000%.mp4,stream=video,output=fmp4/%k06000%.mp4,playlist_name=%k06000%.m3u8,iframe_playlist_name=%k06000%_iframe.m3u8 ^
  in=mp4/%k07800%.mp4,stream=video,output=fmp4/%k07800%.mp4,playlist_name=%k07800%.m3u8,iframe_playlist_name=%k07800%_iframe.m3u8 ^
  --hls_master_playlist_output fmp4/media.m3u8 ^
  --mpd_output fmp4/media.mpd


The .m3u8 master playlist generated by Shaka Packager is:


#EXTM3U
## Generated with https://github.com/google/shaka-packager version v2.0.0-1d6a2de5ab-release

#EXT-X-MEDIA:TYPE=AUDIO,URI="audio.m3u8",GROUP-ID="audio",LANGUAGE="en",NAME="ENGLISH",AUTOSELECT=YES,CHANNELS="2"

#EXT-X-STREAM-INF:BANDWIDTH=2185116,CODECS="avc1.42c01e,mp4a.40.2",RESOLUTION=640x360,AUDIO="audio"
h264_360p_01000k.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=19998300,CODECS="avc1.4d4028,mp4a.40.2",RESOLUTION=960x540,AUDIO="audio"
h264_540p_02000k.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=30705180,CODECS="avc1.4d4028,mp4a.40.2",RESOLUTION=1280x720,AUDIO="audio"
h264_720p_03000k.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=46224540,CODECS="avc1.4d402a,mp4a.40.2",RESOLUTION=1920x1080,AUDIO="audio"
h264_1080p_04500k.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=60809052,CODECS="avc1.4d402a,mp4a.40.2",RESOLUTION=1920x1080,AUDIO="audio"
h264_1080p_06000k.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=72671004,CODECS="avc1.4d402a,mp4a.40.2",RESOLUTION=1920x1080,AUDIO="audio"
h264_1080p_07800k.m3u8

#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=1969728,CODECS="avc1.42c01e",RESOLUTION=640x360,URI="h264_360p_01000k_iframe.m3u8"
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=19782912,CODECS="avc1.4d4028",RESOLUTION=960x540,URI="h264_540p_02000k_iframe.m3u8"
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=30489792,CODECS="avc1.4d4028",RESOLUTION=1280x720,URI="h264_720p_03000k_iframe.m3u8"
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=46009152,CODECS="avc1.4d402a",RESOLUTION=1920x1080,URI="h264_1080p_04500k_iframe.m3u8"
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=60593664,CODECS="avc1.4d402a",RESOLUTION=1920x1080,URI="h264_1080p_06000k_iframe.m3u8"
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=72455616,CODECS="avc1.4d402a",RESOLUTION=1920x1080,URI="h264_1080p_07800k_iframe.m3u8"


The h264_1080p_07800k.m3u8 generated by Shaka Packager is:


#EXTM3U
#EXT-X-VERSION:6
## Generated with https://github.com/google/shaka-packager version v2.0.0-1d6a2de5ab-release
#EXT-X-TARGETDURATION:11
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-MAP:URI="h264_1080p_07800k.mp4",BYTERANGE="827@0"
#EXTINF:10.000,
#EXT-X-BYTERANGE:8994374@895
h264_1080p_07800k.mp4
#EXTINF:10.000,
#EXT-X-BYTERANGE:7633887
h264_1080p_07800k.mp4
#EXTINF:0.042,
#EXT-X-BYTERANGE:377373
h264_1080p_07800k.mp4
#EXT-X-ENDLIST


The h264_1080p_07800k_iframe.m3u8 generated by Shaka Packager is:


#EXTM3U
#EXT-X-VERSION:6
## Generated with https://github.com/google/shaka-packager version v2.0.0-1d6a2de5ab-release
#EXT-X-TARGETDURATION:11
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-I-FRAMES-ONLY
#EXT-X-MAP:URI="h264_1080p_07800k.mp4",BYTERANGE="827@0"
#EXTINF:10.000,
#EXT-X-BYTERANGE:4169@895
h264_1080p_07800k.mp4
#EXTINF:10.000,
#EXT-X-BYTERANGE:14305@8995269
h264_1080p_07800k.mp4
#EXTINF:0.042,
#EXT-X-BYTERANGE:377373@16629156
h264_1080p_07800k.mp4
#EXT-X-ENDLIST


The audio.m3u8 generated by Shaka Packager is:


#EXTM3U
#EXT-X-VERSION:6
## Generated with https://github.com/google/shaka-packager version v2.0.0-1d6a2de5ab-release
#EXT-X-TARGETDURATION:11
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-MAP:URI="aac_lc_128k.mp4",BYTERANGE="763@0"
#EXTINF:10.005,
#EXT-X-BYTERANGE:162199@831
aac_lc_128k.mp4
#EXTINF:10.005,
#EXT-X-BYTERANGE:165763
aac_lc_128k.mp4
#EXTINF:0.052,
#EXT-X-BYTERANGE:1409
aac_lc_128k.mp4
#EXT-X-ENDLIST




Edwin Bradford

unread,
Feb 14, 2018, 4:47:20 AM2/14/18
to Shaka Packager Users
It looks like Shaka Packager on Github is a better place to ask about this than the Users Group as it appears to be more active and better organised. Please do not reply here. I will post the same question on Github.

2018年2月14日水曜日 9時34分08秒 UTC Edwin Bradford:
Reply all
Reply to author
Forward
0 new messages