fate: Add basic tests for WebM Dash Manifest
authorVignesh Venkatasubramanian <vigneshv@google.com>
Mon, 25 Aug 2014 22:03:45 +0000 (15:03 -0700)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 29 Aug 2014 02:25:29 +0000 (04:25 +0200)
Add fate tests that test out the functionality of WebM DASH
Manifest XML generation. This patch contains the vpx.mak file
changes and the reference gold XML files.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
tests/fate/vpx.mak
tests/ref/fate/webm-dash-manifest [new file with mode: 0644]
tests/ref/fate/webm-dash-manifest-unaligned-audio-streams [new file with mode: 0644]
tests/ref/fate/webm-dash-manifest-unaligned-video-streams [new file with mode: 0644]

index 54be950..77c7c76 100644 (file)
@@ -28,6 +28,15 @@ fate-vp6f: CMD = framecrc -flags +bitexact -i $(TARGET_SAMPLES)/flash-vp6/clip10
 FATE_VP8-$(call DEMDEC, FLV, VP8) += fate-vp8-alpha
 fate-vp8-alpha: CMD = framecrc -i $(TARGET_SAMPLES)/vp8_alpha/vp8_video_with_alpha.webm -vcodec copy
 
+FATE_VP8-$(call DEMDEC, FLV, VP8) += fate-webm-dash-manifest
+fate-webm-dash-manifest: CMD = run ffmpeg -f webm_dash_manifest -i $(TARGET_SAMPLES)/vp8/dash_video1.webm -f webm_dash_manifest -i $(TARGET_SAMPLES)/vp8/dash_video2.webm -f webm_dash_manifest -i $(TARGET_SAMPLES)/vp8/dash_audio1.webm -f webm_dash_manifest -i $(TARGET_SAMPLES)/vp8/dash_audio2.webm -c copy -map 0 -map 1 -map 2 -map 3 -f webm_dash_manifest -adaptation_sets "id=0,streams=0,1 id=1,streams=2,3" -
+
+FATE_VP8-$(call DEMDEC, FLV, VP8) += fate-webm-dash-manifest-unaligned-video-streams
+fate-webm-dash-manifest-unaligned-video-streams: CMD = run ffmpeg -f webm_dash_manifest -i $(TARGET_SAMPLES)/vp8/dash_video1.webm -f webm_dash_manifest -i $(TARGET_SAMPLES)/vp8/dash_video3.webm -c copy -map 0 -map 1 -f webm_dash_manifest -adaptation_sets "id=0,streams=0,1" -
+
+FATE_VP8-$(call DEMDEC, FLV, VP8) += fate-webm-dash-manifest-unaligned-audio-streams
+fate-webm-dash-manifest-unaligned-audio-streams: CMD = run ffmpeg -f webm_dash_manifest -i $(TARGET_SAMPLES)/vp8/dash_audio1.webm -f webm_dash_manifest -i $(TARGET_SAMPLES)/vp8/dash_audio3.webm -c copy -map 0 -map 1 -f webm_dash_manifest -adaptation_sets "id=0,streams=0,1" -
+
 FATE_SAMPLES_AVCONV += $(FATE_VP6-yes)
 fate-vp6: $(FATE_VP6-yes)
 
