FFmpeg/web

Adaptive Bitrate HLS audio encoding

ad0077 opened this issue · 1 comments

I am using the following version of ffmpeg on MacOS Big Sur 11.5.2:

ffmpeg version 4.4 Copyright (c) 2000-2021 the FFmpeg developers
  built with Apple clang version 12.0.5 (clang-1205.0.22.9)

I have a mp3audio file (CDN url) and I am using this following code to generate byte-range variants.

ffmpeg -i url  \
-hls_playlist_type vod -hls_time 4 -hls_flags single_file  -b:a 160k ./audio_high.m3u8 \ 
-hls_playlist_type vod -hls_time 4 -hls_flags single_file  -b:a 90k ./audio_med.m3u8 \
-hls_playlist_type vod -hls_time 4 -hls_flags single_file  -b:a 24k ./audio_low.m3u8'

The above code generates 3 variants. Have a look at the med variant playlist content:

#EXTM3U
#EXT-X-VERSION:4
#EXT-X-TARGETDURATION:4
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-PLAYLIST-TYPE:VOD
#EXTINF:4.017056,
#EXT-X-BYTERANGE:47188@0
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@47188
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@96256
audio_med.ts
#EXTINF:4.017044,
#EXT-X-BYTERANGE:49256@145136
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@194392
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@243272
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@292152
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:48880@341220
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@390100
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@438980
audio_med.ts
#EXTINF:3.993822,
#EXT-X-BYTERANGE:48880@487860
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49068@536740
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@585808
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@634500
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@683380
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49256@732260
audio_med.ts
#EXTINF:3.993822,
#EXT-X-BYTERANGE:49256@781516
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49256@830772
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49444@880028
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@929472
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@978352
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48504@1027420
audio_med.ts
#EXTINF:4.017044,
#EXT-X-BYTERANGE:49256@1075924
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@1125180
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48504@1173872
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@1222376
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:48880@1271068
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@1319948
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@1368828
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@1417708
audio_med.ts
#EXTINF:4.017044,
#EXT-X-BYTERANGE:48880@1466588
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@1515468
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@1564348
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:48880@1613416
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49256@1662296
audio_med.ts
#EXTINF:3.993822,
#EXT-X-BYTERANGE:49068@1711552
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@1760620
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49444@1809312
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@1858756
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@1907824
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48504@1956704
audio_med.ts
#EXTINF:4.017044,
#EXT-X-BYTERANGE:49256@2005208
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@2054464
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@2103156
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@2152036
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49444@2201104
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@2250548
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49444@2299616
audio_med.ts
#EXTINF:4.017044,
#EXT-X-BYTERANGE:49444@2349060
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@2398504
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@2447572
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48504@2496264
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49068@2544768
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@2593836
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48316@2642904
audio_med.ts
#EXTINF:3.993822,
#EXT-X-BYTERANGE:48692@2691220
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49444@2739912
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49256@2789356
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@2838612
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48504@2887304
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49256@2935808
audio_med.ts
#EXTINF:3.993822,
#EXT-X-BYTERANGE:48692@2985064
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@3033756
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@3082824
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49444@3131704
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49256@3181148
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@3230404
audio_med.ts
#EXTINF:4.017044,
#EXT-X-BYTERANGE:49068@3279284
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@3328352
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@3377044
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@3425924
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49068@3474804
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@3523872
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@3572752
audio_med.ts
#EXTINF:3.993822,
#EXT-X-BYTERANGE:48880@3621632
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49256@3670512
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@3719768
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@3768460
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48316@3817340
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49256@3865656
audio_med.ts
#EXTINF:3.993822,
#EXT-X-BYTERANGE:49068@3914912
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48504@3963980
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49068@4012484
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@4061552
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49256@4110244
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@4159500
audio_med.ts
#EXTINF:4.017044,
#EXT-X-BYTERANGE:48880@4208192
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49444@4257072
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@4306516
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@4355396
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:48880@4404088
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@4452968
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@4502036
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48504@4550728
audio_med.ts
#EXTINF:4.017044,
#EXT-X-BYTERANGE:49256@4599232
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@4648488
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@4697180
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49444@4745872
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@4795316
audio_med.ts
#EXTINF:3.993822,
#EXT-X-BYTERANGE:48504@4844008
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@4892512
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49068@4941580
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@4990648
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@5039528
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48504@5088596
audio_med.ts
#EXTINF:4.017044,
#EXT-X-BYTERANGE:48880@5137100
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@5185980
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@5235048
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@5284116
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49256@5332808
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@5382064
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48880@5430756
audio_med.ts
#EXTINF:4.017044,
#EXT-X-BYTERANGE:49444@5479636
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@5529080
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48504@5577772
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@5626276
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:49444@5674968
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49256@5724412
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@5773668
audio_med.ts
#EXTINF:3.993822,
#EXT-X-BYTERANGE:48880@5822736
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:48880@5871616
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:49068@5920496
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48692@5969564
audio_med.ts
#EXTINF:3.993833,
#EXT-X-BYTERANGE:48504@6018256
audio_med.ts
#EXTINF:4.017056,
#EXT-X-BYTERANGE:48880@6066760
audio_med.ts
#EXTINF:0.432511,
#EXT-X-BYTERANGE:4324@6115640
audio_med.ts
#EXT-X-ENDLIST

I am manually generating the master playlist having the following content:

#EXT-X-INDEPENDENT-SEGMENTS
#EXT-X-VERSION:4

#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio_group_med",NAME="my-audio-media-med",LANGUAGE="en",AUTOSELECT=YES,URI="audio_med.m3u8"
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio_group_high",NAME="my-audio-media-high",LANGUAGE="en",AUTOSELECT=YES,URI="audio_high.m3u8"
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio_group_low",NAME="my-audio-media-low",LANGUAGE="en",AUTOSELECT=YES,DEFAULT=YES,URI="audio_low.m3u8"

#EXT-X-STREAM-INF:BANDWIDTH=96000,CODECS="mp4a.40.2",AUDIO="audio_group_med"
audio_med.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=24000,CODECS="mp4a.40.2",AUDIO="audio_group_low"
audio_low.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=160000,CODECS="mp4a.40.2",AUDIO="audio_group_high"
audio_high.m3u8

The issue I am facing is that when I am playing the media from CDN and seeking it to an unbuffered location, the media stops playing. However the same behavior is working in VLCWhat is that I am doing wrong?

This is not a support forum for FFmpeg. See the official website for more information on where to find support.