diff options
author | Vignesh Venkatasubramanian <vigneshv@google.com> | 2014-07-14 09:52:23 -0700 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-07-15 23:58:36 +0200 |
commit | 3e73d1429045cc2985772391e1f36a034650880d (patch) | |
tree | 4d33a005fb868c77b222053e7eabdbcd4f71228b /doc | |
parent | 5a206569468ae390b0b3c81ba7cc421a0454a19c (diff) | |
download | ffmpeg-3e73d1429045cc2985772391e1f36a034650880d.tar.gz |
lavf: Add WebM DASH Manifest Muxer
This patch adds the ability to generate WebM DASH manifest XML using
ffmpeg. A sample command line would be as follows:
ffmpeg \
-f webm_dash_manifest -i video1.webm \
-f webm_dash_manifest -i video2.webm \
-f webm_dash_manifest -i audio1.webm \
-f webm_dash_manifest -i audio2.webm \
-map 0 -map 1 -map 2 -map 3 \
-c copy \
-f webm_dash_manifest \
-adaptation_sets “id=0,streams=0,1 id=1,streams=2,3” \
manifest.xml
It works by exporting necessary fields as metadata tags in matroskadec
and use those values to write the appropriate XML fields as per the WebM
DASH Specification [1]. Some ideas are adopted from webm-tools project
[2].
[1]
https://sites.google.com/a/webmproject.org/wiki/adaptive-streaming/webm-dash-specification
[2]
https://chromium.googlesource.com/webm/webm-tools/+/master/webm_dash_manifest/
Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'doc')
-rw-r--r-- | doc/muxers.texi | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/doc/muxers.texi b/doc/muxers.texi index dc2a08bbef..55e06a3437 100644 --- a/doc/muxers.texi +++ b/doc/muxers.texi @@ -1100,4 +1100,34 @@ Note: some codecs may need different options depending on the output format; the auto-detection of this can not work with the tee muxer. The main example is the @option{global_header} flag. +@section webm_dash_manifest + +WebM DASH Manifest muxer. + +This muxer implements the WebM DASH Manifest specification to generate the DASH manifest XML. + +@subsection Options + +This muxer supports the following options: + +@table @option +@item adaptation_sets +This option has the following syntax: "id=x,streams=a,b,c id=y,streams=d,e" where x and y are the +unique identifiers of the adaptation sets and a,b,c,d and e are the indices of the corresponding +audio and video streams. Any number of adaptation sets can be added using this option. +@end table + +@subsection Example +@example +ffmpeg -f webm_dash_manifest -i video1.webm \ + -f webm_dash_manifest -i video2.webm \ + -f webm_dash_manifest -i audio1.webm \ + -f webm_dash_manifest -i audio2.webm \ + -map 0 -map 1 -map 2 -map 3 \ + -c copy \ + -f webm_dash_manifest \ + -adaptation_sets "id=0,streams=0,1 id=1,streams=2,3" \ + manifest.xml +@end example + @c man end MUXERS |