diff --git a/tests/ref/fate/webm-dash-manifest b/tests/ref/fate/webm-dash-manifest
new file mode 100644 (file)
index 0000000..1c1a679
--- /dev/null
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<MPD
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xmlns="urn:mpeg:DASH:schema:MPD:2011"
+  xsi:schemaLocation="urn:mpeg:DASH:schema:MPD:2011"
+  type="static"
+  mediaPresentationDuration="PT32.501S"
+  minBufferTime="PT1S"
+  profiles="urn:webm:dash:profile:webm-on-demand:2012">
+<Period id="0" start="PT0S" duration="PT32.501S" >
+<AdaptationSet id="0" mimeType="video/webm" codecs="vp8" lang="eng" width="640" height="360" bitstreamSwitching="true" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
+<Representation id="0" bandwidth="302355">
+<BaseURL>dash_video1.webm</BaseURL>
+<SegmentBase
+  indexRange="1115974-1116097">
+<Initialization
+  range="0-441" />
+</SegmentBase>
+</Representation>
+<Representation id="1" bandwidth="302355">
+<BaseURL>dash_video2.webm</BaseURL>
+<SegmentBase
+  indexRange="1115782-1115886">
+<Initialization
+  range="0-249" />
+</SegmentBase>
+</Representation>
+</AdaptationSet>
+<AdaptationSet id="1" mimeType="audio/webm" codecs="vorbis" lang="eng" audioSamplingRate="44100" bitstreamSwitching="true" subsegmentAlignment="false" subsegmentStartsWithSAP="1">
+<Representation id="0" bandwidth="82867">
+<BaseURL>dash_audio1.webm</BaseURL>
+<SegmentBase
+  indexRange="335488-335612">
+<Initialization
+  range="0-4103" />
+</SegmentBase>
+</Representation>
+<Representation id="1" bandwidth="82814">
+<BaseURL>dash_audio2.webm</BaseURL>
+<SegmentBase
+  indexRange="335312-335432">
+<Initialization
+  range="0-3927" />
+</SegmentBase>
+</Representation>
+</AdaptationSet>
+</Period>
+</MPD>
diff --git a/tests/ref/fate/webm-dash-manifest-unaligned-audio-streams b/tests/ref/fate/webm-dash-manifest-unaligned-audio-streams
new file mode 100644 (file)
index 0000000..5e1743e
--- /dev/null
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<MPD
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xmlns="urn:mpeg:DASH:schema:MPD:2011"
+  xsi:schemaLocation="urn:mpeg:DASH:schema:MPD:2011"
+  type="static"
+  mediaPresentationDuration="PT32.501S"
+  minBufferTime="PT1S"
+  profiles="urn:webm:dash:profile:webm-on-demand:2012">
+<Period id="0" start="PT0S" duration="PT32.501S" >
+<AdaptationSet id="0" mimeType="audio/webm" codecs="vorbis" lang="eng" audioSamplingRate="44100" bitstreamSwitching="false" subsegmentAlignment="false" subsegmentStartsWithSAP="1">
+<Representation id="0" bandwidth="82867">
+<BaseURL>dash_audio1.webm</BaseURL>
+<SegmentBase
+  indexRange="335488-335612">
+<Initialization
+  range="0-4103" />
+</SegmentBase>
+</Representation>
+<Representation id="1" bandwidth="83502">
+<BaseURL>dash_audio3.webm</BaseURL>
+<SegmentBase
+  indexRange="335312-335432">
+<Initialization
+  range="0-3927" />
+</SegmentBase>
+</Representation>
+</AdaptationSet>
+</Period>
+</MPD>
diff --git a/tests/ref/fate/webm-dash-manifest-unaligned-video-streams b/tests/ref/fate/webm-dash-manifest-unaligned-video-streams
new file mode 100644 (file)
index 0000000..3576b60
--- /dev/null
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<MPD
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xmlns="urn:mpeg:DASH:schema:MPD:2011"
+  xsi:schemaLocation="urn:mpeg:DASH:schema:MPD:2011"
+  type="static"
+  mediaPresentationDuration="PT32.48S"
+  minBufferTime="PT1S"
+  profiles="urn:webm:dash:profile:webm-on-demand:2012">
+<Period id="0" start="PT0S" duration="PT32.48S" >
+<AdaptationSet id="0" mimeType="video/webm" codecs="vp8" lang="eng" width="640" height="360" bitstreamSwitching="true" subsegmentAlignment="false" subsegmentStartsWithSAP="0">
+<Representation id="0" bandwidth="302355">
+<BaseURL>dash_video1.webm</BaseURL>
+<SegmentBase
+  indexRange="1115974-1116097">
+<Initialization
+  range="0-441" />
+</SegmentBase>
+</Representation>
+<Representation id="1" bandwidth="321574">
+<BaseURL>dash_video3.webm</BaseURL>
+<SegmentBase
+  indexRange="1116070-1116461">
+<Initialization
+  range="0-249" />
+</SegmentBase>
+</Representation>
+</AdaptationSet>
+</Period>
+</MPD>