Bug 813562 - Test case for garbled DASH MPD and WebM media r=cpearce
authorSteve Workman <sworkman@mozilla.com>
Thu, 31 Jan 2013 18:41:26 -0800
changeset 120548 41075512e6528af980d138f4cbfdaea57ac947f5
parent 120547 a350ac5a27ecc8f41b9ba4f807e3192467f764b2
child 120549 050a0a27024a47c81a07942cdcf3f8a85c00c26e
push id24256
push userryanvm@gmail.com
push dateFri, 01 Feb 2013 20:50:01 +0000
treeherdermozilla-central@4e7c92906a79 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerscpearce
bugs813562
milestone21.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 813562 - Test case for garbled DASH MPD and WebM media r=cpearce
content/media/test/Makefile.in
content/media/test/dash/dash-manifest-garbled-webm.mpd
content/media/test/dash/dash-manifest-garbled.mpd
content/media/test/dash/garbled.webm
content/media/test/manifest.js
--- a/content/media/test/Makefile.in
+++ b/content/media/test/Makefile.in
@@ -344,16 +344,19 @@ MOCHITEST_FILES += \
     test_can_play_type_dash.html \
     dash/dash-manifest.mpd \
     dash/dash-manifest-sjs.mpd \
     test_dash_detect_stream_switch.html \
     dash_detect_stream_switch.sjs \
     dash/dash-webm-video-320x180.webm \
     dash/dash-webm-video-428x240.webm \
     dash/dash-webm-audio-128k.webm \
+    dash/dash-manifest-garbled.mpd \
+    dash/dash-manifest-garbled-webm.mpd \
+    dash/garbled.webm \
     $(NULL)
 else
 MOCHITEST_FILES += \
     test_can_play_type_no_dash.html \
     $(NULL)
 endif
 
 ifdef MOZ_WAVE
