summaryrefslogtreecommitdiffstats
path: root/layout/reftests/ogg-video
diff options
context:
space:
mode:
Diffstat (limited to 'layout/reftests/ogg-video')
-rw-r--r--layout/reftests/ogg-video/444-1-ref.html20
-rw-r--r--layout/reftests/ogg-video/444-1.html20
-rw-r--r--layout/reftests/ogg-video/aspect-ratio-1-ref.html6
-rw-r--r--layout/reftests/ogg-video/aspect-ratio-1a.xhtml14
-rw-r--r--layout/reftests/ogg-video/aspect-ratio-1b.xhtml14
-rw-r--r--layout/reftests/ogg-video/aspect-ratio-2-ref.html6
-rw-r--r--layout/reftests/ogg-video/aspect-ratio-2a.xhtml14
-rw-r--r--layout/reftests/ogg-video/aspect-ratio-2b.xhtml14
-rw-r--r--layout/reftests/ogg-video/aspect-ratio-3-ref.xhtml14
-rw-r--r--layout/reftests/ogg-video/aspect-ratio-3a.xhtml14
-rw-r--r--layout/reftests/ogg-video/aspect-ratio-3b.xhtml14
-rw-r--r--layout/reftests/ogg-video/basic-1-ref.html6
-rw-r--r--layout/reftests/ogg-video/basic-1.xhtml14
-rw-r--r--layout/reftests/ogg-video/black100x100-aspect3to2.ogvbin0 -> 3428 bytes
-rw-r--r--layout/reftests/ogg-video/black140x100.ogvbin0 -> 2871 bytes
-rw-r--r--layout/reftests/ogg-video/black29x19offset.ogvbin0 -> 3988 bytes
-rw-r--r--layout/reftests/ogg-video/blue140x100.pngbin0 -> 277 bytes
-rw-r--r--layout/reftests/ogg-video/blue250x200.pngbin0 -> 1157 bytes
-rw-r--r--layout/reftests/ogg-video/canvas-1a.xhtml29
-rw-r--r--layout/reftests/ogg-video/canvas-1b.xhtml27
-rw-r--r--layout/reftests/ogg-video/clipping-1-ref.html9
-rw-r--r--layout/reftests/ogg-video/clipping-1a.html8
-rw-r--r--layout/reftests/ogg-video/empty-1-ref.html5
-rw-r--r--layout/reftests/ogg-video/empty-1a.html6
-rw-r--r--layout/reftests/ogg-video/empty-1b.html6
-rw-r--r--layout/reftests/ogg-video/encoded-aspect-ratio-1-ref.html19
-rw-r--r--layout/reftests/ogg-video/encoded-aspect-ratio-1.html29
-rw-r--r--layout/reftests/ogg-video/green70x30.pngbin0 -> 224 bytes
-rw-r--r--layout/reftests/ogg-video/object-aspect-ratio-1a.xhtml14
-rw-r--r--layout/reftests/ogg-video/object-aspect-ratio-1b.xhtml14
-rw-r--r--layout/reftests/ogg-video/object-aspect-ratio-2a.xhtml14
-rw-r--r--layout/reftests/ogg-video/object-aspect-ratio-2b.xhtml14
-rw-r--r--layout/reftests/ogg-video/offset-1-ref.html6
-rw-r--r--layout/reftests/ogg-video/offset-1.xhtml14
-rw-r--r--layout/reftests/ogg-video/poster-1.html7
-rw-r--r--layout/reftests/ogg-video/poster-10.html18
-rw-r--r--layout/reftests/ogg-video/poster-11.html29
-rw-r--r--layout/reftests/ogg-video/poster-12.html40
-rw-r--r--layout/reftests/ogg-video/poster-13.html8
-rw-r--r--layout/reftests/ogg-video/poster-15.html13
-rw-r--r--layout/reftests/ogg-video/poster-2.html7
-rw-r--r--layout/reftests/ogg-video/poster-3.html11
-rw-r--r--layout/reftests/ogg-video/poster-4.html14
-rw-r--r--layout/reftests/ogg-video/poster-5.html13
-rw-r--r--layout/reftests/ogg-video/poster-6.html12
-rw-r--r--layout/reftests/ogg-video/poster-7.html14
-rw-r--r--layout/reftests/ogg-video/poster-8.html12
-rw-r--r--layout/reftests/ogg-video/poster-ref-black140x100.html6
-rw-r--r--layout/reftests/ogg-video/poster-ref-blue125x100.html6
-rw-r--r--layout/reftests/ogg-video/poster-ref-blue140x100.html6
-rw-r--r--layout/reftests/ogg-video/poster-ref-blue250x200.html6
-rw-r--r--layout/reftests/ogg-video/poster-ref-blue400x300.html8
-rw-r--r--layout/reftests/ogg-video/poster-ref-green70x30.html6
-rw-r--r--layout/reftests/ogg-video/poster-ref-red140x100.html6
-rw-r--r--layout/reftests/ogg-video/red140x100.pngbin0 -> 274 bytes
-rw-r--r--layout/reftests/ogg-video/red160x120.pngbin0 -> 720 bytes
-rw-r--r--layout/reftests/ogg-video/reftest-stylo.list65
-rw-r--r--layout/reftests/ogg-video/reftest.list35
-rw-r--r--layout/reftests/ogg-video/seek420.ogvbin0 -> 30163 bytes
-rw-r--r--layout/reftests/ogg-video/seek444.ogvbin0 -> 30408 bytes
-rw-r--r--layout/reftests/ogg-video/zoomed-1-ref.html6
-rw-r--r--layout/reftests/ogg-video/zoomed-1.xhtml15
62 files changed, 747 insertions, 0 deletions
diff --git a/layout/reftests/ogg-video/444-1-ref.html b/layout/reftests/ogg-video/444-1-ref.html
new file mode 100644
index 000000000..b544a4b4d
--- /dev/null
+++ b/layout/reftests/ogg-video/444-1-ref.html
@@ -0,0 +1,20 @@
+<!DOCTYPE HTML>
+<html class="reftest-wait">
+<body>
+<video id="v1" style="position:absolute; left:0; top:0"></video>
+<!-- hide bottom of video -->
+<div style="position:absolute; top:120px; left:0; right:0; bottom:0; background:black"></div>
+<script>
+function doTest() {
+ // Set source now so that the loadeddata event can't fire before
+ // this function runs.
+ v1.src = "seek420.ogv";
+ v1.play();
+ v1.addEventListener("loadeddata", function() {
+ setTimeout(function() {
+ document.documentElement.removeAttribute('class');
+ }, 50);
+ });
+}
+document.addEventListener("MozReftestInvalidate", doTest, false);
+</script>
diff --git a/layout/reftests/ogg-video/444-1.html b/layout/reftests/ogg-video/444-1.html
new file mode 100644
index 000000000..2921ea07d
--- /dev/null
+++ b/layout/reftests/ogg-video/444-1.html
@@ -0,0 +1,20 @@
+<!DOCTYPE HTML>
+<html class="reftest-wait">
+<body>
+<video id="v1" style="position:absolute; left:0; top:0"></video>
+<!-- hide bottom of video -->
+<div style="position:absolute; top:120px; left:0; right:0; bottom:0; background:black"></div>
+<script>
+function doTest() {
+ // Set source now so that the loadeddata event can't fire before
+ // this function runs.
+ v1.src = "seek444.ogv";
+ v1.play();
+ v1.addEventListener("loadeddata", function() {
+ setTimeout(function() {
+ document.documentElement.removeAttribute('class');
+ }, 50);
+ });
+}
+document.addEventListener("MozReftestInvalidate", doTest, false);
+</script>
diff --git a/layout/reftests/ogg-video/aspect-ratio-1-ref.html b/layout/reftests/ogg-video/aspect-ratio-1-ref.html
new file mode 100644
index 000000000..93391ed83
--- /dev/null
+++ b/layout/reftests/ogg-video/aspect-ratio-1-ref.html
@@ -0,0 +1,6 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<div style="width:140px; height:100px; position:relative; left:100px; top:100px; background:black;"></div>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/aspect-ratio-1a.xhtml b/layout/reftests/ogg-video/aspect-ratio-1a.xhtml
new file mode 100644
index 000000000..c70d3248f
--- /dev/null
+++ b/layout/reftests/ogg-video/aspect-ratio-1a.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject filter="url(../filters.svg#ThresholdRGB)" x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body style="background:white;">
+<video src="black140x100.ogv" style="width:340px; height:100px; position:relative; top:100px;"></video>
+</body>
+</html>
+</foreignObject>
+</svg>
diff --git a/layout/reftests/ogg-video/aspect-ratio-1b.xhtml b/layout/reftests/ogg-video/aspect-ratio-1b.xhtml
new file mode 100644
index 000000000..b59352b51
--- /dev/null
+++ b/layout/reftests/ogg-video/aspect-ratio-1b.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject filter="url(../filters.svg#ThresholdRGB)" x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body style="background:white;">
+<video src="black140x100.ogv" style="width:140px; height:300px; position:relative; left:100px;"></video>
+</body>
+</html>
+</foreignObject>
+</svg>
diff --git a/layout/reftests/ogg-video/aspect-ratio-2-ref.html b/layout/reftests/ogg-video/aspect-ratio-2-ref.html
new file mode 100644
index 000000000..4f78ab4d2
--- /dev/null
+++ b/layout/reftests/ogg-video/aspect-ratio-2-ref.html
@@ -0,0 +1,6 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<div style="width:280px; height:200px; position:relative; left:200px; top:200px; background:black;"></div>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/aspect-ratio-2a.xhtml b/layout/reftests/ogg-video/aspect-ratio-2a.xhtml
new file mode 100644
index 000000000..f708ec90a
--- /dev/null
+++ b/layout/reftests/ogg-video/aspect-ratio-2a.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject filter="url(../filters.svg#ThresholdRGB)" x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body style="background:white;">
+<video src="black140x100.ogv" style="width:680px; height:200px; position:relative; top:200px;"></video>
+</body>
+</html>
+</foreignObject>
+</svg>
diff --git a/layout/reftests/ogg-video/aspect-ratio-2b.xhtml b/layout/reftests/ogg-video/aspect-ratio-2b.xhtml
new file mode 100644
index 000000000..e7469031a
--- /dev/null
+++ b/layout/reftests/ogg-video/aspect-ratio-2b.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject filter="url(../filters.svg#ThresholdRGB)" x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body style="background:white;">
+<video src="black140x100.ogv" style="width:280px; height:600px; position:relative; left:200px;"></video>
+</body>
+</html>
+</foreignObject>
+</svg>
diff --git a/layout/reftests/ogg-video/aspect-ratio-3-ref.xhtml b/layout/reftests/ogg-video/aspect-ratio-3-ref.xhtml
new file mode 100644
index 000000000..73662654f
--- /dev/null
+++ b/layout/reftests/ogg-video/aspect-ratio-3-ref.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject filter="url(../filters.svg#ThresholdRGB)" x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body style="background:white;">
+<video src="black140x100.ogv" style="width:280px; height:200px;"></video>
+</body>
+</html>
+</foreignObject>
+</svg>
diff --git a/layout/reftests/ogg-video/aspect-ratio-3a.xhtml b/layout/reftests/ogg-video/aspect-ratio-3a.xhtml
new file mode 100644
index 000000000..3c253e8f8
--- /dev/null
+++ b/layout/reftests/ogg-video/aspect-ratio-3a.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject filter="url(../filters.svg#ThresholdRGB)" x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body style="background:white;">
+<video src="black140x100.ogv" width="280"></video>
+</body>
+</html>
+</foreignObject>
+</svg>
diff --git a/layout/reftests/ogg-video/aspect-ratio-3b.xhtml b/layout/reftests/ogg-video/aspect-ratio-3b.xhtml
new file mode 100644
index 000000000..cc6ec4c75
--- /dev/null
+++ b/layout/reftests/ogg-video/aspect-ratio-3b.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject filter="url(../filters.svg#ThresholdRGB)" x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body style="background:white;">
+<video src="black140x100.ogv" height="200"></video>
+</body>
+</html>
+</foreignObject>
+</svg>
diff --git a/layout/reftests/ogg-video/basic-1-ref.html b/layout/reftests/ogg-video/basic-1-ref.html
new file mode 100644
index 000000000..aca3dcb9c
--- /dev/null
+++ b/layout/reftests/ogg-video/basic-1-ref.html
@@ -0,0 +1,6 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<div style="width:140px; height:100px; background:black;"></div>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/basic-1.xhtml b/layout/reftests/ogg-video/basic-1.xhtml
new file mode 100644
index 000000000..4899dc29f
--- /dev/null
+++ b/layout/reftests/ogg-video/basic-1.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject filter="url(../filters.svg#ThresholdRGB)" x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body style="background:white;">
+<video src="black140x100.ogv"></video>
+</body>
+</html>
+</foreignObject>
+</svg>
diff --git a/layout/reftests/ogg-video/black100x100-aspect3to2.ogv b/layout/reftests/ogg-video/black100x100-aspect3to2.ogv
new file mode 100644
index 000000000..81fe51ffb
--- /dev/null
+++ b/layout/reftests/ogg-video/black100x100-aspect3to2.ogv
Binary files differ
diff --git a/layout/reftests/ogg-video/black140x100.ogv b/layout/reftests/ogg-video/black140x100.ogv
new file mode 100644
index 000000000..ab146ebe2
--- /dev/null
+++ b/layout/reftests/ogg-video/black140x100.ogv
Binary files differ
diff --git a/layout/reftests/ogg-video/black29x19offset.ogv b/layout/reftests/ogg-video/black29x19offset.ogv
new file mode 100644
index 000000000..b515ebd1f
--- /dev/null
+++ b/layout/reftests/ogg-video/black29x19offset.ogv
Binary files differ
diff --git a/layout/reftests/ogg-video/blue140x100.png b/layout/reftests/ogg-video/blue140x100.png
new file mode 100644
index 000000000..f4c3973fc
--- /dev/null
+++ b/layout/reftests/ogg-video/blue140x100.png
Binary files differ
diff --git a/layout/reftests/ogg-video/blue250x200.png b/layout/reftests/ogg-video/blue250x200.png
new file mode 100644
index 000000000..5eb0b5251
--- /dev/null
+++ b/layout/reftests/ogg-video/blue250x200.png
Binary files differ
diff --git a/layout/reftests/ogg-video/canvas-1a.xhtml b/layout/reftests/ogg-video/canvas-1a.xhtml
new file mode 100644
index 000000000..9f115e785
--- /dev/null
+++ b/layout/reftests/ogg-video/canvas-1a.xhtml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1" class="reftest-wait">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject filter="url(../filters.svg#ThresholdRGB)" x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body>
+<canvas id="canvas" width="200" height="200"></canvas>
+<script>
+var video = document.createElement("video");
+video.src = "black140x100.ogv";
+video.load();
+function draw() {
+ var canvas = document.getElementById("canvas");
+ var ctx = canvas.getContext("2d");
+ try {
+ ctx.drawImage(video, 0, 0, video.videoWidth, video.videoHeight);
+ } catch (e) {
+ }
+ document.documentElement.removeAttribute("class");
+}
+video.addEventListener("loadeddata", draw, false);
+</script>
+</body>
+</html>
+</foreignObject>
+</svg>
diff --git a/layout/reftests/ogg-video/canvas-1b.xhtml b/layout/reftests/ogg-video/canvas-1b.xhtml
new file mode 100644
index 000000000..4524593e9
--- /dev/null
+++ b/layout/reftests/ogg-video/canvas-1b.xhtml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject filter="url(../filters.svg#ThresholdRGB)" x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body>
+<canvas id="canvas" width="200" height="200"></canvas>
+<script>
+function draw() {
+ var video = document.getElementById("video");
+ var canvas = document.getElementById("canvas");
+ var ctx = canvas.getContext("2d");
+ try {
+ ctx.drawImage(video, 0, 0, video.videoWidth, video.videoHeight);
+ } catch (e) {
+ }
+ document.documentElement.removeAttribute("class");
+}
+</script>
+<video id="video" src="black140x100.ogv" onloadeddata="draw()" style="opacity:0"></video>
+</body>
+</html>
+</foreignObject>
+</svg>
diff --git a/layout/reftests/ogg-video/clipping-1-ref.html b/layout/reftests/ogg-video/clipping-1-ref.html
new file mode 100644
index 000000000..67782811c
--- /dev/null
+++ b/layout/reftests/ogg-video/clipping-1-ref.html
@@ -0,0 +1,9 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white">
+<div style="position:absolute; left:0; top:0; width:200px; height:600px;">
+ <video src="black140x100.ogv" style="width:400px; margin-left:-100px;"></video>
+</div>
+<div style="position:absolute; left:200px; top:0; background:white; width:200px; height:600px;"></div>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/clipping-1a.html b/layout/reftests/ogg-video/clipping-1a.html
new file mode 100644
index 000000000..cfae72ced
--- /dev/null
+++ b/layout/reftests/ogg-video/clipping-1a.html
@@ -0,0 +1,8 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white">
+<div style="overflow:hidden; position:absolute; left:0; top:0; width:200px; height:600px;">
+ <video src="black140x100.ogv" style="width:400px; margin-left:-100px;"></video>
+</div>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/empty-1-ref.html b/layout/reftests/ogg-video/empty-1-ref.html
new file mode 100644
index 000000000..fcc769320
--- /dev/null
+++ b/layout/reftests/ogg-video/empty-1-ref.html
@@ -0,0 +1,5 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/empty-1a.html b/layout/reftests/ogg-video/empty-1a.html
new file mode 100644
index 000000000..fc1421a81
--- /dev/null
+++ b/layout/reftests/ogg-video/empty-1a.html
@@ -0,0 +1,6 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<video src="black140x100.ogv" style="width:0"></video>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/empty-1b.html b/layout/reftests/ogg-video/empty-1b.html
new file mode 100644
index 000000000..9dd17dbba
--- /dev/null
+++ b/layout/reftests/ogg-video/empty-1b.html
@@ -0,0 +1,6 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<video src="black140x100.ogv" style="height:0"></video>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/encoded-aspect-ratio-1-ref.html b/layout/reftests/ogg-video/encoded-aspect-ratio-1-ref.html
new file mode 100644
index 000000000..d9c0054eb
--- /dev/null
+++ b/layout/reftests/ogg-video/encoded-aspect-ratio-1-ref.html
@@ -0,0 +1,19 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<div style="background-color: black; width: 150px; height: 100px; position: absolute; left: 10px; top: 10px;"></div>
+
+<!-- Left side vertical. -->
+<div style="position: absolute; left: 9px; top: 9px; width: 2px; height: 102px; z-index: 2; background: red;"></div>
+
+<!-- Right side vertical. -->
+<div style="position: absolute; left: 159px; top: 9px; width: 2px; height: 102px; z-index: 2; background: red;"></div>
+
+<!-- Top horizontal bar. -->
+<div style="position: absolute; left: 9px; top: 9px; width: 152px; height: 2px; z-index: 2; background: red;"></div>
+
+<!-- Bottom horizontal bar. -->
+<div style="position: absolute; left: 9px; top: 109px; width: 152px; height: 2px; z-index: 2; background: red;"></div>
+
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/encoded-aspect-ratio-1.html b/layout/reftests/ogg-video/encoded-aspect-ratio-1.html
new file mode 100644
index 000000000..238fdbfe8
--- /dev/null
+++ b/layout/reftests/ogg-video/encoded-aspect-ratio-1.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<!--
+ Test if video displays correctly with a 3:2 aspect ratio.
+ It should display at w=150 h=100.
+ On some Linux systems, the scaling to preserve the aspect ratio can sample
+ the pixels outside visible region. This results in a thin grey line down
+ some sides of the scaled picture. We add red bars over the edges to
+ overwrite such happenings, to make the test reliable.
+-->
+<video src="black100x100-aspect3to2.ogv"
+ style="position:absolute; left: 10px; top: 10px; z-index: 1;">
+</video>
+
+<!-- Left side vertical. -->
+<div style="position: absolute; left: 9px; top: 9px; width: 2px; height: 102px; z-index: 2; background: red;"></div>
+
+<!-- Right side vertical. -->
+<div style="position: absolute; left: 159px; top: 9px; width: 2px; height: 102px; z-index: 2; background: red;"></div>
+
+<!-- Top horizontal bar. -->
+<div style="position: absolute; left: 9px; top: 9px; width: 152px; height: 2px; z-index: 2; background: red;"></div>
+
+<!-- Bottom horizontal bar. -->
+<div style="position: absolute; left: 9px; top: 109px; width: 152px; height: 2px; z-index: 2; background: red;"></div>
+
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/green70x30.png b/layout/reftests/ogg-video/green70x30.png
new file mode 100644
index 000000000..b2bf32762
--- /dev/null
+++ b/layout/reftests/ogg-video/green70x30.png
Binary files differ
diff --git a/layout/reftests/ogg-video/object-aspect-ratio-1a.xhtml b/layout/reftests/ogg-video/object-aspect-ratio-1a.xhtml
new file mode 100644
index 000000000..29fd619fd
--- /dev/null
+++ b/layout/reftests/ogg-video/object-aspect-ratio-1a.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject filter="url(../filters.svg#ThresholdRGB)" x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body style="background:white;">
+<object data="black140x100.ogv" style="width:340px; height:100px; position:relative; top:100px;"></object>
+</body>
+</html>
+</foreignObject>
+</svg>
diff --git a/layout/reftests/ogg-video/object-aspect-ratio-1b.xhtml b/layout/reftests/ogg-video/object-aspect-ratio-1b.xhtml
new file mode 100644
index 000000000..ea1f02ff7
--- /dev/null
+++ b/layout/reftests/ogg-video/object-aspect-ratio-1b.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject filter="url(../filters.svg#ThresholdRGB)" x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body style="background:white;">
+<object data="black140x100.ogv" style="width:140px; height:300px; position:relative; left:100px;"></object>
+</body>
+</html>
+</foreignObject>
+</svg>
diff --git a/layout/reftests/ogg-video/object-aspect-ratio-2a.xhtml b/layout/reftests/ogg-video/object-aspect-ratio-2a.xhtml
new file mode 100644
index 000000000..36b4cc0c1
--- /dev/null
+++ b/layout/reftests/ogg-video/object-aspect-ratio-2a.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject filter="url(../filters.svg#ThresholdRGB)" x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body style="background:white;">
+<object data="black140x100.ogv" style="width:680px; height:200px; position:relative; top:200px;"></object>
+</body>
+</html>
+</foreignObject>
+</svg>
diff --git a/layout/reftests/ogg-video/object-aspect-ratio-2b.xhtml b/layout/reftests/ogg-video/object-aspect-ratio-2b.xhtml
new file mode 100644
index 000000000..d557921d2
--- /dev/null
+++ b/layout/reftests/ogg-video/object-aspect-ratio-2b.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject filter="url(../filters.svg#ThresholdRGB)" x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body style="background:white;">
+<object data="black140x100.ogv" style="width:280px; height:600px; position:relative; left:200px;"></object>
+</body>
+</html>
+</foreignObject>
+</svg>
diff --git a/layout/reftests/ogg-video/offset-1-ref.html b/layout/reftests/ogg-video/offset-1-ref.html
new file mode 100644
index 000000000..61a1dc83a
--- /dev/null
+++ b/layout/reftests/ogg-video/offset-1-ref.html
@@ -0,0 +1,6 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<div style="width:29px; height:29px; background:black;"></div>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/offset-1.xhtml b/layout/reftests/ogg-video/offset-1.xhtml
new file mode 100644
index 000000000..350473490
--- /dev/null
+++ b/layout/reftests/ogg-video/offset-1.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject filter="url(../filters.svg#ThresholdRGB)" x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body style="background:white;">
+<video src="black29x19offset.ogv"></video>
+</body>
+</html>
+</foreignObject>
+</svg>
diff --git a/layout/reftests/ogg-video/poster-1.html b/layout/reftests/ogg-video/poster-1.html
new file mode 100644
index 000000000..15e3cb546
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-1.html
@@ -0,0 +1,7 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<!-- Ensure video element displays at poster size when video's intrinsic size isn't available. -->
+<video preload="none" src="black140x100.ogv" poster="blue250x200.png"></video>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-10.html b/layout/reftests/ogg-video/poster-10.html
new file mode 100644
index 000000000..fcc33f180
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-10.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML>
+<html class="reftest-wait">
+<!-- Test: Create video, add poster, load. Should display poster. -->
+<script>
+function runTest() {
+ var v = document.createElement('video');
+ v.addEventListener('loadeddata', function(){setTimeout(function(){document.documentElement.className = '';}, 0);}, false);
+ v.id = 'v';
+ v.src = "black140x100.ogv";
+ v.poster = "blue250x200.png";
+ v.preload = "auto";
+ document.body.appendChild(v);
+}
+
+</script>
+<body style="background:white;" onload="runTest();">
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-11.html b/layout/reftests/ogg-video/poster-11.html
new file mode 100644
index 000000000..6e8462217
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-11.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML>
+<html class="reftest-wait">
+<!-- Test: Create video, load. Add poster frame, load again, poster should show. -->
+<script>
+function runTest() {
+ var v = document.createElement('video');
+
+ var endTest = function() {
+ setTimeout(function(){document.documentElement.className = '';}, 0);
+ };
+
+ var addPoster = function() {
+ v.removeEventListener('loadeddata', addPoster, false);
+ v.poster = "blue140x100.png";
+ v.addEventListener('loadeddata', endTest, false);
+ v.load();
+ };
+
+ v.addEventListener('loadeddata', addPoster, false);
+ v.id = 'v';
+ v.src = "black140x100.ogv";
+ v.preload = "auto";
+ document.body.appendChild(v);
+}
+
+</script>
+<body style="background:white;" onload="runTest();">
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-12.html b/layout/reftests/ogg-video/poster-12.html
new file mode 100644
index 000000000..ac89d45ba
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-12.html
@@ -0,0 +1,40 @@
+<!DOCTYPE HTML>
+<html class="reftest-wait">
+<!-- Test: Create video, load, play. Add poster frame, load again, poster should show. -->
+<script>
+function runTest() {
+ var v = document.createElement('video');
+
+ var endTest = function() {
+ setTimeout(function(){document.documentElement.className = '';}, 0);
+ };
+
+ var play =
+ function() {
+ v.removeEventListener('loadeddata', play, false);
+ v.play();
+ }
+
+ var addPoster = function() {
+ v.removeEventListener('playing', addPoster,false);
+ v.poster = "blue140x100.png";
+ v.addEventListener('loadeddata', endTest, false);
+ v.load();
+ };
+
+ v.addEventListener('loadeddata',
+ play,
+ false);
+ v.addEventListener('playing',
+ addPoster,
+ false);
+ v.id = 'v';
+ v.src = "black140x100.ogv";
+ v.preload = "auto";
+ document.body.appendChild(v);
+}
+
+</script>
+<body style="background:white;" onload="runTest();">
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-13.html b/layout/reftests/ogg-video/poster-13.html
new file mode 100644
index 000000000..79c3b8c58
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-13.html
@@ -0,0 +1,8 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<!-- Test that poster is resized, maintaining its aspect ratio. -->
+<video src="black140x100.ogv" poster="blue250x200.png" style="width: 288px; height: 216px;"></video>
+
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-15.html b/layout/reftests/ogg-video/poster-15.html
new file mode 100644
index 000000000..01c25b660
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-15.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML>
+<html>
+<!-- Test that poster is correctly laid out inside borders. Also test that
+ poster frames smaller than video don't have the video frame drawn behind
+ them etc. -->
+<body style="background:white;">
+<video src="black140x100.ogv"
+ poster="green70x30.png"
+ preload="none"
+ style="border: solid blue 2px;">
+</video>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-2.html b/layout/reftests/ogg-video/poster-2.html
new file mode 100644
index 000000000..28b38f398
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-2.html
@@ -0,0 +1,7 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<!-- Test if poster frame with invalid poster displays video frame. -->
+<video src="black140x100.ogv" poster="not-a-valid-file"></video>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-3.html b/layout/reftests/ogg-video/poster-3.html
new file mode 100644
index 000000000..ae12c1b65
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-3.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML>
+<html class="reftest-wait">
+<body style="background:white;">
+<!-- Test if poster hides after playing with autoplay. -->
+<video src="black140x100.ogv"
+ poster="blue250x200.png"
+ preload="auto"
+ autoplay
+ onplaying="setTimeout(function(){document.documentElement.className = '';},0);"></video>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-4.html b/layout/reftests/ogg-video/poster-4.html
new file mode 100644
index 000000000..85453638c
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-4.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML>
+<html class="reftest-wait">
+<body style="background:white;"
+ onload="setTimeout(function(){document.documentElement.className = '';}, 0);">
+<!-- Test if we show video frame after removing valid poster. -->
+<video src="black140x100.ogv"
+ preload="auto"
+ id="v"
+ poster="blue250x200.png"></video>
+<script type="text/javascript">
+ document.getElementById('v').poster = '';
+</script>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-5.html b/layout/reftests/ogg-video/poster-5.html
new file mode 100644
index 000000000..94049c92d
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-5.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML>
+<html class="reftest-wait">
+<body style="background:white;">
+<!-- Test to ensure that changing the poster after video has painted its first
+ frame doesn't render the poster. The video frame should not change to the
+ poster, since it's already painted its first video frame. -->
+<video src="black140x100.ogv"
+ preload="auto"
+ id="v"
+ autoplay
+ onended="document.getElementById('v').poster = 'blue250x200.png'; setTimeout(function(){document.documentElement.className = '';},0);"></video>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-6.html b/layout/reftests/ogg-video/poster-6.html
new file mode 100644
index 000000000..c9ae5b88f
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-6.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML>
+<html class="reftest-wait">
+<body style="background:white;">
+<!-- Test that poster frame should hide after completing a seek. -->
+<video src="black140x100.ogv"
+ preload="auto"
+ id="v"
+ onloadeddata="var v = document.getElementById('v'); v.currentTime = v.duration;"
+ onseeked="setTimeout(function(){document.documentElement.className = '';}, 0);"
+ poster="blue250x200.png"></video>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-7.html b/layout/reftests/ogg-video/poster-7.html
new file mode 100644
index 000000000..4c3e002d3
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-7.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML>
+<html class="reftest-wait">
+<body style="background:white;"
+ onload="setTimeout(function(){document.documentElement.className = '';}, 0);">
+<!-- Test that poster frame changes when you change the poster attribute. -->
+<video src="black140x100.ogv"
+ preload="none"
+ id="v"
+ poster="blue250x200.png"></video>
+<script type="text/javascript">
+ document.getElementById('v').poster = 'red140x100.png';
+</script>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-8.html b/layout/reftests/ogg-video/poster-8.html
new file mode 100644
index 000000000..c9e1fa37a
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-8.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML>
+<html class="reftest-wait">
+<body style="background:white;">
+<!-- Test if poster hides after playing with play() call. -->
+<video src="black140x100.ogv"
+ poster="blue250x200.png"
+ id="v"
+ preload="auto"
+ onloadeddata="document.getElementById('v').play();"
+ onplaying="setTimeout(function(){document.documentElement.className = '';}, 0);"></video>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-ref-black140x100.html b/layout/reftests/ogg-video/poster-ref-black140x100.html
new file mode 100644
index 000000000..98f1a4cba
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-ref-black140x100.html
@@ -0,0 +1,6 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<video src="black140x100.ogv" preload="auto"></video>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-ref-blue125x100.html b/layout/reftests/ogg-video/poster-ref-blue125x100.html
new file mode 100644
index 000000000..90795ae91
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-ref-blue125x100.html
@@ -0,0 +1,6 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<img src="blue140x100.png" alt="poster" style="position: absolute; height: 100px; width: 125px; left: 16px">
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-ref-blue140x100.html b/layout/reftests/ogg-video/poster-ref-blue140x100.html
new file mode 100644
index 000000000..66540b8e8
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-ref-blue140x100.html
@@ -0,0 +1,6 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<img src="blue140x100.png" alt="poster">
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-ref-blue250x200.html b/layout/reftests/ogg-video/poster-ref-blue250x200.html
new file mode 100644
index 000000000..050d53dfb
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-ref-blue250x200.html
@@ -0,0 +1,6 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<img src="blue250x200.png" alt="poster">
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-ref-blue400x300.html b/layout/reftests/ogg-video/poster-ref-blue400x300.html
new file mode 100644
index 000000000..8c32ff715
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-ref-blue400x300.html
@@ -0,0 +1,8 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<img src="blue250x200.png" style="position: relative; width: 270px; height: 216px; left: 9px;">
+</body>
+</html>
+
+
diff --git a/layout/reftests/ogg-video/poster-ref-green70x30.html b/layout/reftests/ogg-video/poster-ref-green70x30.html
new file mode 100644
index 000000000..f979220a6
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-ref-green70x30.html
@@ -0,0 +1,6 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<img src="green70x30.png" alt="poster" style="border: solid blue 2px;">
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/poster-ref-red140x100.html b/layout/reftests/ogg-video/poster-ref-red140x100.html
new file mode 100644
index 000000000..3ac08d29e
--- /dev/null
+++ b/layout/reftests/ogg-video/poster-ref-red140x100.html
@@ -0,0 +1,6 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white;">
+<img src="red140x100.png" alt="poster">
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/red140x100.png b/layout/reftests/ogg-video/red140x100.png
new file mode 100644
index 000000000..20250771f
--- /dev/null
+++ b/layout/reftests/ogg-video/red140x100.png
Binary files differ
diff --git a/layout/reftests/ogg-video/red160x120.png b/layout/reftests/ogg-video/red160x120.png
new file mode 100644
index 000000000..21737a0e8
--- /dev/null
+++ b/layout/reftests/ogg-video/red160x120.png
Binary files differ
diff --git a/layout/reftests/ogg-video/reftest-stylo.list b/layout/reftests/ogg-video/reftest-stylo.list
new file mode 100644
index 000000000..e59d9d534
--- /dev/null
+++ b/layout/reftests/ogg-video/reftest-stylo.list
@@ -0,0 +1,65 @@
+# DO NOT EDIT! This is a auto-generated temporary list for Stylo testing
+# NOTE: bug 1084564 covers "fails"/"skip" annotations for b2g/android below:
+== 444-1.html 444-1.html
+fails-if(Android||B2G||Mulet) HTTP(..) == aspect-ratio-1a.xhtml aspect-ratio-1a.xhtml
+# Initial mulet triage: parity with B2G/B2G Desktop
+fails-if(Android||B2G||Mulet) HTTP(..) == aspect-ratio-1b.xhtml aspect-ratio-1b.xhtml
+# Initial mulet triage: parity with B2G/B2G Desktop
+fails-if(Android||B2G||Mulet) skip-if(gtkWidget) HTTP(..) == aspect-ratio-2a.xhtml aspect-ratio-2a.xhtml
+# Initial mulet triage: parity with B2G/B2G Desktop
+fails-if(Android||B2G||Mulet) skip-if(gtkWidget) HTTP(..) == aspect-ratio-2b.xhtml aspect-ratio-2b.xhtml
+# Initial mulet triage: parity with B2G/B2G Desktop
+HTTP(..) == aspect-ratio-3a.xhtml aspect-ratio-3a.xhtml
+HTTP(..) == aspect-ratio-3b.xhtml aspect-ratio-3b.xhtml
+fails-if(Android||B2G||Mulet) random-if(layersGPUAccelerated) == encoded-aspect-ratio-1.html encoded-aspect-ratio-1.html
+# bug 623460 for WinXP
+# Initial mulet triage: parity with B2G/B2G Desktop
+fails-if(Android||B2G||Mulet) HTTP(..) == basic-1.xhtml basic-1.xhtml
+# Initial mulet triage: parity with B2G/B2G Desktop
+skip-if(Android||B2G||Mulet) HTTP(..) == canvas-1a.xhtml canvas-1a.xhtml
+# Initial mulet triage: parity with B2G/B2G Desktop
+fails-if(Android||B2G||Mulet) HTTP(..) == canvas-1b.xhtml canvas-1b.xhtml
+# Initial mulet triage: parity with B2G/B2G Desktop
+== clipping-1a.html clipping-1a.html
+== empty-1a.html empty-1a.html
+== empty-1b.html empty-1b.html
+#these is skipped because we hang on the htmlparser tests when this is ran
+random skip-if(Android||B2G||Mulet) HTTP(..) == object-aspect-ratio-1a.xhtml object-aspect-ratio-1a.xhtml
+# Initial mulet triage: parity with B2G/B2G Desktop
+random skip-if(Android||B2G||Mulet) HTTP(..) == object-aspect-ratio-1b.xhtml object-aspect-ratio-1b.xhtml
+# Initial mulet triage: parity with B2G/B2G Desktop
+skip-if(Android||B2G||Mulet) HTTP(..) == offset-1.xhtml offset-1.xhtml
+# Initial mulet triage: parity with B2G/B2G Desktop
+random skip-if(Android||B2G||Mulet) HTTP(..) == object-aspect-ratio-2a.xhtml object-aspect-ratio-2a.xhtml
+# Initial mulet triage: parity with B2G/B2G Desktop
+skip random skip-if(Android||B2G||Mulet) HTTP(..) == object-aspect-ratio-2b.xhtml object-aspect-ratio-2b.xhtml
+# Initial mulet triage: parity with B2G/B2G Desktop
+skip-if(Android||B2G||Mulet) fuzzy-if(winWidget,1,56000) fuzzy-if(cocoaWidget,1,56000) HTTP(..) == zoomed-1.xhtml zoomed-1.xhtml
+# bug 778995 for fuzzy
+# Initial mulet triage: parity with B2G/B2G Desktop
+skip-if(Android||B2G||Mulet) == poster-1.html poster-1.html
+# Initial mulet triage: parity with B2G/B2G Desktop
+skip-if(Android||B2G||Mulet) == poster-2.html poster-2.html
+# Initial mulet triage: parity with B2G/B2G Desktop
+skip-if(Android||B2G||Mulet) == poster-3.html poster-3.html
+# Initial mulet triage: parity with B2G/B2G Desktop
+skip-if(Android||B2G||Mulet) == poster-4.html poster-4.html
+# Initial mulet triage: parity with B2G/B2G Desktop
+skip-if(Android||B2G||Mulet) == poster-5.html poster-5.html
+# Initial mulet triage: parity with B2G/B2G Desktop
+skip-if(Android||B2G||Mulet) == poster-6.html poster-6.html
+# Initial mulet triage: parity with B2G/B2G Desktop
+skip-if(Android||B2G||Mulet) == poster-7.html poster-7.html
+# Initial mulet triage: parity with B2G/B2G Desktop
+skip-if(Android||B2G||Mulet) == poster-8.html poster-8.html
+# Initial mulet triage: parity with B2G/B2G Desktop
+random skip-if(Android||B2G||Mulet) == poster-10.html poster-10.html
+# Initial mulet triage: parity with B2G/B2G Desktop
+random skip-if(Android||B2G||Mulet) == poster-11.html poster-11.html
+# Initial mulet triage: parity with B2G/B2G Desktop
+random skip-if(Android||B2G||Mulet) == poster-12.html poster-12.html
+# Initial mulet triage: parity with B2G/B2G Desktop
+skip-if(Android||B2G||Mulet) == poster-13.html poster-13.html
+# Initial mulet triage: parity with B2G/B2G Desktop
+skip-if(Android||B2G||Mulet) == poster-15.html poster-15.html
+# Initial mulet triage: parity with B2G/B2G Desktop
diff --git a/layout/reftests/ogg-video/reftest.list b/layout/reftests/ogg-video/reftest.list
new file mode 100644
index 000000000..cbe110f6c
--- /dev/null
+++ b/layout/reftests/ogg-video/reftest.list
@@ -0,0 +1,35 @@
+# NOTE: bug 1084564 covers "fails"/"skip" annotations for android below:
+fuzzy(255,5000) == 444-1.html 444-1-ref.html
+fails-if(Android) HTTP(..) == aspect-ratio-1a.xhtml aspect-ratio-1-ref.html
+fails-if(Android) HTTP(..) == aspect-ratio-1b.xhtml aspect-ratio-1-ref.html
+fails-if(Android) skip-if(gtkWidget) HTTP(..) == aspect-ratio-2a.xhtml aspect-ratio-2-ref.html
+fails-if(Android) skip-if(gtkWidget) HTTP(..) == aspect-ratio-2b.xhtml aspect-ratio-2-ref.html
+HTTP(..) == aspect-ratio-3a.xhtml aspect-ratio-3-ref.xhtml
+HTTP(..) == aspect-ratio-3b.xhtml aspect-ratio-3-ref.xhtml
+fails-if(Android) random-if(layersGPUAccelerated) == encoded-aspect-ratio-1.html encoded-aspect-ratio-1-ref.html # bug 623460 for WinXP
+fails-if(Android) HTTP(..) == basic-1.xhtml basic-1-ref.html
+skip-if(Android) HTTP(..) == canvas-1a.xhtml basic-1-ref.html
+fails-if(Android) HTTP(..) == canvas-1b.xhtml basic-1-ref.html
+== clipping-1a.html clipping-1-ref.html
+== empty-1a.html empty-1-ref.html
+== empty-1b.html empty-1-ref.html
+#these is skipped because we hang on the htmlparser tests when this is ran
+random skip-if(Android) HTTP(..) == object-aspect-ratio-1a.xhtml aspect-ratio-1-ref.html
+random skip-if(Android) HTTP(..) == object-aspect-ratio-1b.xhtml aspect-ratio-1-ref.html
+skip-if(Android) HTTP(..) == offset-1.xhtml offset-1-ref.html
+random skip-if(Android) HTTP(..) == object-aspect-ratio-2a.xhtml aspect-ratio-2-ref.html
+random skip-if(Android) HTTP(..) == object-aspect-ratio-2b.xhtml aspect-ratio-2-ref.html
+skip-if(Android) fuzzy-if(winWidget,1,56000) fuzzy-if(cocoaWidget,1,56000) HTTP(..) == zoomed-1.xhtml zoomed-1-ref.html # bug 778995 for fuzzy
+skip-if(Android) == poster-1.html poster-ref-blue250x200.html
+skip-if(Android) == poster-2.html poster-ref-black140x100.html
+skip-if(Android) == poster-3.html poster-ref-black140x100.html
+skip-if(Android) == poster-4.html poster-ref-black140x100.html
+skip-if(Android) == poster-5.html poster-ref-black140x100.html
+skip-if(Android) == poster-6.html poster-ref-black140x100.html
+skip-if(Android) == poster-7.html poster-ref-red140x100.html
+skip-if(Android) == poster-8.html poster-ref-black140x100.html
+random skip-if(Android) == poster-10.html poster-ref-blue125x100.html
+random skip-if(Android) == poster-11.html poster-ref-blue140x100.html
+random skip-if(Android) == poster-12.html poster-ref-blue140x100.html
+skip-if(Android) == poster-13.html poster-ref-blue400x300.html
+skip-if(Android) == poster-15.html poster-ref-green70x30.html
diff --git a/layout/reftests/ogg-video/seek420.ogv b/layout/reftests/ogg-video/seek420.ogv
new file mode 100644
index 000000000..2221cfef4
--- /dev/null
+++ b/layout/reftests/ogg-video/seek420.ogv
Binary files differ
diff --git a/layout/reftests/ogg-video/seek444.ogv b/layout/reftests/ogg-video/seek444.ogv
new file mode 100644
index 000000000..a2453afea
--- /dev/null
+++ b/layout/reftests/ogg-video/seek444.ogv
Binary files differ
diff --git a/layout/reftests/ogg-video/zoomed-1-ref.html b/layout/reftests/ogg-video/zoomed-1-ref.html
new file mode 100644
index 000000000..01929db7e
--- /dev/null
+++ b/layout/reftests/ogg-video/zoomed-1-ref.html
@@ -0,0 +1,6 @@
+<!DOCTYPE HTML>
+<html>
+<body style="background:white; margin:0;">
+<div style="width:280px; height:200px; background:#010101;"></div>
+</body>
+</html>
diff --git a/layout/reftests/ogg-video/zoomed-1.xhtml b/layout/reftests/ogg-video/zoomed-1.xhtml
new file mode 100644
index 000000000..e68e1290f
--- /dev/null
+++ b/layout/reftests/ogg-video/zoomed-1.xhtml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1" reftest-zoom="2"
+ width="50%" height="50%">
+<!-- use an empty g to force filters.svg to load before onload -->
+<use xlink:href="../filters.svg#empty" />
+<foreignObject x="0" y="0" height="100%" width="100%">
+<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<body style="background:white; margin:0">
+<video src="black140x100.ogv"></video>
+</body>
+</html>
+</foreignObject>
+</svg>