SceneGraph Video - no audio with this m3u8 manifest

Hi Everyone,

Can someone take a look at this maifest file and let me know if you have any ideas why audio would not play. I am using SceneGraph Video node, and when trying to play this HLS manifest, there is no audio ( audio is a separate stream here). If audio is enbedded in video TS, everything works, but if audio is separate - no audio.


#EXTM3U
#EXT-X-VERSION:4
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="Audio1",NAME="mp4a.40.5_63K_Undetermined",LANGUAGE="und",DEFAULT=YES,AUTOSELECT=YES,URI="A1.m3u8"
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=7100000,CODECS="avc1.640029,mp4a.40.5",AUDIO="Audio1",RESOLUTION=1920x1080
01.m3u8
#EXT-X-I-FRAME-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=91000,RESOLUTION=1920x1080,URI="01IF.m3u8"
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=4388000,CODECS="avc1.640029,mp4a.40.5",AUDIO="Audio1",RESOLUTION=1280x720
02.m3u8
#EXT-X-I-FRAME-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1000,RESOLUTION=1280x720,URI="02IF.m3u8"
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=3082000,CODECS="avc1.4d0029,mp4a.40.5",AUDIO="Audio1",RESOLUTION=1280x720
03.m3u8
#EXT-X-I-FRAME-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=101000,RESOLUTION=1280x720,URI="03IF.m3u8"
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2881000,CODECS="avc1.640029,mp4a.40.5",AUDIO="Audio1",RESOLUTION=1280x720
04.m3u8
#EXT-X-I-FRAME-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=94000,RESOLUTION=1280x720,URI="04IF.m3u8"
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2275000,CODECS="avc1.4d0028,mp4a.40.5",AUDIO="Audio1",RESOLUTION=864x486
05.m3u8
#EXT-X-I-FRAME-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=74000,RESOLUTION=864x486,URI="05IF.m3u8"
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1472000,CODECS="avc1.4d001f,mp4a.40.5",AUDIO="Audio1",RESOLUTION=640x360
06.m3u8
#EXT-X-I-FRAME-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=47000,RESOLUTION=640x360,URI="06IF.m3u8"
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=666000,CODECS="avc1.4d001f,mp4a.40.5",AUDIO="Audio1",RESOLUTION=640x360
07.m3u8
#EXT-X-I-FRAME-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=20000,RESOLUTION=640x360,URI="07IF.m3u8"
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=63000,CODECS="mp4a.40.5",AUDIO="Audio1"
A1.m3u8

So from my experience it is necessary for HLS that the audio be part of the .ts file – a separate audio stream is usually also included for low-bandwidth situations, as an additional bitrate variant, which the device will switch to if the bandwidth is too low for video.

Conversely MPEG-DASH needs to have the video and audio separate, as I understand it, to work properly on our platform.

Joel

Hi Joel,

Are you sure about this? m3u spec states that “EXT-X-MEDIA:TYPE=AUDIO” may be part of video TS or a separate stream ( to support multiple languages/audio qualities ). If the “URI=” field is left blank, it implies that audio is within video TS, if URI is set, then audio is a separate stream.

Would you be able to run it by the dev team and find out for sure if separate audio tracks are supported or this is a SceneGraph bug?

FYI, this is what wowza says about it (supporting separate audio tracks): https://www.wowza.com/forums/content.ph … LS-streams

Yuriy, can you send the URL of the manifest for us to try out?

Hi Rob,

Unfortunately the manifest is not publicly accessible now, but I can set it up for you if you can answer this question first: is Roku supposed to support non-interleaved audio (separate audio tracks)? The manifest is formatted according to HLSv4

Thanks

Can someone please shed some light onto this? Does roku support separate audio streams or not?

bump bump

Hi Roku Team,

Can you please help your development community and start answering questions? I feel there is a real “lack of support” going on here! We are developers trying to use your product and make it better, I hope you realize that this type of “participation” will not do the project any good and will deter future developers from getting engaged. I think everyone will agree that there is nothing worse in the dev world to be stuck with a problem without any official support nor comments nor roadmap. Please help us to help you!

The official superficial answer is “Yes” we do support non-interleaved audio, but I’m waiting for more details from the media team.

  • Joel

Thank you so much for the reply, at least now I know there is a chance to fix my problems!

So I guess this might not work due to the manifest format or Scene Graph bug?

Waiting anxiously for your reply

Can you sent us via private message or via email a URL we can use to test your stream?

Thanks,

  • Joel

Sure thing, but I can’t keep it on for a long time, so what would be the best day/time to do this? Please let me know!

Can you set a long expire time? It sometimes takes engineering a couple of weeks to have time to test these things.

  • Joel

FYI Yuri - I sent Joel a 4k one with a separate audio stream not playing correctly.

Hi Adam - I am preparing my test stream and will provide it shortly. Did you figure out your 4k stream issue? Is your audio EAC3? I had similar problem with EAC3 and the only solution was to flip to AAC. Not sure what the problem is, Roku states EAC3 is supported, but maybe some encoders produce some weird blend of AC3 or there is a bug. Btw, did you use roVideo or SceneGraph?

Its AAC. Tried both roVideo and SceneGraph. No reply yet to my message. I’ve got a workaround internally to embed the audio in the ts files, but would be nice to get this working, since a number of commercial encoders provide separate audio streams.

Provided link to Joel, let’s see what he says

Joel - or anyone else - was this ever resolved? We are having an identical issue - manifest looks almost exactly the same. I need to know if this content is playable.