new file mode 100644
--- /dev/null
+++ b/content/media/test/dash/dash-manifest-garbled-webm.mpd
@@ -0,0 +1,35 @@
+<?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="PT3.958S"
+  minBufferTime="PT1S"
+  profiles="urn:webm:dash:profile:webm-on-demand:2012">
+  <BaseURL>./</BaseURL>
+  <Period id="0" start="PT0S" duration="PT3.958S" >
+    <AdaptationSet id="0" mimeType="video/webm" codecs="vp8" lang="eng" subsegmentAlignment="true" subsegmentStartsWithSAP="1" bitstreamSwitching="true">
+      <Representation id="0" bandwidth="54207" width="320" height="180">
+        <BaseURL>garbled.webm</BaseURL>
+        <SegmentBase indexRange="35090-35123">
+          <Initialization range="0-228" />
+        </SegmentBase>
+      </Representation>
+      <Representation id="1" bandwidth="78006" width="428" height="240">
+        <BaseURL>dash-webm-video-428x240.webm</BaseURL>
+        <SegmentBase indexRange="50173-50206">
+          <Initialization range="0-228" />
+        </SegmentBase>
+      </Representation>
+    </AdaptationSet>
+    <AdaptationSet id="1" mimeType="audio/webm" codecs="vorbis" lang="eng" audioSamplingRate="48000" subsegmentStartsWithSAP="1">
+      <Representation id="2" bandwidth="57264">
+        <BaseURL>dash-webm-audio-128k.webm</BaseURL>
+        <SegmentBase indexRange="41927-41946">
+          <Initialization range="0-4521" />
+        </SegmentBase>
+      </Representation>
+    </AdaptationSet>
+  </Period>
+</MPD>
new file mode 100644
--- /dev/null
+++ b/content/media/test/dash/dash-manifest-garbled.mpd
@@ -0,0 +1,1 @@
+PD94bWwgdmVyc2lvbj0iMS4wIiA/PjxNUEQgbWVkaWFQcmVzZW50YXRpb25EdXJhdGlvbj0iUFQxOS41MVMiIG1pbkJ1ZmZlclRpbWU9IlBUMVMiIHByb2ZpbGVzPSJ1cm46d2VibTpkYXNoOnByb2ZpbGU6d2VibS1vbi1kZW1hbmQ6MjAxMiIgdHlwZT0ic3RhdGljIiB4bWxucz0idXJuOm1wZWc6REFTSDpzY2hlbWE6TVBEOjIwMTEiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhzaTpzY2hlbWFMb2NhdGlvbj0idXJuOm1wZWc6REFTSDpzY2hlbWE6TVBEOjIwMTEiPjxCYXNlVVJMPmh0dHA6Ly93d3cuZ29vZ2xlLmNvbTwvQmFzZVVSTD48UGVyaW9kIGR1cmF0aW9uPSJQVDE5LjUxUyIgaWQ9IjAiIHN0YXJ0PSJQVDBTIj48QWRhcHRhdGlvblNldCBhdWRpb1NhbXBsaW5nUmF0ZT0iNDgwMDAiIGNvZGVjcz0idm9yYmlzIiBpZD0iMSIgbGFuZz0iZW5nIiBtaW1lVHlwZT0iYXVkaW8vd2VibSIgc3Vic2VnbWVudFN0YXJ0c1dpdGhTQVA9IjEiPjxSZXByZXNlbnRhdGlvbiBiYW5kd2lkdGg9IjIwMTA5IiBpZD0iMiI+PEJhc2VVUkwvPjxTZWdtZW50QmFzZSBpbmRleFJhbmdlPSIzMTk3ODAtMzIwNjEyIj48SW5pdGlhbGl6YXRpb24gcmFuZ2U9IjAtMjA4NzAiLz48L1NlZ21lbnRCYXNlPjwvUmVwcmVzZW50YXRpb24+PC9BZGFwdGF0aW9uU2V0PjwvUGVyaW9kPjwvTVBEPg
new file mode 100644
--- /dev/null
+++ b/content/media/test/dash/garbled.webm
@@ -0,0 +1,1 @@
+PD94bWwgdmVyc2lvbj0iMS4wIiA/PjxNUEQgbWVkaWFQcmVzZW50YXRpb25EdXJhdGlvbj0iUFQxOS41MVMiIG1pbkJ1ZmZlclRpbWU9IlBUMVMiIHByb2ZpbGVzPSJ1cm46d2VibTpkYXNoOnByb2ZpbGU6d2VibS1vbi1kZW1hbmQ6MjAxMiIgdHlwZT0ic3RhdGljIiB4bWxucz0idXJuOm1wZWc6REFTSDpzY2hlbWE6TVBEOjIwMTEiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhzaTpzY2hlbWFMb2NhdGlvbj0idXJuOm1wZWc6REFTSDpzY2hlbWE6TVBEOjIwMTEiPjxCYXNlVVJMPmh0dHA6Ly93d3cuZ29vZ2xlLmNvbTwvQmFzZVVSTD48UGVyaW9kIGR1cmF0aW9uPSJQVDE5LjUxUyIgaWQ9IjAiIHN0YXJ0PSJQVDBTIj48QWRhcHRhdGlvblNldCBhdWRpb1NhbXBsaW5nUmF0ZT0iNDgwMDAiIGNvZGVjcz0idm9yYmlzIiBpZD0iMSIgbGFuZz0iZW5nIiBtaW1lVHlwZT0iYXVkaW8vd2VibSIgc3Vic2VnbWVudFN0YXJ0c1dpdGhTQVA9IjEiPjxSZXByZXNlbnRhdGlvbiBiYW5kd2lkdGg9IjIwMTA5IiBpZD0iMiI+PEJhc2VVUkwvPjxTZWdtZW50QmFzZSBpbmRleFJhbmdlPSIzMTk3ODAtMzIwNjEyIj48SW5pdGlhbGl6YXRpb24gcmFuZ2U9IjAtMjA4NzAiLz48L1NlZ21lbnRCYXNlPjwvUmVwcmVzZW50YXRpb24+PC9BZGFwdGF0aW9uU2V0PjwvUGVyaW9kPjwvTVBEPg
--- a/content/media/test/manifest.js
+++ b/content/media/test/manifest.js
@@ -352,16 +352,18 @@ var g404Tests = [
 // an error and emptied event, and no loadedmetadata or ended event.
 var gDecodeErrorTests = [
   // Valid files with unsupported codecs
   { name:"r11025_msadpcm_c1.wav", type:"audio/x-wav" },
   { name:"dirac.ogg", type:"video/ogg" },
   // Invalid files
   { name:"bogus.wav", type:"audio/x-wav" },
   { name:"bogus.ogv", type:"video/ogg" },
+  { name:"dash-manifest-garbled.mpd", type:"application/dash+xml" },
+  { name:"dash-manifest-garbled-webm.mpd", type:"application/dash+xml" },
 
   { name:"bogus.duh", type:"bogus/duh" }
 ];
 
 // These are files that are used for media fragments tests
 var gFragmentTests = [
   { name:"big.wav", type:"audio/x-wav", duration:9.278981, size:102444 }
 ];