Using the Roku Stream Tester, I'm trying to play an HLS playlist using the Fragmented MP4 segment format.
I've tried every combination of h.264/AVC and h.265/HEVC with AAC, AC3, and MP3 audio. No matter how it's done, the audio does not play on the Roku Ultra.
In the Stream Tester's debug info, it says that there is no audio stream, i.e. "Audio Format: None"
Meanwhile, VLC can play the stream with audio flawlessly.
Here's the ffmpeg command line being used to create the playlist:
ffmpeg -t 10 -i source.mov -c:v libx264 -preset faster -c:a aac -ac 1 -ar 48000 -b:a 128k -g 48 -hls_time 4 -hls_playlist_type vod -hls_segment_type fmp4 master.m3u8
The problem seems to happen consistently, regardless of source file.
I know it's not a bug in the Stream Tester because the issue was first reported in our Roku app.
The problem does not happen in playlists using MPEG-TS segments. However, we need to use h.265 for 4K formats, which leaves us only with fragmented MP4 playlists. The Roku does seem to support it; it has no problem playing the video stream.
Update: if I force the audio to be in a separate HLS stream then it works.
Working command line:
ffmpeg -i "http://distribution.bbb3d.renderfarming.net/video/mp4/bbb_sunflower_2160p_30fps_normal.mp4" -map 0:0 -map 0:1 -c:v libx265 -preset faster -c:a aac -g 48 -hls_time 4 -hls_playlist_type vod -hls_segment_type fmp4 -var_stream_map "a:0,agroup:aud,default:yes v:0,agroup:aud" -master_pl_name master.m3u8 "stream_%v.m3u8"
We have the same issue with Fragmented MP4 HLS - This is a big issue for us developing our Roku app. Here is a sample that plays in every other stream player. Great video - No Audio.
This is my first post here, Do Roku staff watch/respond to this?
Hello!
I know this is an older post, but I stumbled upon it as I had a similar issue with the fMP4 format while doing some bug triaging on the Jellyfin app for Roku. Currently, if we have an AV1 video file that has 5.1 surround audio that needs to be converted to a different format or number of channels, the Jellyfin server will attempt to convert the audio, leave the video untouched and repackage everything up to stream to the Roku. We have found that the video will pass fine, but we have no audio. This seems to be in line with the problem you were having.
I saw you last posted a command line that would send audio in a separate stream. Did you ever roll this into a production solution that worked, and if so you could share anything that would be helpful? Thanks!
Hi! Yeah, it's been a minute since I looked at this, but I was working on the Faithlife TV app at the time, and yes I believe we did get this fully working for our 4k transcodes. I don't work there anymore so I unfortunately can't provide much more info.
Thank you! I appreciate the response.