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 /libavformat/allformats.c | |
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 'libavformat/allformats.c')
-rw-r--r-- | libavformat/allformats.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/libavformat/allformats.c b/libavformat/allformats.c index 3e00cae3fb..00de817775 100644 --- a/libavformat/allformats.c +++ b/libavformat/allformats.c @@ -307,6 +307,7 @@ void av_register_all(void) REGISTER_MUXDEMUX(WAV, wav); REGISTER_DEMUXER (WC3, wc3); REGISTER_MUXER (WEBM, webm); + REGISTER_MUXDEMUX(WEBM_DASH_MANIFEST, webm_dash_manifest); REGISTER_MUXDEMUX(WEBVTT, webvtt); REGISTER_DEMUXER (WSAUD, wsaud); REGISTER_DEMUXER (WSVQA, wsvqa); |