Stream will not play when HLS has no audio

Just wanted to check in on an issue we seem to be having when we transcode a file that has no audio stream to HLS format the video does not seem to play, we ran it through your web player to inspect the log and we receive this response:

{

“type”: “error”,

“timestamp”: 1698230902590,

“code”: 1202,

“name”: “SOURCE_MANIFEST_INVALID”,

“message”: “HLS manifest is not a valid M3U playlist”,

“data”: {

“errorMessage”: “Playlist parsing failed: missing #EXTM3U tag”

},

“troubleShootLink”: “https://bitmovin.com/docs/player/web/errors/1202

}

which is a little strange because when we play a video with the exact same m3u8 file that has an audio track we have no issue.

We have managed to solve this issue temporarily by transcoding into 1 mp4 track and have the m3u8 playlist point to the single file rather than the multiple HLS files. Here is an example of the m3u8 file we generate when trying to play the video:
#EXTM3U

#EXT-X-VERSION:5

#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID=“audio”,NAME=“Stereo”,AUTOSELECT=YES,DEFAULT=YES,CHANNELS=“2”,URI=“audio/stereo_aac/audio_index.m3u8”

#EXT-X-STREAM-INF:BANDWIDTH=4908000,CODECS=“avc1.4d4028,mp4a.40.2”,AUDIO=“audio”,RESOLUTION=1920x1080

index_1080.m3u8

#EXT-X-STREAM-INF:BANDWIDTH=2800000,CODECS=“avc1.4d4028,mp4a.40.2”,AUDIO=“audio”,RESOLUTION=1280x720

index_720.m3u8

#EXT-X-STREAM-INF:BANDWIDTH=2800000,CODECS=“avc1.4d4028,mp4a.40.2”,AUDIO=“audio”,RESOLUTION=854x480

index_480.m3u8

we have tried removing/leaving in the line which has made no difference:

#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID=“audio”,NAME=“Stereo”,AUTOSELECT=YES,DEFAULT=YES,CHANNELS=“2”,URI=“audio/stereo_aac/audio_index.m3u8”

Any light you may be able to shed on this would be greatly appreciated.

Hi @kurtish , welcome to Bitmovin community and thanks for sharing this issue.

To be on same page, I understand that the HLS multi-variant playlist provided in the question is the one where only video is present and no audio, correct?

But the playlist still has a audio variant(#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID=“audio”) listed and referred to by all the video variants. This seems incorrect. If there is no audio present, then the multi-variant playlist should not have audio variant information.

If you are using Bitmovin encoder for preparing the HLS asset, then can you please share the encoding Id which resulted in this HLS playlist?

hi @lucky.goyal ,

apologies for the delay I just wanted to be sure what the playlist looks like,

when no audio is present in the video we create a index.m3u8 file an example of which from a 720p playlist:

#EXTM3U
#EXT-X-VERSION:5
#EXT-X-STREAM-INF:BANDWIDTH=2500000,CODECS=“avc1.4d4028,mp4a.40.2”,RESOLUTION=1280x720
index_1280x720.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2000000,CODECS=“avc1.4d4028,mp4a.40.2”,RESOLUTION=854x480
index_854x480.m3u8

so we have no mention of the audio group. I am using the test player available on your site for testing.
Im not sure if its worth mentioning that the playlist works fine on VLC when watching the playlist locally.
Thanks

Thanks @kurtish , even in the latest shared playlist content, the CODECS attribute indicate presence of both AVC video and MP4A audio. Can you please share the URL of the video only playlist?

If possible try removing audio codec string mp4a.40.2 from CODECS attribute in multi-variant playlist.

#EXTM3U
#EXT-X-VERSION:5
#EXT-X-STREAM-INF:BANDWIDTH=2500000,CODECS=“avc1.4d4028,mp4a.40.2”,RESOLUTION=1280x720
index_1280x720.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2000000,CODECS=“avc1.4d4028,mp4a.40.2”,RESOLUTION=854x480
index_854x480.m3u8

@lucky.goyal amazing thankyou ever so much that solved the issue. many thanks!

1 Like

This topic was automatically closed 60 minutes after the last reply. New replies are no longer allowed.