MPEG DASH with Audio Only Adaptive Streaming

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

MPEG DASH with Audio Only Adaptive Streaming

Ronak Patel
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
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: MPEG DASH with Audio Only Adaptive Streaming

Ronak Patel
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.


> On Aug 1, 2018, at 12:03 PM, Ronak <[hidden email]> wrote:
>
> 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
> [hidden email]
> http://ffmpeg.org/mailman/listinfo/ffmpeg-user
>
> To unsubscribe, visit link above, or email
> [hidden email] with subject "unsubscribe".

_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".