Discussion:
[FFmpeg-user] MPEG DASH with Audio Only Adaptive Streaming
Ronak
2018-08-01 16:03:28 UTC
Permalink
Hi all,

I'd like to generate an MPEG DASH stream that would include all of the Representations/AdaptationSets inside of my mp4. I've mapped 5 separate audio streams into my input mp4.

However, no matter what I do with the command line arguments, I'm always only getting one Adaptation Set.

This is command I've tried:

a45e60e46a79:input ronakp$ ffmpeg -i output.mp4 -codec copy -f dash -single_file_name output.m4s -seg_duration 9.75238095238095 output.mpd
ffmpeg version git-2018-06-23-b86c575 Copyright (c) 2000-2018 the FFmpeg developers
built with Apple LLVM version 9.1.0 (clang-902.0.39.2)
configuration: --prefix=/usr/local/Cellar/ffmpeg/HEAD-b86c575 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-gpl --enable-libfdk-aac --enable-libmp3lame --enable-libopus --enable-librubberband --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma --enable-nonfree
libavutil 56. 18.102 / 56. 18.102
libavcodec 58. 20.103 / 58. 20.103
libavformat 58. 17.101 / 58. 17.101
libavdevice 58. 4.101 / 58. 4.101
libavfilter 7. 25.100 / 7. 25.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 2.100 / 5. 2.100
libswresample 3. 2.100 / 3. 2.100
libpostproc 55. 2.100 / 55. 2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'output.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2mp41
encoder : Lavf58.17.101
Duration: 00:09:44.78, start: 0.000000, bitrate: 810 kb/s
Stream #0:0(und): Audio: aac (HE-AACv2) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 32 kb/s (default)
Metadata:
handler_name : SoundHandler
Stream #0:1(und): Audio: aac (HE-AACv2) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 64 kb/s (default)
Metadata:
handler_name : SoundHandler
Stream #0:2(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
handler_name : SoundHandler
Stream #0:3(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 256 kb/s (default)
Metadata:
handler_name : SoundHandler
Stream #0:4(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 320 kb/s (default)
Metadata:
handler_name : SoundHandler
[dash @ 0x7fe19309ac00] Opening 'output.m4s' for writing
Output #0, dash, to 'output.mpd':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2mp41
encoder : Lavf58.17.101
Stream #0:0(und): Audio: aac (HE-AACv2) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 32 kb/s (default)
Metadata:
handler_name : SoundHandler
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help


I've tried other commands like:

ffmpeg -i output.mp4 -codec copy -f dash -single_file_name output.m4s -seg_duration 9.75238095238095 -adaptation_sets "id=0,streams=a" -hls_playlist 1 output.mpd

But it doesn't seem to generate an MPEG DASH stream for all input streams either.

What is the correct command line I should be using for this? If this doesn't work, I'll file an issue to ffmpeg for this, and try to figure out how to fix this.

Thanks,

Ronak


_______________________________________________
ffmpeg-user mailing list
ffmpeg-***@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
ffmpeg-user-***@ffmpeg.org with subject "uns
Ronak
2018-08-01 17:19:39 UTC
Permalink
I figured out how to do this. The problem was just that I forgot to put the -map 0:0 -map 1:0, etc. arguments in these commands. So ffmpeg was only selecting the first stream in the input.
Post by Ronak
Hi all,
I'd like to generate an MPEG DASH stream that would include all of the Representations/AdaptationSets inside of my mp4. I've mapped 5 separate audio streams into my input mp4.
However, no matter what I do with the command line arguments, I'm always only getting one Adaptation Set.
a45e60e46a79:input ronakp$ ffmpeg -i output.mp4 -codec copy -f dash -single_file_name output.m4s -seg_duration 9.75238095238095 output.mpd
ffmpeg version git-2018-06-23-b86c575 Copyright (c) 2000-2018 the FFmpeg developers
built with Apple LLVM version 9.1.0 (clang-902.0.39.2)
configuration: --prefix=/usr/local/Cellar/ffmpeg/HEAD-b86c575 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-gpl --enable-libfdk-aac --enable-libmp3lame --enable-libopus --enable-librubberband --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma --enable-nonfree
libavutil 56. 18.102 / 56. 18.102
libavcodec 58. 20.103 / 58. 20.103
libavformat 58. 17.101 / 58. 17.101
libavdevice 58. 4.101 / 58. 4.101
libavfilter 7. 25.100 / 7. 25.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 2.100 / 5. 2.100
libswresample 3. 2.100 / 3. 2.100
libpostproc 55. 2.100 / 55. 2.100
major_brand : isom
minor_version : 512
compatible_brands: isomiso2mp41
encoder : Lavf58.17.101
Duration: 00:09:44.78, start: 0.000000, bitrate: 810 kb/s
Stream #0:0(und): Audio: aac (HE-AACv2) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 32 kb/s (default)
handler_name : SoundHandler
Stream #0:1(und): Audio: aac (HE-AACv2) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 64 kb/s (default)
handler_name : SoundHandler
Stream #0:2(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
handler_name : SoundHandler
Stream #0:3(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 256 kb/s (default)
handler_name : SoundHandler
Stream #0:4(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 320 kb/s (default)
handler_name : SoundHandler
major_brand : isom
minor_version : 512
compatible_brands: isomiso2mp41
encoder : Lavf58.17.101
Stream #0:0(und): Audio: aac (HE-AACv2) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 32 kb/s (default)
handler_name : SoundHandler
Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
ffmpeg -i output.mp4 -codec copy -f dash -single_file_name output.m4s -seg_duration 9.75238095238095 -adaptation_sets "id=0,streams=a" -hls_playlist 1 output.mpd
But it doesn't seem to generate an MPEG DASH stream for all input streams either.
What is the correct command line I should be using for this? If this doesn't work, I'll file an issue to ffmpeg for this, and try to figure out how to fix this.
Thanks,
Ronak
_______________________________________________
ffmpeg-user mailing list
http://ffmpeg.org/mailman/listinfo/ffmpeg-user
To unsubscribe, visit link above, or email
_______________________________________________
ffmpeg-user mailing list
ffmpeg-***@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
ffmpeg-user-***@ffmpeg.org with sub

Loading...