From 26a029d407be480d791972afb5975cf62c9360a6 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 02:47:55 +0200 Subject: Adding upstream version 124.0.1. Signed-off-by: Daniel Baumann --- dom/media/test/16bit_wave_extrametadata.wav | Bin 0 -> 97814 bytes .../test/16bit_wave_extrametadata.wav^headers^ | 1 + dom/media/test/320x240.ogv | Bin 0 -> 28942 bytes dom/media/test/320x240.ogv^headers^ | 1 + dom/media/test/448636.ogv | Bin 0 -> 7799 bytes dom/media/test/448636.ogv^headers^ | 1 + dom/media/test/A4.ogv | Bin 0 -> 94372 bytes dom/media/test/A4.ogv^headers^ | 1 + dom/media/test/TestPatternHDR.mp4 | Bin 0 -> 179294 bytes dom/media/test/VID_0001.ogg | Bin 0 -> 633435 bytes dom/media/test/VID_0001.ogg^headers^ | 1 + dom/media/test/adts.aac | Bin 0 -> 8537 bytes dom/media/test/adts.aac^headers^ | 1 + dom/media/test/allowed.sjs | 61 + dom/media/test/ambisonics.mp4 | Bin 0 -> 1053904 bytes dom/media/test/ambisonics.mp4^headers^ | 1 + dom/media/test/audio-gaps-short.ogg | Bin 0 -> 5233 bytes dom/media/test/audio-gaps-short.ogg^headers^ | 1 + dom/media/test/audio-gaps.ogg | Bin 0 -> 12306 bytes dom/media/test/audio-gaps.ogg^headers^ | 1 + dom/media/test/audio-overhang.ogg | Bin 0 -> 45463 bytes dom/media/test/audio-overhang.ogg^headers^ | 1 + dom/media/test/audio.wav | Bin 0 -> 1422 bytes dom/media/test/audio.wav^headers^ | 1 + dom/media/test/av1.mp4 | Bin 0 -> 13089 bytes dom/media/test/av1.mp4^headers^ | 1 + dom/media/test/background_video.js | 224 ++ dom/media/test/badtags.ogg | Bin 0 -> 5033 bytes dom/media/test/badtags.ogg^headers^ | 1 + .../test/bear-640x360-a_frag-cenc-key_rotation.mp4 | Bin 0 -> 80372 bytes .../test/bear-640x360-v_frag-cenc-key_rotation.mp4 | Bin 0 -> 280361 bytes dom/media/test/beta-phrasebook.ogg | Bin 0 -> 47411 bytes dom/media/test/beta-phrasebook.ogg^headers^ | 1 + dom/media/test/big-buck-bunny-cenc-avc3-1.m4s | Bin 0 -> 60041 bytes .../test/big-buck-bunny-cenc-avc3-1.m4s^headers^ | 1 + dom/media/test/big-buck-bunny-cenc-avc3-init.mp4 | Bin 0 -> 819 bytes .../big-buck-bunny-cenc-avc3-init.mp4^headers^ | 1 + dom/media/test/big-short.wav | Bin 0 -> 12366 bytes dom/media/test/big-short.wav^headers^ | 1 + dom/media/test/big.wav | Bin 0 -> 102444 bytes dom/media/test/big.wav^headers^ | 1 + dom/media/test/bipbop-cenc-audio-key1.xml | 28 + dom/media/test/bipbop-cenc-audio-key2.xml | 28 + dom/media/test/bipbop-cenc-audio1.m4s | Bin 0 -> 921 bytes dom/media/test/bipbop-cenc-audio1.m4s^headers^ | 1 + dom/media/test/bipbop-cenc-audio2.m4s | Bin 0 -> 565 bytes dom/media/test/bipbop-cenc-audio2.m4s^headers^ | 1 + dom/media/test/bipbop-cenc-audio3.m4s | Bin 0 -> 977 bytes dom/media/test/bipbop-cenc-audio3.m4s^headers^ | 1 + dom/media/test/bipbop-cenc-audioinit.mp4 | Bin 0 -> 1000 bytes dom/media/test/bipbop-cenc-audioinit.mp4^headers^ | 1 + dom/media/test/bipbop-cenc-video-10s.mp4 | Bin 0 -> 299914 bytes dom/media/test/bipbop-cenc-video-10s.mp4^headers^ | 1 + dom/media/test/bipbop-cenc-video-key1.xml | 28 + dom/media/test/bipbop-cenc-video-key2.xml | 28 + dom/media/test/bipbop-cenc-video1.m4s | Bin 0 -> 25211 bytes dom/media/test/bipbop-cenc-video1.m4s^headers^ | 1 + dom/media/test/bipbop-cenc-video2.m4s | Bin 0 -> 22934 bytes dom/media/test/bipbop-cenc-video2.m4s^headers^ | 1 + dom/media/test/bipbop-cenc-videoinit.mp4 | Bin 0 -> 1058 bytes dom/media/test/bipbop-cenc-videoinit.mp4^headers^ | 1 + dom/media/test/bipbop-cenc.sh | 29 + ...ipbop-clearkey-keyrotation-clear-lead-audio.mp4 | Bin 0 -> 8675 bytes ...arkey-keyrotation-clear-lead-audio.mp4^headers^ | 1 + ...ipbop-clearkey-keyrotation-clear-lead-video.mp4 | Bin 0 -> 278040 bytes ...arkey-keyrotation-clear-lead-video.mp4^headers^ | 1 + dom/media/test/bipbop-frag-cenc.xml | 57 + dom/media/test/bipbop-lateaudio.mp4 | Bin 0 -> 70404 bytes dom/media/test/bipbop-lateaudio.mp4^headers^ | 1 + dom/media/test/bipbop-no-edts.mp4 | Bin 0 -> 285681 bytes dom/media/test/bipbop.mp4 | Bin 0 -> 285765 bytes .../test/bipbop_225w_175kbps-cenc-audio-key1-1.m4s | Bin 0 -> 921 bytes ...bop_225w_175kbps-cenc-audio-key1-1.m4s^headers^ | 1 + .../test/bipbop_225w_175kbps-cenc-audio-key1-2.m4s | Bin 0 -> 565 bytes ...bop_225w_175kbps-cenc-audio-key1-2.m4s^headers^ | 1 + .../test/bipbop_225w_175kbps-cenc-audio-key1-3.m4s | Bin 0 -> 977 bytes ...bop_225w_175kbps-cenc-audio-key1-3.m4s^headers^ | 1 + .../test/bipbop_225w_175kbps-cenc-audio-key1-4.m4s | Bin 0 -> 389 bytes ...bop_225w_175kbps-cenc-audio-key1-4.m4s^headers^ | 1 + .../bipbop_225w_175kbps-cenc-audio-key1-init.mp4 | Bin 0 -> 1020 bytes ..._225w_175kbps-cenc-audio-key1-init.mp4^headers^ | 1 + .../test/bipbop_225w_175kbps-cenc-audio-key2-1.m4s | Bin 0 -> 921 bytes ...bop_225w_175kbps-cenc-audio-key2-1.m4s^headers^ | 1 + .../test/bipbop_225w_175kbps-cenc-audio-key2-2.m4s | Bin 0 -> 565 bytes ...bop_225w_175kbps-cenc-audio-key2-2.m4s^headers^ | 1 + .../test/bipbop_225w_175kbps-cenc-audio-key2-3.m4s | Bin 0 -> 977 bytes ...bop_225w_175kbps-cenc-audio-key2-3.m4s^headers^ | 1 + .../test/bipbop_225w_175kbps-cenc-audio-key2-4.m4s | Bin 0 -> 389 bytes ...bop_225w_175kbps-cenc-audio-key2-4.m4s^headers^ | 1 + .../bipbop_225w_175kbps-cenc-audio-key2-init.mp4 | Bin 0 -> 1020 bytes ..._225w_175kbps-cenc-audio-key2-init.mp4^headers^ | 1 + .../test/bipbop_225w_175kbps-cenc-video-key1-1.m4s | Bin 0 -> 37646 bytes ...bop_225w_175kbps-cenc-video-key1-1.m4s^headers^ | 1 + .../bipbop_225w_175kbps-cenc-video-key1-init.mp4 | Bin 0 -> 1086 bytes ..._225w_175kbps-cenc-video-key1-init.mp4^headers^ | 1 + .../test/bipbop_225w_175kbps-cenc-video-key2-1.m4s | Bin 0 -> 37646 bytes ...bop_225w_175kbps-cenc-video-key2-1.m4s^headers^ | 1 + .../bipbop_225w_175kbps-cenc-video-key2-init.mp4 | Bin 0 -> 1086 bytes ..._225w_175kbps-cenc-video-key2-init.mp4^headers^ | 1 + dom/media/test/bipbop_225w_175kbps.mp4 | Bin 0 -> 38713 bytes dom/media/test/bipbop_225w_175kbps.mp4^headers^ | 1 + .../test/bipbop_300_215kbps-cenc-audio-key1-1.m4s | Bin 0 -> 921 bytes ...pbop_300_215kbps-cenc-audio-key1-1.m4s^headers^ | 1 + .../test/bipbop_300_215kbps-cenc-audio-key1-2.m4s | Bin 0 -> 565 bytes ...pbop_300_215kbps-cenc-audio-key1-2.m4s^headers^ | 1 + .../test/bipbop_300_215kbps-cenc-audio-key1-3.m4s | Bin 0 -> 977 bytes ...pbop_300_215kbps-cenc-audio-key1-3.m4s^headers^ | 1 + .../test/bipbop_300_215kbps-cenc-audio-key1-4.m4s | Bin 0 -> 389 bytes ...pbop_300_215kbps-cenc-audio-key1-4.m4s^headers^ | 1 + .../bipbop_300_215kbps-cenc-audio-key1-init.mp4 | Bin 0 -> 874 bytes ...p_300_215kbps-cenc-audio-key1-init.mp4^headers^ | 1 + .../test/bipbop_300_215kbps-cenc-audio-key2-1.m4s | Bin 0 -> 921 bytes ...pbop_300_215kbps-cenc-audio-key2-1.m4s^headers^ | 1 + .../test/bipbop_300_215kbps-cenc-audio-key2-2.m4s | Bin 0 -> 565 bytes ...pbop_300_215kbps-cenc-audio-key2-2.m4s^headers^ | 1 + .../test/bipbop_300_215kbps-cenc-audio-key2-3.m4s | Bin 0 -> 977 bytes ...pbop_300_215kbps-cenc-audio-key2-3.m4s^headers^ | 1 + .../test/bipbop_300_215kbps-cenc-audio-key2-4.m4s | Bin 0 -> 389 bytes ...pbop_300_215kbps-cenc-audio-key2-4.m4s^headers^ | 1 + .../bipbop_300_215kbps-cenc-audio-key2-init.mp4 | Bin 0 -> 874 bytes ...p_300_215kbps-cenc-audio-key2-init.mp4^headers^ | 1 + .../test/bipbop_300_215kbps-cenc-video-key1-1.m4s | Bin 0 -> 25211 bytes ...pbop_300_215kbps-cenc-video-key1-1.m4s^headers^ | 1 + .../test/bipbop_300_215kbps-cenc-video-key1-2.m4s | Bin 0 -> 22938 bytes ...pbop_300_215kbps-cenc-video-key1-2.m4s^headers^ | 1 + .../bipbop_300_215kbps-cenc-video-key1-init.mp4 | Bin 0 -> 932 bytes ...p_300_215kbps-cenc-video-key1-init.mp4^headers^ | 1 + .../test/bipbop_300_215kbps-cenc-video-key2-1.m4s | Bin 0 -> 25211 bytes ...pbop_300_215kbps-cenc-video-key2-1.m4s^headers^ | 1 + .../test/bipbop_300_215kbps-cenc-video-key2-2.m4s | Bin 0 -> 22938 bytes ...pbop_300_215kbps-cenc-video-key2-2.m4s^headers^ | 1 + .../bipbop_300_215kbps-cenc-video-key2-init.mp4 | Bin 0 -> 932 bytes ...p_300_215kbps-cenc-video-key2-init.mp4^headers^ | 1 + dom/media/test/bipbop_300_215kbps.mp4 | Bin 0 -> 48393 bytes .../bipbop_300wp_227kbps-cenc-audio-key1-1.m4s | Bin 0 -> 921 bytes ...op_300wp_227kbps-cenc-audio-key1-1.m4s^headers^ | 1 + .../bipbop_300wp_227kbps-cenc-audio-key1-2.m4s | Bin 0 -> 565 bytes ...op_300wp_227kbps-cenc-audio-key1-2.m4s^headers^ | 1 + .../bipbop_300wp_227kbps-cenc-audio-key1-3.m4s | Bin 0 -> 977 bytes ...op_300wp_227kbps-cenc-audio-key1-3.m4s^headers^ | 1 + .../bipbop_300wp_227kbps-cenc-audio-key1-4.m4s | Bin 0 -> 389 bytes ...op_300wp_227kbps-cenc-audio-key1-4.m4s^headers^ | 1 + .../bipbop_300wp_227kbps-cenc-audio-key1-init.mp4 | Bin 0 -> 1020 bytes ...300wp_227kbps-cenc-audio-key1-init.mp4^headers^ | 1 + .../bipbop_300wp_227kbps-cenc-audio-key2-1.m4s | Bin 0 -> 921 bytes ...op_300wp_227kbps-cenc-audio-key2-1.m4s^headers^ | 1 + .../bipbop_300wp_227kbps-cenc-audio-key2-2.m4s | Bin 0 -> 565 bytes ...op_300wp_227kbps-cenc-audio-key2-2.m4s^headers^ | 1 + .../bipbop_300wp_227kbps-cenc-audio-key2-3.m4s | Bin 0 -> 977 bytes ...op_300wp_227kbps-cenc-audio-key2-3.m4s^headers^ | 1 + .../bipbop_300wp_227kbps-cenc-audio-key2-4.m4s | Bin 0 -> 389 bytes ...op_300wp_227kbps-cenc-audio-key2-4.m4s^headers^ | 1 + .../bipbop_300wp_227kbps-cenc-audio-key2-init.mp4 | Bin 0 -> 1020 bytes ...300wp_227kbps-cenc-audio-key2-init.mp4^headers^ | 1 + .../bipbop_300wp_227kbps-cenc-video-key1-1.m4s | Bin 0 -> 25211 bytes ...op_300wp_227kbps-cenc-video-key1-1.m4s^headers^ | 1 + .../bipbop_300wp_227kbps-cenc-video-key1-2.m4s | Bin 0 -> 22938 bytes ...op_300wp_227kbps-cenc-video-key1-2.m4s^headers^ | 1 + .../bipbop_300wp_227kbps-cenc-video-key1-init.mp4 | Bin 0 -> 1094 bytes ...300wp_227kbps-cenc-video-key1-init.mp4^headers^ | 1 + .../bipbop_300wp_227kbps-cenc-video-key2-1.m4s | Bin 0 -> 25211 bytes ...op_300wp_227kbps-cenc-video-key2-1.m4s^headers^ | 1 + .../bipbop_300wp_227kbps-cenc-video-key2-2.m4s | Bin 0 -> 22938 bytes ...op_300wp_227kbps-cenc-video-key2-2.m4s^headers^ | 1 + .../bipbop_300wp_227kbps-cenc-video-key2-init.mp4 | Bin 0 -> 1094 bytes ...300wp_227kbps-cenc-video-key2-init.mp4^headers^ | 1 + dom/media/test/bipbop_300wp_227kbps.mp4 | Bin 0 -> 48355 bytes .../test/bipbop_360w_253kbps-cenc-audio-key1-1.m4s | Bin 0 -> 921 bytes ...bop_360w_253kbps-cenc-audio-key1-1.m4s^headers^ | 1 + .../test/bipbop_360w_253kbps-cenc-audio-key1-2.m4s | Bin 0 -> 565 bytes ...bop_360w_253kbps-cenc-audio-key1-2.m4s^headers^ | 1 + .../test/bipbop_360w_253kbps-cenc-audio-key1-3.m4s | Bin 0 -> 977 bytes ...bop_360w_253kbps-cenc-audio-key1-3.m4s^headers^ | 1 + .../test/bipbop_360w_253kbps-cenc-audio-key1-4.m4s | Bin 0 -> 389 bytes ...bop_360w_253kbps-cenc-audio-key1-4.m4s^headers^ | 1 + .../bipbop_360w_253kbps-cenc-audio-key1-init.mp4 | Bin 0 -> 1020 bytes ..._360w_253kbps-cenc-audio-key1-init.mp4^headers^ | 1 + .../test/bipbop_360w_253kbps-cenc-audio-key2-1.m4s | Bin 0 -> 921 bytes ...bop_360w_253kbps-cenc-audio-key2-1.m4s^headers^ | 1 + .../test/bipbop_360w_253kbps-cenc-audio-key2-2.m4s | Bin 0 -> 565 bytes ...bop_360w_253kbps-cenc-audio-key2-2.m4s^headers^ | 1 + .../test/bipbop_360w_253kbps-cenc-audio-key2-3.m4s | Bin 0 -> 977 bytes ...bop_360w_253kbps-cenc-audio-key2-3.m4s^headers^ | 1 + .../test/bipbop_360w_253kbps-cenc-audio-key2-4.m4s | Bin 0 -> 389 bytes ...bop_360w_253kbps-cenc-audio-key2-4.m4s^headers^ | 1 + .../bipbop_360w_253kbps-cenc-audio-key2-init.mp4 | Bin 0 -> 1020 bytes ..._360w_253kbps-cenc-audio-key2-init.mp4^headers^ | 1 + .../test/bipbop_360w_253kbps-cenc-video-key1-1.m4s | Bin 0 -> 53149 bytes ...bop_360w_253kbps-cenc-video-key1-1.m4s^headers^ | 1 + .../bipbop_360w_253kbps-cenc-video-key1-init.mp4 | Bin 0 -> 1088 bytes ..._360w_253kbps-cenc-video-key1-init.mp4^headers^ | 1 + .../test/bipbop_360w_253kbps-cenc-video-key2-1.m4s | Bin 0 -> 53149 bytes ...bop_360w_253kbps-cenc-video-key2-1.m4s^headers^ | 1 + .../bipbop_360w_253kbps-cenc-video-key2-init.mp4 | Bin 0 -> 1088 bytes ..._360w_253kbps-cenc-video-key2-init.mp4^headers^ | 1 + .../test/bipbop_360w_253kbps-clearkey-audio.webm | Bin 0 -> 7553 bytes ...ipbop_360w_253kbps-clearkey-audio.webm^headers^ | 1 + .../bipbop_360w_253kbps-clearkey-video-vp8.webm | Bin 0 -> 44671 bytes ...p_360w_253kbps-clearkey-video-vp8.webm^headers^ | 1 + .../bipbop_360w_253kbps-clearkey-video-vp9.webm | Bin 0 -> 46030 bytes ...p_360w_253kbps-clearkey-video-vp9.webm^headers^ | 1 + dom/media/test/bipbop_360w_253kbps.mp4 | Bin 0 -> 54218 bytes .../test/bipbop_480_624kbps-cenc-audio-key1-1.m4s | Bin 0 -> 921 bytes ...pbop_480_624kbps-cenc-audio-key1-1.m4s^headers^ | 1 + .../test/bipbop_480_624kbps-cenc-audio-key1-2.m4s | Bin 0 -> 565 bytes ...pbop_480_624kbps-cenc-audio-key1-2.m4s^headers^ | 1 + .../test/bipbop_480_624kbps-cenc-audio-key1-3.m4s | Bin 0 -> 977 bytes ...pbop_480_624kbps-cenc-audio-key1-3.m4s^headers^ | 1 + .../test/bipbop_480_624kbps-cenc-audio-key1-4.m4s | Bin 0 -> 389 bytes ...pbop_480_624kbps-cenc-audio-key1-4.m4s^headers^ | 1 + .../bipbop_480_624kbps-cenc-audio-key1-init.mp4 | Bin 0 -> 874 bytes ...p_480_624kbps-cenc-audio-key1-init.mp4^headers^ | 1 + .../test/bipbop_480_624kbps-cenc-audio-key2-1.m4s | Bin 0 -> 921 bytes ...pbop_480_624kbps-cenc-audio-key2-1.m4s^headers^ | 1 + .../test/bipbop_480_624kbps-cenc-audio-key2-2.m4s | Bin 0 -> 565 bytes ...pbop_480_624kbps-cenc-audio-key2-2.m4s^headers^ | 1 + .../test/bipbop_480_624kbps-cenc-audio-key2-3.m4s | Bin 0 -> 977 bytes ...pbop_480_624kbps-cenc-audio-key2-3.m4s^headers^ | 1 + .../test/bipbop_480_624kbps-cenc-audio-key2-4.m4s | Bin 0 -> 389 bytes ...pbop_480_624kbps-cenc-audio-key2-4.m4s^headers^ | 1 + .../bipbop_480_624kbps-cenc-audio-key2-init.mp4 | Bin 0 -> 874 bytes ...p_480_624kbps-cenc-audio-key2-init.mp4^headers^ | 1 + .../test/bipbop_480_624kbps-cenc-video-key1-1.m4s | Bin 0 -> 68025 bytes ...pbop_480_624kbps-cenc-video-key1-1.m4s^headers^ | 1 + .../test/bipbop_480_624kbps-cenc-video-key1-2.m4s | Bin 0 -> 66457 bytes ...pbop_480_624kbps-cenc-video-key1-2.m4s^headers^ | 1 + .../bipbop_480_624kbps-cenc-video-key1-init.mp4 | Bin 0 -> 932 bytes ...p_480_624kbps-cenc-video-key1-init.mp4^headers^ | 1 + .../test/bipbop_480_624kbps-cenc-video-key2-1.m4s | Bin 0 -> 68025 bytes ...pbop_480_624kbps-cenc-video-key2-1.m4s^headers^ | 1 + .../test/bipbop_480_624kbps-cenc-video-key2-2.m4s | Bin 0 -> 66457 bytes ...pbop_480_624kbps-cenc-video-key2-2.m4s^headers^ | 1 + .../bipbop_480_624kbps-cenc-video-key2-init.mp4 | Bin 0 -> 932 bytes ...p_480_624kbps-cenc-video-key2-init.mp4^headers^ | 1 + dom/media/test/bipbop_480_624kbps.mp4 | Bin 0 -> 133264 bytes .../test/bipbop_480_959kbps-cenc-audio-key1-1.m4s | Bin 0 -> 921 bytes ...pbop_480_959kbps-cenc-audio-key1-1.m4s^headers^ | 1 + .../test/bipbop_480_959kbps-cenc-audio-key1-2.m4s | Bin 0 -> 565 bytes ...pbop_480_959kbps-cenc-audio-key1-2.m4s^headers^ | 1 + .../test/bipbop_480_959kbps-cenc-audio-key1-3.m4s | Bin 0 -> 977 bytes ...pbop_480_959kbps-cenc-audio-key1-3.m4s^headers^ | 1 + .../test/bipbop_480_959kbps-cenc-audio-key1-4.m4s | Bin 0 -> 389 bytes ...pbop_480_959kbps-cenc-audio-key1-4.m4s^headers^ | 1 + .../bipbop_480_959kbps-cenc-audio-key1-init.mp4 | Bin 0 -> 874 bytes ...p_480_959kbps-cenc-audio-key1-init.mp4^headers^ | 1 + .../test/bipbop_480_959kbps-cenc-audio-key2-1.m4s | Bin 0 -> 921 bytes ...pbop_480_959kbps-cenc-audio-key2-1.m4s^headers^ | 1 + .../test/bipbop_480_959kbps-cenc-audio-key2-2.m4s | Bin 0 -> 565 bytes ...pbop_480_959kbps-cenc-audio-key2-2.m4s^headers^ | 1 + .../test/bipbop_480_959kbps-cenc-audio-key2-3.m4s | Bin 0 -> 977 bytes ...pbop_480_959kbps-cenc-audio-key2-3.m4s^headers^ | 1 + .../test/bipbop_480_959kbps-cenc-audio-key2-4.m4s | Bin 0 -> 389 bytes ...pbop_480_959kbps-cenc-audio-key2-4.m4s^headers^ | 1 + .../bipbop_480_959kbps-cenc-audio-key2-init.mp4 | Bin 0 -> 874 bytes ...p_480_959kbps-cenc-audio-key2-init.mp4^headers^ | 1 + .../test/bipbop_480_959kbps-cenc-video-key1-1.m4s | Bin 0 -> 101203 bytes ...pbop_480_959kbps-cenc-video-key1-1.m4s^headers^ | 1 + .../test/bipbop_480_959kbps-cenc-video-key1-2.m4s | Bin 0 -> 99366 bytes ...pbop_480_959kbps-cenc-video-key1-2.m4s^headers^ | 1 + .../bipbop_480_959kbps-cenc-video-key1-init.mp4 | Bin 0 -> 932 bytes ...p_480_959kbps-cenc-video-key1-init.mp4^headers^ | 1 + .../test/bipbop_480_959kbps-cenc-video-key2-1.m4s | Bin 0 -> 101203 bytes ...pbop_480_959kbps-cenc-video-key2-1.m4s^headers^ | 1 + .../test/bipbop_480_959kbps-cenc-video-key2-2.m4s | Bin 0 -> 99366 bytes ...pbop_480_959kbps-cenc-video-key2-2.m4s^headers^ | 1 + .../bipbop_480_959kbps-cenc-video-key2-init.mp4 | Bin 0 -> 932 bytes ...p_480_959kbps-cenc-video-key2-init.mp4^headers^ | 1 + dom/media/test/bipbop_480_959kbps.mp4 | Bin 0 -> 199351 bytes .../bipbop_480wp_1001kbps-cenc-audio-key1-1.m4s | Bin 0 -> 921 bytes ...p_480wp_1001kbps-cenc-audio-key1-1.m4s^headers^ | 1 + .../bipbop_480wp_1001kbps-cenc-audio-key1-2.m4s | Bin 0 -> 565 bytes ...p_480wp_1001kbps-cenc-audio-key1-2.m4s^headers^ | 1 + .../bipbop_480wp_1001kbps-cenc-audio-key1-3.m4s | Bin 0 -> 977 bytes ...p_480wp_1001kbps-cenc-audio-key1-3.m4s^headers^ | 1 + .../bipbop_480wp_1001kbps-cenc-audio-key1-4.m4s | Bin 0 -> 389 bytes ...p_480wp_1001kbps-cenc-audio-key1-4.m4s^headers^ | 1 + .../bipbop_480wp_1001kbps-cenc-audio-key1-init.mp4 | Bin 0 -> 1020 bytes ...80wp_1001kbps-cenc-audio-key1-init.mp4^headers^ | 1 + .../bipbop_480wp_1001kbps-cenc-audio-key2-1.m4s | Bin 0 -> 921 bytes ...p_480wp_1001kbps-cenc-audio-key2-1.m4s^headers^ | 1 + .../bipbop_480wp_1001kbps-cenc-audio-key2-2.m4s | Bin 0 -> 565 bytes ...p_480wp_1001kbps-cenc-audio-key2-2.m4s^headers^ | 1 + .../bipbop_480wp_1001kbps-cenc-audio-key2-3.m4s | Bin 0 -> 977 bytes ...p_480wp_1001kbps-cenc-audio-key2-3.m4s^headers^ | 1 + .../bipbop_480wp_1001kbps-cenc-audio-key2-4.m4s | Bin 0 -> 389 bytes ...p_480wp_1001kbps-cenc-audio-key2-4.m4s^headers^ | 1 + .../bipbop_480wp_1001kbps-cenc-audio-key2-init.mp4 | Bin 0 -> 1020 bytes ...80wp_1001kbps-cenc-audio-key2-init.mp4^headers^ | 1 + .../bipbop_480wp_1001kbps-cenc-video-key1-1.m4s | Bin 0 -> 101203 bytes ...p_480wp_1001kbps-cenc-video-key1-1.m4s^headers^ | 1 + .../bipbop_480wp_1001kbps-cenc-video-key1-2.m4s | Bin 0 -> 99366 bytes ...p_480wp_1001kbps-cenc-video-key1-2.m4s^headers^ | 1 + .../bipbop_480wp_1001kbps-cenc-video-key1-init.mp4 | Bin 0 -> 1094 bytes ...80wp_1001kbps-cenc-video-key1-init.mp4^headers^ | 1 + .../bipbop_480wp_1001kbps-cenc-video-key2-1.m4s | Bin 0 -> 101203 bytes ...p_480wp_1001kbps-cenc-video-key2-1.m4s^headers^ | 1 + .../bipbop_480wp_1001kbps-cenc-video-key2-2.m4s | Bin 0 -> 99366 bytes ...p_480wp_1001kbps-cenc-video-key2-2.m4s^headers^ | 1 + .../bipbop_480wp_1001kbps-cenc-video-key2-init.mp4 | Bin 0 -> 1094 bytes ...80wp_1001kbps-cenc-video-key2-init.mp4^headers^ | 1 + dom/media/test/bipbop_480wp_1001kbps.mp4 | Bin 0 -> 199911 bytes .../bipbop_480wp_663kbps-cenc-audio-key1-1.m4s | Bin 0 -> 921 bytes ...op_480wp_663kbps-cenc-audio-key1-1.m4s^headers^ | 1 + .../bipbop_480wp_663kbps-cenc-audio-key1-2.m4s | Bin 0 -> 565 bytes ...op_480wp_663kbps-cenc-audio-key1-2.m4s^headers^ | 1 + .../bipbop_480wp_663kbps-cenc-audio-key1-3.m4s | Bin 0 -> 977 bytes ...op_480wp_663kbps-cenc-audio-key1-3.m4s^headers^ | 1 + .../bipbop_480wp_663kbps-cenc-audio-key1-4.m4s | Bin 0 -> 389 bytes ...op_480wp_663kbps-cenc-audio-key1-4.m4s^headers^ | 1 + .../bipbop_480wp_663kbps-cenc-audio-key1-init.mp4 | Bin 0 -> 1020 bytes ...480wp_663kbps-cenc-audio-key1-init.mp4^headers^ | 1 + .../bipbop_480wp_663kbps-cenc-audio-key2-1.m4s | Bin 0 -> 921 bytes ...op_480wp_663kbps-cenc-audio-key2-1.m4s^headers^ | 1 + .../bipbop_480wp_663kbps-cenc-audio-key2-2.m4s | Bin 0 -> 565 bytes ...op_480wp_663kbps-cenc-audio-key2-2.m4s^headers^ | 1 + .../bipbop_480wp_663kbps-cenc-audio-key2-3.m4s | Bin 0 -> 977 bytes ...op_480wp_663kbps-cenc-audio-key2-3.m4s^headers^ | 1 + .../bipbop_480wp_663kbps-cenc-audio-key2-4.m4s | Bin 0 -> 389 bytes ...op_480wp_663kbps-cenc-audio-key2-4.m4s^headers^ | 1 + .../bipbop_480wp_663kbps-cenc-audio-key2-init.mp4 | Bin 0 -> 1020 bytes ...480wp_663kbps-cenc-audio-key2-init.mp4^headers^ | 1 + .../bipbop_480wp_663kbps-cenc-video-key1-1.m4s | Bin 0 -> 68025 bytes ...op_480wp_663kbps-cenc-video-key1-1.m4s^headers^ | 1 + .../bipbop_480wp_663kbps-cenc-video-key1-2.m4s | Bin 0 -> 66457 bytes ...op_480wp_663kbps-cenc-video-key1-2.m4s^headers^ | 1 + .../bipbop_480wp_663kbps-cenc-video-key1-init.mp4 | Bin 0 -> 1094 bytes ...480wp_663kbps-cenc-video-key1-init.mp4^headers^ | 1 + .../bipbop_480wp_663kbps-cenc-video-key2-1.m4s | Bin 0 -> 68025 bytes ...op_480wp_663kbps-cenc-video-key2-1.m4s^headers^ | 1 + .../bipbop_480wp_663kbps-cenc-video-key2-2.m4s | Bin 0 -> 66457 bytes ...op_480wp_663kbps-cenc-video-key2-2.m4s^headers^ | 1 + .../bipbop_480wp_663kbps-cenc-video-key2-init.mp4 | Bin 0 -> 1094 bytes ...480wp_663kbps-cenc-video-key2-init.mp4^headers^ | 1 + dom/media/test/bipbop_480wp_663kbps.mp4 | Bin 0 -> 133824 bytes dom/media/test/bipbop_audio_aac_22.05k.mp4 | Bin 0 -> 2424 bytes .../test/bipbop_audio_aac_22.05k.mp4^headers^ | 1 + dom/media/test/bipbop_audio_aac_44.1k.mp4 | Bin 0 -> 3239 bytes dom/media/test/bipbop_audio_aac_44.1k.mp4^headers^ | 1 + dom/media/test/bipbop_audio_aac_48k.mp4 | Bin 0 -> 3286 bytes dom/media/test/bipbop_audio_aac_48k.mp4^headers^ | 1 + dom/media/test/bipbop_audio_aac_88.2k.mp4 | Bin 0 -> 3769 bytes dom/media/test/bipbop_audio_aac_88.2k.mp4^headers^ | 1 + dom/media/test/bipbop_audio_aac_8k.mp4 | Bin 0 -> 1707 bytes dom/media/test/bipbop_audio_aac_8k.mp4^headers^ | 1 + dom/media/test/bipbop_audio_aac_96k.mp4 | Bin 0 -> 4010 bytes dom/media/test/bipbop_audio_aac_96k.mp4^headers^ | 1 + dom/media/test/bipbop_cbcs_10_0_audio_1.m4s | Bin 0 -> 1364 bytes .../test/bipbop_cbcs_10_0_audio_1.m4s^headers^ | 1 + dom/media/test/bipbop_cbcs_10_0_audio_init.mp4 | Bin 0 -> 936 bytes .../test/bipbop_cbcs_10_0_audio_init.mp4^headers^ | 1 + dom/media/test/bipbop_cbcs_10_0_video_1.m4s | Bin 0 -> 57044 bytes .../test/bipbop_cbcs_10_0_video_1.m4s^headers^ | 1 + dom/media/test/bipbop_cbcs_10_0_video_init.mp4 | Bin 0 -> 972 bytes .../test/bipbop_cbcs_10_0_video_init.mp4^headers^ | 1 + dom/media/test/bipbop_cbcs_1_9_audio_1.m4s | Bin 0 -> 1364 bytes .../test/bipbop_cbcs_1_9_audio_1.m4s^headers^ | 1 + dom/media/test/bipbop_cbcs_1_9_audio_init.mp4 | Bin 0 -> 936 bytes .../test/bipbop_cbcs_1_9_audio_init.mp4^headers^ | 1 + dom/media/test/bipbop_cbcs_1_9_video_1.m4s | Bin 0 -> 57044 bytes .../test/bipbop_cbcs_1_9_video_1.m4s^headers^ | 1 + dom/media/test/bipbop_cbcs_1_9_video_init.mp4 | Bin 0 -> 972 bytes .../test/bipbop_cbcs_1_9_video_init.mp4^headers^ | 1 + dom/media/test/bipbop_cbcs_5_5_audio_1.m4s | Bin 0 -> 1364 bytes .../test/bipbop_cbcs_5_5_audio_1.m4s^headers^ | 1 + dom/media/test/bipbop_cbcs_5_5_audio_init.mp4 | Bin 0 -> 936 bytes .../test/bipbop_cbcs_5_5_audio_init.mp4^headers^ | 1 + dom/media/test/bipbop_cbcs_5_5_video_1.m4s | Bin 0 -> 57044 bytes .../test/bipbop_cbcs_5_5_video_1.m4s^headers^ | 1 + dom/media/test/bipbop_cbcs_5_5_video_init.mp4 | Bin 0 -> 972 bytes .../test/bipbop_cbcs_5_5_video_init.mp4^headers^ | 1 + dom/media/test/bipbop_cbcs_7_7_audio_1.m4s | Bin 0 -> 1364 bytes .../test/bipbop_cbcs_7_7_audio_1.m4s^headers^ | 1 + dom/media/test/bipbop_cbcs_7_7_audio_init.mp4 | Bin 0 -> 936 bytes .../test/bipbop_cbcs_7_7_audio_init.mp4^headers^ | 1 + dom/media/test/bipbop_cbcs_7_7_video_1.m4s | Bin 0 -> 57044 bytes .../test/bipbop_cbcs_7_7_video_1.m4s^headers^ | 1 + dom/media/test/bipbop_cbcs_7_7_video_init.mp4 | Bin 0 -> 972 bytes .../test/bipbop_cbcs_7_7_video_init.mp4^headers^ | 1 + dom/media/test/bipbop_cbcs_9_8_audio_1.m4s | Bin 0 -> 1364 bytes .../test/bipbop_cbcs_9_8_audio_1.m4s^headers^ | 1 + dom/media/test/bipbop_cbcs_9_8_audio_init.mp4 | Bin 0 -> 936 bytes .../test/bipbop_cbcs_9_8_audio_init.mp4^headers^ | 1 + dom/media/test/bipbop_cbcs_9_8_video_1.m4s | Bin 0 -> 57044 bytes .../test/bipbop_cbcs_9_8_video_1.m4s^headers^ | 1 + dom/media/test/bipbop_cbcs_9_8_video_init.mp4 | Bin 0 -> 972 bytes .../test/bipbop_cbcs_9_8_video_init.mp4^headers^ | 1 + ...t_pixel_metadata_bigger_than_in_stream_vp8.webm | Bin 0 -> 48942 bytes ...etadata_bigger_than_in_stream_vp8.webm^headers^ | 1 + ...pixel_metadata_narrower_than_in_stream_vp8.webm | Bin 0 -> 48942 bytes ...adata_narrower_than_in_stream_vp8.webm^headers^ | 1 + ..._pixel_metadata_smaller_than_in_stream_vp8.webm | Bin 0 -> 48942 bytes ...tadata_smaller_than_in_stream_vp8.webm^headers^ | 1 + dom/media/test/bipbop_short_vp8.webm | Bin 0 -> 48942 bytes dom/media/test/bipbop_short_vp8.webm^headers^ | 1 + dom/media/test/black100x100-aspect3to2.ogv | Bin 0 -> 3428 bytes .../test/black100x100-aspect3to2.ogv^headers^ | 1 + dom/media/test/bogus.duh | 45 + dom/media/test/bogus.ogv | 45 + dom/media/test/bogus.ogv^headers^ | 1 + dom/media/test/bogus.wav | 45 + dom/media/test/bogus.wav^headers^ | 1 + dom/media/test/browser/browser.toml | 26 + .../browser_encrypted_play_time_telemetry.js | 269 ++ dom/media/test/browser/browser_partial.js | 56 + .../browser_tab_visibility_and_play_time.js | 218 ++ ...er_telemetry_video_hardware_decoding_support.js | 106 + dom/media/test/browser/file_empty_page.html | 8 + dom/media/test/browser/file_media.html | 10 + dom/media/test/browser/wmfme/browser.toml | 13 + .../test/browser/wmfme/browser_wmfme_crash.js | 52 + .../browser/wmfme/browser_wmfme_max_crashes.js | 69 + dom/media/test/browser/wmfme/file_video.html | 9 + dom/media/test/browser/wmfme/head.js | 201 ++ dom/media/test/bug1066943.webm | Bin 0 -> 18442 bytes dom/media/test/bug1066943.webm^headers^ | 1 + dom/media/test/bug1301226-odd.wav | Bin 0 -> 244 bytes dom/media/test/bug1301226-odd.wav^headers^ | 1 + dom/media/test/bug1301226.wav | Bin 0 -> 240 bytes dom/media/test/bug1301226.wav^headers^ | 1 + dom/media/test/bug1377278.webm | Bin 0 -> 215594 bytes dom/media/test/bug1377278.webm^headers^ | 1 + dom/media/test/bug1535980.webm | Bin 0 -> 81467 bytes dom/media/test/bug1535980.webm^headers^ | 1 + dom/media/test/bug1799787.webm | Bin 0 -> 1053 bytes dom/media/test/bug1799787.webm^headers^ | 1 + dom/media/test/bug461281.ogg | Bin 0 -> 16521 bytes dom/media/test/bug461281.ogg^headers^ | 1 + dom/media/test/bug482461-theora.ogv | Bin 0 -> 280904 bytes dom/media/test/bug482461-theora.ogv^headers^ | 1 + dom/media/test/bug482461.ogv | Bin 0 -> 305785 bytes dom/media/test/bug482461.ogv^headers^ | 1 + dom/media/test/bug495129.ogv | Bin 0 -> 122207 bytes dom/media/test/bug495129.ogv^headers^ | 1 + dom/media/test/bug495794.ogg | Bin 0 -> 4837 bytes dom/media/test/bug495794.ogg^headers^ | 1 + dom/media/test/bug498380.ogv | Bin 0 -> 65535 bytes dom/media/test/bug498380.ogv^headers^ | 1 + dom/media/test/bug498855-1.ogv | Bin 0 -> 20480 bytes dom/media/test/bug498855-1.ogv^headers^ | 1 + dom/media/test/bug498855-2.ogv | Bin 0 -> 20480 bytes dom/media/test/bug498855-2.ogv^headers^ | 1 + dom/media/test/bug498855-3.ogv | Bin 0 -> 20480 bytes dom/media/test/bug498855-3.ogv^headers^ | 1 + dom/media/test/bug499519.ogv | Bin 0 -> 20480 bytes dom/media/test/bug499519.ogv^headers^ | 1 + dom/media/test/bug500311.ogv | Bin 0 -> 55834 bytes dom/media/test/bug500311.ogv^headers^ | 1 + dom/media/test/bug501279.ogg | Bin 0 -> 2361 bytes dom/media/test/bug501279.ogg^headers^ | 1 + dom/media/test/bug504613.ogv | Bin 0 -> 35000 bytes dom/media/test/bug504613.ogv^headers^ | 1 + dom/media/test/bug504644.ogv | Bin 0 -> 131114 bytes dom/media/test/bug504644.ogv^headers^ | 1 + dom/media/test/bug504843.ogv | Bin 0 -> 65536 bytes dom/media/test/bug504843.ogv^headers^ | 1 + dom/media/test/bug506094.ogv | Bin 0 -> 8195 bytes dom/media/test/bug506094.ogv^headers^ | 1 + dom/media/test/bug516323.indexed.ogv | Bin 0 -> 162193 bytes dom/media/test/bug516323.indexed.ogv^headers^ | 1 + dom/media/test/bug516323.ogv | Bin 0 -> 161789 bytes dom/media/test/bug516323.ogv^headers^ | 1 + dom/media/test/bug520493.ogg | Bin 0 -> 3901 bytes dom/media/test/bug520493.ogg^headers^ | 1 + dom/media/test/bug520500.ogg | Bin 0 -> 21978 bytes dom/media/test/bug520500.ogg^headers^ | 1 + dom/media/test/bug520908.ogv | Bin 0 -> 28942 bytes dom/media/test/bug520908.ogv^headers^ | 1 + dom/media/test/bug523816.ogv | Bin 0 -> 40585 bytes dom/media/test/bug523816.ogv^headers^ | 1 + dom/media/test/bug533822.ogg | Bin 0 -> 35010 bytes dom/media/test/bug533822.ogg^headers^ | 1 + dom/media/test/bug556821.ogv | Bin 0 -> 196608 bytes dom/media/test/bug556821.ogv^headers^ | 1 + dom/media/test/bug557094.ogv | Bin 0 -> 76966 bytes dom/media/test/bug557094.ogv^headers^ | 1 + dom/media/test/bug604067.webm | Bin 0 -> 103227 bytes dom/media/test/bug604067.webm^headers^ | 1 + dom/media/test/bunny.webm | Bin 0 -> 195455 bytes dom/media/test/bunny_hd_5s.mp4 | Bin 0 -> 845651 bytes dom/media/test/can_play_type_dash.js | 27 + dom/media/test/can_play_type_ogg.js | 72 + dom/media/test/can_play_type_wave.js | 30 + dom/media/test/can_play_type_webm.js | 39 + dom/media/test/cancellable_request.sjs | 162 ++ dom/media/test/chain.ogg | Bin 0 -> 63610 bytes dom/media/test/chain.ogg^headers^ | 1 + dom/media/test/chain.ogv | Bin 0 -> 45463 bytes dom/media/test/chain.ogv^headers^ | 1 + dom/media/test/chain.opus | Bin 0 -> 50101 bytes dom/media/test/chain.opus^headers^ | 1 + dom/media/test/chained-audio-video.ogg | Bin 0 -> 92552 bytes dom/media/test/chained-audio-video.ogg^headers^ | 1 + dom/media/test/chained-video.ogv | Bin 0 -> 57906 bytes dom/media/test/chained-video.ogv^headers^ | 1 + dom/media/test/chrome/chrome.toml | 12 + .../test/chrome/test_accumulated_play_time.html | 694 ++++++ .../chrome/test_telemetry_source_buffer_type.html | 105 + dom/media/test/chromeHelper.js | 23 + dom/media/test/cloneElementVisually_helpers.js | 232 ++ dom/media/test/contentType.sjs | 77 + dom/media/test/crashtests/0-timescale.html | 14 + dom/media/test/crashtests/0-timescale.mp4 | Bin 0 -> 14718 bytes dom/media/test/crashtests/1012609.html | 9 + dom/media/test/crashtests/1015662.html | 4 + dom/media/test/crashtests/1028458.html | 23 + dom/media/test/crashtests/1041466.html | 21 + dom/media/test/crashtests/1045650.html | 18 + dom/media/test/crashtests/1080986.html | 3 + dom/media/test/crashtests/1080986.wav | Bin 0 -> 592 bytes dom/media/test/crashtests/1122218.html | 24 + dom/media/test/crashtests/1127188.html | 3 + dom/media/test/crashtests/1157994.html | 21 + dom/media/test/crashtests/1158427.html | 21 + dom/media/test/crashtests/1180881.html | 8 + dom/media/test/crashtests/1180881.webm | Bin 0 -> 524 bytes dom/media/test/crashtests/1185176.html | 24 + dom/media/test/crashtests/1185191.html | 21 + dom/media/test/crashtests/1185192.html | 18 + dom/media/test/crashtests/1197935.html | 8 + dom/media/test/crashtests/1197935.mp4 | Bin 0 -> 1806042 bytes dom/media/test/crashtests/1223670.html | 23 + dom/media/test/crashtests/1236639.html | 9 + dom/media/test/crashtests/1236639.mp3 | Bin 0 -> 1080 bytes dom/media/test/crashtests/1257700.html | 8 + dom/media/test/crashtests/1257700.webm | Bin 0 -> 59264 bytes dom/media/test/crashtests/1267263.html | 19 + dom/media/test/crashtests/1270303.html | 8 + dom/media/test/crashtests/1270303.webm | Bin 0 -> 5822 bytes dom/media/test/crashtests/1291702.html | 72 + dom/media/test/crashtests/1368490.html | 30 + dom/media/test/crashtests/1378826.html | 46 + dom/media/test/crashtests/1384248.html | 10 + dom/media/test/crashtests/1388372.html | 13 + dom/media/test/crashtests/1389304.html | 32 + dom/media/test/crashtests/1389304.mp4 | Bin 0 -> 198320 bytes dom/media/test/crashtests/1393272.webm | Bin 0 -> 6781 bytes dom/media/test/crashtests/1411322.html | 18 + dom/media/test/crashtests/1414444.mp4 | Bin 0 -> 34009 bytes dom/media/test/crashtests/1450845.html | 34 + dom/media/test/crashtests/1489160.html | 10 + dom/media/test/crashtests/1494073.html | 19 + dom/media/test/crashtests/1517199.html | 17 + dom/media/test/crashtests/1526044.html | 19 + dom/media/test/crashtests/1530897.webm | Bin 0 -> 509 bytes dom/media/test/crashtests/1538727.html | 14 + dom/media/test/crashtests/1545133.html | 34 + dom/media/test/crashtests/1547784.html | 33 + dom/media/test/crashtests/1547899.html | 20 + dom/media/test/crashtests/1560215.html | 20 + dom/media/test/crashtests/1569645.html | 23 + dom/media/test/crashtests/1575271.html | 25 + dom/media/test/crashtests/1577184.html | 15 + dom/media/test/crashtests/1587248.html | 23 + dom/media/test/crashtests/1594466.html | 22 + dom/media/test/crashtests/1601385.html | 12 + dom/media/test/crashtests/1601422.html | 20 + dom/media/test/crashtests/1604941.html | 22 + dom/media/test/crashtests/1608286.html | 50 + dom/media/test/crashtests/1673525.html | 15 + dom/media/test/crashtests/1673526-1.html | 20 + dom/media/test/crashtests/1673526-2.html | 20 + dom/media/test/crashtests/1693043.html | 21 + dom/media/test/crashtests/1696511.html | 22 + dom/media/test/crashtests/1697521.html | 19 + dom/media/test/crashtests/1708790.html | 22 + dom/media/test/crashtests/1709130.html | 19 + dom/media/test/crashtests/1734008.html | 22 + dom/media/test/crashtests/1734008.webm | Bin 0 -> 8253 bytes dom/media/test/crashtests/1741677.html | 15 + dom/media/test/crashtests/1748272.html | 12 + dom/media/test/crashtests/1752917.html | 18 + dom/media/test/crashtests/1762620.html | 8 + dom/media/test/crashtests/1765842.html | 8 + dom/media/test/crashtests/1765842.webm | Bin 0 -> 17210 bytes dom/media/test/crashtests/1787281.html | 13 + dom/media/test/crashtests/1787281.mp4 | Bin 0 -> 2736 bytes dom/media/test/crashtests/1798778.html | 11 + dom/media/test/crashtests/1830206.html | 12 + dom/media/test/crashtests/1830206.mp4 | Bin 0 -> 41224 bytes dom/media/test/crashtests/1833894.mp4 | Bin 0 -> 1000465 bytes dom/media/test/crashtests/1833896.mp4 | Bin 0 -> 38215 bytes dom/media/test/crashtests/1835118.adts | Bin 0 -> 132 bytes dom/media/test/crashtests/1835164.html | 13 + dom/media/test/crashtests/1835164.opus | Bin 0 -> 2250 bytes dom/media/test/crashtests/1839193.adts | Bin 0 -> 484 bytes dom/media/test/crashtests/1839193.html | 9 + dom/media/test/crashtests/1840002.webm | Bin 0 -> 512 bytes dom/media/test/crashtests/1845350.mp4 | Bin 0 -> 1045 bytes dom/media/test/crashtests/1848660.html | 10 + dom/media/test/crashtests/1848660.wav | 0 dom/media/test/crashtests/1850453.flac | Bin 0 -> 104472 bytes dom/media/test/crashtests/1850453.html | 12 + dom/media/test/crashtests/1859384.mp4 | Bin 0 -> 4128 bytes dom/media/test/crashtests/1859600.mp4 | Bin 0 -> 5172 bytes dom/media/test/crashtests/1860840.mp4 | Bin 0 -> 5172 bytes dom/media/test/crashtests/1864450.html | 12 + dom/media/test/crashtests/1872787.html | 14 + dom/media/test/crashtests/255ch.wav | Bin 0 -> 68318 bytes dom/media/test/crashtests/459439-1.html | 36 + dom/media/test/crashtests/466607-1.html | 14 + dom/media/test/crashtests/466945-1.html | 25 + dom/media/test/crashtests/468763-1.html | 1 + dom/media/test/crashtests/474744-1.html | 15 + dom/media/test/crashtests/481136-1.html | 3 + dom/media/test/crashtests/492286-1.xhtml | 1 + dom/media/test/crashtests/493915-1.html | 18 + dom/media/test/crashtests/495794-1.html | 8 + dom/media/test/crashtests/495794-1.ogg | Bin 0 -> 4837 bytes dom/media/test/crashtests/497734-1.xhtml | 21 + dom/media/test/crashtests/497734-2.html | 17 + dom/media/test/crashtests/576612-1.html | 15 + dom/media/test/crashtests/691096-1.html | 31 + dom/media/test/crashtests/752784-1.html | 15 + dom/media/test/crashtests/789075-1.html | 20 + dom/media/test/crashtests/789075.webm | Bin 0 -> 12294 bytes dom/media/test/crashtests/795892-1.html | 23 + dom/media/test/crashtests/844563.html | 5 + dom/media/test/crashtests/846612.html | 8 + dom/media/test/crashtests/852838.html | 11 + dom/media/test/crashtests/865004.html | 19 + dom/media/test/crashtests/865537-1.html | 13 + dom/media/test/crashtests/865550.html | 22 + dom/media/test/crashtests/868504.html | 14 + dom/media/test/crashtests/874869.html | 15 + dom/media/test/crashtests/874915.html | 24 + dom/media/test/crashtests/874934.html | 23 + dom/media/test/crashtests/874952.html | 11 + dom/media/test/crashtests/875144.html | 81 + dom/media/test/crashtests/875596.html | 12 + dom/media/test/crashtests/875911.html | 3 + dom/media/test/crashtests/876024-1.html | 5 + dom/media/test/crashtests/876024-2.html | 17 + dom/media/test/crashtests/876118.html | 16 + dom/media/test/crashtests/876207.html | 30 + dom/media/test/crashtests/876215.html | 14 + dom/media/test/crashtests/876249.html | 27 + dom/media/test/crashtests/876252.html | 23 + dom/media/test/crashtests/876834.html | 4 + dom/media/test/crashtests/877527.html | 37 + dom/media/test/crashtests/877820.html | 4 + dom/media/test/crashtests/878014.html | 31 + dom/media/test/crashtests/878328.html | 5 + dom/media/test/crashtests/878407.html | 11 + dom/media/test/crashtests/878478.html | 30 + dom/media/test/crashtests/880129.html | 9 + dom/media/test/crashtests/880202.html | 33 + dom/media/test/crashtests/880342-1.html | 208 ++ dom/media/test/crashtests/880342-2.html | 8 + dom/media/test/crashtests/880384.html | 8 + dom/media/test/crashtests/880404.html | 6 + dom/media/test/crashtests/880724.html | 13 + dom/media/test/crashtests/881775.html | 25 + dom/media/test/crashtests/882956.html | 15 + dom/media/test/crashtests/884459.html | 12 + dom/media/test/crashtests/889042.html | 4 + dom/media/test/crashtests/907986-1.html | 17 + dom/media/test/crashtests/907986-2.html | 17 + dom/media/test/crashtests/907986-3.html | 17 + dom/media/test/crashtests/907986-4.html | 15 + dom/media/test/crashtests/910171-1.html | 17 + dom/media/test/crashtests/920987.html | 6 + dom/media/test/crashtests/925619-1.html | 14 + dom/media/test/crashtests/925619-2.html | 15 + dom/media/test/crashtests/926619.html | 24 + dom/media/test/crashtests/933151.html | 16 + dom/media/test/crashtests/933156.html | 23 + dom/media/test/crashtests/944851.html | 17 + dom/media/test/crashtests/952756.html | 19 + dom/media/test/crashtests/986901.html | 16 + dom/media/test/crashtests/990794.html | 22 + dom/media/test/crashtests/995289.html | 9 + dom/media/test/crashtests/adts-truncated.aac | Bin 0 -> 512 bytes dom/media/test/crashtests/adts.aac | Bin 0 -> 8537 bytes dom/media/test/crashtests/analyser-channels-1.html | 16 + .../crashtests/audiocontext-after-unload-1.html | 27 + .../test/crashtests/audiocontext-after-xhr.html | 13 + .../crashtests/audiocontext-double-suspend.html | 5 + .../audioworkletnode-after-unload-1.html | 27 + .../test/crashtests/buffer-source-duration-1.html | 14 + .../test/crashtests/buffer-source-ended-1.html | 16 + .../buffer-source-resampling-start-1.html | 16 + .../buffer-source-slow-resampling-1.html | 34 + ...count-in-metadata-different-than-in-content.mp4 | Bin 0 -> 13651 bytes .../test/crashtests/convolver-memory-report-1.html | 25 + dom/media/test/crashtests/copyFromChannel-2.html | 16 + dom/media/test/crashtests/cors.webm | Bin 0 -> 215529 bytes dom/media/test/crashtests/cors.webm^headers^ | 1 + dom/media/test/crashtests/crashtests.list | 182 ++ .../crashtests/disconnect-wrong-destination.html | 13 + dom/media/test/crashtests/doppler-1.html | 23 + dom/media/test/crashtests/empty-buffer-source.html | 14 + dom/media/test/crashtests/empty-samples.webm | 0 ...ted-track-with-bad-sample-description-index.mp4 | Bin 0 -> 198320 bytes ...ncrypted-track-with-sample-missing-cenc-aux.mp4 | Bin 0 -> 152132 bytes .../crashtests/encrypted-track-without-tenc.mp4 | Bin 0 -> 152132 bytes dom/media/test/crashtests/invalidfmt.html | 8 + dom/media/test/crashtests/invalidfmt.wav | Bin 0 -> 115 bytes .../crashtests/media-element-source-seek-1.html | 27 + dom/media/test/crashtests/mp4_box_emptyrange.mp4 | Bin 0 -> 918 bytes dom/media/test/crashtests/noextradata-8ch.wav | Bin 0 -> 684 bytes .../crashtests/offline-buffer-source-ended-1.html | 15 + dom/media/test/crashtests/oscillator-ended-1.html | 15 + dom/media/test/crashtests/oscillator-ended-2.html | 15 + dom/media/test/crashtests/small-timebase.html | 10 + dom/media/test/crashtests/small-timebase.mp4 | Bin 0 -> 1355 bytes dom/media/test/crashtests/sound.ogg | Bin 0 -> 2603 bytes dom/media/test/crashtests/test.mp4 | Bin 0 -> 11817 bytes .../test/crashtests/track-with-zero-dimensions.mp4 | Bin 0 -> 11817 bytes ...ing_needed_and_last_sample_invalid_duration.ogg | Bin 0 -> 18307 bytes dom/media/test/crashtests/video-crash.webm | Bin 0 -> 58482 bytes .../crashtests/video-replay-after-audio-end.html | 43 + dom/media/test/dash/dash-manifest-garbled-webm.mpd | 35 + dom/media/test/dash/dash-manifest-garbled.mpd | 1 + dom/media/test/dash/dash-manifest-sjs.mpd | 35 + dom/media/test/dash/dash-manifest.mpd | 35 + dom/media/test/dash/dash-webm-audio-128k.webm | Bin 0 -> 41946 bytes dom/media/test/dash/dash-webm-video-320x180.webm | Bin 0 -> 35123 bytes dom/media/test/dash/dash-webm-video-428x240.webm | Bin 0 -> 50206 bytes dom/media/test/dash/garbled.webm | 1 + dom/media/test/dash_detect_stream_switch.sjs | 143 ++ dom/media/test/detodos-recorder-test.opus | Bin 0 -> 1507 bytes dom/media/test/detodos-recorder-test.opus^headers^ | 1 + dom/media/test/detodos-short.opus | Bin 0 -> 648 bytes dom/media/test/detodos-short.opus^headers^ | 1 + dom/media/test/detodos-short.webm | Bin 0 -> 1085 bytes dom/media/test/detodos-short.webm^headers^ | 1 + dom/media/test/detodos.opus | Bin 0 -> 6270 bytes dom/media/test/detodos.opus^headers^ | 1 + dom/media/test/detodos.webm | Bin 0 -> 11701 bytes dom/media/test/detodos.webm^headers^ | 1 + dom/media/test/dirac.ogg | Bin 0 -> 106338 bytes dom/media/test/dirac.ogg^headers^ | 1 + dom/media/test/dynamic_resource.sjs | 53 + dom/media/test/eme.js | 479 ++++ dom/media/test/eme_standalone.js | 286 +++ dom/media/test/empty_size.mp3 | Bin 0 -> 90368 bytes dom/media/test/file_access_controls.html | 160 ++ dom/media/test/file_eme_createMediaKeys.html | 47 + dom/media/test/file_playback_and_bfcache.html | 57 + dom/media/test/flac-noheader-s16.flac | Bin 0 -> 242826 bytes dom/media/test/flac-noheader-s16.flac^headers^ | 1 + dom/media/test/flac-s24.flac | Bin 0 -> 980951 bytes dom/media/test/flac-s24.flac^headers^ | 1 + dom/media/test/flac-sample-cenc.mp4 | Bin 0 -> 336823 bytes dom/media/test/flac-sample-cenc.mp4^headers^ | 1 + dom/media/test/flac-sample.mp4 | Bin 0 -> 876556 bytes dom/media/test/flac-sample.mp4^headers^ | 1 + dom/media/test/force_octet_stream.mp4 | Bin 0 -> 13708 bytes dom/media/test/force_octet_stream.mp4^headers^ | 2 + dom/media/test/fragment_noplay.js | 19 + dom/media/test/fragment_play.js | 92 + dom/media/test/gUM_support.js | 103 + dom/media/test/gizmo-frag.mp4 | Bin 0 -> 152132 bytes dom/media/test/gizmo-noaudio.mp4 | Bin 0 -> 342980 bytes dom/media/test/gizmo-noaudio.mp4^headers^ | 1 + dom/media/test/gizmo-noaudio.webm | Bin 0 -> 112663 bytes dom/media/test/gizmo-noaudio.webm^headers^ | 1 + dom/media/test/gizmo-short.mp4 | Bin 0 -> 29905 bytes dom/media/test/gizmo-short.mp4^headers^ | 1 + dom/media/test/gizmo.mp4 | Bin 0 -> 455255 bytes dom/media/test/gizmo.mp4^headers^ | 1 + dom/media/test/gizmo.webm | Bin 0 -> 159035 bytes dom/media/test/gizmo.webm^headers^ | 1 + dom/media/test/gzipped_mp4.sjs | 25 + dom/media/test/hevc_white_frame.mp4 | Bin 0 -> 3358 bytes dom/media/test/hevc_white_frame.mp4^headers^ | 1 + dom/media/test/hevc_white_red_frames.mp4 | Bin 0 -> 29235 bytes dom/media/test/hevc_white_red_frames.mp4^headers^ | 1 + dom/media/test/hls/400x300_prog_index.m3u8 | 10 + dom/media/test/hls/400x300_prog_index_5s.m3u8 | 8 + dom/media/test/hls/400x300_seg0.ts | Bin 0 -> 291588 bytes dom/media/test/hls/400x300_seg0_5s.ts | Bin 0 -> 168636 bytes dom/media/test/hls/400x300_seg1.ts | Bin 0 -> 288204 bytes dom/media/test/hls/416x243_prog_index_5s.m3u8 | 8 + dom/media/test/hls/416x243_seg0_5s.ts | Bin 0 -> 197400 bytes dom/media/test/hls/640x480_prog_index.m3u8 | 10 + dom/media/test/hls/640x480_seg0.ts | Bin 0 -> 814228 bytes dom/media/test/hls/640x480_seg1.ts | Bin 0 -> 796368 bytes dom/media/test/hls/960x720_prog_index.m3u8 | 10 + dom/media/test/hls/960x720_seg0.ts | Bin 0 -> 1878120 bytes dom/media/test/hls/960x720_seg1.ts | Bin 0 -> 1839392 bytes dom/media/test/hls/bipbop_16x9_single.m3u8 | 5 + dom/media/test/hls/bipbop_4x3_single.m3u8 | 4 + dom/media/test/hls/bipbop_4x3_variant.m3u8 | 10 + dom/media/test/huge-id3.mp3 | Bin 0 -> 141774 bytes dom/media/test/huge-id3.mp3^headers^ | 1 + dom/media/test/id3tags.mp3 | Bin 0 -> 3530 bytes dom/media/test/id3tags.mp3^headers^ | 1 + dom/media/test/id3v1afterlongid3v2.mp3 | Bin 0 -> 10229 bytes dom/media/test/invalid-cmap-s0c0.opus | Bin 0 -> 6835 bytes dom/media/test/invalid-cmap-s0c0.opus^headers^ | 1 + dom/media/test/invalid-cmap-s0c2.opus | Bin 0 -> 6834 bytes dom/media/test/invalid-cmap-s0c2.opus^headers^ | 1 + dom/media/test/invalid-cmap-s1c2.opus | Bin 0 -> 6848 bytes dom/media/test/invalid-cmap-s1c2.opus^headers^ | 1 + dom/media/test/invalid-cmap-short.opus | Bin 0 -> 6854 bytes dom/media/test/invalid-cmap-short.opus^headers^ | 1 + .../test/invalid-discard_on_multi_blocks.webm | Bin 0 -> 19636 bytes .../invalid-discard_on_multi_blocks.webm^headers^ | 1 + dom/media/test/invalid-excess_discard.webm | Bin 0 -> 18442 bytes .../test/invalid-excess_discard.webm^headers^ | 1 + dom/media/test/invalid-excess_neg_discard.webm | Bin 0 -> 18442 bytes .../test/invalid-excess_neg_discard.webm^headers^ | 1 + dom/media/test/invalid-m0c0.opus | Bin 0 -> 2471 bytes dom/media/test/invalid-m0c0.opus^headers^ | 1 + dom/media/test/invalid-m0c3.opus | Bin 0 -> 2471 bytes dom/media/test/invalid-m0c3.opus^headers^ | 1 + dom/media/test/invalid-m1c0.opus | Bin 0 -> 6836 bytes dom/media/test/invalid-m1c0.opus^headers^ | 1 + dom/media/test/invalid-m1c9.opus | Bin 0 -> 6836 bytes dom/media/test/invalid-m1c9.opus^headers^ | 1 + dom/media/test/invalid-m2c0.opus | Bin 0 -> 2471 bytes dom/media/test/invalid-m2c0.opus^headers^ | 1 + dom/media/test/invalid-m2c1.opus | Bin 0 -> 2455 bytes dom/media/test/invalid-m2c1.opus^headers^ | 1 + dom/media/test/invalid-neg_discard.webm | Bin 0 -> 18442 bytes dom/media/test/invalid-neg_discard.webm^headers^ | 1 + dom/media/test/invalid-preskip.webm | Bin 0 -> 7251 bytes dom/media/test/invalid-preskip.webm^headers^ | 1 + dom/media/test/make-headers.sh | 18 + dom/media/test/manifest.js | 2556 ++++++++++++++++++++ dom/media/test/midflight-redirect.sjs | 87 + dom/media/test/mochitest.toml | 951 ++++++++ dom/media/test/mochitest_background_video.toml | 800 ++++++ dom/media/test/mochitest_bugs.toml | 812 +++++++ dom/media/test/mochitest_compat.toml | 1033 ++++++++ dom/media/test/mochitest_eme.toml | 850 +++++++ dom/media/test/mochitest_eme_compat.toml | 793 ++++++ dom/media/test/mochitest_media_engine.toml | 10 + dom/media/test/mochitest_media_recorder.toml | 856 +++++++ dom/media/test/mochitest_seek.toml | 824 +++++++ dom/media/test/mochitest_stream.toml | 792 ++++++ dom/media/test/multi_id3v2.mp3 | Bin 0 -> 5039737 bytes dom/media/test/multiple-bos-more-header-fileds.ogg | Bin 0 -> 27527 bytes .../multiple-bos-more-header-fileds.ogg^headers^ | 1 + dom/media/test/multiple-bos.ogg | Bin 0 -> 33045 bytes dom/media/test/multiple-bos.ogg^headers^ | 1 + dom/media/test/no-container-codec-delay.webm | Bin 0 -> 66250 bytes dom/media/test/no-cues.webm | Bin 0 -> 220609 bytes dom/media/test/no-cues.webm^headers^ | 1 + dom/media/test/notags.mp3 | Bin 0 -> 2506 bytes dom/media/test/notags.mp3^headers^ | 1 + dom/media/test/opus-mapping2.mp4 | Bin 0 -> 308048 bytes dom/media/test/opus-mapping2.mp4^headers^ | 1 + dom/media/test/opus-mapping2.webm | Bin 0 -> 309387 bytes dom/media/test/opus-mapping2.webm^headers^ | 1 + dom/media/test/opus-sample-cenc.mp4 | Bin 0 -> 21958 bytes dom/media/test/opus-sample-cenc.mp4^headers^ | 1 + dom/media/test/opus-sample.mp4 | Bin 0 -> 105690 bytes dom/media/test/opus-sample.mp4^headers^ | 1 + dom/media/test/owl-funnier-id3.mp3 | Bin 0 -> 69603 bytes dom/media/test/owl-funnier-id3.mp3^headers^ | 1 + dom/media/test/owl-funny-id3.mp3 | Bin 0 -> 71696 bytes dom/media/test/owl-funny-id3.mp3^headers^ | 1 + dom/media/test/owl-short.mp3 | Bin 0 -> 11016 bytes dom/media/test/owl-short.mp3^headers^ | 1 + dom/media/test/owl.mp3 | Bin 0 -> 67430 bytes dom/media/test/owl.mp3^headers^ | 1 + .../test/padding-spanning-multiple-packets.mp3 | Bin 0 -> 117600 bytes dom/media/test/pixel_aspect_ratio.mp4 | Bin 0 -> 1806042 bytes dom/media/test/play_promise.js | 3 + dom/media/test/poster-test.jpg | Bin 0 -> 58493 bytes dom/media/test/r11025_msadpcm_c1.wav | Bin 0 -> 5978 bytes dom/media/test/r11025_msadpcm_c1.wav^headers^ | 1 + dom/media/test/r11025_s16_c1-short.wav | Bin 0 -> 8270 bytes dom/media/test/r11025_s16_c1-short.wav^headers^ | 1 + dom/media/test/r11025_s16_c1.wav | Bin 0 -> 22094 bytes dom/media/test/r11025_s16_c1.wav^headers^ | 1 + dom/media/test/r11025_s16_c1_trailing.wav | Bin 0 -> 22095 bytes dom/media/test/r11025_s16_c1_trailing.wav^headers^ | 1 + dom/media/test/r11025_u8_c1.wav | Bin 0 -> 11069 bytes dom/media/test/r11025_u8_c1.wav^headers^ | 1 + dom/media/test/r11025_u8_c1_trunc.wav | Bin 0 -> 20000 bytes dom/media/test/r11025_u8_c1_trunc.wav^headers^ | 1 + dom/media/test/r16000_u8_c1_list.wav | Bin 0 -> 68318 bytes dom/media/test/r16000_u8_c1_list.wav^headers^ | 1 + .../test/rdd_process_xpcom/RddProcessTest.cpp | 69 + dom/media/test/rdd_process_xpcom/RddProcessTest.h | 28 + dom/media/test/rdd_process_xpcom/components.conf | 15 + dom/media/test/rdd_process_xpcom/moz.build | 21 + .../test/rdd_process_xpcom/nsIRddProcessTest.idl | 25 + dom/media/test/reactivate_helper.html | 57 + dom/media/test/red-46x48.mp4 | Bin 0 -> 1548 bytes dom/media/test/red-46x48.mp4^headers^ | 1 + dom/media/test/red-48x46.mp4 | Bin 0 -> 1548 bytes dom/media/test/red-48x46.mp4^headers^ | 1 + dom/media/test/redirect.sjs | 35 + dom/media/test/referer.sjs | 49 + dom/media/test/reftest/av1hdr2020.mp4 | Bin 0 -> 109327 bytes dom/media/test/reftest/av1hdr2020.png | Bin 0 -> 4162799 bytes .../bipbop_300_215kbps.mp4.lastframe-ref.html | 4 + .../reftest/bipbop_300_215kbps.mp4.lastframe.html | 19 + dom/media/test/reftest/color_quads/720p.png | Bin 0 -> 8722 bytes .../720p.png.bt709.bt709.pc.gbrp.av1.mp4 | Bin 0 -> 968 bytes .../720p.png.bt709.bt709.pc.gbrp.av1.webm | Bin 0 -> 669 bytes .../720p.png.bt709.bt709.pc.gbrp.h264.mp4 | Bin 0 -> 1874 bytes .../720p.png.bt709.bt709.pc.gbrp.vp9.mp4 | Bin 0 -> 1102 bytes .../720p.png.bt709.bt709.pc.gbrp.vp9.webm | Bin 0 -> 808 bytes .../720p.png.bt709.bt709.pc.yuv420p.av1.mp4 | Bin 0 -> 1016 bytes .../720p.png.bt709.bt709.pc.yuv420p.av1.webm | Bin 0 -> 717 bytes .../720p.png.bt709.bt709.pc.yuv420p.h264.mp4 | Bin 0 -> 1951 bytes .../720p.png.bt709.bt709.pc.yuv420p.vp9.mp4 | Bin 0 -> 1116 bytes .../720p.png.bt709.bt709.pc.yuv420p.vp9.webm | Bin 0 -> 822 bytes .../720p.png.bt709.bt709.pc.yuv420p10.av1.mp4 | Bin 0 -> 1031 bytes .../720p.png.bt709.bt709.pc.yuv420p10.av1.webm | Bin 0 -> 732 bytes .../720p.png.bt709.bt709.pc.yuv420p10.h264.mp4 | Bin 0 -> 1990 bytes .../720p.png.bt709.bt709.pc.yuv420p10.vp9.mp4 | Bin 0 -> 1153 bytes .../720p.png.bt709.bt709.pc.yuv420p10.vp9.webm | Bin 0 -> 859 bytes .../720p.png.bt709.bt709.tv.gbrp.av1.mp4 | Bin 0 -> 968 bytes .../720p.png.bt709.bt709.tv.gbrp.av1.webm | Bin 0 -> 669 bytes .../720p.png.bt709.bt709.tv.gbrp.h264.mp4 | Bin 0 -> 1873 bytes .../720p.png.bt709.bt709.tv.gbrp.vp9.mp4 | Bin 0 -> 1102 bytes .../720p.png.bt709.bt709.tv.gbrp.vp9.webm | Bin 0 -> 808 bytes .../720p.png.bt709.bt709.tv.yuv420p.av1.mp4 | Bin 0 -> 1012 bytes .../720p.png.bt709.bt709.tv.yuv420p.av1.webm | Bin 0 -> 713 bytes .../720p.png.bt709.bt709.tv.yuv420p.h264.mp4 | Bin 0 -> 1946 bytes .../720p.png.bt709.bt709.tv.yuv420p.vp9.mp4 | Bin 0 -> 1111 bytes .../720p.png.bt709.bt709.tv.yuv420p.vp9.webm | Bin 0 -> 817 bytes .../720p.png.bt709.bt709.tv.yuv420p10.av1.mp4 | Bin 0 -> 1036 bytes .../720p.png.bt709.bt709.tv.yuv420p10.av1.webm | Bin 0 -> 737 bytes .../720p.png.bt709.bt709.tv.yuv420p10.h264.mp4 | Bin 0 -> 1989 bytes .../720p.png.bt709.bt709.tv.yuv420p10.vp9.mp4 | Bin 0 -> 1148 bytes .../720p.png.bt709.bt709.tv.yuv420p10.vp9.webm | Bin 0 -> 854 bytes dom/media/test/reftest/color_quads/reftest.list | 69 + dom/media/test/reftest/frame_order.mp4 | Bin 0 -> 7971 bytes dom/media/test/reftest/frame_order_mp4-ref.html | 13 + dom/media/test/reftest/frame_order_mp4.html | 37 + dom/media/test/reftest/gen_combos.py | 257 ++ dom/media/test/reftest/generateREF.html | 104 + .../test/reftest/gizmo.mp4.55thframe-ref.html | 7 + dom/media/test/reftest/gizmo.mp4.seek.html | 36 + .../reftest/image-10bits-rendering-720-90-ref.html | 4 + .../image-10bits-rendering-720-90-video.html | 22 + .../reftest/image-10bits-rendering-720-ref.html | 4 + .../reftest/image-10bits-rendering-720-video.html | 19 + .../reftest/image-10bits-rendering-720.video.html | 19 + .../reftest/image-10bits-rendering-90-ref.html | 4 + .../reftest/image-10bits-rendering-90-video.html | 22 + .../test/reftest/image-10bits-rendering-ref.html | 4 + .../test/reftest/image-10bits-rendering-video.html | 22 + .../incorrect_display_in_bytestream_vp8-ref.html | 13 + .../incorrect_display_in_bytestream_vp8.html | 33 + .../incorrect_display_in_bytestream_vp8.webm | Bin 0 -> 84160 bytes .../incorrect_display_in_bytestream_vp9-ref.html | 12 + .../incorrect_display_in_bytestream_vp9.html | 33 + .../incorrect_display_in_bytestream_vp9.webm | Bin 0 -> 740554 bytes dom/media/test/reftest/reftest.list | 15 + dom/media/test/reftest/reftest_img.html | 20 + dom/media/test/reftest/reftest_video.html | 64 + .../test/reftest/short.mp4.firstframe-ref.html | 4 + dom/media/test/reftest/short.mp4.firstframe.html | 19 + .../test/reftest/short.mp4.lastframe-ref.html | 4 + dom/media/test/reftest/short.mp4.lastframe.html | 42 + .../reftest/uneven_frame_duration_video-ref.html | 7 + .../test/reftest/uneven_frame_duration_video.html | 39 + dom/media/test/reftest/uneven_frame_durations.mp4 | Bin 0 -> 2424023 bytes .../reftest/uneven_frame_durations_3.8s_frame.png | Bin 0 -> 224136 bytes dom/media/test/reftest/vp9hdr2020.png | Bin 0 -> 5083456 bytes dom/media/test/reftest/vp9hdr2020.webm | Bin 0 -> 108855 bytes dom/media/test/resolution-change.webm | Bin 0 -> 7166 bytes dom/media/test/resolution-change.webm^headers^ | 1 + .../test/sample-encrypted-sgpdstbl-sbgptraf.mp4 | Bin 0 -> 122703 bytes ...sample-encrypted-sgpdstbl-sbgptraf.mp4^headers^ | 1 + dom/media/test/sample-fisbone-skeleton4.ogv | Bin 0 -> 8747 bytes .../test/sample-fisbone-skeleton4.ogv^headers^ | 1 + dom/media/test/sample-fisbone-wrong-header.ogv | Bin 0 -> 8703 bytes .../test/sample-fisbone-wrong-header.ogv^headers^ | 1 + dom/media/test/sample.3g2 | Bin 0 -> 28561 bytes dom/media/test/sample.3gp | Bin 0 -> 28561 bytes dom/media/test/seek-short.ogv | Bin 0 -> 79921 bytes dom/media/test/seek-short.ogv^headers^ | 1 + dom/media/test/seek-short.webm | Bin 0 -> 19267 bytes dom/media/test/seek-short.webm^headers^ | 1 + dom/media/test/seek.ogv | Bin 0 -> 285310 bytes dom/media/test/seek.ogv^headers^ | 1 + dom/media/test/seek.webm | Bin 0 -> 215529 bytes dom/media/test/seek.webm^headers^ | 1 + dom/media/test/seekLies.sjs | 22 + dom/media/test/seek_support.js | 61 + dom/media/test/seek_with_sound.ogg | Bin 0 -> 299507 bytes dom/media/test/seek_with_sound.ogg^headers^ | 1 + dom/media/test/short-aac-encrypted-audio.mp4 | Bin 0 -> 5267 bytes .../test/short-aac-encrypted-audio.mp4^headers^ | 1 + .../short-audio-fragmented-cenc-without-pssh.mp4 | Bin 0 -> 9261 bytes ...audio-fragmented-cenc-without-pssh.mp4^headers^ | 1 + dom/media/test/short-cenc-pssh-in-moof.mp4 | Bin 0 -> 14860 bytes dom/media/test/short-cenc.mp4 | Bin 0 -> 14860 bytes dom/media/test/short-cenc.xml | 37 + dom/media/test/short-video.ogv | Bin 0 -> 16049 bytes dom/media/test/short-video.ogv^headers^ | 1 + dom/media/test/short-vp9-encrypted-video.mp4 | Bin 0 -> 6727 bytes .../test/short-vp9-encrypted-video.mp4^headers^ | 1 + dom/media/test/short.mp4 | Bin 0 -> 13708 bytes dom/media/test/short.mp4.gz | Bin 0 -> 6708 bytes dom/media/test/short.mp4^headers^ | 1 + dom/media/test/shorter_audio_than_video_3s.webm | Bin 0 -> 31229 bytes .../test/shorter_audio_than_video_3s.webm^headers^ | 1 + dom/media/test/sin-441-1s-44100-afconvert.mp4 | Bin 0 -> 9738 bytes dom/media/test/sin-441-1s-44100-fdk_aac.mp4 | Bin 0 -> 9986 bytes dom/media/test/sin-441-1s-44100-lame.mp3 | Bin 0 -> 8586 bytes dom/media/test/sin-441-1s-44100.flac | Bin 0 -> 24203 bytes dom/media/test/sin-441-1s-44100.ogg | Bin 0 -> 5180 bytes dom/media/test/sin-441-1s-44100.opus | Bin 0 -> 10634 bytes dom/media/test/sine.webm | Bin 0 -> 17510 bytes dom/media/test/sine.webm^headers^ | 1 + .../test/single-xing-header-no-content-length.mp3 | Bin 0 -> 88834 bytes ...ngle-xing-header-no-content-length.mp3^headers^ | 3 + ...l-short-clearkey-subsample-encrypted-audio.webm | Bin 0 -> 30362 bytes ...learkey-subsample-encrypted-audio.webm^headers^ | 1 + ...l-short-clearkey-subsample-encrypted-video.webm | Bin 0 -> 46703 bytes ...learkey-subsample-encrypted-video.webm^headers^ | 1 + dom/media/test/small-shot-mp3.mp4 | Bin 0 -> 7491 bytes dom/media/test/small-shot-mp3.mp4^headers^ | 1 + dom/media/test/small-shot.flac | Bin 0 -> 16430 bytes dom/media/test/small-shot.m4a | Bin 0 -> 2710 bytes dom/media/test/small-shot.mp3 | Bin 0 -> 6825 bytes dom/media/test/small-shot.mp3^headers^ | 1 + dom/media/test/small-shot.ogg | Bin 0 -> 6416 bytes dom/media/test/small-shot.ogg^headers^ | 1 + dom/media/test/sound.ogg | Bin 0 -> 2603 bytes dom/media/test/sound.ogg^headers^ | 1 + dom/media/test/spacestorm-1000Hz-100ms.ogg | Bin 0 -> 3270 bytes .../test/spacestorm-1000Hz-100ms.ogg^headers^ | 1 + dom/media/test/split.webm | Bin 0 -> 105755 bytes dom/media/test/split.webm^headers^ | 1 + dom/media/test/street.mp4 | Bin 0 -> 1505751 bytes dom/media/test/street.mp4^headers^ | 1 + dom/media/test/sync.webm | Bin 0 -> 397383 bytes dom/media/test/test-1-mono.opus | Bin 0 -> 4086 bytes dom/media/test/test-1-mono.opus^headers^ | 1 + dom/media/test/test-2-stereo.opus | Bin 0 -> 24973 bytes dom/media/test/test-2-stereo.opus^headers^ | 1 + dom/media/test/test-3-LCR.opus | Bin 0 -> 39471 bytes dom/media/test/test-3-LCR.opus^headers^ | 1 + dom/media/test/test-4-quad.opus | Bin 0 -> 129906 bytes dom/media/test/test-4-quad.opus^headers^ | 1 + dom/media/test/test-5-5.0.opus | Bin 0 -> 164935 bytes dom/media/test/test-5-5.0.opus^headers^ | 1 + dom/media/test/test-6-5.1.opus | Bin 0 -> 288195 bytes dom/media/test/test-6-5.1.opus^headers^ | 1 + dom/media/test/test-7-6.1.opus | Bin 0 -> 401668 bytes dom/media/test/test-7-6.1.opus^headers^ | 1 + dom/media/test/test-8-7.1.opus | Bin 0 -> 543119 bytes dom/media/test/test-8-7.1.opus^headers^ | 1 + .../test/test-stereo-phase-inversion-180.opus | Bin 0 -> 14011 bytes .../test-stereo-phase-inversion-180.opus^headers^ | 1 + dom/media/test/test_VideoPlaybackQuality.html | 61 + .../test/test_VideoPlaybackQuality_disabled.html | 37 + dom/media/test/test_access_control.html | 62 + dom/media/test/test_arraybuffer.html | 83 + dom/media/test/test_aspectratio_mp4.html | 46 + dom/media/test/test_audio1.html | 33 + dom/media/test/test_audio2.html | 33 + dom/media/test/test_audioDocumentTitle.html | 56 + ...test_background_video_cancel_suspend_taint.html | 70 + ...st_background_video_cancel_suspend_visible.html | 69 + ...round_video_drawimage_with_suspended_video.html | 76 + .../test/test_background_video_ended_event.html | 48 + .../test_background_video_no_suspend_disabled.html | 36 + ...st_background_video_no_suspend_not_in_tree.html | 56 + ...test_background_video_no_suspend_short_vid.html | 38 + ...und_video_resume_after_end_show_last_frame.html | 141 ++ ...d_video_resume_looping_video_without_audio.html | 81 + dom/media/test/test_background_video_suspend.html | 81 + .../test/test_background_video_suspend_ends.html | 55 + .../test_background_video_suspend_ready_state.html | 74 + ..._background_video_tainted_by_capturestream.html | 46 + ...kground_video_tainted_by_createimagebitmap.html | 42 + ...test_background_video_tainted_by_drawimage.html | 58 + dom/media/test/test_buffered.html | 117 + dom/media/test/test_bug1113600.html | 50 + dom/media/test/test_bug1120222.html | 42 + dom/media/test/test_bug1242338.html | 66 + dom/media/test/test_bug1248229.html | 35 + .../test/test_bug1431810_opus_downmix_to_mono.html | 139 ++ dom/media/test/test_bug1512958.html | 74 + dom/media/test/test_bug1553262.html | 31 + dom/media/test/test_bug448534.html | 71 + dom/media/test/test_bug463162.xhtml | 78 + dom/media/test/test_bug465498.html | 83 + dom/media/test/test_bug495145.html | 95 + dom/media/test/test_bug495300.html | 63 + dom/media/test/test_bug654550.html | 84 + dom/media/test/test_bug686942.html | 68 + dom/media/test/test_bug726904.html | 56 + dom/media/test/test_bug874897.html | 68 + dom/media/test/test_bug879717.html | 130 + dom/media/test/test_bug895305.html | 42 + dom/media/test/test_bug919265.html | 30 + dom/media/test/test_can_play_type.html | 40 + dom/media/test/test_can_play_type_mpeg.html | 166 ++ dom/media/test/test_can_play_type_no_ogg.html | 42 + dom/media/test/test_can_play_type_ogg.html | 37 + dom/media/test/test_can_play_type_wave.html | 30 + dom/media/test/test_can_play_type_webm.html | 39 + dom/media/test/test_capture_stream_av_sync.html | 276 +++ dom/media/test/test_chaining.html | 92 + .../test_cloneElementVisually_ended_video.html | 48 + .../test_cloneElementVisually_mediastream.html | 70 + ...loneElementVisually_mediastream_multitrack.html | 88 + .../test/test_cloneElementVisually_no_suspend.html | 90 + .../test/test_cloneElementVisually_paused.html | 45 + .../test/test_cloneElementVisually_poster.html | 53 + .../test_cloneElementVisually_resource_change.html | 67 + dom/media/test/test_clone_media_element.html | 54 + dom/media/test/test_closing_connections.html | 58 + dom/media/test/test_constants.html | 228 ++ dom/media/test/test_controls.html | 33 + dom/media/test/test_cueless_webm_seek-1.html | 136 ++ dom/media/test/test_cueless_webm_seek-2.html | 126 + dom/media/test/test_cueless_webm_seek-3.html | 120 + dom/media/test/test_currentTime.html | 19 + dom/media/test/test_debug_data_helpers.html | 74 + dom/media/test/test_decode_error.html | 66 + dom/media/test/test_decode_error_crossorigin.html | 54 + dom/media/test/test_decoder_disable.html | 78 + dom/media/test/test_defaultMuted.html | 54 + dom/media/test/test_delay_load.html | 108 + dom/media/test/test_duration_after_error.html | 54 + dom/media/test/test_eme_autoplay.html | 115 + dom/media/test/test_eme_canvas_blocked.html | 58 + .../test/test_eme_createMediaKeys_iframes.html | 192 ++ dom/media/test/test_eme_detach_media_keys.html | 63 + ...ch_reattach_same_mediakeys_during_playback.html | 141 ++ dom/media/test/test_eme_getstatusforpolicy.html | 93 + dom/media/test/test_eme_initDataTypes.html | 130 + .../test/test_eme_mfcdm_generate_request.html | 93 + .../test/test_eme_mfcdm_getstatusforpolicy.html | 115 + dom/media/test/test_eme_missing_pssh.html | 92 + dom/media/test/test_eme_non_mse_fails.html | 95 + dom/media/test/test_eme_playback.html | 188 ++ dom/media/test/test_eme_protection_query.html | 250 ++ dom/media/test/test_eme_pssh_in_moof.html | 141 ++ .../test/test_eme_requestKeySystemAccess.html | 477 ++++ ...uestMediaKeySystemAccess_with_app_approval.html | 202 ++ dom/media/test/test_eme_request_notifications.html | 82 + .../test/test_eme_sample_groups_playback.html | 130 + .../test/test_eme_session_callable_value.html | 34 + ...eme_setMediaKeys_before_attach_MediaSource.html | 37 + dom/media/test/test_eme_special_key_system.html | 63 + .../test_eme_stream_capture_blocked_case1.html | 59 + .../test_eme_stream_capture_blocked_case2.html | 52 + .../test_eme_stream_capture_blocked_case3.html | 50 + .../test/test_eme_unsetMediaKeys_then_capture.html | 108 + dom/media/test/test_eme_waitingforkey.html | 78 + .../test/test_eme_wideinve_l1_installation.html | 86 + dom/media/test/test_eme_wv_privacy.html | 53 + dom/media/test/test_empty_resource.html | 58 + dom/media/test/test_error_in_video_document.html | 59 + dom/media/test/test_error_on_404.html | 84 + dom/media/test/test_fastSeek-forwards.html | 77 + dom/media/test/test_fastSeek.html | 88 + dom/media/test/test_fragment_noplay.html | 127 + dom/media/test/test_fragment_play.html | 91 + dom/media/test/test_hevc_playback.html | 45 + dom/media/test/test_hevc_support.html | 47 + dom/media/test/test_hls_player_independency.html | 53 + dom/media/test/test_hw_video_decoding.html | 119 + dom/media/test/test_imagecapture.html | 128 + dom/media/test/test_info_leak.html | 174 ++ dom/media/test/test_invalid_reject.html | 58 + dom/media/test/test_invalid_reject_play.html | 44 + dom/media/test/test_invalid_seek.html | 32 + dom/media/test/test_load.html | 217 ++ dom/media/test/test_load_candidates.html | 84 + dom/media/test/test_load_same_resource.html | 106 + dom/media/test/test_load_source.html | 76 + dom/media/test/test_load_source_empty_type.html | 36 + dom/media/test/test_loop.html | 57 + dom/media/test/test_looping_eventsOrder.html | 52 + dom/media/test/test_media_selection.html | 142 ++ dom/media/test/test_media_sniffer.html | 67 + ...est_mediacapabilities_resistfingerprinting.html | 69 + .../test/test_mediarecorder_avoid_recursion.html | 61 + dom/media/test/test_mediarecorder_bitrate.html | 127 + dom/media/test/test_mediarecorder_creation.html | 45 + .../test/test_mediarecorder_creation_fail.html | 61 + ...order_fires_start_event_once_when_erroring.html | 45 + .../test/test_mediarecorder_multipletracks.html | 68 + .../test/test_mediarecorder_onerror_pause.html | 107 + .../test_mediarecorder_pause_resume_video.html | 130 + .../test_mediarecorder_playback_can_repeat.html | 87 + dom/media/test/test_mediarecorder_principals.html | 132 + ...test_mediarecorder_record_4ch_audiocontext.html | 76 + ...est_mediarecorder_record_addtracked_stream.html | 182 ++ .../test_mediarecorder_record_audiocontext.html | 65 + ...test_mediarecorder_record_audiocontext_mlk.html | 24 + .../test/test_mediarecorder_record_audionode.html | 135 ++ ..._mediarecorder_record_canvas_captureStream.html | 75 + ...arecorder_record_changing_video_resolution.html | 174 ++ ...t_mediarecorder_record_downsize_resolution.html | 148 ++ ...st_mediarecorder_record_getdata_afterstart.html | 81 + ...t_mediarecorder_record_gum_video_timeslice.html | 94 + ...arecorder_record_gum_video_timeslice_mixed.html | 100 + .../test_mediarecorder_record_immediate_stop.html | 115 + .../test_mediarecorder_record_no_timeslice.html | 106 + .../test/test_mediarecorder_record_session.html | 75 + .../test_mediarecorder_record_startstopstart.html | 75 + .../test/test_mediarecorder_record_timeslice.html | 105 + ...est_mediarecorder_record_upsize_resolution.html | 148 ++ .../test/test_mediarecorder_reload_crash.html | 29 + .../test/test_mediarecorder_state_event_order.html | 83 + .../test/test_mediarecorder_state_transition.html | 280 +++ .../test/test_mediarecorder_webm_support.html | 56 + dom/media/test/test_mediastream_as_eventarget.html | 33 + .../test_mediatrack_consuming_mediaresource.html | 198 ++ .../test_mediatrack_consuming_mediastream.html | 146 ++ dom/media/test/test_mediatrack_events.html | 135 ++ dom/media/test/test_mediatrack_parsing_ogg.html | 72 + .../test/test_mediatrack_replay_from_end.html | 160 ++ dom/media/test/test_metadata.html | 81 + .../test/test_midflight_redirect_blocked.html | 87 + dom/media/test/test_mixed_principals.html | 94 + dom/media/test/test_mozHasAudio.html | 42 + dom/media/test/test_mp3_broadcast.html | 52 + dom/media/test/test_mp3_with_multiple_ID3v2.html | 30 + .../test/test_multiple_mediastreamtracks.html | 47 + dom/media/test/test_networkState.html | 47 + dom/media/test/test_new_audio.html | 48 + dom/media/test/test_no_load_event.html | 53 + ...hen_removing_nonloaded_media_from_document.html | 46 + dom/media/test/test_paused.html | 21 + dom/media/test/test_paused_after_ended.html | 53 + dom/media/test/test_periodic_timeupdate.html | 100 + dom/media/test/test_play_events.html | 61 + dom/media/test/test_play_events_2.html | 60 + dom/media/test/test_play_promise_1.html | 42 + dom/media/test/test_play_promise_10.html | 40 + dom/media/test/test_play_promise_11.html | 40 + dom/media/test/test_play_promise_12.html | 45 + dom/media/test/test_play_promise_13.html | 49 + dom/media/test/test_play_promise_14.html | 56 + dom/media/test/test_play_promise_15.html | 51 + dom/media/test/test_play_promise_16.html | 47 + dom/media/test/test_play_promise_17.html | 43 + dom/media/test/test_play_promise_18.html | 46 + dom/media/test/test_play_promise_2.html | 43 + dom/media/test/test_play_promise_3.html | 47 + dom/media/test/test_play_promise_4.html | 41 + dom/media/test/test_play_promise_5.html | 44 + dom/media/test/test_play_promise_6.html | 45 + dom/media/test/test_play_promise_7.html | 47 + dom/media/test/test_play_promise_8.html | 47 + dom/media/test/test_play_promise_9.html | 44 + dom/media/test/test_play_twice.html | 95 + dom/media/test/test_playback.html | 108 + dom/media/test/test_playback_and_bfcache.html | 72 + dom/media/test/test_playback_errors.html | 48 + dom/media/test/test_playback_hls.html | 91 + dom/media/test/test_playback_rate.html | 175 ++ dom/media/test/test_playback_rate_playpause.html | 66 + dom/media/test/test_playback_reactivate.html | 77 + dom/media/test/test_played.html | 288 +++ dom/media/test/test_preload_actions.html | 581 +++++ dom/media/test/test_preload_attribute.html | 44 + dom/media/test/test_preload_suspend.html | 112 + .../test_preserve_playbackrate_after_ui_play.html | 60 + dom/media/test/test_progress.html | 52 + dom/media/test/test_reactivate.html | 64 + dom/media/test/test_readyState.html | 51 + dom/media/test/test_referer.html | 88 + dom/media/test/test_replay_metadata.html | 120 + dom/media/test/test_reset_events_async.html | 58 + dom/media/test/test_reset_src.html | 98 + dom/media/test/test_resolution_change.html | 52 + dom/media/test/test_resume.html | 47 + dom/media/test/test_seamless_looping.html | 199 ++ ...mless_looping_cancel_looping_future_frames.html | 61 + dom/media/test/test_seamless_looping_duration.html | 63 + .../test_seamless_looping_media_element_state.html | 51 + ...looping_not_keep_painting_old_video_frames.html | 57 + ...est_seamless_looping_resume_video_decoding.html | 64 + .../test_seamless_looping_seek_current_time.html | 62 + ..._seamless_looping_shorter_audio_than_video.html | 37 + dom/media/test/test_seamless_looping_video.html | 73 + dom/media/test/test_seek-1.html | 84 + dom/media/test/test_seek-10.html | 56 + dom/media/test/test_seek-11.html | 76 + dom/media/test/test_seek-12.html | 59 + dom/media/test/test_seek-13.html | 72 + dom/media/test/test_seek-14.html | 43 + dom/media/test/test_seek-2.html | 76 + dom/media/test/test_seek-3.html | 68 + dom/media/test/test_seek-4.html | 70 + dom/media/test/test_seek-5.html | 69 + dom/media/test/test_seek-6.html | 64 + dom/media/test/test_seek-7.html | 59 + dom/media/test/test_seek-8.html | 42 + dom/media/test/test_seek-9.html | 41 + dom/media/test/test_seekLies.html | 28 + dom/media/test/test_seekToNextFrame.html | 95 + dom/media/test/test_seek_duration.html | 62 + dom/media/test/test_seek_negative.html | 77 + dom/media/test/test_seek_nosrc.html | 58 + dom/media/test/test_seek_out_of_range.html | 48 + dom/media/test/test_seek_promise_bug1344357.html | 35 + dom/media/test/test_seekable1.html | 66 + dom/media/test/test_setSinkId_after_loop.html | 126 + dom/media/test/test_source.html | 91 + dom/media/test/test_source_null.html | 33 + dom/media/test/test_source_write.html | 40 + dom/media/test/test_standalone.html | 61 + dom/media/test/test_streams_capture_origin.html | 90 + dom/media/test/test_streams_element_capture.html | 125 + .../test_streams_element_capture_mediatrack.html | 100 + .../test_streams_element_capture_playback.html | 47 + .../test/test_streams_element_capture_reset.html | 174 ++ .../test/test_streams_element_capture_twice.html | 79 + dom/media/test/test_streams_firstframe.html | 67 + dom/media/test/test_streams_gc.html | 44 + dom/media/test/test_streams_individual_pause.html | 77 + dom/media/test/test_streams_srcObject.html | 60 + dom/media/test/test_streams_tracks.html | 66 + .../test_suspend_media_by_inactive_docshell.html | 72 + .../test/test_temporary_file_blob_video_plays.html | 75 + dom/media/test/test_timeupdate_small_files.html | 88 + dom/media/test/test_unseekable.html | 101 + dom/media/test/test_videoDocumentTitle.html | 57 + .../test_videoPlaybackQuality_totalFrames.html | 46 + dom/media/test/test_video_dimensions.html | 96 + dom/media/test/test_video_gzip_encoding.html | 25 + dom/media/test/test_video_in_audio_element.html | 68 + dom/media/test/test_video_low_power_telemetry.html | 205 ++ .../test_video_stats_resistfingerprinting.html | 90 + dom/media/test/test_video_to_canvas.html | 68 + dom/media/test/test_volume.html | 41 + dom/media/test/test_vp9_superframes.html | 31 + dom/media/test/test_wav_ended1.html | 43 + dom/media/test/test_wav_ended2.html | 62 + dom/media/test/tone2s-silence4s-tone2s.opus | Bin 0 -> 67207 bytes .../test/two-xing-header-no-content-length.mp3 | Bin 0 -> 45594 bytes .../two-xing-header-no-content-length.mp3^headers^ | 3 + dom/media/test/variable-channel.ogg | Bin 0 -> 27749 bytes dom/media/test/variable-channel.ogg^headers^ | 1 + dom/media/test/variable-channel.opus | Bin 0 -> 46597 bytes dom/media/test/variable-channel.opus^headers^ | 1 + dom/media/test/variable-preskip.opus | Bin 0 -> 17660 bytes dom/media/test/variable-preskip.opus^headers^ | 1 + dom/media/test/variable-samplerate.ogg | Bin 0 -> 22325 bytes dom/media/test/variable-samplerate.ogg^headers^ | 1 + dom/media/test/variable-samplerate.opus | Bin 0 -> 28111 bytes dom/media/test/variable-samplerate.opus^headers^ | 1 + dom/media/test/vbr-head.mp3 | Bin 0 -> 4474 bytes dom/media/test/vbr-head.mp3^headers^ | 1 + dom/media/test/vbr.mp3 | Bin 0 -> 300553 bytes dom/media/test/vbr.mp3^headers^ | 1 + dom/media/test/very-short.mp3 | Bin 0 -> 1612 bytes dom/media/test/video-overhang.ogg | Bin 0 -> 301831 bytes dom/media/test/video-overhang.ogg^headers^ | 1 + dom/media/test/vp9-short.webm | Bin 0 -> 3107 bytes dom/media/test/vp9-short.webm^headers^ | 1 + dom/media/test/vp9-superframes.webm | Bin 0 -> 173187 bytes dom/media/test/vp9-superframes.webm^headers^ | 1 + dom/media/test/vp9.webm | Bin 0 -> 97465 bytes dom/media/test/vp9.webm^headers^ | 1 + dom/media/test/vp9cake-short.webm | Bin 0 -> 25155 bytes dom/media/test/vp9cake-short.webm^headers^ | 1 + dom/media/test/vp9cake.webm | Bin 0 -> 141743 bytes dom/media/test/vp9cake.webm^headers^ | 1 + dom/media/test/wave_metadata.wav | Bin 0 -> 42706 bytes dom/media/test/wave_metadata.wav^headers^ | 1 + dom/media/test/wave_metadata_bad_len.wav | Bin 0 -> 42706 bytes dom/media/test/wave_metadata_bad_len.wav^headers^ | 1 + dom/media/test/wave_metadata_bad_no_null.wav | Bin 0 -> 42706 bytes .../test/wave_metadata_bad_no_null.wav^headers^ | 1 + dom/media/test/wave_metadata_bad_utf8.wav | Bin 0 -> 42704 bytes dom/media/test/wave_metadata_bad_utf8.wav^headers^ | 1 + dom/media/test/wave_metadata_unknown_tag.wav | Bin 0 -> 42706 bytes .../test/wave_metadata_unknown_tag.wav^headers^ | 1 + dom/media/test/wave_metadata_utf8.wav | Bin 0 -> 42704 bytes dom/media/test/wave_metadata_utf8.wav^headers^ | 1 + dom/media/test/wavedata_alaw.wav | Bin 0 -> 11067 bytes dom/media/test/wavedata_alaw.wav^headers^ | 1 + dom/media/test/wavedata_float.wav | Bin 0 -> 176458 bytes dom/media/test/wavedata_float.wav^headers^ | 1 + dom/media/test/wavedata_s16.wav | Bin 0 -> 22062 bytes dom/media/test/wavedata_s16.wav^headers^ | 1 + dom/media/test/wavedata_s24.wav | Bin 0 -> 33071 bytes dom/media/test/wavedata_s24.wav^headers^ | 1 + dom/media/test/wavedata_u8.wav | Bin 0 -> 11037 bytes dom/media/test/wavedata_u8.wav^headers^ | 1 + dom/media/test/wavedata_ulaw.wav | Bin 0 -> 11067 bytes dom/media/test/wavedata_ulaw.wav^headers^ | 1 + dom/media/test/white-3s-black-1s.webm | Bin 0 -> 4662 bytes dom/media/test/white-3s-black-1s.webm^headers^ | 1 + dom/media/test/white-short.webm | Bin 0 -> 1573 bytes 1386 files changed, 43352 insertions(+) create mode 100644 dom/media/test/16bit_wave_extrametadata.wav create mode 100644 dom/media/test/16bit_wave_extrametadata.wav^headers^ create mode 100644 dom/media/test/320x240.ogv create mode 100644 dom/media/test/320x240.ogv^headers^ create mode 100644 dom/media/test/448636.ogv create mode 100644 dom/media/test/448636.ogv^headers^ create mode 100644 dom/media/test/A4.ogv create mode 100644 dom/media/test/A4.ogv^headers^ create mode 100644 dom/media/test/TestPatternHDR.mp4 create mode 100644 dom/media/test/VID_0001.ogg create mode 100644 dom/media/test/VID_0001.ogg^headers^ create mode 100644 dom/media/test/adts.aac create mode 100644 dom/media/test/adts.aac^headers^ create mode 100644 dom/media/test/allowed.sjs create mode 100644 dom/media/test/ambisonics.mp4 create mode 100644 dom/media/test/ambisonics.mp4^headers^ create mode 100644 dom/media/test/audio-gaps-short.ogg create mode 100644 dom/media/test/audio-gaps-short.ogg^headers^ create mode 100644 dom/media/test/audio-gaps.ogg create mode 100644 dom/media/test/audio-gaps.ogg^headers^ create mode 100644 dom/media/test/audio-overhang.ogg create mode 100644 dom/media/test/audio-overhang.ogg^headers^ create mode 100644 dom/media/test/audio.wav create mode 100644 dom/media/test/audio.wav^headers^ create mode 100644 dom/media/test/av1.mp4 create mode 100644 dom/media/test/av1.mp4^headers^ create mode 100644 dom/media/test/background_video.js create mode 100644 dom/media/test/badtags.ogg create mode 100644 dom/media/test/badtags.ogg^headers^ create mode 100644 dom/media/test/bear-640x360-a_frag-cenc-key_rotation.mp4 create mode 100644 dom/media/test/bear-640x360-v_frag-cenc-key_rotation.mp4 create mode 100644 dom/media/test/beta-phrasebook.ogg create mode 100644 dom/media/test/beta-phrasebook.ogg^headers^ create mode 100644 dom/media/test/big-buck-bunny-cenc-avc3-1.m4s create mode 100644 dom/media/test/big-buck-bunny-cenc-avc3-1.m4s^headers^ create mode 100644 dom/media/test/big-buck-bunny-cenc-avc3-init.mp4 create mode 100644 dom/media/test/big-buck-bunny-cenc-avc3-init.mp4^headers^ create mode 100644 dom/media/test/big-short.wav create mode 100644 dom/media/test/big-short.wav^headers^ create mode 100644 dom/media/test/big.wav create mode 100644 dom/media/test/big.wav^headers^ create mode 100644 dom/media/test/bipbop-cenc-audio-key1.xml create mode 100644 dom/media/test/bipbop-cenc-audio-key2.xml create mode 100644 dom/media/test/bipbop-cenc-audio1.m4s create mode 100644 dom/media/test/bipbop-cenc-audio1.m4s^headers^ create mode 100644 dom/media/test/bipbop-cenc-audio2.m4s create mode 100644 dom/media/test/bipbop-cenc-audio2.m4s^headers^ create mode 100644 dom/media/test/bipbop-cenc-audio3.m4s create mode 100644 dom/media/test/bipbop-cenc-audio3.m4s^headers^ create mode 100644 dom/media/test/bipbop-cenc-audioinit.mp4 create mode 100644 dom/media/test/bipbop-cenc-audioinit.mp4^headers^ create mode 100644 dom/media/test/bipbop-cenc-video-10s.mp4 create mode 100644 dom/media/test/bipbop-cenc-video-10s.mp4^headers^ create mode 100644 dom/media/test/bipbop-cenc-video-key1.xml create mode 100644 dom/media/test/bipbop-cenc-video-key2.xml create mode 100644 dom/media/test/bipbop-cenc-video1.m4s create mode 100644 dom/media/test/bipbop-cenc-video1.m4s^headers^ create mode 100644 dom/media/test/bipbop-cenc-video2.m4s create mode 100644 dom/media/test/bipbop-cenc-video2.m4s^headers^ create mode 100644 dom/media/test/bipbop-cenc-videoinit.mp4 create mode 100644 dom/media/test/bipbop-cenc-videoinit.mp4^headers^ create mode 100644 dom/media/test/bipbop-cenc.sh create mode 100644 dom/media/test/bipbop-clearkey-keyrotation-clear-lead-audio.mp4 create mode 100644 dom/media/test/bipbop-clearkey-keyrotation-clear-lead-audio.mp4^headers^ create mode 100644 dom/media/test/bipbop-clearkey-keyrotation-clear-lead-video.mp4 create mode 100644 dom/media/test/bipbop-clearkey-keyrotation-clear-lead-video.mp4^headers^ create mode 100644 dom/media/test/bipbop-frag-cenc.xml create mode 100644 dom/media/test/bipbop-lateaudio.mp4 create mode 100644 dom/media/test/bipbop-lateaudio.mp4^headers^ create mode 100644 dom/media/test/bipbop-no-edts.mp4 create mode 100644 dom/media/test/bipbop.mp4 create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-1.m4s create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-2.m4s create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-3.m4s create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-4.m4s create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-init.mp4 create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-1.m4s create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-2.m4s create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-3.m4s create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-4.m4s create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-init.mp4 create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-video-key1-1.m4s create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-video-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-video-key1-init.mp4 create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-video-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-video-key2-1.m4s create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-video-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-video-key2-init.mp4 create mode 100644 dom/media/test/bipbop_225w_175kbps-cenc-video-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_225w_175kbps.mp4 create mode 100644 dom/media/test/bipbop_225w_175kbps.mp4^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key1-1.m4s create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key1-2.m4s create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key1-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key1-3.m4s create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key1-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key1-4.m4s create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key1-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key1-init.mp4 create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key2-1.m4s create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key2-2.m4s create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key2-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key2-3.m4s create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key2-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key2-4.m4s create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key2-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key2-init.mp4 create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-audio-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-video-key1-1.m4s create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-video-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-video-key1-2.m4s create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-video-key1-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-video-key1-init.mp4 create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-video-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-video-key2-1.m4s create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-video-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-video-key2-2.m4s create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-video-key2-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-video-key2-init.mp4 create mode 100644 dom/media/test/bipbop_300_215kbps-cenc-video-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_300_215kbps.mp4 create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-1.m4s create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-2.m4s create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-3.m4s create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-4.m4s create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-init.mp4 create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-1.m4s create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-2.m4s create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-3.m4s create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-4.m4s create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-init.mp4 create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-1.m4s create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-2.m4s create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-init.mp4 create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-1.m4s create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-2.m4s create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-init.mp4 create mode 100644 dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_300wp_227kbps.mp4 create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-1.m4s create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-2.m4s create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-3.m4s create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-4.m4s create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-init.mp4 create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-1.m4s create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-2.m4s create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-3.m4s create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-4.m4s create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-init.mp4 create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-video-key1-1.m4s create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-video-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-video-key1-init.mp4 create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-video-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-video-key2-1.m4s create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-video-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-video-key2-init.mp4 create mode 100644 dom/media/test/bipbop_360w_253kbps-cenc-video-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-clearkey-audio.webm create mode 100644 dom/media/test/bipbop_360w_253kbps-clearkey-audio.webm^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-clearkey-video-vp8.webm create mode 100644 dom/media/test/bipbop_360w_253kbps-clearkey-video-vp8.webm^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps-clearkey-video-vp9.webm create mode 100644 dom/media/test/bipbop_360w_253kbps-clearkey-video-vp9.webm^headers^ create mode 100644 dom/media/test/bipbop_360w_253kbps.mp4 create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key1-1.m4s create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key1-2.m4s create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key1-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key1-3.m4s create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key1-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key1-4.m4s create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key1-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key1-init.mp4 create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key2-1.m4s create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key2-2.m4s create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key2-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key2-3.m4s create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key2-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key2-4.m4s create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key2-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key2-init.mp4 create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-audio-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-video-key1-1.m4s create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-video-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-video-key1-2.m4s create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-video-key1-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-video-key1-init.mp4 create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-video-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-video-key2-1.m4s create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-video-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-video-key2-2.m4s create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-video-key2-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-video-key2-init.mp4 create mode 100644 dom/media/test/bipbop_480_624kbps-cenc-video-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480_624kbps.mp4 create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key1-1.m4s create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key1-2.m4s create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key1-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key1-3.m4s create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key1-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key1-4.m4s create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key1-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key1-init.mp4 create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key2-1.m4s create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key2-2.m4s create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key2-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key2-3.m4s create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key2-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key2-4.m4s create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key2-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key2-init.mp4 create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-audio-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-video-key1-1.m4s create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-video-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-video-key1-2.m4s create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-video-key1-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-video-key1-init.mp4 create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-video-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-video-key2-1.m4s create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-video-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-video-key2-2.m4s create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-video-key2-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-video-key2-init.mp4 create mode 100644 dom/media/test/bipbop_480_959kbps-cenc-video-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480_959kbps.mp4 create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-1.m4s create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-2.m4s create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-3.m4s create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-4.m4s create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-init.mp4 create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-1.m4s create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-2.m4s create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-3.m4s create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-4.m4s create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-init.mp4 create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-1.m4s create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-2.m4s create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-init.mp4 create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-1.m4s create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-2.m4s create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-init.mp4 create mode 100644 dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480wp_1001kbps.mp4 create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-1.m4s create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-2.m4s create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-3.m4s create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-4.m4s create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-init.mp4 create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-1.m4s create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-2.m4s create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-3.m4s create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-3.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-4.m4s create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-4.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-init.mp4 create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-1.m4s create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-2.m4s create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-init.mp4 create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-1.m4s create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-1.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-2.m4s create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-2.m4s^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-init.mp4 create mode 100644 dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-init.mp4^headers^ create mode 100644 dom/media/test/bipbop_480wp_663kbps.mp4 create mode 100644 dom/media/test/bipbop_audio_aac_22.05k.mp4 create mode 100644 dom/media/test/bipbop_audio_aac_22.05k.mp4^headers^ create mode 100644 dom/media/test/bipbop_audio_aac_44.1k.mp4 create mode 100644 dom/media/test/bipbop_audio_aac_44.1k.mp4^headers^ create mode 100644 dom/media/test/bipbop_audio_aac_48k.mp4 create mode 100644 dom/media/test/bipbop_audio_aac_48k.mp4^headers^ create mode 100644 dom/media/test/bipbop_audio_aac_88.2k.mp4 create mode 100644 dom/media/test/bipbop_audio_aac_88.2k.mp4^headers^ create mode 100644 dom/media/test/bipbop_audio_aac_8k.mp4 create mode 100644 dom/media/test/bipbop_audio_aac_8k.mp4^headers^ create mode 100644 dom/media/test/bipbop_audio_aac_96k.mp4 create mode 100644 dom/media/test/bipbop_audio_aac_96k.mp4^headers^ create mode 100644 dom/media/test/bipbop_cbcs_10_0_audio_1.m4s create mode 100644 dom/media/test/bipbop_cbcs_10_0_audio_1.m4s^headers^ create mode 100644 dom/media/test/bipbop_cbcs_10_0_audio_init.mp4 create mode 100644 dom/media/test/bipbop_cbcs_10_0_audio_init.mp4^headers^ create mode 100644 dom/media/test/bipbop_cbcs_10_0_video_1.m4s create mode 100644 dom/media/test/bipbop_cbcs_10_0_video_1.m4s^headers^ create mode 100644 dom/media/test/bipbop_cbcs_10_0_video_init.mp4 create mode 100644 dom/media/test/bipbop_cbcs_10_0_video_init.mp4^headers^ create mode 100644 dom/media/test/bipbop_cbcs_1_9_audio_1.m4s create mode 100644 dom/media/test/bipbop_cbcs_1_9_audio_1.m4s^headers^ create mode 100644 dom/media/test/bipbop_cbcs_1_9_audio_init.mp4 create mode 100644 dom/media/test/bipbop_cbcs_1_9_audio_init.mp4^headers^ create mode 100644 dom/media/test/bipbop_cbcs_1_9_video_1.m4s create mode 100644 dom/media/test/bipbop_cbcs_1_9_video_1.m4s^headers^ create mode 100644 dom/media/test/bipbop_cbcs_1_9_video_init.mp4 create mode 100644 dom/media/test/bipbop_cbcs_1_9_video_init.mp4^headers^ create mode 100644 dom/media/test/bipbop_cbcs_5_5_audio_1.m4s create mode 100644 dom/media/test/bipbop_cbcs_5_5_audio_1.m4s^headers^ create mode 100644 dom/media/test/bipbop_cbcs_5_5_audio_init.mp4 create mode 100644 dom/media/test/bipbop_cbcs_5_5_audio_init.mp4^headers^ create mode 100644 dom/media/test/bipbop_cbcs_5_5_video_1.m4s create mode 100644 dom/media/test/bipbop_cbcs_5_5_video_1.m4s^headers^ create mode 100644 dom/media/test/bipbop_cbcs_5_5_video_init.mp4 create mode 100644 dom/media/test/bipbop_cbcs_5_5_video_init.mp4^headers^ create mode 100644 dom/media/test/bipbop_cbcs_7_7_audio_1.m4s create mode 100644 dom/media/test/bipbop_cbcs_7_7_audio_1.m4s^headers^ create mode 100644 dom/media/test/bipbop_cbcs_7_7_audio_init.mp4 create mode 100644 dom/media/test/bipbop_cbcs_7_7_audio_init.mp4^headers^ create mode 100644 dom/media/test/bipbop_cbcs_7_7_video_1.m4s create mode 100644 dom/media/test/bipbop_cbcs_7_7_video_1.m4s^headers^ create mode 100644 dom/media/test/bipbop_cbcs_7_7_video_init.mp4 create mode 100644 dom/media/test/bipbop_cbcs_7_7_video_init.mp4^headers^ create mode 100644 dom/media/test/bipbop_cbcs_9_8_audio_1.m4s create mode 100644 dom/media/test/bipbop_cbcs_9_8_audio_1.m4s^headers^ create mode 100644 dom/media/test/bipbop_cbcs_9_8_audio_init.mp4 create mode 100644 dom/media/test/bipbop_cbcs_9_8_audio_init.mp4^headers^ create mode 100644 dom/media/test/bipbop_cbcs_9_8_video_1.m4s create mode 100644 dom/media/test/bipbop_cbcs_9_8_video_1.m4s^headers^ create mode 100644 dom/media/test/bipbop_cbcs_9_8_video_init.mp4 create mode 100644 dom/media/test/bipbop_cbcs_9_8_video_init.mp4^headers^ create mode 100644 dom/media/test/bipbop_short_pixel_metadata_bigger_than_in_stream_vp8.webm create mode 100644 dom/media/test/bipbop_short_pixel_metadata_bigger_than_in_stream_vp8.webm^headers^ create mode 100644 dom/media/test/bipbop_short_pixel_metadata_narrower_than_in_stream_vp8.webm create mode 100644 dom/media/test/bipbop_short_pixel_metadata_narrower_than_in_stream_vp8.webm^headers^ create mode 100644 dom/media/test/bipbop_short_pixel_metadata_smaller_than_in_stream_vp8.webm create mode 100644 dom/media/test/bipbop_short_pixel_metadata_smaller_than_in_stream_vp8.webm^headers^ create mode 100644 dom/media/test/bipbop_short_vp8.webm create mode 100644 dom/media/test/bipbop_short_vp8.webm^headers^ create mode 100644 dom/media/test/black100x100-aspect3to2.ogv create mode 100644 dom/media/test/black100x100-aspect3to2.ogv^headers^ create mode 100644 dom/media/test/bogus.duh create mode 100644 dom/media/test/bogus.ogv create mode 100644 dom/media/test/bogus.ogv^headers^ create mode 100644 dom/media/test/bogus.wav create mode 100644 dom/media/test/bogus.wav^headers^ create mode 100644 dom/media/test/browser/browser.toml create mode 100644 dom/media/test/browser/browser_encrypted_play_time_telemetry.js create mode 100644 dom/media/test/browser/browser_partial.js create mode 100644 dom/media/test/browser/browser_tab_visibility_and_play_time.js create mode 100644 dom/media/test/browser/browser_telemetry_video_hardware_decoding_support.js create mode 100644 dom/media/test/browser/file_empty_page.html create mode 100644 dom/media/test/browser/file_media.html create mode 100644 dom/media/test/browser/wmfme/browser.toml create mode 100644 dom/media/test/browser/wmfme/browser_wmfme_crash.js create mode 100644 dom/media/test/browser/wmfme/browser_wmfme_max_crashes.js create mode 100644 dom/media/test/browser/wmfme/file_video.html create mode 100644 dom/media/test/browser/wmfme/head.js create mode 100644 dom/media/test/bug1066943.webm create mode 100644 dom/media/test/bug1066943.webm^headers^ create mode 100644 dom/media/test/bug1301226-odd.wav create mode 100644 dom/media/test/bug1301226-odd.wav^headers^ create mode 100644 dom/media/test/bug1301226.wav create mode 100644 dom/media/test/bug1301226.wav^headers^ create mode 100644 dom/media/test/bug1377278.webm create mode 100644 dom/media/test/bug1377278.webm^headers^ create mode 100644 dom/media/test/bug1535980.webm create mode 100644 dom/media/test/bug1535980.webm^headers^ create mode 100644 dom/media/test/bug1799787.webm create mode 100644 dom/media/test/bug1799787.webm^headers^ create mode 100644 dom/media/test/bug461281.ogg create mode 100644 dom/media/test/bug461281.ogg^headers^ create mode 100644 dom/media/test/bug482461-theora.ogv create mode 100644 dom/media/test/bug482461-theora.ogv^headers^ create mode 100644 dom/media/test/bug482461.ogv create mode 100644 dom/media/test/bug482461.ogv^headers^ create mode 100644 dom/media/test/bug495129.ogv create mode 100644 dom/media/test/bug495129.ogv^headers^ create mode 100644 dom/media/test/bug495794.ogg create mode 100644 dom/media/test/bug495794.ogg^headers^ create mode 100644 dom/media/test/bug498380.ogv create mode 100644 dom/media/test/bug498380.ogv^headers^ create mode 100644 dom/media/test/bug498855-1.ogv create mode 100644 dom/media/test/bug498855-1.ogv^headers^ create mode 100644 dom/media/test/bug498855-2.ogv create mode 100644 dom/media/test/bug498855-2.ogv^headers^ create mode 100644 dom/media/test/bug498855-3.ogv create mode 100644 dom/media/test/bug498855-3.ogv^headers^ create mode 100644 dom/media/test/bug499519.ogv create mode 100644 dom/media/test/bug499519.ogv^headers^ create mode 100644 dom/media/test/bug500311.ogv create mode 100644 dom/media/test/bug500311.ogv^headers^ create mode 100644 dom/media/test/bug501279.ogg create mode 100644 dom/media/test/bug501279.ogg^headers^ create mode 100644 dom/media/test/bug504613.ogv create mode 100644 dom/media/test/bug504613.ogv^headers^ create mode 100644 dom/media/test/bug504644.ogv create mode 100644 dom/media/test/bug504644.ogv^headers^ create mode 100644 dom/media/test/bug504843.ogv create mode 100644 dom/media/test/bug504843.ogv^headers^ create mode 100644 dom/media/test/bug506094.ogv create mode 100644 dom/media/test/bug506094.ogv^headers^ create mode 100644 dom/media/test/bug516323.indexed.ogv create mode 100644 dom/media/test/bug516323.indexed.ogv^headers^ create mode 100644 dom/media/test/bug516323.ogv create mode 100644 dom/media/test/bug516323.ogv^headers^ create mode 100644 dom/media/test/bug520493.ogg create mode 100644 dom/media/test/bug520493.ogg^headers^ create mode 100644 dom/media/test/bug520500.ogg create mode 100644 dom/media/test/bug520500.ogg^headers^ create mode 100644 dom/media/test/bug520908.ogv create mode 100644 dom/media/test/bug520908.ogv^headers^ create mode 100644 dom/media/test/bug523816.ogv create mode 100644 dom/media/test/bug523816.ogv^headers^ create mode 100644 dom/media/test/bug533822.ogg create mode 100644 dom/media/test/bug533822.ogg^headers^ create mode 100644 dom/media/test/bug556821.ogv create mode 100644 dom/media/test/bug556821.ogv^headers^ create mode 100644 dom/media/test/bug557094.ogv create mode 100644 dom/media/test/bug557094.ogv^headers^ create mode 100644 dom/media/test/bug604067.webm create mode 100644 dom/media/test/bug604067.webm^headers^ create mode 100644 dom/media/test/bunny.webm create mode 100644 dom/media/test/bunny_hd_5s.mp4 create mode 100644 dom/media/test/can_play_type_dash.js create mode 100644 dom/media/test/can_play_type_ogg.js create mode 100644 dom/media/test/can_play_type_wave.js create mode 100644 dom/media/test/can_play_type_webm.js create mode 100644 dom/media/test/cancellable_request.sjs create mode 100644 dom/media/test/chain.ogg create mode 100644 dom/media/test/chain.ogg^headers^ create mode 100644 dom/media/test/chain.ogv create mode 100644 dom/media/test/chain.ogv^headers^ create mode 100644 dom/media/test/chain.opus create mode 100644 dom/media/test/chain.opus^headers^ create mode 100644 dom/media/test/chained-audio-video.ogg create mode 100644 dom/media/test/chained-audio-video.ogg^headers^ create mode 100644 dom/media/test/chained-video.ogv create mode 100644 dom/media/test/chained-video.ogv^headers^ create mode 100644 dom/media/test/chrome/chrome.toml create mode 100644 dom/media/test/chrome/test_accumulated_play_time.html create mode 100644 dom/media/test/chrome/test_telemetry_source_buffer_type.html create mode 100644 dom/media/test/chromeHelper.js create mode 100644 dom/media/test/cloneElementVisually_helpers.js create mode 100644 dom/media/test/contentType.sjs create mode 100644 dom/media/test/crashtests/0-timescale.html create mode 100644 dom/media/test/crashtests/0-timescale.mp4 create mode 100644 dom/media/test/crashtests/1012609.html create mode 100644 dom/media/test/crashtests/1015662.html create mode 100644 dom/media/test/crashtests/1028458.html create mode 100644 dom/media/test/crashtests/1041466.html create mode 100644 dom/media/test/crashtests/1045650.html create mode 100644 dom/media/test/crashtests/1080986.html create mode 100644 dom/media/test/crashtests/1080986.wav create mode 100644 dom/media/test/crashtests/1122218.html create mode 100644 dom/media/test/crashtests/1127188.html create mode 100644 dom/media/test/crashtests/1157994.html create mode 100644 dom/media/test/crashtests/1158427.html create mode 100644 dom/media/test/crashtests/1180881.html create mode 100644 dom/media/test/crashtests/1180881.webm create mode 100644 dom/media/test/crashtests/1185176.html create mode 100644 dom/media/test/crashtests/1185191.html create mode 100644 dom/media/test/crashtests/1185192.html create mode 100644 dom/media/test/crashtests/1197935.html create mode 100644 dom/media/test/crashtests/1197935.mp4 create mode 100644 dom/media/test/crashtests/1223670.html create mode 100644 dom/media/test/crashtests/1236639.html create mode 100644 dom/media/test/crashtests/1236639.mp3 create mode 100644 dom/media/test/crashtests/1257700.html create mode 100644 dom/media/test/crashtests/1257700.webm create mode 100644 dom/media/test/crashtests/1267263.html create mode 100644 dom/media/test/crashtests/1270303.html create mode 100644 dom/media/test/crashtests/1270303.webm create mode 100644 dom/media/test/crashtests/1291702.html create mode 100644 dom/media/test/crashtests/1368490.html create mode 100644 dom/media/test/crashtests/1378826.html create mode 100644 dom/media/test/crashtests/1384248.html create mode 100644 dom/media/test/crashtests/1388372.html create mode 100644 dom/media/test/crashtests/1389304.html create mode 100644 dom/media/test/crashtests/1389304.mp4 create mode 100644 dom/media/test/crashtests/1393272.webm create mode 100644 dom/media/test/crashtests/1411322.html create mode 100644 dom/media/test/crashtests/1414444.mp4 create mode 100644 dom/media/test/crashtests/1450845.html create mode 100644 dom/media/test/crashtests/1489160.html create mode 100644 dom/media/test/crashtests/1494073.html create mode 100644 dom/media/test/crashtests/1517199.html create mode 100644 dom/media/test/crashtests/1526044.html create mode 100644 dom/media/test/crashtests/1530897.webm create mode 100644 dom/media/test/crashtests/1538727.html create mode 100644 dom/media/test/crashtests/1545133.html create mode 100644 dom/media/test/crashtests/1547784.html create mode 100644 dom/media/test/crashtests/1547899.html create mode 100644 dom/media/test/crashtests/1560215.html create mode 100644 dom/media/test/crashtests/1569645.html create mode 100644 dom/media/test/crashtests/1575271.html create mode 100644 dom/media/test/crashtests/1577184.html create mode 100644 dom/media/test/crashtests/1587248.html create mode 100644 dom/media/test/crashtests/1594466.html create mode 100644 dom/media/test/crashtests/1601385.html create mode 100644 dom/media/test/crashtests/1601422.html create mode 100644 dom/media/test/crashtests/1604941.html create mode 100644 dom/media/test/crashtests/1608286.html create mode 100644 dom/media/test/crashtests/1673525.html create mode 100644 dom/media/test/crashtests/1673526-1.html create mode 100644 dom/media/test/crashtests/1673526-2.html create mode 100644 dom/media/test/crashtests/1693043.html create mode 100644 dom/media/test/crashtests/1696511.html create mode 100644 dom/media/test/crashtests/1697521.html create mode 100644 dom/media/test/crashtests/1708790.html create mode 100644 dom/media/test/crashtests/1709130.html create mode 100644 dom/media/test/crashtests/1734008.html create mode 100644 dom/media/test/crashtests/1734008.webm create mode 100644 dom/media/test/crashtests/1741677.html create mode 100644 dom/media/test/crashtests/1748272.html create mode 100644 dom/media/test/crashtests/1752917.html create mode 100644 dom/media/test/crashtests/1762620.html create mode 100644 dom/media/test/crashtests/1765842.html create mode 100644 dom/media/test/crashtests/1765842.webm create mode 100644 dom/media/test/crashtests/1787281.html create mode 100644 dom/media/test/crashtests/1787281.mp4 create mode 100644 dom/media/test/crashtests/1798778.html create mode 100644 dom/media/test/crashtests/1830206.html create mode 100644 dom/media/test/crashtests/1830206.mp4 create mode 100644 dom/media/test/crashtests/1833894.mp4 create mode 100644 dom/media/test/crashtests/1833896.mp4 create mode 100644 dom/media/test/crashtests/1835118.adts create mode 100644 dom/media/test/crashtests/1835164.html create mode 100644 dom/media/test/crashtests/1835164.opus create mode 100644 dom/media/test/crashtests/1839193.adts create mode 100644 dom/media/test/crashtests/1839193.html create mode 100644 dom/media/test/crashtests/1840002.webm create mode 100644 dom/media/test/crashtests/1845350.mp4 create mode 100644 dom/media/test/crashtests/1848660.html create mode 100644 dom/media/test/crashtests/1848660.wav create mode 100644 dom/media/test/crashtests/1850453.flac create mode 100644 dom/media/test/crashtests/1850453.html create mode 100644 dom/media/test/crashtests/1859384.mp4 create mode 100644 dom/media/test/crashtests/1859600.mp4 create mode 100644 dom/media/test/crashtests/1860840.mp4 create mode 100644 dom/media/test/crashtests/1864450.html create mode 100644 dom/media/test/crashtests/1872787.html create mode 100644 dom/media/test/crashtests/255ch.wav create mode 100644 dom/media/test/crashtests/459439-1.html create mode 100644 dom/media/test/crashtests/466607-1.html create mode 100644 dom/media/test/crashtests/466945-1.html create mode 100644 dom/media/test/crashtests/468763-1.html create mode 100644 dom/media/test/crashtests/474744-1.html create mode 100644 dom/media/test/crashtests/481136-1.html create mode 100644 dom/media/test/crashtests/492286-1.xhtml create mode 100644 dom/media/test/crashtests/493915-1.html create mode 100644 dom/media/test/crashtests/495794-1.html create mode 100644 dom/media/test/crashtests/495794-1.ogg create mode 100644 dom/media/test/crashtests/497734-1.xhtml create mode 100644 dom/media/test/crashtests/497734-2.html create mode 100644 dom/media/test/crashtests/576612-1.html create mode 100644 dom/media/test/crashtests/691096-1.html create mode 100644 dom/media/test/crashtests/752784-1.html create mode 100644 dom/media/test/crashtests/789075-1.html create mode 100644 dom/media/test/crashtests/789075.webm create mode 100644 dom/media/test/crashtests/795892-1.html create mode 100644 dom/media/test/crashtests/844563.html create mode 100644 dom/media/test/crashtests/846612.html create mode 100644 dom/media/test/crashtests/852838.html create mode 100644 dom/media/test/crashtests/865004.html create mode 100644 dom/media/test/crashtests/865537-1.html create mode 100644 dom/media/test/crashtests/865550.html create mode 100644 dom/media/test/crashtests/868504.html create mode 100644 dom/media/test/crashtests/874869.html create mode 100644 dom/media/test/crashtests/874915.html create mode 100644 dom/media/test/crashtests/874934.html create mode 100644 dom/media/test/crashtests/874952.html create mode 100644 dom/media/test/crashtests/875144.html create mode 100644 dom/media/test/crashtests/875596.html create mode 100644 dom/media/test/crashtests/875911.html create mode 100644 dom/media/test/crashtests/876024-1.html create mode 100644 dom/media/test/crashtests/876024-2.html create mode 100644 dom/media/test/crashtests/876118.html create mode 100644 dom/media/test/crashtests/876207.html create mode 100644 dom/media/test/crashtests/876215.html create mode 100644 dom/media/test/crashtests/876249.html create mode 100644 dom/media/test/crashtests/876252.html create mode 100644 dom/media/test/crashtests/876834.html create mode 100644 dom/media/test/crashtests/877527.html create mode 100644 dom/media/test/crashtests/877820.html create mode 100644 dom/media/test/crashtests/878014.html create mode 100644 dom/media/test/crashtests/878328.html create mode 100644 dom/media/test/crashtests/878407.html create mode 100644 dom/media/test/crashtests/878478.html create mode 100644 dom/media/test/crashtests/880129.html create mode 100644 dom/media/test/crashtests/880202.html create mode 100644 dom/media/test/crashtests/880342-1.html create mode 100644 dom/media/test/crashtests/880342-2.html create mode 100644 dom/media/test/crashtests/880384.html create mode 100644 dom/media/test/crashtests/880404.html create mode 100644 dom/media/test/crashtests/880724.html create mode 100644 dom/media/test/crashtests/881775.html create mode 100644 dom/media/test/crashtests/882956.html create mode 100644 dom/media/test/crashtests/884459.html create mode 100644 dom/media/test/crashtests/889042.html create mode 100644 dom/media/test/crashtests/907986-1.html create mode 100644 dom/media/test/crashtests/907986-2.html create mode 100644 dom/media/test/crashtests/907986-3.html create mode 100644 dom/media/test/crashtests/907986-4.html create mode 100644 dom/media/test/crashtests/910171-1.html create mode 100644 dom/media/test/crashtests/920987.html create mode 100644 dom/media/test/crashtests/925619-1.html create mode 100644 dom/media/test/crashtests/925619-2.html create mode 100644 dom/media/test/crashtests/926619.html create mode 100644 dom/media/test/crashtests/933151.html create mode 100644 dom/media/test/crashtests/933156.html create mode 100644 dom/media/test/crashtests/944851.html create mode 100644 dom/media/test/crashtests/952756.html create mode 100644 dom/media/test/crashtests/986901.html create mode 100644 dom/media/test/crashtests/990794.html create mode 100644 dom/media/test/crashtests/995289.html create mode 100644 dom/media/test/crashtests/adts-truncated.aac create mode 100644 dom/media/test/crashtests/adts.aac create mode 100644 dom/media/test/crashtests/analyser-channels-1.html create mode 100644 dom/media/test/crashtests/audiocontext-after-unload-1.html create mode 100644 dom/media/test/crashtests/audiocontext-after-xhr.html create mode 100644 dom/media/test/crashtests/audiocontext-double-suspend.html create mode 100644 dom/media/test/crashtests/audioworkletnode-after-unload-1.html create mode 100644 dom/media/test/crashtests/buffer-source-duration-1.html create mode 100644 dom/media/test/crashtests/buffer-source-ended-1.html create mode 100644 dom/media/test/crashtests/buffer-source-resampling-start-1.html create mode 100644 dom/media/test/crashtests/buffer-source-slow-resampling-1.html create mode 100644 dom/media/test/crashtests/channel-count-in-metadata-different-than-in-content.mp4 create mode 100644 dom/media/test/crashtests/convolver-memory-report-1.html create mode 100644 dom/media/test/crashtests/copyFromChannel-2.html create mode 100644 dom/media/test/crashtests/cors.webm create mode 100644 dom/media/test/crashtests/cors.webm^headers^ create mode 100644 dom/media/test/crashtests/crashtests.list create mode 100644 dom/media/test/crashtests/disconnect-wrong-destination.html create mode 100644 dom/media/test/crashtests/doppler-1.html create mode 100644 dom/media/test/crashtests/empty-buffer-source.html create mode 100644 dom/media/test/crashtests/empty-samples.webm create mode 100644 dom/media/test/crashtests/encrypted-track-with-bad-sample-description-index.mp4 create mode 100644 dom/media/test/crashtests/encrypted-track-with-sample-missing-cenc-aux.mp4 create mode 100644 dom/media/test/crashtests/encrypted-track-without-tenc.mp4 create mode 100644 dom/media/test/crashtests/invalidfmt.html create mode 100644 dom/media/test/crashtests/invalidfmt.wav create mode 100644 dom/media/test/crashtests/media-element-source-seek-1.html create mode 100644 dom/media/test/crashtests/mp4_box_emptyrange.mp4 create mode 100644 dom/media/test/crashtests/noextradata-8ch.wav create mode 100644 dom/media/test/crashtests/offline-buffer-source-ended-1.html create mode 100644 dom/media/test/crashtests/oscillator-ended-1.html create mode 100644 dom/media/test/crashtests/oscillator-ended-2.html create mode 100644 dom/media/test/crashtests/small-timebase.html create mode 100644 dom/media/test/crashtests/small-timebase.mp4 create mode 100644 dom/media/test/crashtests/sound.ogg create mode 100644 dom/media/test/crashtests/test.mp4 create mode 100644 dom/media/test/crashtests/track-with-zero-dimensions.mp4 create mode 100644 dom/media/test/crashtests/trimming_needed_and_last_sample_invalid_duration.ogg create mode 100644 dom/media/test/crashtests/video-crash.webm create mode 100644 dom/media/test/crashtests/video-replay-after-audio-end.html create mode 100644 dom/media/test/dash/dash-manifest-garbled-webm.mpd create mode 100644 dom/media/test/dash/dash-manifest-garbled.mpd create mode 100644 dom/media/test/dash/dash-manifest-sjs.mpd create mode 100644 dom/media/test/dash/dash-manifest.mpd create mode 100644 dom/media/test/dash/dash-webm-audio-128k.webm create mode 100644 dom/media/test/dash/dash-webm-video-320x180.webm create mode 100644 dom/media/test/dash/dash-webm-video-428x240.webm create mode 100644 dom/media/test/dash/garbled.webm create mode 100644 dom/media/test/dash_detect_stream_switch.sjs create mode 100644 dom/media/test/detodos-recorder-test.opus create mode 100644 dom/media/test/detodos-recorder-test.opus^headers^ create mode 100644 dom/media/test/detodos-short.opus create mode 100644 dom/media/test/detodos-short.opus^headers^ create mode 100644 dom/media/test/detodos-short.webm create mode 100644 dom/media/test/detodos-short.webm^headers^ create mode 100644 dom/media/test/detodos.opus create mode 100644 dom/media/test/detodos.opus^headers^ create mode 100644 dom/media/test/detodos.webm create mode 100644 dom/media/test/detodos.webm^headers^ create mode 100644 dom/media/test/dirac.ogg create mode 100644 dom/media/test/dirac.ogg^headers^ create mode 100644 dom/media/test/dynamic_resource.sjs create mode 100644 dom/media/test/eme.js create mode 100644 dom/media/test/eme_standalone.js create mode 100644 dom/media/test/empty_size.mp3 create mode 100644 dom/media/test/file_access_controls.html create mode 100644 dom/media/test/file_eme_createMediaKeys.html create mode 100644 dom/media/test/file_playback_and_bfcache.html create mode 100644 dom/media/test/flac-noheader-s16.flac create mode 100644 dom/media/test/flac-noheader-s16.flac^headers^ create mode 100644 dom/media/test/flac-s24.flac create mode 100644 dom/media/test/flac-s24.flac^headers^ create mode 100644 dom/media/test/flac-sample-cenc.mp4 create mode 100644 dom/media/test/flac-sample-cenc.mp4^headers^ create mode 100644 dom/media/test/flac-sample.mp4 create mode 100644 dom/media/test/flac-sample.mp4^headers^ create mode 100644 dom/media/test/force_octet_stream.mp4 create mode 100644 dom/media/test/force_octet_stream.mp4^headers^ create mode 100644 dom/media/test/fragment_noplay.js create mode 100644 dom/media/test/fragment_play.js create mode 100644 dom/media/test/gUM_support.js create mode 100644 dom/media/test/gizmo-frag.mp4 create mode 100644 dom/media/test/gizmo-noaudio.mp4 create mode 100644 dom/media/test/gizmo-noaudio.mp4^headers^ create mode 100644 dom/media/test/gizmo-noaudio.webm create mode 100644 dom/media/test/gizmo-noaudio.webm^headers^ create mode 100644 dom/media/test/gizmo-short.mp4 create mode 100644 dom/media/test/gizmo-short.mp4^headers^ create mode 100644 dom/media/test/gizmo.mp4 create mode 100644 dom/media/test/gizmo.mp4^headers^ create mode 100644 dom/media/test/gizmo.webm create mode 100644 dom/media/test/gizmo.webm^headers^ create mode 100644 dom/media/test/gzipped_mp4.sjs create mode 100644 dom/media/test/hevc_white_frame.mp4 create mode 100644 dom/media/test/hevc_white_frame.mp4^headers^ create mode 100644 dom/media/test/hevc_white_red_frames.mp4 create mode 100644 dom/media/test/hevc_white_red_frames.mp4^headers^ create mode 100644 dom/media/test/hls/400x300_prog_index.m3u8 create mode 100644 dom/media/test/hls/400x300_prog_index_5s.m3u8 create mode 100644 dom/media/test/hls/400x300_seg0.ts create mode 100644 dom/media/test/hls/400x300_seg0_5s.ts create mode 100644 dom/media/test/hls/400x300_seg1.ts create mode 100644 dom/media/test/hls/416x243_prog_index_5s.m3u8 create mode 100644 dom/media/test/hls/416x243_seg0_5s.ts create mode 100644 dom/media/test/hls/640x480_prog_index.m3u8 create mode 100644 dom/media/test/hls/640x480_seg0.ts create mode 100644 dom/media/test/hls/640x480_seg1.ts create mode 100644 dom/media/test/hls/960x720_prog_index.m3u8 create mode 100644 dom/media/test/hls/960x720_seg0.ts create mode 100644 dom/media/test/hls/960x720_seg1.ts create mode 100644 dom/media/test/hls/bipbop_16x9_single.m3u8 create mode 100644 dom/media/test/hls/bipbop_4x3_single.m3u8 create mode 100644 dom/media/test/hls/bipbop_4x3_variant.m3u8 create mode 100644 dom/media/test/huge-id3.mp3 create mode 100644 dom/media/test/huge-id3.mp3^headers^ create mode 100644 dom/media/test/id3tags.mp3 create mode 100644 dom/media/test/id3tags.mp3^headers^ create mode 100644 dom/media/test/id3v1afterlongid3v2.mp3 create mode 100644 dom/media/test/invalid-cmap-s0c0.opus create mode 100644 dom/media/test/invalid-cmap-s0c0.opus^headers^ create mode 100644 dom/media/test/invalid-cmap-s0c2.opus create mode 100644 dom/media/test/invalid-cmap-s0c2.opus^headers^ create mode 100644 dom/media/test/invalid-cmap-s1c2.opus create mode 100644 dom/media/test/invalid-cmap-s1c2.opus^headers^ create mode 100644 dom/media/test/invalid-cmap-short.opus create mode 100644 dom/media/test/invalid-cmap-short.opus^headers^ create mode 100644 dom/media/test/invalid-discard_on_multi_blocks.webm create mode 100644 dom/media/test/invalid-discard_on_multi_blocks.webm^headers^ create mode 100644 dom/media/test/invalid-excess_discard.webm create mode 100644 dom/media/test/invalid-excess_discard.webm^headers^ create mode 100644 dom/media/test/invalid-excess_neg_discard.webm create mode 100644 dom/media/test/invalid-excess_neg_discard.webm^headers^ create mode 100644 dom/media/test/invalid-m0c0.opus create mode 100644 dom/media/test/invalid-m0c0.opus^headers^ create mode 100644 dom/media/test/invalid-m0c3.opus create mode 100644 dom/media/test/invalid-m0c3.opus^headers^ create mode 100644 dom/media/test/invalid-m1c0.opus create mode 100644 dom/media/test/invalid-m1c0.opus^headers^ create mode 100644 dom/media/test/invalid-m1c9.opus create mode 100644 dom/media/test/invalid-m1c9.opus^headers^ create mode 100644 dom/media/test/invalid-m2c0.opus create mode 100644 dom/media/test/invalid-m2c0.opus^headers^ create mode 100644 dom/media/test/invalid-m2c1.opus create mode 100644 dom/media/test/invalid-m2c1.opus^headers^ create mode 100644 dom/media/test/invalid-neg_discard.webm create mode 100644 dom/media/test/invalid-neg_discard.webm^headers^ create mode 100644 dom/media/test/invalid-preskip.webm create mode 100644 dom/media/test/invalid-preskip.webm^headers^ create mode 100644 dom/media/test/make-headers.sh create mode 100644 dom/media/test/manifest.js create mode 100644 dom/media/test/midflight-redirect.sjs create mode 100644 dom/media/test/mochitest.toml create mode 100644 dom/media/test/mochitest_background_video.toml create mode 100644 dom/media/test/mochitest_bugs.toml create mode 100644 dom/media/test/mochitest_compat.toml create mode 100644 dom/media/test/mochitest_eme.toml create mode 100644 dom/media/test/mochitest_eme_compat.toml create mode 100644 dom/media/test/mochitest_media_engine.toml create mode 100644 dom/media/test/mochitest_media_recorder.toml create mode 100644 dom/media/test/mochitest_seek.toml create mode 100644 dom/media/test/mochitest_stream.toml create mode 100644 dom/media/test/multi_id3v2.mp3 create mode 100644 dom/media/test/multiple-bos-more-header-fileds.ogg create mode 100644 dom/media/test/multiple-bos-more-header-fileds.ogg^headers^ create mode 100644 dom/media/test/multiple-bos.ogg create mode 100644 dom/media/test/multiple-bos.ogg^headers^ create mode 100644 dom/media/test/no-container-codec-delay.webm create mode 100644 dom/media/test/no-cues.webm create mode 100644 dom/media/test/no-cues.webm^headers^ create mode 100644 dom/media/test/notags.mp3 create mode 100644 dom/media/test/notags.mp3^headers^ create mode 100644 dom/media/test/opus-mapping2.mp4 create mode 100644 dom/media/test/opus-mapping2.mp4^headers^ create mode 100644 dom/media/test/opus-mapping2.webm create mode 100644 dom/media/test/opus-mapping2.webm^headers^ create mode 100644 dom/media/test/opus-sample-cenc.mp4 create mode 100644 dom/media/test/opus-sample-cenc.mp4^headers^ create mode 100644 dom/media/test/opus-sample.mp4 create mode 100644 dom/media/test/opus-sample.mp4^headers^ create mode 100644 dom/media/test/owl-funnier-id3.mp3 create mode 100644 dom/media/test/owl-funnier-id3.mp3^headers^ create mode 100644 dom/media/test/owl-funny-id3.mp3 create mode 100644 dom/media/test/owl-funny-id3.mp3^headers^ create mode 100644 dom/media/test/owl-short.mp3 create mode 100644 dom/media/test/owl-short.mp3^headers^ create mode 100644 dom/media/test/owl.mp3 create mode 100644 dom/media/test/owl.mp3^headers^ create mode 100644 dom/media/test/padding-spanning-multiple-packets.mp3 create mode 100644 dom/media/test/pixel_aspect_ratio.mp4 create mode 100644 dom/media/test/play_promise.js create mode 100644 dom/media/test/poster-test.jpg create mode 100644 dom/media/test/r11025_msadpcm_c1.wav create mode 100644 dom/media/test/r11025_msadpcm_c1.wav^headers^ create mode 100644 dom/media/test/r11025_s16_c1-short.wav create mode 100644 dom/media/test/r11025_s16_c1-short.wav^headers^ create mode 100644 dom/media/test/r11025_s16_c1.wav create mode 100644 dom/media/test/r11025_s16_c1.wav^headers^ create mode 100644 dom/media/test/r11025_s16_c1_trailing.wav create mode 100644 dom/media/test/r11025_s16_c1_trailing.wav^headers^ create mode 100644 dom/media/test/r11025_u8_c1.wav create mode 100644 dom/media/test/r11025_u8_c1.wav^headers^ create mode 100644 dom/media/test/r11025_u8_c1_trunc.wav create mode 100644 dom/media/test/r11025_u8_c1_trunc.wav^headers^ create mode 100644 dom/media/test/r16000_u8_c1_list.wav create mode 100644 dom/media/test/r16000_u8_c1_list.wav^headers^ create mode 100644 dom/media/test/rdd_process_xpcom/RddProcessTest.cpp create mode 100644 dom/media/test/rdd_process_xpcom/RddProcessTest.h create mode 100644 dom/media/test/rdd_process_xpcom/components.conf create mode 100644 dom/media/test/rdd_process_xpcom/moz.build create mode 100644 dom/media/test/rdd_process_xpcom/nsIRddProcessTest.idl create mode 100644 dom/media/test/reactivate_helper.html create mode 100644 dom/media/test/red-46x48.mp4 create mode 100644 dom/media/test/red-46x48.mp4^headers^ create mode 100644 dom/media/test/red-48x46.mp4 create mode 100644 dom/media/test/red-48x46.mp4^headers^ create mode 100644 dom/media/test/redirect.sjs create mode 100644 dom/media/test/referer.sjs create mode 100644 dom/media/test/reftest/av1hdr2020.mp4 create mode 100644 dom/media/test/reftest/av1hdr2020.png create mode 100644 dom/media/test/reftest/bipbop_300_215kbps.mp4.lastframe-ref.html create mode 100644 dom/media/test/reftest/bipbop_300_215kbps.mp4.lastframe.html create mode 100644 dom/media/test/reftest/color_quads/720p.png create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.pc.gbrp.av1.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.pc.gbrp.av1.webm create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.pc.gbrp.h264.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.pc.gbrp.vp9.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.pc.gbrp.vp9.webm create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.pc.yuv420p.av1.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.pc.yuv420p.av1.webm create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.pc.yuv420p.h264.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.pc.yuv420p.vp9.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.pc.yuv420p.vp9.webm create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.pc.yuv420p10.av1.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.pc.yuv420p10.av1.webm create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.pc.yuv420p10.h264.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.pc.yuv420p10.vp9.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.pc.yuv420p10.vp9.webm create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.tv.gbrp.av1.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.tv.gbrp.av1.webm create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.tv.gbrp.h264.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.tv.gbrp.vp9.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.tv.gbrp.vp9.webm create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.tv.yuv420p.av1.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.tv.yuv420p.av1.webm create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.tv.yuv420p.h264.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.tv.yuv420p.vp9.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.tv.yuv420p.vp9.webm create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.tv.yuv420p10.av1.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.tv.yuv420p10.av1.webm create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.tv.yuv420p10.h264.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.tv.yuv420p10.vp9.mp4 create mode 100644 dom/media/test/reftest/color_quads/720p.png.bt709.bt709.tv.yuv420p10.vp9.webm create mode 100644 dom/media/test/reftest/color_quads/reftest.list create mode 100644 dom/media/test/reftest/frame_order.mp4 create mode 100644 dom/media/test/reftest/frame_order_mp4-ref.html create mode 100644 dom/media/test/reftest/frame_order_mp4.html create mode 100644 dom/media/test/reftest/gen_combos.py create mode 100644 dom/media/test/reftest/generateREF.html create mode 100644 dom/media/test/reftest/gizmo.mp4.55thframe-ref.html create mode 100644 dom/media/test/reftest/gizmo.mp4.seek.html create mode 100644 dom/media/test/reftest/image-10bits-rendering-720-90-ref.html create mode 100644 dom/media/test/reftest/image-10bits-rendering-720-90-video.html create mode 100644 dom/media/test/reftest/image-10bits-rendering-720-ref.html create mode 100644 dom/media/test/reftest/image-10bits-rendering-720-video.html create mode 100644 dom/media/test/reftest/image-10bits-rendering-720.video.html create mode 100644 dom/media/test/reftest/image-10bits-rendering-90-ref.html create mode 100644 dom/media/test/reftest/image-10bits-rendering-90-video.html create mode 100644 dom/media/test/reftest/image-10bits-rendering-ref.html create mode 100644 dom/media/test/reftest/image-10bits-rendering-video.html create mode 100644 dom/media/test/reftest/incorrect_display_in_bytestream_vp8-ref.html create mode 100644 dom/media/test/reftest/incorrect_display_in_bytestream_vp8.html create mode 100644 dom/media/test/reftest/incorrect_display_in_bytestream_vp8.webm create mode 100644 dom/media/test/reftest/incorrect_display_in_bytestream_vp9-ref.html create mode 100644 dom/media/test/reftest/incorrect_display_in_bytestream_vp9.html create mode 100644 dom/media/test/reftest/incorrect_display_in_bytestream_vp9.webm create mode 100644 dom/media/test/reftest/reftest.list create mode 100644 dom/media/test/reftest/reftest_img.html create mode 100644 dom/media/test/reftest/reftest_video.html create mode 100644 dom/media/test/reftest/short.mp4.firstframe-ref.html create mode 100644 dom/media/test/reftest/short.mp4.firstframe.html create mode 100644 dom/media/test/reftest/short.mp4.lastframe-ref.html create mode 100644 dom/media/test/reftest/short.mp4.lastframe.html create mode 100644 dom/media/test/reftest/uneven_frame_duration_video-ref.html create mode 100644 dom/media/test/reftest/uneven_frame_duration_video.html create mode 100644 dom/media/test/reftest/uneven_frame_durations.mp4 create mode 100644 dom/media/test/reftest/uneven_frame_durations_3.8s_frame.png create mode 100644 dom/media/test/reftest/vp9hdr2020.png create mode 100644 dom/media/test/reftest/vp9hdr2020.webm create mode 100644 dom/media/test/resolution-change.webm create mode 100644 dom/media/test/resolution-change.webm^headers^ create mode 100644 dom/media/test/sample-encrypted-sgpdstbl-sbgptraf.mp4 create mode 100644 dom/media/test/sample-encrypted-sgpdstbl-sbgptraf.mp4^headers^ create mode 100644 dom/media/test/sample-fisbone-skeleton4.ogv create mode 100644 dom/media/test/sample-fisbone-skeleton4.ogv^headers^ create mode 100644 dom/media/test/sample-fisbone-wrong-header.ogv create mode 100644 dom/media/test/sample-fisbone-wrong-header.ogv^headers^ create mode 100644 dom/media/test/sample.3g2 create mode 100644 dom/media/test/sample.3gp create mode 100644 dom/media/test/seek-short.ogv create mode 100644 dom/media/test/seek-short.ogv^headers^ create mode 100644 dom/media/test/seek-short.webm create mode 100644 dom/media/test/seek-short.webm^headers^ create mode 100644 dom/media/test/seek.ogv create mode 100644 dom/media/test/seek.ogv^headers^ create mode 100644 dom/media/test/seek.webm create mode 100644 dom/media/test/seek.webm^headers^ create mode 100644 dom/media/test/seekLies.sjs create mode 100644 dom/media/test/seek_support.js create mode 100644 dom/media/test/seek_with_sound.ogg create mode 100644 dom/media/test/seek_with_sound.ogg^headers^ create mode 100644 dom/media/test/short-aac-encrypted-audio.mp4 create mode 100644 dom/media/test/short-aac-encrypted-audio.mp4^headers^ create mode 100644 dom/media/test/short-audio-fragmented-cenc-without-pssh.mp4 create mode 100644 dom/media/test/short-audio-fragmented-cenc-without-pssh.mp4^headers^ create mode 100644 dom/media/test/short-cenc-pssh-in-moof.mp4 create mode 100644 dom/media/test/short-cenc.mp4 create mode 100644 dom/media/test/short-cenc.xml create mode 100644 dom/media/test/short-video.ogv create mode 100644 dom/media/test/short-video.ogv^headers^ create mode 100644 dom/media/test/short-vp9-encrypted-video.mp4 create mode 100644 dom/media/test/short-vp9-encrypted-video.mp4^headers^ create mode 100644 dom/media/test/short.mp4 create mode 100644 dom/media/test/short.mp4.gz create mode 100644 dom/media/test/short.mp4^headers^ create mode 100644 dom/media/test/shorter_audio_than_video_3s.webm create mode 100644 dom/media/test/shorter_audio_than_video_3s.webm^headers^ create mode 100644 dom/media/test/sin-441-1s-44100-afconvert.mp4 create mode 100644 dom/media/test/sin-441-1s-44100-fdk_aac.mp4 create mode 100644 dom/media/test/sin-441-1s-44100-lame.mp3 create mode 100644 dom/media/test/sin-441-1s-44100.flac create mode 100644 dom/media/test/sin-441-1s-44100.ogg create mode 100644 dom/media/test/sin-441-1s-44100.opus create mode 100644 dom/media/test/sine.webm create mode 100644 dom/media/test/sine.webm^headers^ create mode 100644 dom/media/test/single-xing-header-no-content-length.mp3 create mode 100644 dom/media/test/single-xing-header-no-content-length.mp3^headers^ create mode 100644 dom/media/test/sintel-short-clearkey-subsample-encrypted-audio.webm create mode 100644 dom/media/test/sintel-short-clearkey-subsample-encrypted-audio.webm^headers^ create mode 100644 dom/media/test/sintel-short-clearkey-subsample-encrypted-video.webm create mode 100644 dom/media/test/sintel-short-clearkey-subsample-encrypted-video.webm^headers^ create mode 100644 dom/media/test/small-shot-mp3.mp4 create mode 100644 dom/media/test/small-shot-mp3.mp4^headers^ create mode 100644 dom/media/test/small-shot.flac create mode 100644 dom/media/test/small-shot.m4a create mode 100644 dom/media/test/small-shot.mp3 create mode 100644 dom/media/test/small-shot.mp3^headers^ create mode 100644 dom/media/test/small-shot.ogg create mode 100644 dom/media/test/small-shot.ogg^headers^ create mode 100644 dom/media/test/sound.ogg create mode 100644 dom/media/test/sound.ogg^headers^ create mode 100644 dom/media/test/spacestorm-1000Hz-100ms.ogg create mode 100644 dom/media/test/spacestorm-1000Hz-100ms.ogg^headers^ create mode 100644 dom/media/test/split.webm create mode 100644 dom/media/test/split.webm^headers^ create mode 100644 dom/media/test/street.mp4 create mode 100644 dom/media/test/street.mp4^headers^ create mode 100644 dom/media/test/sync.webm create mode 100644 dom/media/test/test-1-mono.opus create mode 100644 dom/media/test/test-1-mono.opus^headers^ create mode 100644 dom/media/test/test-2-stereo.opus create mode 100644 dom/media/test/test-2-stereo.opus^headers^ create mode 100644 dom/media/test/test-3-LCR.opus create mode 100644 dom/media/test/test-3-LCR.opus^headers^ create mode 100644 dom/media/test/test-4-quad.opus create mode 100644 dom/media/test/test-4-quad.opus^headers^ create mode 100644 dom/media/test/test-5-5.0.opus create mode 100644 dom/media/test/test-5-5.0.opus^headers^ create mode 100644 dom/media/test/test-6-5.1.opus create mode 100644 dom/media/test/test-6-5.1.opus^headers^ create mode 100644 dom/media/test/test-7-6.1.opus create mode 100644 dom/media/test/test-7-6.1.opus^headers^ create mode 100644 dom/media/test/test-8-7.1.opus create mode 100644 dom/media/test/test-8-7.1.opus^headers^ create mode 100644 dom/media/test/test-stereo-phase-inversion-180.opus create mode 100644 dom/media/test/test-stereo-phase-inversion-180.opus^headers^ create mode 100644 dom/media/test/test_VideoPlaybackQuality.html create mode 100644 dom/media/test/test_VideoPlaybackQuality_disabled.html create mode 100644 dom/media/test/test_access_control.html create mode 100644 dom/media/test/test_arraybuffer.html create mode 100644 dom/media/test/test_aspectratio_mp4.html create mode 100644 dom/media/test/test_audio1.html create mode 100644 dom/media/test/test_audio2.html create mode 100644 dom/media/test/test_audioDocumentTitle.html create mode 100644 dom/media/test/test_background_video_cancel_suspend_taint.html create mode 100644 dom/media/test/test_background_video_cancel_suspend_visible.html create mode 100644 dom/media/test/test_background_video_drawimage_with_suspended_video.html create mode 100644 dom/media/test/test_background_video_ended_event.html create mode 100644 dom/media/test/test_background_video_no_suspend_disabled.html create mode 100644 dom/media/test/test_background_video_no_suspend_not_in_tree.html create mode 100644 dom/media/test/test_background_video_no_suspend_short_vid.html create mode 100644 dom/media/test/test_background_video_resume_after_end_show_last_frame.html create mode 100644 dom/media/test/test_background_video_resume_looping_video_without_audio.html create mode 100644 dom/media/test/test_background_video_suspend.html create mode 100644 dom/media/test/test_background_video_suspend_ends.html create mode 100644 dom/media/test/test_background_video_suspend_ready_state.html create mode 100644 dom/media/test/test_background_video_tainted_by_capturestream.html create mode 100644 dom/media/test/test_background_video_tainted_by_createimagebitmap.html create mode 100644 dom/media/test/test_background_video_tainted_by_drawimage.html create mode 100644 dom/media/test/test_buffered.html create mode 100644 dom/media/test/test_bug1113600.html create mode 100644 dom/media/test/test_bug1120222.html create mode 100644 dom/media/test/test_bug1242338.html create mode 100644 dom/media/test/test_bug1248229.html create mode 100644 dom/media/test/test_bug1431810_opus_downmix_to_mono.html create mode 100644 dom/media/test/test_bug1512958.html create mode 100644 dom/media/test/test_bug1553262.html create mode 100644 dom/media/test/test_bug448534.html create mode 100644 dom/media/test/test_bug463162.xhtml create mode 100644 dom/media/test/test_bug465498.html create mode 100644 dom/media/test/test_bug495145.html create mode 100644 dom/media/test/test_bug495300.html create mode 100644 dom/media/test/test_bug654550.html create mode 100644 dom/media/test/test_bug686942.html create mode 100644 dom/media/test/test_bug726904.html create mode 100644 dom/media/test/test_bug874897.html create mode 100644 dom/media/test/test_bug879717.html create mode 100644 dom/media/test/test_bug895305.html create mode 100644 dom/media/test/test_bug919265.html create mode 100644 dom/media/test/test_can_play_type.html create mode 100644 dom/media/test/test_can_play_type_mpeg.html create mode 100644 dom/media/test/test_can_play_type_no_ogg.html create mode 100644 dom/media/test/test_can_play_type_ogg.html create mode 100644 dom/media/test/test_can_play_type_wave.html create mode 100644 dom/media/test/test_can_play_type_webm.html create mode 100644 dom/media/test/test_capture_stream_av_sync.html create mode 100644 dom/media/test/test_chaining.html create mode 100644 dom/media/test/test_cloneElementVisually_ended_video.html create mode 100644 dom/media/test/test_cloneElementVisually_mediastream.html create mode 100644 dom/media/test/test_cloneElementVisually_mediastream_multitrack.html create mode 100644 dom/media/test/test_cloneElementVisually_no_suspend.html create mode 100644 dom/media/test/test_cloneElementVisually_paused.html create mode 100644 dom/media/test/test_cloneElementVisually_poster.html create mode 100644 dom/media/test/test_cloneElementVisually_resource_change.html create mode 100644 dom/media/test/test_clone_media_element.html create mode 100644 dom/media/test/test_closing_connections.html create mode 100644 dom/media/test/test_constants.html create mode 100644 dom/media/test/test_controls.html create mode 100644 dom/media/test/test_cueless_webm_seek-1.html create mode 100644 dom/media/test/test_cueless_webm_seek-2.html create mode 100644 dom/media/test/test_cueless_webm_seek-3.html create mode 100644 dom/media/test/test_currentTime.html create mode 100644 dom/media/test/test_debug_data_helpers.html create mode 100644 dom/media/test/test_decode_error.html create mode 100644 dom/media/test/test_decode_error_crossorigin.html create mode 100644 dom/media/test/test_decoder_disable.html create mode 100644 dom/media/test/test_defaultMuted.html create mode 100644 dom/media/test/test_delay_load.html create mode 100644 dom/media/test/test_duration_after_error.html create mode 100644 dom/media/test/test_eme_autoplay.html create mode 100644 dom/media/test/test_eme_canvas_blocked.html create mode 100644 dom/media/test/test_eme_createMediaKeys_iframes.html create mode 100644 dom/media/test/test_eme_detach_media_keys.html create mode 100644 dom/media/test/test_eme_detach_reattach_same_mediakeys_during_playback.html create mode 100644 dom/media/test/test_eme_getstatusforpolicy.html create mode 100644 dom/media/test/test_eme_initDataTypes.html create mode 100644 dom/media/test/test_eme_mfcdm_generate_request.html create mode 100644 dom/media/test/test_eme_mfcdm_getstatusforpolicy.html create mode 100644 dom/media/test/test_eme_missing_pssh.html create mode 100644 dom/media/test/test_eme_non_mse_fails.html create mode 100644 dom/media/test/test_eme_playback.html create mode 100644 dom/media/test/test_eme_protection_query.html create mode 100644 dom/media/test/test_eme_pssh_in_moof.html create mode 100644 dom/media/test/test_eme_requestKeySystemAccess.html create mode 100644 dom/media/test/test_eme_requestMediaKeySystemAccess_with_app_approval.html create mode 100644 dom/media/test/test_eme_request_notifications.html create mode 100644 dom/media/test/test_eme_sample_groups_playback.html create mode 100644 dom/media/test/test_eme_session_callable_value.html create mode 100644 dom/media/test/test_eme_setMediaKeys_before_attach_MediaSource.html create mode 100644 dom/media/test/test_eme_special_key_system.html create mode 100644 dom/media/test/test_eme_stream_capture_blocked_case1.html create mode 100644 dom/media/test/test_eme_stream_capture_blocked_case2.html create mode 100644 dom/media/test/test_eme_stream_capture_blocked_case3.html create mode 100644 dom/media/test/test_eme_unsetMediaKeys_then_capture.html create mode 100644 dom/media/test/test_eme_waitingforkey.html create mode 100644 dom/media/test/test_eme_wideinve_l1_installation.html create mode 100644 dom/media/test/test_eme_wv_privacy.html create mode 100644 dom/media/test/test_empty_resource.html create mode 100644 dom/media/test/test_error_in_video_document.html create mode 100644 dom/media/test/test_error_on_404.html create mode 100644 dom/media/test/test_fastSeek-forwards.html create mode 100644 dom/media/test/test_fastSeek.html create mode 100644 dom/media/test/test_fragment_noplay.html create mode 100644 dom/media/test/test_fragment_play.html create mode 100644 dom/media/test/test_hevc_playback.html create mode 100644 dom/media/test/test_hevc_support.html create mode 100644 dom/media/test/test_hls_player_independency.html create mode 100644 dom/media/test/test_hw_video_decoding.html create mode 100644 dom/media/test/test_imagecapture.html create mode 100644 dom/media/test/test_info_leak.html create mode 100644 dom/media/test/test_invalid_reject.html create mode 100644 dom/media/test/test_invalid_reject_play.html create mode 100644 dom/media/test/test_invalid_seek.html create mode 100644 dom/media/test/test_load.html create mode 100644 dom/media/test/test_load_candidates.html create mode 100644 dom/media/test/test_load_same_resource.html create mode 100644 dom/media/test/test_load_source.html create mode 100644 dom/media/test/test_load_source_empty_type.html create mode 100644 dom/media/test/test_loop.html create mode 100644 dom/media/test/test_looping_eventsOrder.html create mode 100644 dom/media/test/test_media_selection.html create mode 100644 dom/media/test/test_media_sniffer.html create mode 100644 dom/media/test/test_mediacapabilities_resistfingerprinting.html create mode 100644 dom/media/test/test_mediarecorder_avoid_recursion.html create mode 100644 dom/media/test/test_mediarecorder_bitrate.html create mode 100644 dom/media/test/test_mediarecorder_creation.html create mode 100644 dom/media/test/test_mediarecorder_creation_fail.html create mode 100644 dom/media/test/test_mediarecorder_fires_start_event_once_when_erroring.html create mode 100644 dom/media/test/test_mediarecorder_multipletracks.html create mode 100644 dom/media/test/test_mediarecorder_onerror_pause.html create mode 100644 dom/media/test/test_mediarecorder_pause_resume_video.html create mode 100644 dom/media/test/test_mediarecorder_playback_can_repeat.html create mode 100644 dom/media/test/test_mediarecorder_principals.html create mode 100644 dom/media/test/test_mediarecorder_record_4ch_audiocontext.html create mode 100644 dom/media/test/test_mediarecorder_record_addtracked_stream.html create mode 100644 dom/media/test/test_mediarecorder_record_audiocontext.html create mode 100644 dom/media/test/test_mediarecorder_record_audiocontext_mlk.html create mode 100644 dom/media/test/test_mediarecorder_record_audionode.html create mode 100644 dom/media/test/test_mediarecorder_record_canvas_captureStream.html create mode 100644 dom/media/test/test_mediarecorder_record_changing_video_resolution.html create mode 100644 dom/media/test/test_mediarecorder_record_downsize_resolution.html create mode 100644 dom/media/test/test_mediarecorder_record_getdata_afterstart.html create mode 100644 dom/media/test/test_mediarecorder_record_gum_video_timeslice.html create mode 100644 dom/media/test/test_mediarecorder_record_gum_video_timeslice_mixed.html create mode 100644 dom/media/test/test_mediarecorder_record_immediate_stop.html create mode 100644 dom/media/test/test_mediarecorder_record_no_timeslice.html create mode 100644 dom/media/test/test_mediarecorder_record_session.html create mode 100644 dom/media/test/test_mediarecorder_record_startstopstart.html create mode 100644 dom/media/test/test_mediarecorder_record_timeslice.html create mode 100644 dom/media/test/test_mediarecorder_record_upsize_resolution.html create mode 100644 dom/media/test/test_mediarecorder_reload_crash.html create mode 100644 dom/media/test/test_mediarecorder_state_event_order.html create mode 100644 dom/media/test/test_mediarecorder_state_transition.html create mode 100644 dom/media/test/test_mediarecorder_webm_support.html create mode 100644 dom/media/test/test_mediastream_as_eventarget.html create mode 100644 dom/media/test/test_mediatrack_consuming_mediaresource.html create mode 100644 dom/media/test/test_mediatrack_consuming_mediastream.html create mode 100644 dom/media/test/test_mediatrack_events.html create mode 100644 dom/media/test/test_mediatrack_parsing_ogg.html create mode 100644 dom/media/test/test_mediatrack_replay_from_end.html create mode 100644 dom/media/test/test_metadata.html create mode 100644 dom/media/test/test_midflight_redirect_blocked.html create mode 100644 dom/media/test/test_mixed_principals.html create mode 100644 dom/media/test/test_mozHasAudio.html create mode 100644 dom/media/test/test_mp3_broadcast.html create mode 100644 dom/media/test/test_mp3_with_multiple_ID3v2.html create mode 100644 dom/media/test/test_multiple_mediastreamtracks.html create mode 100644 dom/media/test/test_networkState.html create mode 100644 dom/media/test/test_new_audio.html create mode 100644 dom/media/test/test_no_load_event.html create mode 100644 dom/media/test/test_not_reset_playbackRate_when_removing_nonloaded_media_from_document.html create mode 100644 dom/media/test/test_paused.html create mode 100644 dom/media/test/test_paused_after_ended.html create mode 100644 dom/media/test/test_periodic_timeupdate.html create mode 100644 dom/media/test/test_play_events.html create mode 100644 dom/media/test/test_play_events_2.html create mode 100644 dom/media/test/test_play_promise_1.html create mode 100644 dom/media/test/test_play_promise_10.html create mode 100644 dom/media/test/test_play_promise_11.html create mode 100644 dom/media/test/test_play_promise_12.html create mode 100644 dom/media/test/test_play_promise_13.html create mode 100644 dom/media/test/test_play_promise_14.html create mode 100644 dom/media/test/test_play_promise_15.html create mode 100644 dom/media/test/test_play_promise_16.html create mode 100644 dom/media/test/test_play_promise_17.html create mode 100644 dom/media/test/test_play_promise_18.html create mode 100644 dom/media/test/test_play_promise_2.html create mode 100644 dom/media/test/test_play_promise_3.html create mode 100644 dom/media/test/test_play_promise_4.html create mode 100644 dom/media/test/test_play_promise_5.html create mode 100644 dom/media/test/test_play_promise_6.html create mode 100644 dom/media/test/test_play_promise_7.html create mode 100644 dom/media/test/test_play_promise_8.html create mode 100644 dom/media/test/test_play_promise_9.html create mode 100644 dom/media/test/test_play_twice.html create mode 100644 dom/media/test/test_playback.html create mode 100644 dom/media/test/test_playback_and_bfcache.html create mode 100644 dom/media/test/test_playback_errors.html create mode 100644 dom/media/test/test_playback_hls.html create mode 100644 dom/media/test/test_playback_rate.html create mode 100644 dom/media/test/test_playback_rate_playpause.html create mode 100644 dom/media/test/test_playback_reactivate.html create mode 100644 dom/media/test/test_played.html create mode 100644 dom/media/test/test_preload_actions.html create mode 100644 dom/media/test/test_preload_attribute.html create mode 100644 dom/media/test/test_preload_suspend.html create mode 100644 dom/media/test/test_preserve_playbackrate_after_ui_play.html create mode 100644 dom/media/test/test_progress.html create mode 100644 dom/media/test/test_reactivate.html create mode 100644 dom/media/test/test_readyState.html create mode 100644 dom/media/test/test_referer.html create mode 100644 dom/media/test/test_replay_metadata.html create mode 100644 dom/media/test/test_reset_events_async.html create mode 100644 dom/media/test/test_reset_src.html create mode 100644 dom/media/test/test_resolution_change.html create mode 100644 dom/media/test/test_resume.html create mode 100644 dom/media/test/test_seamless_looping.html create mode 100644 dom/media/test/test_seamless_looping_cancel_looping_future_frames.html create mode 100644 dom/media/test/test_seamless_looping_duration.html create mode 100644 dom/media/test/test_seamless_looping_media_element_state.html create mode 100644 dom/media/test/test_seamless_looping_not_keep_painting_old_video_frames.html create mode 100644 dom/media/test/test_seamless_looping_resume_video_decoding.html create mode 100644 dom/media/test/test_seamless_looping_seek_current_time.html create mode 100644 dom/media/test/test_seamless_looping_shorter_audio_than_video.html create mode 100644 dom/media/test/test_seamless_looping_video.html create mode 100644 dom/media/test/test_seek-1.html create mode 100644 dom/media/test/test_seek-10.html create mode 100644 dom/media/test/test_seek-11.html create mode 100644 dom/media/test/test_seek-12.html create mode 100644 dom/media/test/test_seek-13.html create mode 100644 dom/media/test/test_seek-14.html create mode 100644 dom/media/test/test_seek-2.html create mode 100644 dom/media/test/test_seek-3.html create mode 100644 dom/media/test/test_seek-4.html create mode 100644 dom/media/test/test_seek-5.html create mode 100644 dom/media/test/test_seek-6.html create mode 100644 dom/media/test/test_seek-7.html create mode 100644 dom/media/test/test_seek-8.html create mode 100644 dom/media/test/test_seek-9.html create mode 100644 dom/media/test/test_seekLies.html create mode 100644 dom/media/test/test_seekToNextFrame.html create mode 100644 dom/media/test/test_seek_duration.html create mode 100644 dom/media/test/test_seek_negative.html create mode 100644 dom/media/test/test_seek_nosrc.html create mode 100644 dom/media/test/test_seek_out_of_range.html create mode 100644 dom/media/test/test_seek_promise_bug1344357.html create mode 100644 dom/media/test/test_seekable1.html create mode 100644 dom/media/test/test_setSinkId_after_loop.html create mode 100644 dom/media/test/test_source.html create mode 100644 dom/media/test/test_source_null.html create mode 100644 dom/media/test/test_source_write.html create mode 100644 dom/media/test/test_standalone.html create mode 100644 dom/media/test/test_streams_capture_origin.html create mode 100644 dom/media/test/test_streams_element_capture.html create mode 100644 dom/media/test/test_streams_element_capture_mediatrack.html create mode 100644 dom/media/test/test_streams_element_capture_playback.html create mode 100644 dom/media/test/test_streams_element_capture_reset.html create mode 100644 dom/media/test/test_streams_element_capture_twice.html create mode 100644 dom/media/test/test_streams_firstframe.html create mode 100644 dom/media/test/test_streams_gc.html create mode 100644 dom/media/test/test_streams_individual_pause.html create mode 100644 dom/media/test/test_streams_srcObject.html create mode 100644 dom/media/test/test_streams_tracks.html create mode 100644 dom/media/test/test_suspend_media_by_inactive_docshell.html create mode 100644 dom/media/test/test_temporary_file_blob_video_plays.html create mode 100644 dom/media/test/test_timeupdate_small_files.html create mode 100644 dom/media/test/test_unseekable.html create mode 100644 dom/media/test/test_videoDocumentTitle.html create mode 100644 dom/media/test/test_videoPlaybackQuality_totalFrames.html create mode 100644 dom/media/test/test_video_dimensions.html create mode 100644 dom/media/test/test_video_gzip_encoding.html create mode 100644 dom/media/test/test_video_in_audio_element.html create mode 100644 dom/media/test/test_video_low_power_telemetry.html create mode 100644 dom/media/test/test_video_stats_resistfingerprinting.html create mode 100644 dom/media/test/test_video_to_canvas.html create mode 100644 dom/media/test/test_volume.html create mode 100644 dom/media/test/test_vp9_superframes.html create mode 100644 dom/media/test/test_wav_ended1.html create mode 100644 dom/media/test/test_wav_ended2.html create mode 100644 dom/media/test/tone2s-silence4s-tone2s.opus create mode 100644 dom/media/test/two-xing-header-no-content-length.mp3 create mode 100644 dom/media/test/two-xing-header-no-content-length.mp3^headers^ create mode 100644 dom/media/test/variable-channel.ogg create mode 100644 dom/media/test/variable-channel.ogg^headers^ create mode 100644 dom/media/test/variable-channel.opus create mode 100644 dom/media/test/variable-channel.opus^headers^ create mode 100644 dom/media/test/variable-preskip.opus create mode 100644 dom/media/test/variable-preskip.opus^headers^ create mode 100644 dom/media/test/variable-samplerate.ogg create mode 100644 dom/media/test/variable-samplerate.ogg^headers^ create mode 100644 dom/media/test/variable-samplerate.opus create mode 100644 dom/media/test/variable-samplerate.opus^headers^ create mode 100644 dom/media/test/vbr-head.mp3 create mode 100644 dom/media/test/vbr-head.mp3^headers^ create mode 100644 dom/media/test/vbr.mp3 create mode 100644 dom/media/test/vbr.mp3^headers^ create mode 100644 dom/media/test/very-short.mp3 create mode 100644 dom/media/test/video-overhang.ogg create mode 100644 dom/media/test/video-overhang.ogg^headers^ create mode 100644 dom/media/test/vp9-short.webm create mode 100644 dom/media/test/vp9-short.webm^headers^ create mode 100644 dom/media/test/vp9-superframes.webm create mode 100644 dom/media/test/vp9-superframes.webm^headers^ create mode 100644 dom/media/test/vp9.webm create mode 100644 dom/media/test/vp9.webm^headers^ create mode 100644 dom/media/test/vp9cake-short.webm create mode 100644 dom/media/test/vp9cake-short.webm^headers^ create mode 100644 dom/media/test/vp9cake.webm create mode 100644 dom/media/test/vp9cake.webm^headers^ create mode 100644 dom/media/test/wave_metadata.wav create mode 100644 dom/media/test/wave_metadata.wav^headers^ create mode 100644 dom/media/test/wave_metadata_bad_len.wav create mode 100644 dom/media/test/wave_metadata_bad_len.wav^headers^ create mode 100644 dom/media/test/wave_metadata_bad_no_null.wav create mode 100644 dom/media/test/wave_metadata_bad_no_null.wav^headers^ create mode 100644 dom/media/test/wave_metadata_bad_utf8.wav create mode 100644 dom/media/test/wave_metadata_bad_utf8.wav^headers^ create mode 100644 dom/media/test/wave_metadata_unknown_tag.wav create mode 100644 dom/media/test/wave_metadata_unknown_tag.wav^headers^ create mode 100644 dom/media/test/wave_metadata_utf8.wav create mode 100644 dom/media/test/wave_metadata_utf8.wav^headers^ create mode 100644 dom/media/test/wavedata_alaw.wav create mode 100644 dom/media/test/wavedata_alaw.wav^headers^ create mode 100644 dom/media/test/wavedata_float.wav create mode 100644 dom/media/test/wavedata_float.wav^headers^ create mode 100644 dom/media/test/wavedata_s16.wav create mode 100644 dom/media/test/wavedata_s16.wav^headers^ create mode 100644 dom/media/test/wavedata_s24.wav create mode 100644 dom/media/test/wavedata_s24.wav^headers^ create mode 100644 dom/media/test/wavedata_u8.wav create mode 100644 dom/media/test/wavedata_u8.wav^headers^ create mode 100644 dom/media/test/wavedata_ulaw.wav create mode 100644 dom/media/test/wavedata_ulaw.wav^headers^ create mode 100644 dom/media/test/white-3s-black-1s.webm create mode 100644 dom/media/test/white-3s-black-1s.webm^headers^ create mode 100644 dom/media/test/white-short.webm (limited to 'dom/media/test') diff --git a/dom/media/test/16bit_wave_extrametadata.wav b/dom/media/test/16bit_wave_extrametadata.wav new file mode 100644 index 0000000000..443ec73a3d Binary files /dev/null and b/dom/media/test/16bit_wave_extrametadata.wav differ diff --git a/dom/media/test/16bit_wave_extrametadata.wav^headers^ b/dom/media/test/16bit_wave_extrametadata.wav^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/16bit_wave_extrametadata.wav^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/320x240.ogv b/dom/media/test/320x240.ogv new file mode 100644 index 0000000000..093158432a Binary files /dev/null and b/dom/media/test/320x240.ogv differ diff --git a/dom/media/test/320x240.ogv^headers^ b/dom/media/test/320x240.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/320x240.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/448636.ogv b/dom/media/test/448636.ogv new file mode 100644 index 0000000000..628df924f8 Binary files /dev/null and b/dom/media/test/448636.ogv differ diff --git a/dom/media/test/448636.ogv^headers^ b/dom/media/test/448636.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/448636.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/A4.ogv b/dom/media/test/A4.ogv new file mode 100644 index 0000000000..de99616ece Binary files /dev/null and b/dom/media/test/A4.ogv differ diff --git a/dom/media/test/A4.ogv^headers^ b/dom/media/test/A4.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/A4.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/TestPatternHDR.mp4 b/dom/media/test/TestPatternHDR.mp4 new file mode 100644 index 0000000000..2aeb5d7f05 Binary files /dev/null and b/dom/media/test/TestPatternHDR.mp4 differ diff --git a/dom/media/test/VID_0001.ogg b/dom/media/test/VID_0001.ogg new file mode 100644 index 0000000000..0068b9af85 Binary files /dev/null and b/dom/media/test/VID_0001.ogg differ diff --git a/dom/media/test/VID_0001.ogg^headers^ b/dom/media/test/VID_0001.ogg^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/VID_0001.ogg^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/adts.aac b/dom/media/test/adts.aac new file mode 100644 index 0000000000..208515464a Binary files /dev/null and b/dom/media/test/adts.aac differ diff --git a/dom/media/test/adts.aac^headers^ b/dom/media/test/adts.aac^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/adts.aac^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/allowed.sjs b/dom/media/test/allowed.sjs new file mode 100644 index 0000000000..4460cd05af --- /dev/null +++ b/dom/media/test/allowed.sjs @@ -0,0 +1,61 @@ +function parseQuery(request, key) { + var params = request.queryString.split("&"); + for (var j = 0; j < params.length; ++j) { + var p = params[j]; + if (p == key) { + return true; + } + if (p.indexOf(key + "=") == 0) { + return p.substring(key.length + 1); + } + if (!p.includes("=") && key == "") { + return p; + } + } + return false; +} + +var types = { + js: "text/javascript", + m4s: "video/mp4", + mp4: "video/mp4", + ogg: "video/ogg", + ogv: "video/ogg", + oga: "audio/ogg", + webm: "video/webm", + wav: "audio/x-wav", +}; + +// Return file with name as per the query string with access control +// allow headers. +function handleRequest(request, response) { + var resource = parseQuery(request, ""); + + var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile); + var fis = Cc["@mozilla.org/network/file-input-stream;1"].createInstance( + Ci.nsIFileInputStream + ); + var bis = Cc["@mozilla.org/binaryinputstream;1"].createInstance( + Ci.nsIBinaryInputStream + ); + var paths = "tests/dom/media/test/" + resource; + var split = paths.split("/"); + for (var i = 0; i < split.length; ++i) { + file.append(split[i]); + } + fis.init(file, -1, -1, false); + dump("file=" + file + "\n"); + bis.setInputStream(fis); + var bytes = bis.readBytes(bis.available()); + response.setStatusLine(request.httpVersion, 206, "Partial Content"); + response.setHeader( + "Content-Range", + "bytes 0-" + (bytes.length - 1) + "/" + bytes.length + ); + response.setHeader("Content-Length", "" + bytes.length, false); + var ext = resource.substring(resource.lastIndexOf(".") + 1); + response.setHeader("Content-Type", types[ext], false); + response.setHeader("Access-Control-Allow-Origin", "*"); + response.write(bytes, bytes.length); + bis.close(); +} diff --git a/dom/media/test/ambisonics.mp4 b/dom/media/test/ambisonics.mp4 new file mode 100644 index 0000000000..4f5bcdfd26 Binary files /dev/null and b/dom/media/test/ambisonics.mp4 differ diff --git a/dom/media/test/ambisonics.mp4^headers^ b/dom/media/test/ambisonics.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/ambisonics.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/audio-gaps-short.ogg b/dom/media/test/audio-gaps-short.ogg new file mode 100644 index 0000000000..e01a24bfda Binary files /dev/null and b/dom/media/test/audio-gaps-short.ogg differ diff --git a/dom/media/test/audio-gaps-short.ogg^headers^ b/dom/media/test/audio-gaps-short.ogg^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/audio-gaps-short.ogg^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/audio-gaps.ogg b/dom/media/test/audio-gaps.ogg new file mode 100644 index 0000000000..ce96748ccd Binary files /dev/null and b/dom/media/test/audio-gaps.ogg differ diff --git a/dom/media/test/audio-gaps.ogg^headers^ b/dom/media/test/audio-gaps.ogg^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/audio-gaps.ogg^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/audio-overhang.ogg b/dom/media/test/audio-overhang.ogg new file mode 100644 index 0000000000..c07986e7a1 Binary files /dev/null and b/dom/media/test/audio-overhang.ogg differ diff --git a/dom/media/test/audio-overhang.ogg^headers^ b/dom/media/test/audio-overhang.ogg^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/audio-overhang.ogg^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/audio.wav b/dom/media/test/audio.wav new file mode 100644 index 0000000000..c6fd5cb869 Binary files /dev/null and b/dom/media/test/audio.wav differ diff --git a/dom/media/test/audio.wav^headers^ b/dom/media/test/audio.wav^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/audio.wav^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/av1.mp4 b/dom/media/test/av1.mp4 new file mode 100644 index 0000000000..28de929a29 Binary files /dev/null and b/dom/media/test/av1.mp4 differ diff --git a/dom/media/test/av1.mp4^headers^ b/dom/media/test/av1.mp4^headers^ new file mode 100644 index 0000000000..2567dc2fe5 --- /dev/null +++ b/dom/media/test/av1.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store \ No newline at end of file diff --git a/dom/media/test/background_video.js b/dom/media/test/background_video.js new file mode 100644 index 0000000000..508f8fd89a --- /dev/null +++ b/dom/media/test/background_video.js @@ -0,0 +1,224 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +// This file expects manager to be defined in the global scope. +/* global manager */ +/* import-globals-from manifest.js */ + +"use strict"; + +function startTest(test) { + info(test.desc); + SimpleTest.waitForExplicitFinish(); + SpecialPowers.pushPrefEnv({ set: test.prefs }, () => { + manager.runTests(test.tests, test.runTest); + }); +} + +function nextVideoEnded(video) { + return nextEvent(video, "ended"); +} + +function nextVideoPlaying(video) { + return nextEvent(video, "playing"); +} + +function nextVideoResumes(video) { + return nextEvent(video, "mozexitvideosuspend"); +} + +function nextVideoSuspends(video) { + return nextEvent(video, "mozentervideosuspend"); +} + +/** + * @param {string} url video src. + * @returns {HTMLMediaElement} The created video element. + */ +function appendVideoToDoc(url, token, width, height) { + // Default size of (160, 120) is used by other media tests. + if (width === undefined) { + width = 160; + } + if (height === undefined) { + height = (3 * width) / 4; + } + + let v = document.createElement("video"); + v.token = token; + v.width = width; + v.height = height; + v.src = url; + document.body.appendChild(v); + return v; +} + +function appendVideoToDocWithoutLoad(token, width, height) { + // Default size of (160, 120) is used by other media tests. + if (width === undefined) { + width = 160; + } + if (height === undefined) { + height = (3 * width) / 4; + } + + let v = document.createElement("video"); + v.token = token; + document.body.appendChild(v); + v.width = width; + v.height = height; + return v; +} + +function loadAndWaitUntilLoadedmetadata(video, url, preloadType = "metadata") { + return new Promise((resolve, reject) => { + video.preload = preloadType; + video.addEventListener( + "loadedmetadata", + () => { + resolve(); + }, + true + ); + video.src = url; + }); +} + +/** + * @param {HTMLMediaElement} video Video element with under test. + * @returns {Promise} Promise that is resolved when video 'visibilitychanged' event fires. + */ +function waitUntilVisible(video) { + let videoChrome = SpecialPowers.wrap(video); + if (videoChrome.isInViewPort) { + return Promise.resolve(); + } + + return new Promise(resolve => { + videoChrome.addEventListener("visibilitychanged", () => { + if (videoChrome.isInViewPort) { + ok(true, `${video.token} is visible.`); + videoChrome.removeEventListener("visibilitychanged", this); + resolve(); + } + }); + }); +} + +/** + * @param {HTMLMediaElement} video Video element under test. + * @returns {Promise} Promise that is resolved when video 'playing' event fires. + */ +function waitUntilPlaying(video) { + var p = once(video, "playing", () => { + ok(true, `${video.token} played.`); + }); + Log(video.token, "Start playing"); + video.play(); + return p; +} + +/** + * @param {HTMLMediaElement} video Video element under test. + * @returns {Promise} Promise which is resolved when video 'ended' event fires. + */ +function waitUntilEnded(video) { + Log(video.token, "Waiting for ended"); + if (video.ended) { + ok(true, video.token + " already ended"); + return Promise.resolve(); + } + + return once(video, "ended", () => { + ok(true, `${video.token} ended`); + }); +} + +/** + * @param {HTMLMediaElement} video Video element under test. + * @returns {Promise} Promise that is resolved when video decode starts + * suspend timer. + */ +function testSuspendTimerStartedWhenHidden(video) { + var p = once(video, "mozstartvideosuspendtimer").then(() => { + ok(true, `${video.token} suspend begins`); + }); + Log(video.token, "Set Hidden"); + video.setVisible(false); + return p; +} + +/** + * @param {HTMLMediaElement} video Video element under test. + * @returns {Promise} Promise that is resolved when video decode suspends. + */ +function testVideoSuspendsWhenHidden(video) { + let p = once(video, "mozentervideosuspend").then(() => { + ok(true, `${video.token} suspends`); + }); + Log(video.token, "Set hidden"); + video.setVisible(false); + return p; +} + +/** + * @param {HTMLMediaElement} video Video element under test. + * @returns {Promise} Promise that is resolved when video decode resumes. + */ +function testVideoResumesWhenShown(video) { + var p = once(video, "mozexitvideosuspend").then(() => { + ok(true, `${video.token} resumes`); + }); + Log(video.token, "Set visible"); + video.setVisible(true); + return p; +} + +/** + * @param {HTMLMediaElement} video Video element under test. + * @returns {Promise} Promise that is resolved when video decode resumes. + */ +function testVideoOnlySeekCompletedWhenShown(video) { + var p = once(video, "mozvideoonlyseekcompleted").then(() => { + ok(true, `${video.token} resumes`); + }); + Log(video.token, "Set visible"); + video.setVisible(true); + return p; +} + +/** + * @param {HTMLVideoElement} video Video element under test. + * @returns {Promise} Promise that is resolved if video ends and rejects if video suspends. + */ +function checkVideoDoesntSuspend(video) { + let p = Promise.race([ + waitUntilEnded(video).then(() => { + ok(true, `${video.token} ended before decode was suspended`); + }), + once(video, "mozentervideosuspend", () => { + Promise.reject(new Error(`${video.token} suspended`)); + }), + ]); + Log(video.token, "Set hidden."); + video.setVisible(false); + return p; +} + +/** + * @param {HTMLMediaElement} video Video element under test. + * @param {number} time video current time to wait til. + * @returns {Promise} Promise that is resolved once currentTime passes time. + */ +function waitTil(video, time) { + Log(video.token, `Waiting for time to reach ${time}s`); + return new Promise(resolve => { + video.addEventListener("timeupdate", function timeUpdateEvent() { + if (video.currentTime > time) { + video.removeEventListener(name, timeUpdateEvent); + resolve(); + } + }); + }); +} diff --git a/dom/media/test/badtags.ogg b/dom/media/test/badtags.ogg new file mode 100644 index 0000000000..12d8358730 Binary files /dev/null and b/dom/media/test/badtags.ogg differ diff --git a/dom/media/test/badtags.ogg^headers^ b/dom/media/test/badtags.ogg^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/badtags.ogg^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bear-640x360-a_frag-cenc-key_rotation.mp4 b/dom/media/test/bear-640x360-a_frag-cenc-key_rotation.mp4 new file mode 100644 index 0000000000..dc4f197ffa Binary files /dev/null and b/dom/media/test/bear-640x360-a_frag-cenc-key_rotation.mp4 differ diff --git a/dom/media/test/bear-640x360-v_frag-cenc-key_rotation.mp4 b/dom/media/test/bear-640x360-v_frag-cenc-key_rotation.mp4 new file mode 100644 index 0000000000..916c64e9ee Binary files /dev/null and b/dom/media/test/bear-640x360-v_frag-cenc-key_rotation.mp4 differ diff --git a/dom/media/test/beta-phrasebook.ogg b/dom/media/test/beta-phrasebook.ogg new file mode 100644 index 0000000000..7e6ef77ec4 Binary files /dev/null and b/dom/media/test/beta-phrasebook.ogg differ diff --git a/dom/media/test/beta-phrasebook.ogg^headers^ b/dom/media/test/beta-phrasebook.ogg^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/beta-phrasebook.ogg^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/big-buck-bunny-cenc-avc3-1.m4s b/dom/media/test/big-buck-bunny-cenc-avc3-1.m4s new file mode 100644 index 0000000000..266ec4c100 Binary files /dev/null and b/dom/media/test/big-buck-bunny-cenc-avc3-1.m4s differ diff --git a/dom/media/test/big-buck-bunny-cenc-avc3-1.m4s^headers^ b/dom/media/test/big-buck-bunny-cenc-avc3-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/big-buck-bunny-cenc-avc3-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/big-buck-bunny-cenc-avc3-init.mp4 b/dom/media/test/big-buck-bunny-cenc-avc3-init.mp4 new file mode 100644 index 0000000000..7aeb3eca8a Binary files /dev/null and b/dom/media/test/big-buck-bunny-cenc-avc3-init.mp4 differ diff --git a/dom/media/test/big-buck-bunny-cenc-avc3-init.mp4^headers^ b/dom/media/test/big-buck-bunny-cenc-avc3-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/big-buck-bunny-cenc-avc3-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/big-short.wav b/dom/media/test/big-short.wav new file mode 100644 index 0000000000..c850e5fd14 Binary files /dev/null and b/dom/media/test/big-short.wav differ diff --git a/dom/media/test/big-short.wav^headers^ b/dom/media/test/big-short.wav^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/big-short.wav^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/big.wav b/dom/media/test/big.wav new file mode 100644 index 0000000000..5f66bc1f02 Binary files /dev/null and b/dom/media/test/big.wav differ diff --git a/dom/media/test/big.wav^headers^ b/dom/media/test/big.wav^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/big.wav^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop-cenc-audio-key1.xml b/dom/media/test/bipbop-cenc-audio-key1.xml new file mode 100644 index 0000000000..a1672eecef --- /dev/null +++ b/dom/media/test/bipbop-cenc-audio-key1.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/dom/media/test/bipbop-cenc-audio-key2.xml b/dom/media/test/bipbop-cenc-audio-key2.xml new file mode 100644 index 0000000000..b706609052 --- /dev/null +++ b/dom/media/test/bipbop-cenc-audio-key2.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/dom/media/test/bipbop-cenc-audio1.m4s b/dom/media/test/bipbop-cenc-audio1.m4s new file mode 100644 index 0000000000..63cfd66f7e Binary files /dev/null and b/dom/media/test/bipbop-cenc-audio1.m4s differ diff --git a/dom/media/test/bipbop-cenc-audio1.m4s^headers^ b/dom/media/test/bipbop-cenc-audio1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop-cenc-audio1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop-cenc-audio2.m4s b/dom/media/test/bipbop-cenc-audio2.m4s new file mode 100644 index 0000000000..04a6cb6ff9 Binary files /dev/null and b/dom/media/test/bipbop-cenc-audio2.m4s differ diff --git a/dom/media/test/bipbop-cenc-audio2.m4s^headers^ b/dom/media/test/bipbop-cenc-audio2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop-cenc-audio2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop-cenc-audio3.m4s b/dom/media/test/bipbop-cenc-audio3.m4s new file mode 100644 index 0000000000..ad0cd72f90 Binary files /dev/null and b/dom/media/test/bipbop-cenc-audio3.m4s differ diff --git a/dom/media/test/bipbop-cenc-audio3.m4s^headers^ b/dom/media/test/bipbop-cenc-audio3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop-cenc-audio3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop-cenc-audioinit.mp4 b/dom/media/test/bipbop-cenc-audioinit.mp4 new file mode 100644 index 0000000000..b827aa49aa Binary files /dev/null and b/dom/media/test/bipbop-cenc-audioinit.mp4 differ diff --git a/dom/media/test/bipbop-cenc-audioinit.mp4^headers^ b/dom/media/test/bipbop-cenc-audioinit.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop-cenc-audioinit.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop-cenc-video-10s.mp4 b/dom/media/test/bipbop-cenc-video-10s.mp4 new file mode 100644 index 0000000000..abbe4561fd Binary files /dev/null and b/dom/media/test/bipbop-cenc-video-10s.mp4 differ diff --git a/dom/media/test/bipbop-cenc-video-10s.mp4^headers^ b/dom/media/test/bipbop-cenc-video-10s.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop-cenc-video-10s.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop-cenc-video-key1.xml b/dom/media/test/bipbop-cenc-video-key1.xml new file mode 100644 index 0000000000..f0d9878fa2 --- /dev/null +++ b/dom/media/test/bipbop-cenc-video-key1.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/dom/media/test/bipbop-cenc-video-key2.xml b/dom/media/test/bipbop-cenc-video-key2.xml new file mode 100644 index 0000000000..1f320e6336 --- /dev/null +++ b/dom/media/test/bipbop-cenc-video-key2.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/dom/media/test/bipbop-cenc-video1.m4s b/dom/media/test/bipbop-cenc-video1.m4s new file mode 100644 index 0000000000..755013c11c Binary files /dev/null and b/dom/media/test/bipbop-cenc-video1.m4s differ diff --git a/dom/media/test/bipbop-cenc-video1.m4s^headers^ b/dom/media/test/bipbop-cenc-video1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop-cenc-video1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop-cenc-video2.m4s b/dom/media/test/bipbop-cenc-video2.m4s new file mode 100644 index 0000000000..c884bd95fc Binary files /dev/null and b/dom/media/test/bipbop-cenc-video2.m4s differ diff --git a/dom/media/test/bipbop-cenc-video2.m4s^headers^ b/dom/media/test/bipbop-cenc-video2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop-cenc-video2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop-cenc-videoinit.mp4 b/dom/media/test/bipbop-cenc-videoinit.mp4 new file mode 100644 index 0000000000..aa87d0bbe6 Binary files /dev/null and b/dom/media/test/bipbop-cenc-videoinit.mp4 differ diff --git a/dom/media/test/bipbop-cenc-videoinit.mp4^headers^ b/dom/media/test/bipbop-cenc-videoinit.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop-cenc-videoinit.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop-cenc.sh b/dom/media/test/bipbop-cenc.sh new file mode 100644 index 0000000000..a00c38ae80 --- /dev/null +++ b/dom/media/test/bipbop-cenc.sh @@ -0,0 +1,29 @@ +mkdir work.tmp + +for r in 225w_175kbps 300_215kbps 300wp_227kbps 360w_253kbps 480_624kbps 480wp_663kbps 480_959kbps 480wp_1001kbps +do + for k in 1 2 + do + # Encrypt bipbop_.mp4 with the keys specified in this file, + # and output to |bipbop_-cenc-{video,audio}.mp4| + MP4Box -crypt bipbop-cenc-audio-key${k}.xml -rem 1 -out work.tmp/bipbop_${r}-cenc-audio-key${k}.mp4 bipbop_${r}.mp4 + MP4Box -crypt bipbop-cenc-video-key${k}.xml -rem 2 -out work.tmp/bipbop_${r}-cenc-video-key${k}.mp4 bipbop_${r}.mp4 + + # Fragment |bipbop_-cenc-*.mp4| into 500ms segments: + MP4Box -dash 500 -rap -segment-name work.tmp/bipbop_${r}-cenc-audio-key${k}- -subsegs-per-sidx 5 work.tmp/bipbop_${r}-cenc-audio-key${k}.mp4 + MP4Box -dash 500 -rap -segment-name work.tmp/bipbop_${r}-cenc-video-key${k}- -subsegs-per-sidx 5 work.tmp/bipbop_${r}-cenc-video-key${k}.mp4 + + # The above command will generate a set of fragments |bipbop_-cenc-{video,audio}-*.m4s + # and |bipbop_-cenc-{video,audio}-init.mp4| containing just the init segment. + + # Remove unneeded mpd files. + rm bipbop_${r}-cenc-{audio,video}-key${k}_dash.mpd + done +done + +# Only keep the first 4 audio & 2 video segments: +cp work.tmp/*-init[.]mp4 ./ +cp work.tmp/*audio*-[1234][.]m4s ./ +cp work.tmp/*video*-[12][.]m4s ./ + +rm -Rf work.tmp diff --git a/dom/media/test/bipbop-clearkey-keyrotation-clear-lead-audio.mp4 b/dom/media/test/bipbop-clearkey-keyrotation-clear-lead-audio.mp4 new file mode 100644 index 0000000000..5e5e30c255 Binary files /dev/null and b/dom/media/test/bipbop-clearkey-keyrotation-clear-lead-audio.mp4 differ diff --git a/dom/media/test/bipbop-clearkey-keyrotation-clear-lead-audio.mp4^headers^ b/dom/media/test/bipbop-clearkey-keyrotation-clear-lead-audio.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop-clearkey-keyrotation-clear-lead-audio.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop-clearkey-keyrotation-clear-lead-video.mp4 b/dom/media/test/bipbop-clearkey-keyrotation-clear-lead-video.mp4 new file mode 100644 index 0000000000..447c657475 Binary files /dev/null and b/dom/media/test/bipbop-clearkey-keyrotation-clear-lead-video.mp4 differ diff --git a/dom/media/test/bipbop-clearkey-keyrotation-clear-lead-video.mp4^headers^ b/dom/media/test/bipbop-clearkey-keyrotation-clear-lead-video.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop-clearkey-keyrotation-clear-lead-video.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop-frag-cenc.xml b/dom/media/test/bipbop-frag-cenc.xml new file mode 100644 index 0000000000..6f6a4d90a9 --- /dev/null +++ b/dom/media/test/bipbop-frag-cenc.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dom/media/test/bipbop-lateaudio.mp4 b/dom/media/test/bipbop-lateaudio.mp4 new file mode 100644 index 0000000000..5b4cc57095 Binary files /dev/null and b/dom/media/test/bipbop-lateaudio.mp4 differ diff --git a/dom/media/test/bipbop-lateaudio.mp4^headers^ b/dom/media/test/bipbop-lateaudio.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop-lateaudio.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop-no-edts.mp4 b/dom/media/test/bipbop-no-edts.mp4 new file mode 100644 index 0000000000..63435887df Binary files /dev/null and b/dom/media/test/bipbop-no-edts.mp4 differ diff --git a/dom/media/test/bipbop.mp4 b/dom/media/test/bipbop.mp4 new file mode 100644 index 0000000000..017d658f31 Binary files /dev/null and b/dom/media/test/bipbop.mp4 differ diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-1.m4s b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-1.m4s new file mode 100644 index 0000000000..e2bd754c7e Binary files /dev/null and b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-1.m4s differ diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-1.m4s^headers^ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-2.m4s b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-2.m4s new file mode 100644 index 0000000000..347835feee Binary files /dev/null and b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-2.m4s differ diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-2.m4s^headers^ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-3.m4s b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-3.m4s new file mode 100644 index 0000000000..64b0da69a0 Binary files /dev/null and b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-3.m4s differ diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-3.m4s^headers^ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-4.m4s b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-4.m4s new file mode 100644 index 0000000000..864f4248af Binary files /dev/null and b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-4.m4s differ diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-4.m4s^headers^ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-init.mp4 b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-init.mp4 new file mode 100644 index 0000000000..40c3a7bb98 Binary files /dev/null and b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-init.mp4^headers^ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-1.m4s b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-1.m4s new file mode 100644 index 0000000000..a8896e069a Binary files /dev/null and b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-1.m4s differ diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-1.m4s^headers^ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-2.m4s b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-2.m4s new file mode 100644 index 0000000000..0f0a35ce79 Binary files /dev/null and b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-2.m4s differ diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-2.m4s^headers^ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-3.m4s b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-3.m4s new file mode 100644 index 0000000000..fece52ff42 Binary files /dev/null and b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-3.m4s differ diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-3.m4s^headers^ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-4.m4s b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-4.m4s new file mode 100644 index 0000000000..70e61e3d5f Binary files /dev/null and b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-4.m4s differ diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-4.m4s^headers^ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-init.mp4 b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-init.mp4 new file mode 100644 index 0000000000..986e5fb186 Binary files /dev/null and b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-init.mp4^headers^ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_225w_175kbps-cenc-audio-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-video-key1-1.m4s b/dom/media/test/bipbop_225w_175kbps-cenc-video-key1-1.m4s new file mode 100644 index 0000000000..547950e516 Binary files /dev/null and b/dom/media/test/bipbop_225w_175kbps-cenc-video-key1-1.m4s differ diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-video-key1-1.m4s^headers^ b/dom/media/test/bipbop_225w_175kbps-cenc-video-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_225w_175kbps-cenc-video-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-video-key1-init.mp4 b/dom/media/test/bipbop_225w_175kbps-cenc-video-key1-init.mp4 new file mode 100644 index 0000000000..3214f131d4 Binary files /dev/null and b/dom/media/test/bipbop_225w_175kbps-cenc-video-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-video-key1-init.mp4^headers^ b/dom/media/test/bipbop_225w_175kbps-cenc-video-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_225w_175kbps-cenc-video-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-video-key2-1.m4s b/dom/media/test/bipbop_225w_175kbps-cenc-video-key2-1.m4s new file mode 100644 index 0000000000..08713078d9 Binary files /dev/null and b/dom/media/test/bipbop_225w_175kbps-cenc-video-key2-1.m4s differ diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-video-key2-1.m4s^headers^ b/dom/media/test/bipbop_225w_175kbps-cenc-video-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_225w_175kbps-cenc-video-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-video-key2-init.mp4 b/dom/media/test/bipbop_225w_175kbps-cenc-video-key2-init.mp4 new file mode 100644 index 0000000000..0b13fed5f0 Binary files /dev/null and b/dom/media/test/bipbop_225w_175kbps-cenc-video-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_225w_175kbps-cenc-video-key2-init.mp4^headers^ b/dom/media/test/bipbop_225w_175kbps-cenc-video-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_225w_175kbps-cenc-video-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_225w_175kbps.mp4 b/dom/media/test/bipbop_225w_175kbps.mp4 new file mode 100644 index 0000000000..abe37b9f9d Binary files /dev/null and b/dom/media/test/bipbop_225w_175kbps.mp4 differ diff --git a/dom/media/test/bipbop_225w_175kbps.mp4^headers^ b/dom/media/test/bipbop_225w_175kbps.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_225w_175kbps.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-1.m4s b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-1.m4s new file mode 100644 index 0000000000..e2bd754c7e Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-1.m4s differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-1.m4s^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-2.m4s b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-2.m4s new file mode 100644 index 0000000000..347835feee Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-2.m4s differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-2.m4s^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-3.m4s b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-3.m4s new file mode 100644 index 0000000000..64b0da69a0 Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-3.m4s differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-3.m4s^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-4.m4s b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-4.m4s new file mode 100644 index 0000000000..864f4248af Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-4.m4s differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-4.m4s^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-init.mp4 b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-init.mp4 new file mode 100644 index 0000000000..21f3863274 Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-init.mp4^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-1.m4s b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-1.m4s new file mode 100644 index 0000000000..a8896e069a Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-1.m4s differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-1.m4s^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-2.m4s b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-2.m4s new file mode 100644 index 0000000000..0f0a35ce79 Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-2.m4s differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-2.m4s^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-3.m4s b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-3.m4s new file mode 100644 index 0000000000..fece52ff42 Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-3.m4s differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-3.m4s^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-4.m4s b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-4.m4s new file mode 100644 index 0000000000..70e61e3d5f Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-4.m4s differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-4.m4s^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-init.mp4 b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-init.mp4 new file mode 100644 index 0000000000..bc741cdf86 Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-init.mp4^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-audio-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-video-key1-1.m4s b/dom/media/test/bipbop_300_215kbps-cenc-video-key1-1.m4s new file mode 100644 index 0000000000..9c6818d06f Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-video-key1-1.m4s differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-video-key1-1.m4s^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-video-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-video-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-video-key1-2.m4s b/dom/media/test/bipbop_300_215kbps-cenc-video-key1-2.m4s new file mode 100644 index 0000000000..f327aaa573 Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-video-key1-2.m4s differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-video-key1-2.m4s^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-video-key1-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-video-key1-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-video-key1-init.mp4 b/dom/media/test/bipbop_300_215kbps-cenc-video-key1-init.mp4 new file mode 100644 index 0000000000..543f18c24b Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-video-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-video-key1-init.mp4^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-video-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-video-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-video-key2-1.m4s b/dom/media/test/bipbop_300_215kbps-cenc-video-key2-1.m4s new file mode 100644 index 0000000000..f850ceaf0a Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-video-key2-1.m4s differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-video-key2-1.m4s^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-video-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-video-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-video-key2-2.m4s b/dom/media/test/bipbop_300_215kbps-cenc-video-key2-2.m4s new file mode 100644 index 0000000000..a28a106daf Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-video-key2-2.m4s differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-video-key2-2.m4s^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-video-key2-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-video-key2-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps-cenc-video-key2-init.mp4 b/dom/media/test/bipbop_300_215kbps-cenc-video-key2-init.mp4 new file mode 100644 index 0000000000..a05a879970 Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps-cenc-video-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_300_215kbps-cenc-video-key2-init.mp4^headers^ b/dom/media/test/bipbop_300_215kbps-cenc-video-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300_215kbps-cenc-video-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300_215kbps.mp4 b/dom/media/test/bipbop_300_215kbps.mp4 new file mode 100644 index 0000000000..084d477430 Binary files /dev/null and b/dom/media/test/bipbop_300_215kbps.mp4 differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-1.m4s b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-1.m4s new file mode 100644 index 0000000000..e2bd754c7e Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-1.m4s differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-1.m4s^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-2.m4s b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-2.m4s new file mode 100644 index 0000000000..347835feee Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-2.m4s differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-2.m4s^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-3.m4s b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-3.m4s new file mode 100644 index 0000000000..64b0da69a0 Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-3.m4s differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-3.m4s^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-4.m4s b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-4.m4s new file mode 100644 index 0000000000..864f4248af Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-4.m4s differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-4.m4s^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-init.mp4 b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-init.mp4 new file mode 100644 index 0000000000..40c3a7bb98 Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-init.mp4^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-1.m4s b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-1.m4s new file mode 100644 index 0000000000..a8896e069a Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-1.m4s differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-1.m4s^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-2.m4s b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-2.m4s new file mode 100644 index 0000000000..0f0a35ce79 Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-2.m4s differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-2.m4s^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-3.m4s b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-3.m4s new file mode 100644 index 0000000000..fece52ff42 Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-3.m4s differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-3.m4s^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-4.m4s b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-4.m4s new file mode 100644 index 0000000000..70e61e3d5f Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-4.m4s differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-4.m4s^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-init.mp4 b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-init.mp4 new file mode 100644 index 0000000000..986e5fb186 Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-init.mp4^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-audio-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-1.m4s b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-1.m4s new file mode 100644 index 0000000000..9c6818d06f Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-1.m4s differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-1.m4s^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-2.m4s b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-2.m4s new file mode 100644 index 0000000000..ce2e64eb33 Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-2.m4s differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-2.m4s^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-init.mp4 b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-init.mp4 new file mode 100644 index 0000000000..8592a5b0a3 Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-init.mp4^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-1.m4s b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-1.m4s new file mode 100644 index 0000000000..f850ceaf0a Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-1.m4s differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-1.m4s^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-2.m4s b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-2.m4s new file mode 100644 index 0000000000..d07ce9753e Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-2.m4s differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-2.m4s^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-init.mp4 b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-init.mp4 new file mode 100644 index 0000000000..9d2fa23dd4 Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-init.mp4^headers^ b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_300wp_227kbps-cenc-video-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_300wp_227kbps.mp4 b/dom/media/test/bipbop_300wp_227kbps.mp4 new file mode 100644 index 0000000000..1499355313 Binary files /dev/null and b/dom/media/test/bipbop_300wp_227kbps.mp4 differ diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-1.m4s b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-1.m4s new file mode 100644 index 0000000000..e2bd754c7e Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-1.m4s differ diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-1.m4s^headers^ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-2.m4s b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-2.m4s new file mode 100644 index 0000000000..347835feee Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-2.m4s differ diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-2.m4s^headers^ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-3.m4s b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-3.m4s new file mode 100644 index 0000000000..64b0da69a0 Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-3.m4s differ diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-3.m4s^headers^ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-4.m4s b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-4.m4s new file mode 100644 index 0000000000..864f4248af Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-4.m4s differ diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-4.m4s^headers^ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-init.mp4 b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-init.mp4 new file mode 100644 index 0000000000..40c3a7bb98 Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-init.mp4^headers^ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-1.m4s b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-1.m4s new file mode 100644 index 0000000000..a8896e069a Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-1.m4s differ diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-1.m4s^headers^ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-2.m4s b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-2.m4s new file mode 100644 index 0000000000..0f0a35ce79 Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-2.m4s differ diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-2.m4s^headers^ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-3.m4s b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-3.m4s new file mode 100644 index 0000000000..fece52ff42 Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-3.m4s differ diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-3.m4s^headers^ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-4.m4s b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-4.m4s new file mode 100644 index 0000000000..70e61e3d5f Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-4.m4s differ diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-4.m4s^headers^ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-init.mp4 b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-init.mp4 new file mode 100644 index 0000000000..986e5fb186 Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-init.mp4^headers^ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-cenc-audio-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-video-key1-1.m4s b/dom/media/test/bipbop_360w_253kbps-cenc-video-key1-1.m4s new file mode 100644 index 0000000000..a571d47cfb Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-cenc-video-key1-1.m4s differ diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-video-key1-1.m4s^headers^ b/dom/media/test/bipbop_360w_253kbps-cenc-video-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-cenc-video-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-video-key1-init.mp4 b/dom/media/test/bipbop_360w_253kbps-cenc-video-key1-init.mp4 new file mode 100644 index 0000000000..42dbfec1ed Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-cenc-video-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-video-key1-init.mp4^headers^ b/dom/media/test/bipbop_360w_253kbps-cenc-video-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-cenc-video-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-video-key2-1.m4s b/dom/media/test/bipbop_360w_253kbps-cenc-video-key2-1.m4s new file mode 100644 index 0000000000..9e4224cac8 Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-cenc-video-key2-1.m4s differ diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-video-key2-1.m4s^headers^ b/dom/media/test/bipbop_360w_253kbps-cenc-video-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-cenc-video-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-video-key2-init.mp4 b/dom/media/test/bipbop_360w_253kbps-cenc-video-key2-init.mp4 new file mode 100644 index 0000000000..21763ecbdd Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-cenc-video-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_360w_253kbps-cenc-video-key2-init.mp4^headers^ b/dom/media/test/bipbop_360w_253kbps-cenc-video-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-cenc-video-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-clearkey-audio.webm b/dom/media/test/bipbop_360w_253kbps-clearkey-audio.webm new file mode 100644 index 0000000000..4be8f340c3 Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-clearkey-audio.webm differ diff --git a/dom/media/test/bipbop_360w_253kbps-clearkey-audio.webm^headers^ b/dom/media/test/bipbop_360w_253kbps-clearkey-audio.webm^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-clearkey-audio.webm^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-clearkey-video-vp8.webm b/dom/media/test/bipbop_360w_253kbps-clearkey-video-vp8.webm new file mode 100644 index 0000000000..56cf4c483c Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-clearkey-video-vp8.webm differ diff --git a/dom/media/test/bipbop_360w_253kbps-clearkey-video-vp8.webm^headers^ b/dom/media/test/bipbop_360w_253kbps-clearkey-video-vp8.webm^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-clearkey-video-vp8.webm^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps-clearkey-video-vp9.webm b/dom/media/test/bipbop_360w_253kbps-clearkey-video-vp9.webm new file mode 100644 index 0000000000..9f411d0e34 Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps-clearkey-video-vp9.webm differ diff --git a/dom/media/test/bipbop_360w_253kbps-clearkey-video-vp9.webm^headers^ b/dom/media/test/bipbop_360w_253kbps-clearkey-video-vp9.webm^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_360w_253kbps-clearkey-video-vp9.webm^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_360w_253kbps.mp4 b/dom/media/test/bipbop_360w_253kbps.mp4 new file mode 100644 index 0000000000..6c796f4e1f Binary files /dev/null and b/dom/media/test/bipbop_360w_253kbps.mp4 differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-1.m4s b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-1.m4s new file mode 100644 index 0000000000..e2bd754c7e Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-1.m4s differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-1.m4s^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-2.m4s b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-2.m4s new file mode 100644 index 0000000000..347835feee Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-2.m4s differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-2.m4s^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-3.m4s b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-3.m4s new file mode 100644 index 0000000000..64b0da69a0 Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-3.m4s differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-3.m4s^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-4.m4s b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-4.m4s new file mode 100644 index 0000000000..864f4248af Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-4.m4s differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-4.m4s^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-init.mp4 b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-init.mp4 new file mode 100644 index 0000000000..e626fa4564 Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-init.mp4^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-1.m4s b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-1.m4s new file mode 100644 index 0000000000..a8896e069a Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-1.m4s differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-1.m4s^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-2.m4s b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-2.m4s new file mode 100644 index 0000000000..0f0a35ce79 Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-2.m4s differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-2.m4s^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-3.m4s b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-3.m4s new file mode 100644 index 0000000000..fece52ff42 Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-3.m4s differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-3.m4s^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-4.m4s b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-4.m4s new file mode 100644 index 0000000000..70e61e3d5f Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-4.m4s differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-4.m4s^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-init.mp4 b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-init.mp4 new file mode 100644 index 0000000000..d7cbb2b6b0 Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-init.mp4^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-audio-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps-cenc-video-key1-1.m4s b/dom/media/test/bipbop_480_624kbps-cenc-video-key1-1.m4s new file mode 100644 index 0000000000..805f4bbf3f Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-video-key1-1.m4s differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-video-key1-1.m4s^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-video-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-video-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps-cenc-video-key1-2.m4s b/dom/media/test/bipbop_480_624kbps-cenc-video-key1-2.m4s new file mode 100644 index 0000000000..5bf9994733 Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-video-key1-2.m4s differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-video-key1-2.m4s^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-video-key1-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-video-key1-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps-cenc-video-key1-init.mp4 b/dom/media/test/bipbop_480_624kbps-cenc-video-key1-init.mp4 new file mode 100644 index 0000000000..77c7daba5a Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-video-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-video-key1-init.mp4^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-video-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-video-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps-cenc-video-key2-1.m4s b/dom/media/test/bipbop_480_624kbps-cenc-video-key2-1.m4s new file mode 100644 index 0000000000..c5127beec9 Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-video-key2-1.m4s differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-video-key2-1.m4s^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-video-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-video-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps-cenc-video-key2-2.m4s b/dom/media/test/bipbop_480_624kbps-cenc-video-key2-2.m4s new file mode 100644 index 0000000000..b0ff51f74a Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-video-key2-2.m4s differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-video-key2-2.m4s^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-video-key2-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-video-key2-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps-cenc-video-key2-init.mp4 b/dom/media/test/bipbop_480_624kbps-cenc-video-key2-init.mp4 new file mode 100644 index 0000000000..cfa099c043 Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps-cenc-video-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_480_624kbps-cenc-video-key2-init.mp4^headers^ b/dom/media/test/bipbop_480_624kbps-cenc-video-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_624kbps-cenc-video-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_624kbps.mp4 b/dom/media/test/bipbop_480_624kbps.mp4 new file mode 100644 index 0000000000..27928b85f4 Binary files /dev/null and b/dom/media/test/bipbop_480_624kbps.mp4 differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-1.m4s b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-1.m4s new file mode 100644 index 0000000000..e2bd754c7e Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-1.m4s differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-1.m4s^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-2.m4s b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-2.m4s new file mode 100644 index 0000000000..347835feee Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-2.m4s differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-2.m4s^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-3.m4s b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-3.m4s new file mode 100644 index 0000000000..64b0da69a0 Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-3.m4s differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-3.m4s^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-4.m4s b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-4.m4s new file mode 100644 index 0000000000..864f4248af Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-4.m4s differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-4.m4s^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-init.mp4 b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-init.mp4 new file mode 100644 index 0000000000..c9106aad99 Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-init.mp4^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-1.m4s b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-1.m4s new file mode 100644 index 0000000000..a8896e069a Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-1.m4s differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-1.m4s^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-2.m4s b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-2.m4s new file mode 100644 index 0000000000..0f0a35ce79 Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-2.m4s differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-2.m4s^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-3.m4s b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-3.m4s new file mode 100644 index 0000000000..fece52ff42 Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-3.m4s differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-3.m4s^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-4.m4s b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-4.m4s new file mode 100644 index 0000000000..70e61e3d5f Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-4.m4s differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-4.m4s^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-init.mp4 b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-init.mp4 new file mode 100644 index 0000000000..888b20ab63 Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-init.mp4^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-audio-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps-cenc-video-key1-1.m4s b/dom/media/test/bipbop_480_959kbps-cenc-video-key1-1.m4s new file mode 100644 index 0000000000..796ad13670 Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-video-key1-1.m4s differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-video-key1-1.m4s^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-video-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-video-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps-cenc-video-key1-2.m4s b/dom/media/test/bipbop_480_959kbps-cenc-video-key1-2.m4s new file mode 100644 index 0000000000..d02be53198 Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-video-key1-2.m4s differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-video-key1-2.m4s^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-video-key1-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-video-key1-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps-cenc-video-key1-init.mp4 b/dom/media/test/bipbop_480_959kbps-cenc-video-key1-init.mp4 new file mode 100644 index 0000000000..6e0c60f986 Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-video-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-video-key1-init.mp4^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-video-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-video-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps-cenc-video-key2-1.m4s b/dom/media/test/bipbop_480_959kbps-cenc-video-key2-1.m4s new file mode 100644 index 0000000000..06778e6f2b Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-video-key2-1.m4s differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-video-key2-1.m4s^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-video-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-video-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps-cenc-video-key2-2.m4s b/dom/media/test/bipbop_480_959kbps-cenc-video-key2-2.m4s new file mode 100644 index 0000000000..4c1c603e8d Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-video-key2-2.m4s differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-video-key2-2.m4s^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-video-key2-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-video-key2-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps-cenc-video-key2-init.mp4 b/dom/media/test/bipbop_480_959kbps-cenc-video-key2-init.mp4 new file mode 100644 index 0000000000..f4a98eca97 Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps-cenc-video-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_480_959kbps-cenc-video-key2-init.mp4^headers^ b/dom/media/test/bipbop_480_959kbps-cenc-video-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480_959kbps-cenc-video-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480_959kbps.mp4 b/dom/media/test/bipbop_480_959kbps.mp4 new file mode 100644 index 0000000000..4a9f2ee823 Binary files /dev/null and b/dom/media/test/bipbop_480_959kbps.mp4 differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-1.m4s b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-1.m4s new file mode 100644 index 0000000000..e2bd754c7e Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-1.m4s differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-1.m4s^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-2.m4s b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-2.m4s new file mode 100644 index 0000000000..347835feee Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-2.m4s differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-2.m4s^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-3.m4s b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-3.m4s new file mode 100644 index 0000000000..64b0da69a0 Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-3.m4s differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-3.m4s^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-4.m4s b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-4.m4s new file mode 100644 index 0000000000..864f4248af Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-4.m4s differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-4.m4s^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-init.mp4 b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-init.mp4 new file mode 100644 index 0000000000..416bc7a7ca Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-init.mp4^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-1.m4s b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-1.m4s new file mode 100644 index 0000000000..a8896e069a Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-1.m4s differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-1.m4s^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-2.m4s b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-2.m4s new file mode 100644 index 0000000000..0f0a35ce79 Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-2.m4s differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-2.m4s^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-3.m4s b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-3.m4s new file mode 100644 index 0000000000..fece52ff42 Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-3.m4s differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-3.m4s^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-4.m4s b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-4.m4s new file mode 100644 index 0000000000..70e61e3d5f Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-4.m4s differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-4.m4s^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-init.mp4 b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-init.mp4 new file mode 100644 index 0000000000..73d542cfe0 Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-init.mp4^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-audio-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-1.m4s b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-1.m4s new file mode 100644 index 0000000000..796ad13670 Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-1.m4s differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-1.m4s^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-2.m4s b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-2.m4s new file mode 100644 index 0000000000..80824e9ffc Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-2.m4s differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-2.m4s^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-init.mp4 b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-init.mp4 new file mode 100644 index 0000000000..5db21d091b Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-init.mp4^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-1.m4s b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-1.m4s new file mode 100644 index 0000000000..06778e6f2b Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-1.m4s differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-1.m4s^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-2.m4s b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-2.m4s new file mode 100644 index 0000000000..38a081187a Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-2.m4s differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-2.m4s^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-init.mp4 b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-init.mp4 new file mode 100644 index 0000000000..bc8bddf505 Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-init.mp4^headers^ b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_1001kbps-cenc-video-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_1001kbps.mp4 b/dom/media/test/bipbop_480wp_1001kbps.mp4 new file mode 100644 index 0000000000..600376cf83 Binary files /dev/null and b/dom/media/test/bipbop_480wp_1001kbps.mp4 differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-1.m4s b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-1.m4s new file mode 100644 index 0000000000..e2bd754c7e Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-1.m4s differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-1.m4s^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-2.m4s b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-2.m4s new file mode 100644 index 0000000000..347835feee Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-2.m4s differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-2.m4s^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-3.m4s b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-3.m4s new file mode 100644 index 0000000000..64b0da69a0 Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-3.m4s differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-3.m4s^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-4.m4s b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-4.m4s new file mode 100644 index 0000000000..864f4248af Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-4.m4s differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-4.m4s^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-init.mp4 b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-init.mp4 new file mode 100644 index 0000000000..416bc7a7ca Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-init.mp4^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-1.m4s b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-1.m4s new file mode 100644 index 0000000000..a8896e069a Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-1.m4s differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-1.m4s^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-2.m4s b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-2.m4s new file mode 100644 index 0000000000..0f0a35ce79 Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-2.m4s differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-2.m4s^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-3.m4s b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-3.m4s new file mode 100644 index 0000000000..fece52ff42 Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-3.m4s differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-3.m4s^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-3.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-3.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-4.m4s b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-4.m4s new file mode 100644 index 0000000000..70e61e3d5f Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-4.m4s differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-4.m4s^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-4.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-4.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-init.mp4 b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-init.mp4 new file mode 100644 index 0000000000..73d542cfe0 Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-init.mp4^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-audio-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-1.m4s b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-1.m4s new file mode 100644 index 0000000000..805f4bbf3f Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-1.m4s differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-1.m4s^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-2.m4s b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-2.m4s new file mode 100644 index 0000000000..0a40d1cb73 Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-2.m4s differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-2.m4s^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-init.mp4 b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-init.mp4 new file mode 100644 index 0000000000..5db21d091b Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-init.mp4 differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-init.mp4^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key1-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-1.m4s b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-1.m4s new file mode 100644 index 0000000000..c5127beec9 Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-1.m4s differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-1.m4s^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-1.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-2.m4s b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-2.m4s new file mode 100644 index 0000000000..3f344022a4 Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-2.m4s differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-2.m4s^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-2.m4s^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-2.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-init.mp4 b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-init.mp4 new file mode 100644 index 0000000000..bc8bddf505 Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-init.mp4 differ diff --git a/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-init.mp4^headers^ b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-init.mp4^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bipbop_480wp_663kbps-cenc-video-key2-init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_480wp_663kbps.mp4 b/dom/media/test/bipbop_480wp_663kbps.mp4 new file mode 100644 index 0000000000..3cc1da69d2 Binary files /dev/null and b/dom/media/test/bipbop_480wp_663kbps.mp4 differ diff --git a/dom/media/test/bipbop_audio_aac_22.05k.mp4 b/dom/media/test/bipbop_audio_aac_22.05k.mp4 new file mode 100644 index 0000000000..e89ba40a10 Binary files /dev/null and b/dom/media/test/bipbop_audio_aac_22.05k.mp4 differ diff --git a/dom/media/test/bipbop_audio_aac_22.05k.mp4^headers^ b/dom/media/test/bipbop_audio_aac_22.05k.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_audio_aac_22.05k.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_audio_aac_44.1k.mp4 b/dom/media/test/bipbop_audio_aac_44.1k.mp4 new file mode 100644 index 0000000000..9a13333c12 Binary files /dev/null and b/dom/media/test/bipbop_audio_aac_44.1k.mp4 differ diff --git a/dom/media/test/bipbop_audio_aac_44.1k.mp4^headers^ b/dom/media/test/bipbop_audio_aac_44.1k.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_audio_aac_44.1k.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_audio_aac_48k.mp4 b/dom/media/test/bipbop_audio_aac_48k.mp4 new file mode 100644 index 0000000000..0224350449 Binary files /dev/null and b/dom/media/test/bipbop_audio_aac_48k.mp4 differ diff --git a/dom/media/test/bipbop_audio_aac_48k.mp4^headers^ b/dom/media/test/bipbop_audio_aac_48k.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_audio_aac_48k.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_audio_aac_88.2k.mp4 b/dom/media/test/bipbop_audio_aac_88.2k.mp4 new file mode 100644 index 0000000000..a653be973f Binary files /dev/null and b/dom/media/test/bipbop_audio_aac_88.2k.mp4 differ diff --git a/dom/media/test/bipbop_audio_aac_88.2k.mp4^headers^ b/dom/media/test/bipbop_audio_aac_88.2k.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_audio_aac_88.2k.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_audio_aac_8k.mp4 b/dom/media/test/bipbop_audio_aac_8k.mp4 new file mode 100644 index 0000000000..fb704090d6 Binary files /dev/null and b/dom/media/test/bipbop_audio_aac_8k.mp4 differ diff --git a/dom/media/test/bipbop_audio_aac_8k.mp4^headers^ b/dom/media/test/bipbop_audio_aac_8k.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_audio_aac_8k.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_audio_aac_96k.mp4 b/dom/media/test/bipbop_audio_aac_96k.mp4 new file mode 100644 index 0000000000..30579f59a4 Binary files /dev/null and b/dom/media/test/bipbop_audio_aac_96k.mp4 differ diff --git a/dom/media/test/bipbop_audio_aac_96k.mp4^headers^ b/dom/media/test/bipbop_audio_aac_96k.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_audio_aac_96k.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_10_0_audio_1.m4s b/dom/media/test/bipbop_cbcs_10_0_audio_1.m4s new file mode 100644 index 0000000000..98ff850161 Binary files /dev/null and b/dom/media/test/bipbop_cbcs_10_0_audio_1.m4s differ diff --git a/dom/media/test/bipbop_cbcs_10_0_audio_1.m4s^headers^ b/dom/media/test/bipbop_cbcs_10_0_audio_1.m4s^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_10_0_audio_1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_10_0_audio_init.mp4 b/dom/media/test/bipbop_cbcs_10_0_audio_init.mp4 new file mode 100644 index 0000000000..ef462e0d66 Binary files /dev/null and b/dom/media/test/bipbop_cbcs_10_0_audio_init.mp4 differ diff --git a/dom/media/test/bipbop_cbcs_10_0_audio_init.mp4^headers^ b/dom/media/test/bipbop_cbcs_10_0_audio_init.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_10_0_audio_init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_10_0_video_1.m4s b/dom/media/test/bipbop_cbcs_10_0_video_1.m4s new file mode 100644 index 0000000000..73a90b9a5b Binary files /dev/null and b/dom/media/test/bipbop_cbcs_10_0_video_1.m4s differ diff --git a/dom/media/test/bipbop_cbcs_10_0_video_1.m4s^headers^ b/dom/media/test/bipbop_cbcs_10_0_video_1.m4s^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_10_0_video_1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_10_0_video_init.mp4 b/dom/media/test/bipbop_cbcs_10_0_video_init.mp4 new file mode 100644 index 0000000000..266e846e9b Binary files /dev/null and b/dom/media/test/bipbop_cbcs_10_0_video_init.mp4 differ diff --git a/dom/media/test/bipbop_cbcs_10_0_video_init.mp4^headers^ b/dom/media/test/bipbop_cbcs_10_0_video_init.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_10_0_video_init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_1_9_audio_1.m4s b/dom/media/test/bipbop_cbcs_1_9_audio_1.m4s new file mode 100644 index 0000000000..98ff850161 Binary files /dev/null and b/dom/media/test/bipbop_cbcs_1_9_audio_1.m4s differ diff --git a/dom/media/test/bipbop_cbcs_1_9_audio_1.m4s^headers^ b/dom/media/test/bipbop_cbcs_1_9_audio_1.m4s^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_1_9_audio_1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_1_9_audio_init.mp4 b/dom/media/test/bipbop_cbcs_1_9_audio_init.mp4 new file mode 100644 index 0000000000..8f5521eaa3 Binary files /dev/null and b/dom/media/test/bipbop_cbcs_1_9_audio_init.mp4 differ diff --git a/dom/media/test/bipbop_cbcs_1_9_audio_init.mp4^headers^ b/dom/media/test/bipbop_cbcs_1_9_audio_init.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_1_9_audio_init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_1_9_video_1.m4s b/dom/media/test/bipbop_cbcs_1_9_video_1.m4s new file mode 100644 index 0000000000..7606c23199 Binary files /dev/null and b/dom/media/test/bipbop_cbcs_1_9_video_1.m4s differ diff --git a/dom/media/test/bipbop_cbcs_1_9_video_1.m4s^headers^ b/dom/media/test/bipbop_cbcs_1_9_video_1.m4s^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_1_9_video_1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_1_9_video_init.mp4 b/dom/media/test/bipbop_cbcs_1_9_video_init.mp4 new file mode 100644 index 0000000000..f9f20f9aec Binary files /dev/null and b/dom/media/test/bipbop_cbcs_1_9_video_init.mp4 differ diff --git a/dom/media/test/bipbop_cbcs_1_9_video_init.mp4^headers^ b/dom/media/test/bipbop_cbcs_1_9_video_init.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_1_9_video_init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_5_5_audio_1.m4s b/dom/media/test/bipbop_cbcs_5_5_audio_1.m4s new file mode 100644 index 0000000000..98ff850161 Binary files /dev/null and b/dom/media/test/bipbop_cbcs_5_5_audio_1.m4s differ diff --git a/dom/media/test/bipbop_cbcs_5_5_audio_1.m4s^headers^ b/dom/media/test/bipbop_cbcs_5_5_audio_1.m4s^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_5_5_audio_1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_5_5_audio_init.mp4 b/dom/media/test/bipbop_cbcs_5_5_audio_init.mp4 new file mode 100644 index 0000000000..3118a175f1 Binary files /dev/null and b/dom/media/test/bipbop_cbcs_5_5_audio_init.mp4 differ diff --git a/dom/media/test/bipbop_cbcs_5_5_audio_init.mp4^headers^ b/dom/media/test/bipbop_cbcs_5_5_audio_init.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_5_5_audio_init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_5_5_video_1.m4s b/dom/media/test/bipbop_cbcs_5_5_video_1.m4s new file mode 100644 index 0000000000..8ed5b11aa0 Binary files /dev/null and b/dom/media/test/bipbop_cbcs_5_5_video_1.m4s differ diff --git a/dom/media/test/bipbop_cbcs_5_5_video_1.m4s^headers^ b/dom/media/test/bipbop_cbcs_5_5_video_1.m4s^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_5_5_video_1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_5_5_video_init.mp4 b/dom/media/test/bipbop_cbcs_5_5_video_init.mp4 new file mode 100644 index 0000000000..be9731c4c6 Binary files /dev/null and b/dom/media/test/bipbop_cbcs_5_5_video_init.mp4 differ diff --git a/dom/media/test/bipbop_cbcs_5_5_video_init.mp4^headers^ b/dom/media/test/bipbop_cbcs_5_5_video_init.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_5_5_video_init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_7_7_audio_1.m4s b/dom/media/test/bipbop_cbcs_7_7_audio_1.m4s new file mode 100644 index 0000000000..98ff850161 Binary files /dev/null and b/dom/media/test/bipbop_cbcs_7_7_audio_1.m4s differ diff --git a/dom/media/test/bipbop_cbcs_7_7_audio_1.m4s^headers^ b/dom/media/test/bipbop_cbcs_7_7_audio_1.m4s^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_7_7_audio_1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_7_7_audio_init.mp4 b/dom/media/test/bipbop_cbcs_7_7_audio_init.mp4 new file mode 100644 index 0000000000..3017ff231e Binary files /dev/null and b/dom/media/test/bipbop_cbcs_7_7_audio_init.mp4 differ diff --git a/dom/media/test/bipbop_cbcs_7_7_audio_init.mp4^headers^ b/dom/media/test/bipbop_cbcs_7_7_audio_init.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_7_7_audio_init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_7_7_video_1.m4s b/dom/media/test/bipbop_cbcs_7_7_video_1.m4s new file mode 100644 index 0000000000..c3d41c16c6 Binary files /dev/null and b/dom/media/test/bipbop_cbcs_7_7_video_1.m4s differ diff --git a/dom/media/test/bipbop_cbcs_7_7_video_1.m4s^headers^ b/dom/media/test/bipbop_cbcs_7_7_video_1.m4s^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_7_7_video_1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_7_7_video_init.mp4 b/dom/media/test/bipbop_cbcs_7_7_video_init.mp4 new file mode 100644 index 0000000000..994e319e57 Binary files /dev/null and b/dom/media/test/bipbop_cbcs_7_7_video_init.mp4 differ diff --git a/dom/media/test/bipbop_cbcs_7_7_video_init.mp4^headers^ b/dom/media/test/bipbop_cbcs_7_7_video_init.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_7_7_video_init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_9_8_audio_1.m4s b/dom/media/test/bipbop_cbcs_9_8_audio_1.m4s new file mode 100644 index 0000000000..98ff850161 Binary files /dev/null and b/dom/media/test/bipbop_cbcs_9_8_audio_1.m4s differ diff --git a/dom/media/test/bipbop_cbcs_9_8_audio_1.m4s^headers^ b/dom/media/test/bipbop_cbcs_9_8_audio_1.m4s^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_9_8_audio_1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_9_8_audio_init.mp4 b/dom/media/test/bipbop_cbcs_9_8_audio_init.mp4 new file mode 100644 index 0000000000..0f436af510 Binary files /dev/null and b/dom/media/test/bipbop_cbcs_9_8_audio_init.mp4 differ diff --git a/dom/media/test/bipbop_cbcs_9_8_audio_init.mp4^headers^ b/dom/media/test/bipbop_cbcs_9_8_audio_init.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_9_8_audio_init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_9_8_video_1.m4s b/dom/media/test/bipbop_cbcs_9_8_video_1.m4s new file mode 100644 index 0000000000..1bb3dd493c Binary files /dev/null and b/dom/media/test/bipbop_cbcs_9_8_video_1.m4s differ diff --git a/dom/media/test/bipbop_cbcs_9_8_video_1.m4s^headers^ b/dom/media/test/bipbop_cbcs_9_8_video_1.m4s^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_9_8_video_1.m4s^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_cbcs_9_8_video_init.mp4 b/dom/media/test/bipbop_cbcs_9_8_video_init.mp4 new file mode 100644 index 0000000000..df5f9a13b8 Binary files /dev/null and b/dom/media/test/bipbop_cbcs_9_8_video_init.mp4 differ diff --git a/dom/media/test/bipbop_cbcs_9_8_video_init.mp4^headers^ b/dom/media/test/bipbop_cbcs_9_8_video_init.mp4^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_cbcs_9_8_video_init.mp4^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_short_pixel_metadata_bigger_than_in_stream_vp8.webm b/dom/media/test/bipbop_short_pixel_metadata_bigger_than_in_stream_vp8.webm new file mode 100644 index 0000000000..7d0935aead Binary files /dev/null and b/dom/media/test/bipbop_short_pixel_metadata_bigger_than_in_stream_vp8.webm differ diff --git a/dom/media/test/bipbop_short_pixel_metadata_bigger_than_in_stream_vp8.webm^headers^ b/dom/media/test/bipbop_short_pixel_metadata_bigger_than_in_stream_vp8.webm^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_short_pixel_metadata_bigger_than_in_stream_vp8.webm^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_short_pixel_metadata_narrower_than_in_stream_vp8.webm b/dom/media/test/bipbop_short_pixel_metadata_narrower_than_in_stream_vp8.webm new file mode 100644 index 0000000000..39d20e1e87 Binary files /dev/null and b/dom/media/test/bipbop_short_pixel_metadata_narrower_than_in_stream_vp8.webm differ diff --git a/dom/media/test/bipbop_short_pixel_metadata_narrower_than_in_stream_vp8.webm^headers^ b/dom/media/test/bipbop_short_pixel_metadata_narrower_than_in_stream_vp8.webm^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_short_pixel_metadata_narrower_than_in_stream_vp8.webm^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_short_pixel_metadata_smaller_than_in_stream_vp8.webm b/dom/media/test/bipbop_short_pixel_metadata_smaller_than_in_stream_vp8.webm new file mode 100644 index 0000000000..4d6a68fbc6 Binary files /dev/null and b/dom/media/test/bipbop_short_pixel_metadata_smaller_than_in_stream_vp8.webm differ diff --git a/dom/media/test/bipbop_short_pixel_metadata_smaller_than_in_stream_vp8.webm^headers^ b/dom/media/test/bipbop_short_pixel_metadata_smaller_than_in_stream_vp8.webm^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_short_pixel_metadata_smaller_than_in_stream_vp8.webm^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bipbop_short_vp8.webm b/dom/media/test/bipbop_short_vp8.webm new file mode 100644 index 0000000000..7c47b3d7e8 Binary files /dev/null and b/dom/media/test/bipbop_short_vp8.webm differ diff --git a/dom/media/test/bipbop_short_vp8.webm^headers^ b/dom/media/test/bipbop_short_vp8.webm^headers^ new file mode 100644 index 0000000000..12a01c4a22 --- /dev/null +++ b/dom/media/test/bipbop_short_vp8.webm^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/black100x100-aspect3to2.ogv b/dom/media/test/black100x100-aspect3to2.ogv new file mode 100644 index 0000000000..81fe51ffb3 Binary files /dev/null and b/dom/media/test/black100x100-aspect3to2.ogv differ diff --git a/dom/media/test/black100x100-aspect3to2.ogv^headers^ b/dom/media/test/black100x100-aspect3to2.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/black100x100-aspect3to2.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bogus.duh b/dom/media/test/bogus.duh new file mode 100644 index 0000000000..528ae275d0 --- /dev/null +++ b/dom/media/test/bogus.duh @@ -0,0 +1,45 @@ +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus diff --git a/dom/media/test/bogus.ogv b/dom/media/test/bogus.ogv new file mode 100644 index 0000000000..528ae275d0 --- /dev/null +++ b/dom/media/test/bogus.ogv @@ -0,0 +1,45 @@ +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus diff --git a/dom/media/test/bogus.ogv^headers^ b/dom/media/test/bogus.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bogus.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bogus.wav b/dom/media/test/bogus.wav new file mode 100644 index 0000000000..528ae275d0 --- /dev/null +++ b/dom/media/test/bogus.wav @@ -0,0 +1,45 @@ +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus +bogus bogus bogus diff --git a/dom/media/test/bogus.wav^headers^ b/dom/media/test/bogus.wav^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bogus.wav^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/browser/browser.toml b/dom/media/test/browser/browser.toml new file mode 100644 index 0000000000..cf25369576 --- /dev/null +++ b/dom/media/test/browser/browser.toml @@ -0,0 +1,26 @@ +[DEFAULT] +subsuite = "media-bc" +prefs = ["gfx.font_loader.delay=0"] +support-files = [ + "file_empty_page.html", + "file_media.html", + "../av1.mp4", + "../bipbop_short_vp8.webm", + "../bunny_hd_5s.mp4", + "../eme_standalone.js", + "../gizmo.mp4", + "../gizmo.webm", + "../sintel-short-clearkey-subsample-encrypted-video.webm", + "../small-shot.flac", + "../small-shot.m4a", + "../small-shot.mp3", + "../small-shot.ogg", + "../TestPatternHDR.mp4", +] + +["browser_encrypted_play_time_telemetry.js"] +skip-if = ["apple_silicon"] # Disabled due to bleedover with other tests when run in regular suites; passes in "failures" jobs + +["browser_tab_visibility_and_play_time.js"] + +["browser_telemetry_video_hardware_decoding_support.js"] diff --git a/dom/media/test/browser/browser_encrypted_play_time_telemetry.js b/dom/media/test/browser/browser_encrypted_play_time_telemetry.js new file mode 100644 index 0000000000..ff4f2753ec --- /dev/null +++ b/dom/media/test/browser/browser_encrypted_play_time_telemetry.js @@ -0,0 +1,269 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this file, + * You can obtain one at http://mozilla.org/MPL/2.0/. */ + +// This test verifies that telemetry gathered around encrypted media playtime +// is gathered as expected. + +"use strict"; + +/* import-globals-from ../eme_standalone.js */ + +// Clears any existing telemetry data that has been accumulated. Returns a +// promise the will be resolved once the telemetry store is clear. +async function clearTelemetry() { + // There's an arbitrary interval of 2 seconds in which the content + // processes sync their event data with the parent process, we wait + // this out to ensure that we clear everything that is left over from + // previous tests and don't receive random events in the middle of our tests. + // eslint-disable-next-line mozilla/no-arbitrary-setTimeout + await new Promise(resolve => setTimeout(resolve, 2000)); + + Services.telemetry.clearEvents(); + return TestUtils.waitForCondition(() => { + let events = Services.telemetry.snapshotEvents( + Ci.nsITelemetry.DATASET_ALL_CHANNELS, + true + ).content; + return !events || !events.length; + }); +} + +// Opens a tab containing a blank page, returns a promise that will resolve +// to that tab. +async function openTab() { + const emptyPageUri = + "https://example.com/browser/dom/media/test/browser/file_empty_page.html"; + return BrowserTestUtils.openNewForegroundTab(window.gBrowser, emptyPageUri); +} + +// Creates and configures a video element for EME playback in `tab`. Does not +// start playback for the element. Returns a promise that will resolve once +// the element is setup and ready for playback. +async function loadEmeVideo(tab) { + const emeHelperUri = + gTestPath.substr(0, gTestPath.lastIndexOf("/")) + "/eme_standalone.js"; + return SpecialPowers.spawn( + tab.linkedBrowser, + [emeHelperUri], + async _emeHelperUri => { + // Begin helper functions. + async function once(target, name) { + return new Promise(r => + target.addEventListener(name, r, { once: true }) + ); + } + + // Helper to clone data into content so the EME helper can use the data. + function cloneIntoContent(data) { + return Cu.cloneInto(data, content.wrappedJSObject); + } + // End helper functions. + + // Load the EME helper into content. + Services.scriptloader.loadSubScript(_emeHelperUri, content); + // Setup EME with the helper. + let video = content.document.createElement("video"); + video.id = "media"; + content.document.body.appendChild(video); + let emeHelper = new content.wrappedJSObject.EmeHelper(); + emeHelper.SetKeySystem( + content.wrappedJSObject.EmeHelper.GetClearkeyKeySystemString() + ); + emeHelper.SetInitDataTypes(cloneIntoContent(["webm"])); + emeHelper.SetVideoCapabilities( + cloneIntoContent([{ contentType: 'video/webm; codecs="vp9"' }]) + ); + emeHelper.AddKeyIdAndKey( + "2cdb0ed6119853e7850671c3e9906c3c", + "808b9adac384de1e4f56140f4ad76194" + ); + emeHelper.onerror = error => { + is(false, `Got unexpected error from EME helper: ${error}`); + }; + await emeHelper.ConfigureEme(video); + // Done setting up EME. + + // Setup MSE. + const ms = new content.wrappedJSObject.MediaSource(); + video.src = content.wrappedJSObject.URL.createObjectURL(ms); + await once(ms, "sourceopen"); + const sb = ms.addSourceBuffer("video/webm"); + const videoFile = "sintel-short-clearkey-subsample-encrypted-video.webm"; + let fetchResponse = await content.fetch(videoFile); + sb.appendBuffer(await fetchResponse.arrayBuffer()); + await once(sb, "updateend"); + ms.endOfStream(); + await once(ms, "sourceended"); + } + ); +} + +// Plays the media in `tab` until the 'ended' event is fire. Returns a promise +// that resolves once that state has been reached. +async function playMediaThrough(tab) { + return SpecialPowers.spawn(tab.linkedBrowser, [], async () => { + let video = content.document.getElementById("media"); + await Promise.all([new Promise(r => (video.onended = r)), video.play()]); + }); +} + +// Plays the media in `tab` until the 'timeupdate' event is fire. Returns a +// promise that resolves once that state has been reached. +async function playMediaToTimeUpdate(tab) { + return SpecialPowers.spawn(tab.linkedBrowser, [], async () => { + let video = content.document.getElementById("media"); + await Promise.all([ + new Promise(r => (video.ontimeupdate = r)), + video.play(), + ]); + }); +} + +// Aborts existing loads and replaces the media on the media element with an +// unencrypted file. +async function replaceMediaWithUnencrypted(tab) { + return SpecialPowers.spawn(tab.linkedBrowser, [], async () => { + let video = content.document.getElementById("media"); + video.src = "gizmo.mp4"; + video.load(); + }); +} + +// Clears/nulls the media keys on the media in `tab`. +async function clearMediaKeys(tab) { + return SpecialPowers.spawn(tab.linkedBrowser, [], async () => { + let video = content.document.getElementById("media"); + await video.setMediaKeys(null); + }); +} + +// Wait for telemetry information to be received from the content process +// then get the relevant histograms for the tests and return the sums of +// those histograms. If a histogram does not exist this will return a 0 +// sum. Returns a promise the resolves to an object with sums for +// - VIDEO_PLAY_TIME_MS +// - VIDEO_ENCRYPTED_PLAY_TIME_MS +// - VIDEO_CLEARKEY_PLAY_TIME_MS +// This function clears the histograms as it gets them. +async function getTelemetrySums() { + // The telemetry was gathered in the content process, so we have to wait + // until is arrived in the parent to check it. At time of writing there's + // not a more elegant way of doing this than polling. + return TestUtils.waitForCondition(() => { + let histograms = Services.telemetry.getSnapshotForHistograms( + "main", + true + ).content; + // All the histogram data should come at the same time, so we just check + // for playtime here as we always expect it in these tests, but we'll + // grab other values if present. + if (histograms.VIDEO_PLAY_TIME_MS) { + // We only expect to have one value for each histogram, so returning the + // sums is a short hand for returning that one value. + return { + VIDEO_PLAY_TIME_MS: histograms.VIDEO_PLAY_TIME_MS.sum, + VIDEO_ENCRYPTED_PLAY_TIME_MS: histograms.VIDEO_ENCRYPTED_PLAY_TIME_MS + ? histograms.VIDEO_ENCRYPTED_PLAY_TIME_MS.sum + : 0, + VIDEO_CLEARKEY_PLAY_TIME_MS: histograms.VIDEO_CLEARKEY_PLAY_TIME_MS + ? histograms.VIDEO_CLEARKEY_PLAY_TIME_MS.sum + : 0, + }; + } + return null; + }, "recorded telemetry from playing media"); +} + +// Clear telemetry before other tests. Internally the tests clear the telemetry +// when they check it, so we shouldn't need to do this between tests. +add_task(clearTelemetry); + +add_task(async function testEncryptedMediaPlayback() { + let testTab = await openTab(); + + await loadEmeVideo(testTab); + await playMediaThrough(testTab); + + BrowserTestUtils.removeTab(testTab); + + let telemetrySums = await getTelemetrySums(); + + ok(telemetrySums, "Should get play time telemetry"); + is( + telemetrySums.VIDEO_PLAY_TIME_MS, + telemetrySums.VIDEO_ENCRYPTED_PLAY_TIME_MS, + "Play time should be the same as encrypted play time" + ); + is( + telemetrySums.VIDEO_PLAY_TIME_MS, + telemetrySums.VIDEO_CLEARKEY_PLAY_TIME_MS, + "Play time should be the same as clearkey play time" + ); + Assert.greater( + telemetrySums.VIDEO_PLAY_TIME_MS, + 0, + "Should have a play time greater than zero" + ); +}); + +add_task(async function testChangingFromEncryptedToUnencrypted() { + let testTab = await openTab(); + + await loadEmeVideo(testTab); + await replaceMediaWithUnencrypted(testTab); + await playMediaToTimeUpdate(testTab); + + BrowserTestUtils.removeTab(testTab); + + let telemetrySums = await getTelemetrySums(); + + ok(telemetrySums, "Should get play time telemetry"); + is( + telemetrySums.VIDEO_ENCRYPTED_PLAY_TIME_MS, + 0, + "Encrypted play time should be 0" + ); + is( + telemetrySums.VIDEO_PLAY_TIME_MS, + telemetrySums.VIDEO_CLEARKEY_PLAY_TIME_MS, + "Play time should be the same as clearkey play time because the media element still has a media keys attached" + ); + Assert.greater( + telemetrySums.VIDEO_PLAY_TIME_MS, + 0, + "Should have a play time greater than zero" + ); +}); + +add_task( + async function testChangingFromEncryptedToUnencryptedAndClearingMediaKeys() { + let testTab = await openTab(); + + await loadEmeVideo(testTab); + await replaceMediaWithUnencrypted(testTab); + await clearMediaKeys(testTab); + await playMediaToTimeUpdate(testTab); + + BrowserTestUtils.removeTab(testTab); + + let telemetrySums = await getTelemetrySums(); + + ok(telemetrySums, "Should get play time telemetry"); + is( + telemetrySums.VIDEO_ENCRYPTED_PLAY_TIME_MS, + 0, + "Encrypted play time should be 0" + ); + is( + telemetrySums.VIDEO_CLEARKEY_PLAY_TIME_MS, + 0, + "Clearkey play time should be 0" + ); + Assert.greater( + telemetrySums.VIDEO_PLAY_TIME_MS, + 0, + "Should have a play time greater than zero" + ); + } +); diff --git a/dom/media/test/browser/browser_partial.js b/dom/media/test/browser/browser_partial.js new file mode 100644 index 0000000000..572287b392 --- /dev/null +++ b/dom/media/test/browser/browser_partial.js @@ -0,0 +1,56 @@ +async function test() { + waitForExplicitFinish(); + const target = + "https://example.com/browser/dom/media/test/browser/file_empty_page.html"; + + info("Loading download page..."); + + let tab = BrowserTestUtils.addTab(gBrowser, target); + + registerCleanupFunction(function () { + gBrowser.removeTab(tab); + window.restore(); + }); + + gBrowser.selectedTab = tab; + BrowserTestUtils.browserLoaded(tab.linkedBrowser, false, target).then( + async () => { + info("Page loaded."); + let allDownloads = await Downloads.getList(Downloads.ALL); + let started = new Promise(resolve => { + // With no download modal, the download will begin on its own, so we need + // to wait to be notified by the downloads list when that happens. + let downloadView = { + onDownloadAdded(download) { + ok(true, "Download was started."); + download.cancel(); + allDownloads.removeView(this); + allDownloads.removeFinished(); + resolve(); + }, + }; + allDownloads.addView(downloadView); + }); + + let revoked = SpecialPowers.spawn( + tab.linkedBrowser, + [], + () => + new Promise(resolve => { + let link = content.document.createElement("a"); + link.href = "force_octet_stream.mp4"; + content.document.body.appendChild(link); + info("Clicking HTMLAnchorElement..."); + link.click(); + info("Clicked HTMLAnchorElement."); + resolve(); + }) + ); + + info("Waiting for async activities..."); + await Promise.all([revoked, started]); + ok(true, "Exiting test."); + finish(); + } + ); +} diff --git a/dom/media/test/browser/browser_tab_visibility_and_play_time.js b/dom/media/test/browser/browser_tab_visibility_and_play_time.js new file mode 100644 index 0000000000..4d33826091 --- /dev/null +++ b/dom/media/test/browser/browser_tab_visibility_and_play_time.js @@ -0,0 +1,218 @@ +/** + * This test is used to ensure that invisible play time would be accumulated + * when tab is in background. It also checks the HDR video accumulation time. + * However, this test won't directly check the reported telemetry result, + * because we can't check the snapshot histogram in the content process. + * The actual probe checking happens in `test_accumulated_play_time.html`. + */ +"use strict"; + +const PAGE_URL = + "https://example.com/browser/dom/media/test/browser/file_media.html"; + +// This HDR tests will only pass on platforms that accurately report color +// depth in their VideoInfo structures. Presently, that is only true for +// macOS. + +const reportsColorDepthFromVideoData = AppConstants.platform == "macosx"; + +add_task(async function testChangingTabVisibilityAffectsInvisiblePlayTime() { + const originalTab = gBrowser.selectedTab; + const mediaTab = await openMediaTab(PAGE_URL); + + info(`measuring play time when tab is in foreground`); + await startMedia({ + mediaTab, + shouldAccumulateTime: true, + shouldAccumulateInvisibleTime: false, + shouldAccumulateHDRTime: reportsColorDepthFromVideoData, + }); + await pauseMedia(mediaTab); + + info(`measuring play time when tab is in background`); + await BrowserTestUtils.switchTab(window.gBrowser, originalTab); + await startMedia({ + mediaTab, + shouldAccumulateTime: true, + shouldAccumulateInvisibleTime: true, + shouldAccumulateHDRTime: reportsColorDepthFromVideoData, + }); + await pauseMedia(mediaTab); + + BrowserTestUtils.removeTab(mediaTab); +}); + +/** + * Following are helper functions. + */ +async function openMediaTab(url) { + info(`open tab for media playback`); + const tab = await BrowserTestUtils.openNewForegroundTab(window.gBrowser, url); + info(`add content helper functions and variables`); + await SpecialPowers.spawn(tab.linkedBrowser, [], _ => { + content.waitForOnTimeUpdate = element => { + return new Promise(resolve => { + element.addEventListener( + "timeupdate", + e => { + resolve(); + }, + { once: true } + ); + }); + }; + + content.sleep = ms => { + return new Promise(resolve => content.setTimeout(resolve, ms)); + }; + + content.assertAttributeDefined = (videoChrome, checkType) => { + Assert.notEqual(videoChrome[checkType], undefined, `${checkType} exists`); + }; + content.assertValueEqualTo = (videoChrome, checkType, expectedValue) => { + content.assertAttributeDefined(videoChrome, checkType); + is( + videoChrome[checkType], + expectedValue, + `${checkType} equals to ${expectedValue}` + ); + }; + content.assertValueConstantlyIncreases = async (videoChrome, checkType) => { + content.assertAttributeDefined(videoChrome, checkType); + const valueSnapshot = videoChrome[checkType]; + await content.waitForOnTimeUpdate(videoChrome); + Assert.greater( + videoChrome[checkType], + valueSnapshot, + `${checkType} keeps increasing` + ); + }; + content.assertValueKeptUnchanged = async (videoChrome, checkType) => { + content.assertAttributeDefined(videoChrome, checkType); + const valueSnapshot = videoChrome[checkType]; + await content.sleep(1000); + Assert.equal( + videoChrome[checkType], + valueSnapshot, + `${checkType} keeps unchanged` + ); + }; + }); + return tab; +} + +function startMedia({ + mediaTab, + shouldAccumulateTime, + shouldAccumulateInvisibleTime, + shouldAccumulateHDRTime, +}) { + return SpecialPowers.spawn( + mediaTab.linkedBrowser, + [ + shouldAccumulateTime, + shouldAccumulateInvisibleTime, + shouldAccumulateHDRTime, + ], + async (accumulateTime, accumulateInvisibleTime, accumulateHDRTime) => { + const video = content.document.getElementById("video"); + ok( + await video.play().then( + () => true, + () => false + ), + "video started playing" + ); + const videoChrome = SpecialPowers.wrap(video); + if (accumulateTime) { + await content.assertValueConstantlyIncreases( + videoChrome, + "totalVideoPlayTime" + ); + } else { + await content.assertValueKeptUnchanged( + videoChrome, + "totalVideoPlayTime" + ); + } + if (accumulateInvisibleTime) { + await content.assertValueConstantlyIncreases( + videoChrome, + "invisiblePlayTime" + ); + } else { + await content.assertValueKeptUnchanged( + videoChrome, + "invisiblePlayTime" + ); + } + + const videoHDR = content.document.getElementById("videoHDR"); + + // HDR test video might not decode on all platforms, so catch + // the play() command and exit early in such a case. Failure to + // decode might manifest as a timeout, so add a rejection race + // to catch that. + let didDecode = true; + const playPromise = videoHDR.play().then( + () => true, + () => false + ); + /* eslint-disable mozilla/no-arbitrary-setTimeout */ + const tooSlowPromise = new Promise(resolve => + setTimeout(() => { + info("videoHDR timed out."); + didDecode = false; + resolve(false); + }, 1000) + ); + /* eslint-enable mozilla/no-arbitrary-setTimeout */ + + let didPlay = await Promise.race(playPromise, tooSlowPromise).catch( + err => { + info("videoHDR failed to decode with error: " + err.message); + didDecode = false; + return false; + } + ); + + if (!didDecode) { + return; + } + + ok(didPlay, "videoHDR started playing"); + const videoHDRChrome = SpecialPowers.wrap(videoHDR); + if (accumulateHDRTime) { + await content.assertValueConstantlyIncreases( + videoHDRChrome, + "totalVideoHDRPlayTime" + ); + } else { + await content.assertValueKeptUnchanged( + videoHDRChrome, + "totalVideoHDRPlayTime" + ); + } + } + ); +} + +function pauseMedia(tab) { + return SpecialPowers.spawn(tab.linkedBrowser, [], async _ => { + const video = content.document.getElementById("video"); + video.pause(); + ok(true, "video paused"); + const videoChrome = SpecialPowers.wrap(video); + await content.assertValueKeptUnchanged(videoChrome, "totalVideoPlayTime"); + await content.assertValueKeptUnchanged(videoChrome, "invisiblePlayTime"); + + const videoHDR = content.document.getElementById("videoHDR"); + videoHDR.pause(); + ok(true, "videoHDR paused"); + const videoHDRChrome = SpecialPowers.wrap(videoHDR); + await content.assertValueKeptUnchanged( + videoHDRChrome, + "totalVideoHDRPlayTime" + ); + }); +} diff --git a/dom/media/test/browser/browser_telemetry_video_hardware_decoding_support.js b/dom/media/test/browser/browser_telemetry_video_hardware_decoding_support.js new file mode 100644 index 0000000000..3b1b41c03f --- /dev/null +++ b/dom/media/test/browser/browser_telemetry_video_hardware_decoding_support.js @@ -0,0 +1,106 @@ +/** + * This test is used to ensure that the scalar which indicates whether hardware + * decoding is supported for a specific video codec type can be recorded + * correctly. + */ +"use strict"; + +add_task(async function setupTestingPref() { + await SpecialPowers.pushPrefEnv({ + set: [ + // In order to test av1 in the chrome process, see https://bit.ly/3oF0oan + ["media.rdd-process.enabled", false], + ], + }); +}); + +const ALL_SCALAR = "media.video_hardware_decoding_support"; +const HD_SCALAR = "media.video_hd_hardware_decoding_support"; + +add_task(async function testVideoCodecs() { + // There are still other video codecs, but we only care about these popular + // codec types. + const testFiles = [ + { fileName: "gizmo.mp4", type: "video/avc" }, + { fileName: "gizmo.webm", type: "video/vp9" }, + { fileName: "bipbop_short_vp8.webm", type: "video/vp8" }, + { fileName: "av1.mp4", type: "video/av1" }, + { fileName: "bunny_hd_5s.mp4", type: "video/avc", hd: true }, + ]; + + for (const file of testFiles) { + const { fileName, type, hd } = file; + let video = document.createElement("video"); + video.src = GetTestWebBasedURL(fileName); + await video.play(); + let snapshot = Services.telemetry.getSnapshotForKeyedScalars( + "main", + false + ).parent; + ok( + snapshot.hasOwnProperty(ALL_SCALAR), + `Found stored scalar '${ALL_SCALAR}'` + ); + ok( + snapshot[ALL_SCALAR].hasOwnProperty(type), + `Found key '${type}' in '${ALL_SCALAR}'` + ); + if (hd) { + ok( + snapshot.hasOwnProperty(HD_SCALAR), + `HD video '${fileName}' should record a scalar '${HD_SCALAR}'` + ); + ok( + snapshot[HD_SCALAR].hasOwnProperty(type), + `Found key '${type}' in '${HD_SCALAR}'` + ); + } else { + ok( + !snapshot.hasOwnProperty(HD_SCALAR), + `SD video won't store a scalar '${HD_SCALAR}'` + ); + } + video.src = ""; + Services.telemetry.clearScalars(); + } +}); + +add_task(async function testAudioCodecs() { + const testFiles = [ + "small-shot.ogg", + "small-shot.m4a", + "small-shot.mp3", + "small-shot.flac", + ]; + for (const file of testFiles) { + let audio = document.createElement("audio"); + info(GetTestWebBasedURL(file)); + audio.src = GetTestWebBasedURL(file); + await audio.play(); + let snapshot = Services.telemetry.getSnapshotForKeyedScalars( + "main", + false + ).parent; + ok( + !snapshot || + (!snapshot.hasOwnProperty(ALL_SCALAR) && + !snapshot.hasOwnProperty(HD_SCALAR)), + `Did not record scalar for ${file}` + ); + audio.src = ""; + } +}); + +/** + * Return a web-based URL for a given file based on the testing directory. + * @param {String} fileName + * file that caller wants its web-based url + */ +function GetTestWebBasedURL(fileName) { + return ( + getRootDirectory(gTestPath).replace( + "chrome://mochitests/content", + "http://example.org" + ) + fileName + ); +} diff --git a/dom/media/test/browser/file_empty_page.html b/dom/media/test/browser/file_empty_page.html new file mode 100644 index 0000000000..cd1b7830be --- /dev/null +++ b/dom/media/test/browser/file_empty_page.html @@ -0,0 +1,8 @@ + + + +An empty page + + + + diff --git a/dom/media/test/browser/file_media.html b/dom/media/test/browser/file_media.html new file mode 100644 index 0000000000..36dca8d01c --- /dev/null +++ b/dom/media/test/browser/file_media.html @@ -0,0 +1,10 @@ + + + +Non-Autoplay page + + + + + + diff --git a/dom/media/test/browser/wmfme/browser.toml b/dom/media/test/browser/wmfme/browser.toml new file mode 100644 index 0000000000..422ea29228 --- /dev/null +++ b/dom/media/test/browser/wmfme/browser.toml @@ -0,0 +1,13 @@ +[DEFAULT] +subsuite = "media-bc" +tags = "media-engine-compatible" +run-if = ["wmfme"] +support-files = [ + "head.js", + "file_video.html", + "../../gizmo.mp4", +] + +["browser_wmfme_crash.js"] + +["browser_wmfme_max_crashes.js"] diff --git a/dom/media/test/browser/wmfme/browser_wmfme_crash.js b/dom/media/test/browser/wmfme/browser_wmfme_crash.js new file mode 100644 index 0000000000..57064cfe8d --- /dev/null +++ b/dom/media/test/browser/wmfme/browser_wmfme_crash.js @@ -0,0 +1,52 @@ +"use strict"; + +/** + * This test aims to ensure that the media engine playback will recover from a + * crash and keep playing without any problem. + */ +add_task(async function setupTestingPref() { + await SpecialPowers.pushPrefEnv({ + set: [ + ["media.wmf.media-engine.enabled", 1], + ["media.wmf.media-engine.channel-decoder.enabled", true], + ], + }); +}); + +const VIDEO_PAGE = GetTestWebBasedURL("file_video.html"); + +add_task(async function testPlaybackRecoveryFromCrash() { + info(`Create a tab and load test page`); + let tab = await BrowserTestUtils.openNewForegroundTab( + window.gBrowser, + "about:blank" + ); + BrowserTestUtils.startLoadingURIString(tab.linkedBrowser, VIDEO_PAGE); + await BrowserTestUtils.browserLoaded(tab.linkedBrowser); + + await playVideo(tab); + + info("Ensure video is running via the media engine framework"); + await assertRunningProcessAndDecoderName(tab, { + expectedProcess: "Utility MF Media Engine CDM", + expectedDecoder: "media engine video stream", + }); + + const pidBeforeCrash = await getMFCDMProcessId(); + await crashUtilityProcess(pidBeforeCrash); + + info("The CDM process should be recreated which makes media keep playing"); + await assertRunningProcessAndDecoderName(tab, { + expectedProcess: "Utility MF Media Engine CDM", + expectedDecoder: "media engine video stream", + }); + + const pidAfterCrash = await getMFCDMProcessId(); + isnot( + pidBeforeCrash, + pidAfterCrash, + `new process ${pidAfterCrash} is not previous crashed one ${pidBeforeCrash}` + ); + + BrowserTestUtils.removeTab(tab); +}); diff --git a/dom/media/test/browser/wmfme/browser_wmfme_max_crashes.js b/dom/media/test/browser/wmfme/browser_wmfme_max_crashes.js new file mode 100644 index 0000000000..8cc8dc08b8 --- /dev/null +++ b/dom/media/test/browser/wmfme/browser_wmfme_max_crashes.js @@ -0,0 +1,69 @@ +"use strict"; + +/** + * This test aims to ensure that the MFCDM process won't be recovered once the + * amount of crashes has exceeded the amount of value which we tolerate. + */ +add_task(async function setupTestingPref() { + await SpecialPowers.pushPrefEnv({ + set: [ + ["media.wmf.media-engine.enabled", 1], + ["media.wmf.media-engine.channel-decoder.enabled", true], + ], + }); +}); + +const VIDEO_PAGE = GetTestWebBasedURL("file_video.html"); + +add_task(async function testPlaybackRecoveryFromCrash() { + const maxCrashes = Services.prefs.getIntPref( + "media.wmf.media-engine.max-crashes" + ); + info(`The amount of tolerable crashes=${maxCrashes}`); + + info(`Create a tab and load test page`); + let tab = await BrowserTestUtils.openNewForegroundTab( + window.gBrowser, + "about:blank" + ); + BrowserTestUtils.startLoadingURIString(tab.linkedBrowser, VIDEO_PAGE); + await BrowserTestUtils.browserLoaded(tab.linkedBrowser); + + await playVideo(tab); + + info("Ensure video is running via the media engine framework"); + await assertRunningProcessAndDecoderName(tab, { + expectedProcess: "Utility MF Media Engine CDM", + expectedDecoder: "media engine video stream", + }); + + let pidBeforeCrash, pidAfterCrash; + for (let idx = 0; idx < maxCrashes; idx++) { + pidBeforeCrash = await getMFCDMProcessId(); + await crashUtilityProcess(pidBeforeCrash); + + info("The CDM process should be recreated which makes media keep playing"); + await assertRunningProcessAndDecoderName(tab, { + expectedProcess: "Utility MF Media Engine CDM", + expectedDecoder: "media engine video stream", + }); + + pidAfterCrash = await getMFCDMProcessId(); + isnot( + pidBeforeCrash, + pidAfterCrash, + `new process ${pidAfterCrash} is not previous crashed one ${pidBeforeCrash}` + ); + } + + info("This crash should result in not spawning MFCDM process again"); + pidBeforeCrash = await getMFCDMProcessId(); + await crashUtilityProcess(pidBeforeCrash); + + await assertNotEqualRunningProcessAndDecoderName(tab, { + givenProcess: "Utility MF Media Engine CDM", + givenDecoder: "media engine video stream", + }); + + BrowserTestUtils.removeTab(tab); +}); diff --git a/dom/media/test/browser/wmfme/file_video.html b/dom/media/test/browser/wmfme/file_video.html new file mode 100644 index 0000000000..3c70268fbb --- /dev/null +++ b/dom/media/test/browser/wmfme/file_video.html @@ -0,0 +1,9 @@ + + + +video + + + + + diff --git a/dom/media/test/browser/wmfme/head.js b/dom/media/test/browser/wmfme/head.js new file mode 100644 index 0000000000..1e6f3b18bb --- /dev/null +++ b/dom/media/test/browser/wmfme/head.js @@ -0,0 +1,201 @@ +"use strict"; + +/** + * Return a web-based URL for a given file based on the testing directory. + * @param {String} fileName + * file that caller wants its web-based url + * @param {Boolean} cors [optional] + * if set, then return a url with different origin + */ +function GetTestWebBasedURL(fileName) { + const origin = "https://example.com"; + return ( + getRootDirectory(gTestPath).replace("chrome://mochitests/content", origin) + + fileName + ); +} + +/** + * Return current process Id for the Media Foundation CDM process. + */ +async function getMFCDMProcessId() { + const process = (await ChromeUtils.requestProcInfo()).children.find( + p => + p.type === "utility" && + p.utilityActors.find(a => a.actorName === "mfMediaEngineCDM") + ); + return process.pid; +} + +/** + * Make the utility process with given process id crash. + * @param {int} pid + * the process id for the process which is going to crash + */ +async function crashUtilityProcess(utilityPid) { + info(`Crashing process ${utilityPid}`); + SimpleTest.expectChildProcessCrash(); + + const crashMan = Services.crashmanager; + const utilityProcessGone = TestUtils.topicObserved( + "ipc:utility-shutdown", + (subject, data) => { + info(`ipc:utility-shutdown: data=${data} subject=${subject}`); + return parseInt(data, 10) === utilityPid; + } + ); + + info("Prune any previous crashes"); + const future = new Date(Date.now() + 1000 * 60 * 60 * 24); + await crashMan.pruneOldCrashes(future); + + info("Crash Utility Process"); + const ProcessTools = Cc["@mozilla.org/processtools-service;1"].getService( + Ci.nsIProcessToolsService + ); + + info(`Crash Utility Process ${utilityPid}`); + ProcessTools.crash(utilityPid); + + info(`Waiting for utility process ${utilityPid} to go away.`); + let [subject, data] = await utilityProcessGone; + Assert.strictEqual( + parseInt(data, 10), + utilityPid, + `Should match the crashed PID ${utilityPid} with ${data}` + ); + ok( + subject instanceof Ci.nsIPropertyBag2, + "Subject needs to be a nsIPropertyBag2 to clean up properly" + ); + + const dumpID = subject.getPropertyAsAString("dumpID"); + ok(dumpID, "There should be a dumpID"); + + await crashMan.ensureCrashIsPresent(dumpID); + await crashMan.getCrashes().then(crashes => { + is(crashes.length, 1, "There should be only one record"); + const crash = crashes[0]; + ok( + crash.isOfType( + crashMan.processTypes[Ci.nsIXULRuntime.PROCESS_TYPE_UTILITY], + crashMan.CRASH_TYPE_CRASH + ), + "Record should be a utility process crash" + ); + Assert.strictEqual(crash.id, dumpID, "Record should have an ID"); + }); + + let minidumpDirectory = Services.dirsvc.get("ProfD", Ci.nsIFile); + minidumpDirectory.append("minidumps"); + + let dumpfile = minidumpDirectory.clone(); + dumpfile.append(dumpID + ".dmp"); + if (dumpfile.exists()) { + info(`Removal of ${dumpfile.path}`); + dumpfile.remove(false); + } + + let extrafile = minidumpDirectory.clone(); + extrafile.append(dumpID + ".extra"); + info(`Removal of ${extrafile.path}`); + if (extrafile.exists()) { + extrafile.remove(false); + } +} + +/** + * Make video in the tab play. + * @param {object} tab + * the tab contains at least one video element + */ +async function playVideo(tab) { + return SpecialPowers.spawn(tab.linkedBrowser, [], async _ => { + const video = content.document.querySelector("video"); + ok( + await video.play().then( + () => true, + () => false + ), + "video started playing" + ); + }); +} + +/** + * Check whether the video playback is performed in the right process and right decoder. + * @param {object} tab + * the tab which has a playing video + * @param {string} expectedProcess + * the expected process name + * @param {string} expectedDecoder + * the expected decoder name + */ +async function assertRunningProcessAndDecoderName( + tab, + { expectedProcess, expectedDecoder } = {} +) { + return SpecialPowers.spawn( + tab.linkedBrowser, + [expectedProcess, expectedDecoder], + // eslint-disable-next-line no-shadow + async (expectedProcess, expectedDecoder) => { + const video = content.document.querySelector("video"); + ok(!video.paused, "checking a playing video"); + + const debugInfo = await SpecialPowers.wrap(video).mozRequestDebugInfo(); + const videoDecoderName = debugInfo.decoder.reader.videoDecoderName; + + const isExpectedDecoder = + videoDecoderName.indexOf(`${expectedDecoder}`) == 0; + ok( + isExpectedDecoder, + `Playback running by decoder '${videoDecoderName}', expected '${expectedDecoder}'` + ); + + const isExpectedProcess = + videoDecoderName.indexOf(`(${expectedProcess} remote)`) > 0; + ok( + isExpectedProcess, + `Playback running in process '${videoDecoderName}', expected '${expectedProcess}'` + ); + } + ); +} + +/** + * Check whether the video playback is not performed in the given process and given decoder. + * @param {object} tab + * the tab which has a playing video + * @param {string} givenProcess + * the process name on which the video playback should not be running + * @param {string} givenDecoder + * the decoder name with which the video playback should not be running + */ +async function assertNotEqualRunningProcessAndDecoderName( + tab, + { givenProcess, givenDecoder } = {} +) { + return SpecialPowers.spawn( + tab.linkedBrowser, + [givenProcess, givenDecoder], + // eslint-disable-next-line no-shadow + async (givenProcess, givenDecoder) => { + const video = content.document.querySelector("video"); + ok(!video.paused, "checking a playing video"); + + const debugInfo = await SpecialPowers.wrap(video).mozRequestDebugInfo(); + const videoDecoderName = debugInfo.decoder.reader.videoDecoderName; + const pattern = /(.+?)\s+\((\S+)\s+remote\)/; + const match = videoDecoderName.match(pattern); + if (match) { + const decoder = match[1]; + const process = match[2]; + isnot(decoder, givenDecoder, `Decoder name is not equal`); + isnot(process, givenProcess, `Process name is not equal`); + } else { + ok(false, "failed to match decoder/process name?"); + } + } + ); +} diff --git a/dom/media/test/bug1066943.webm b/dom/media/test/bug1066943.webm new file mode 100644 index 0000000000..64a24ec898 Binary files /dev/null and b/dom/media/test/bug1066943.webm differ diff --git a/dom/media/test/bug1066943.webm^headers^ b/dom/media/test/bug1066943.webm^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug1066943.webm^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug1301226-odd.wav b/dom/media/test/bug1301226-odd.wav new file mode 100644 index 0000000000..dd2df4e4dd Binary files /dev/null and b/dom/media/test/bug1301226-odd.wav differ diff --git a/dom/media/test/bug1301226-odd.wav^headers^ b/dom/media/test/bug1301226-odd.wav^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug1301226-odd.wav^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug1301226.wav b/dom/media/test/bug1301226.wav new file mode 100644 index 0000000000..0128486f07 Binary files /dev/null and b/dom/media/test/bug1301226.wav differ diff --git a/dom/media/test/bug1301226.wav^headers^ b/dom/media/test/bug1301226.wav^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug1301226.wav^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug1377278.webm b/dom/media/test/bug1377278.webm new file mode 100644 index 0000000000..802019f39f Binary files /dev/null and b/dom/media/test/bug1377278.webm differ diff --git a/dom/media/test/bug1377278.webm^headers^ b/dom/media/test/bug1377278.webm^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug1377278.webm^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug1535980.webm b/dom/media/test/bug1535980.webm new file mode 100644 index 0000000000..efc43959bf Binary files /dev/null and b/dom/media/test/bug1535980.webm differ diff --git a/dom/media/test/bug1535980.webm^headers^ b/dom/media/test/bug1535980.webm^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug1535980.webm^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug1799787.webm b/dom/media/test/bug1799787.webm new file mode 100644 index 0000000000..e6e613a59a Binary files /dev/null and b/dom/media/test/bug1799787.webm differ diff --git a/dom/media/test/bug1799787.webm^headers^ b/dom/media/test/bug1799787.webm^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug1799787.webm^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug461281.ogg b/dom/media/test/bug461281.ogg new file mode 100644 index 0000000000..d7f6a0ccf4 Binary files /dev/null and b/dom/media/test/bug461281.ogg differ diff --git a/dom/media/test/bug461281.ogg^headers^ b/dom/media/test/bug461281.ogg^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug461281.ogg^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug482461-theora.ogv b/dom/media/test/bug482461-theora.ogv new file mode 100644 index 0000000000..941b8d8efd Binary files /dev/null and b/dom/media/test/bug482461-theora.ogv differ diff --git a/dom/media/test/bug482461-theora.ogv^headers^ b/dom/media/test/bug482461-theora.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug482461-theora.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug482461.ogv b/dom/media/test/bug482461.ogv new file mode 100644 index 0000000000..6cf6aed330 Binary files /dev/null and b/dom/media/test/bug482461.ogv differ diff --git a/dom/media/test/bug482461.ogv^headers^ b/dom/media/test/bug482461.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug482461.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug495129.ogv b/dom/media/test/bug495129.ogv new file mode 100644 index 0000000000..44eb9296f5 Binary files /dev/null and b/dom/media/test/bug495129.ogv differ diff --git a/dom/media/test/bug495129.ogv^headers^ b/dom/media/test/bug495129.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug495129.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug495794.ogg b/dom/media/test/bug495794.ogg new file mode 100644 index 0000000000..1c19a64061 Binary files /dev/null and b/dom/media/test/bug495794.ogg differ diff --git a/dom/media/test/bug495794.ogg^headers^ b/dom/media/test/bug495794.ogg^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug495794.ogg^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug498380.ogv b/dom/media/test/bug498380.ogv new file mode 100644 index 0000000000..1179ecb70a Binary files /dev/null and b/dom/media/test/bug498380.ogv differ diff --git a/dom/media/test/bug498380.ogv^headers^ b/dom/media/test/bug498380.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug498380.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug498855-1.ogv b/dom/media/test/bug498855-1.ogv new file mode 100644 index 0000000000..95a524da4c Binary files /dev/null and b/dom/media/test/bug498855-1.ogv differ diff --git a/dom/media/test/bug498855-1.ogv^headers^ b/dom/media/test/bug498855-1.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug498855-1.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug498855-2.ogv b/dom/media/test/bug498855-2.ogv new file mode 100644 index 0000000000..795a308ae1 Binary files /dev/null and b/dom/media/test/bug498855-2.ogv differ diff --git a/dom/media/test/bug498855-2.ogv^headers^ b/dom/media/test/bug498855-2.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug498855-2.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug498855-3.ogv b/dom/media/test/bug498855-3.ogv new file mode 100644 index 0000000000..714858dfed Binary files /dev/null and b/dom/media/test/bug498855-3.ogv differ diff --git a/dom/media/test/bug498855-3.ogv^headers^ b/dom/media/test/bug498855-3.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug498855-3.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug499519.ogv b/dom/media/test/bug499519.ogv new file mode 100644 index 0000000000..62c0922d36 Binary files /dev/null and b/dom/media/test/bug499519.ogv differ diff --git a/dom/media/test/bug499519.ogv^headers^ b/dom/media/test/bug499519.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug499519.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug500311.ogv b/dom/media/test/bug500311.ogv new file mode 100644 index 0000000000..2cf27ef1ee Binary files /dev/null and b/dom/media/test/bug500311.ogv differ diff --git a/dom/media/test/bug500311.ogv^headers^ b/dom/media/test/bug500311.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug500311.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug501279.ogg b/dom/media/test/bug501279.ogg new file mode 100644 index 0000000000..e266f07ee8 Binary files /dev/null and b/dom/media/test/bug501279.ogg differ diff --git a/dom/media/test/bug501279.ogg^headers^ b/dom/media/test/bug501279.ogg^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug501279.ogg^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug504613.ogv b/dom/media/test/bug504613.ogv new file mode 100644 index 0000000000..5c7fd015e9 Binary files /dev/null and b/dom/media/test/bug504613.ogv differ diff --git a/dom/media/test/bug504613.ogv^headers^ b/dom/media/test/bug504613.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug504613.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug504644.ogv b/dom/media/test/bug504644.ogv new file mode 100644 index 0000000000..46fb4a876b Binary files /dev/null and b/dom/media/test/bug504644.ogv differ diff --git a/dom/media/test/bug504644.ogv^headers^ b/dom/media/test/bug504644.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug504644.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug504843.ogv b/dom/media/test/bug504843.ogv new file mode 100644 index 0000000000..94b4750865 Binary files /dev/null and b/dom/media/test/bug504843.ogv differ diff --git a/dom/media/test/bug504843.ogv^headers^ b/dom/media/test/bug504843.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug504843.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug506094.ogv b/dom/media/test/bug506094.ogv new file mode 100644 index 0000000000..142b7b9ad1 Binary files /dev/null and b/dom/media/test/bug506094.ogv differ diff --git a/dom/media/test/bug506094.ogv^headers^ b/dom/media/test/bug506094.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug506094.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug516323.indexed.ogv b/dom/media/test/bug516323.indexed.ogv new file mode 100644 index 0000000000..7bd76eeccc Binary files /dev/null and b/dom/media/test/bug516323.indexed.ogv differ diff --git a/dom/media/test/bug516323.indexed.ogv^headers^ b/dom/media/test/bug516323.indexed.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug516323.indexed.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug516323.ogv b/dom/media/test/bug516323.ogv new file mode 100644 index 0000000000..8f2f38b983 Binary files /dev/null and b/dom/media/test/bug516323.ogv differ diff --git a/dom/media/test/bug516323.ogv^headers^ b/dom/media/test/bug516323.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug516323.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug520493.ogg b/dom/media/test/bug520493.ogg new file mode 100644 index 0000000000..6eb23198f4 Binary files /dev/null and b/dom/media/test/bug520493.ogg differ diff --git a/dom/media/test/bug520493.ogg^headers^ b/dom/media/test/bug520493.ogg^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug520493.ogg^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug520500.ogg b/dom/media/test/bug520500.ogg new file mode 100644 index 0000000000..b91d3dd97d Binary files /dev/null and b/dom/media/test/bug520500.ogg differ diff --git a/dom/media/test/bug520500.ogg^headers^ b/dom/media/test/bug520500.ogg^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug520500.ogg^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug520908.ogv b/dom/media/test/bug520908.ogv new file mode 100644 index 0000000000..093158432a Binary files /dev/null and b/dom/media/test/bug520908.ogv differ diff --git a/dom/media/test/bug520908.ogv^headers^ b/dom/media/test/bug520908.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug520908.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug523816.ogv b/dom/media/test/bug523816.ogv new file mode 100644 index 0000000000..ca9a31b6da Binary files /dev/null and b/dom/media/test/bug523816.ogv differ diff --git a/dom/media/test/bug523816.ogv^headers^ b/dom/media/test/bug523816.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug523816.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug533822.ogg b/dom/media/test/bug533822.ogg new file mode 100644 index 0000000000..a8e506910e Binary files /dev/null and b/dom/media/test/bug533822.ogg differ diff --git a/dom/media/test/bug533822.ogg^headers^ b/dom/media/test/bug533822.ogg^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug533822.ogg^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug556821.ogv b/dom/media/test/bug556821.ogv new file mode 100644 index 0000000000..8d76fee45e Binary files /dev/null and b/dom/media/test/bug556821.ogv differ diff --git a/dom/media/test/bug556821.ogv^headers^ b/dom/media/test/bug556821.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug556821.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug557094.ogv b/dom/media/test/bug557094.ogv new file mode 100644 index 0000000000..b4fc0799a6 Binary files /dev/null and b/dom/media/test/bug557094.ogv differ diff --git a/dom/media/test/bug557094.ogv^headers^ b/dom/media/test/bug557094.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug557094.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bug604067.webm b/dom/media/test/bug604067.webm new file mode 100644 index 0000000000..86bdfdc91f Binary files /dev/null and b/dom/media/test/bug604067.webm differ diff --git a/dom/media/test/bug604067.webm^headers^ b/dom/media/test/bug604067.webm^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/bug604067.webm^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/bunny.webm b/dom/media/test/bunny.webm new file mode 100644 index 0000000000..823439d1c5 Binary files /dev/null and b/dom/media/test/bunny.webm differ diff --git a/dom/media/test/bunny_hd_5s.mp4 b/dom/media/test/bunny_hd_5s.mp4 new file mode 100644 index 0000000000..975a159574 Binary files /dev/null and b/dom/media/test/bunny_hd_5s.mp4 differ diff --git a/dom/media/test/can_play_type_dash.js b/dom/media/test/can_play_type_dash.js new file mode 100644 index 0000000000..b4760545db --- /dev/null +++ b/dom/media/test/can_play_type_dash.js @@ -0,0 +1,27 @@ +function check_dash(v, enabled) { + function check(type, expected) { + is(v.canPlayType(type), enabled ? expected : "", type); + } + + // DASH types + check("application/dash+xml", "probably"); + + // Supported Webm codecs + check("application/dash+xml; codecs=vorbis", "probably"); + check("application/dash+xml; codecs=vorbis", "probably"); + check("application/dash+xml; codecs=vorbis,vp8", "probably"); + check("application/dash+xml; codecs=vorbis,vp8.0", "probably"); + check('application/dash+xml; codecs="vorbis,vp8"', "probably"); + check('application/dash+xml; codecs="vorbis,vp8.0"', "probably"); + check('application/dash+xml; codecs="vp8, vorbis"', "probably"); + check('application/dash+xml; codecs="vp8.0, vorbis"', "probably"); + check("application/dash+xml; codecs=vp8", "probably"); + check("application/dash+xml; codecs=vp8.0", "probably"); + + // Unsupported codecs + check("application/dash+xml; codecs=xyz", ""); + check("application/dash+xml; codecs=xyz,vorbis", ""); + check("application/dash+xml; codecs=vorbis,xyz", ""); + check("application/dash+xml; codecs=xyz,vp8.0", ""); + check("application/dash+xml; codecs=vp8.0,xyz", ""); +} diff --git a/dom/media/test/can_play_type_ogg.js b/dom/media/test/can_play_type_ogg.js new file mode 100644 index 0000000000..79bf8a554c --- /dev/null +++ b/dom/media/test/can_play_type_ogg.js @@ -0,0 +1,72 @@ +function check_ogg(v, enabled, finish) { + function check(type, expected) { + is(v.canPlayType(type), enabled ? expected : "", type); + } + + function basic_test() { + return new Promise(function (resolve, reject) { + // Ogg types + check("video/ogg", "maybe"); + check("audio/ogg", "maybe"); + check("application/ogg", "maybe"); + + // Supported Ogg codecs + check("audio/ogg; codecs=vorbis", "probably"); + check("video/ogg; codecs=vorbis", "probably"); + check("video/ogg; codecs=vorbis,theora", "probably"); + check('video/ogg; codecs="vorbis, theora"', "probably"); + check("video/ogg; codecs=theora", "probably"); + + resolve(); + }); + } + + // Verify Opus support + function verify_opus_support() { + return new Promise(function (resolve, reject) { + var OpusEnabled = SpecialPowers.getBoolPref( + "media.opus.enabled", + undefined + ); + if (OpusEnabled != undefined) { + resolve(); + } else { + console.log( + "media.opus.enabled pref not found; skipping Opus validation" + ); + reject(); + } + }); + } + + function opus_enable() { + return SpecialPowers.pushPrefEnv({ + set: [["media.opus.enabled", true]], + }).then(function () { + check("audio/ogg; codecs=opus", "probably"); + }); + } + + function opus_disable() { + return SpecialPowers.pushPrefEnv({ + set: [["media.opus.enabled", false]], + }).then(function () { + check("audio/ogg; codecs=opus", ""); + }); + } + + function unspported_ogg() { + // Unsupported Ogg codecs + check("video/ogg; codecs=xyz", ""); + check("video/ogg; codecs=xyz,vorbis", ""); + check("video/ogg; codecs=vorbis,xyz", ""); + + finish.call(); + } + + basic_test() + .then(verify_opus_support) + .then(opus_enable) + .then(opus_disable) + .then(unspported_ogg, unspported_ogg); +} diff --git a/dom/media/test/can_play_type_wave.js b/dom/media/test/can_play_type_wave.js new file mode 100644 index 0000000000..a5e087aa40 --- /dev/null +++ b/dom/media/test/can_play_type_wave.js @@ -0,0 +1,30 @@ +function check_wave(v, enabled) { + function check(type, expected) { + is(v.canPlayType(type), enabled ? expected : "", type); + } + + // Wave types + check("audio/wave", "maybe"); + check("audio/wav", "maybe"); + check("audio/x-wav", "maybe"); + check("audio/x-pn-wav", "maybe"); + + // Supported Wave codecs + check("audio/wave; codecs=1", "probably"); + check("audio/wave; codecs=3", "probably"); + check("audio/wave; codecs=6", "probably"); + check("audio/wave; codecs=7", "probably"); + // "no codecs" should be supported, I guess + check("audio/wave; codecs=", "maybe"); + check('audio/wave; codecs=""', "maybe"); + + // Unsupported Wave codecs + check("audio/wave; codecs=0", ""); + check("audio/wave; codecs=2", ""); + check("audio/wave; codecs=xyz,1", ""); + check("audio/wave; codecs=1,xyz", ""); + check('audio/wave; codecs="xyz, 1"', ""); + // empty codec names + check("audio/wave; codecs=,", ""); + check('audio/wave; codecs="0, 1,"', ""); +} diff --git a/dom/media/test/can_play_type_webm.js b/dom/media/test/can_play_type_webm.js new file mode 100644 index 0000000000..315a8ef3d9 --- /dev/null +++ b/dom/media/test/can_play_type_webm.js @@ -0,0 +1,39 @@ +async function check_webm(v, enabled) { + function check(type, expected) { + is( + v.canPlayType(type), + enabled ? expected : "", + type + "='" + expected + "'" + ); + } + + // WebM types + check("video/webm", "maybe"); + check("audio/webm", "maybe"); + + var video = ["vp8", "vp8.0", "vp9", "vp9.0"]; + var audio = ["vorbis", "opus"]; + + audio.forEach(function (acodec) { + check("audio/webm; codecs=" + acodec, "probably"); + check("video/webm; codecs=" + acodec, "probably"); + }); + video.forEach(function (vcodec) { + check("video/webm; codecs=" + vcodec, "probably"); + audio.forEach(function (acodec) { + check('video/webm; codecs="' + vcodec + ", " + acodec + '"', "probably"); + check('video/webm; codecs="' + acodec + ", " + vcodec + '"', "probably"); + }); + }); + + // Unsupported WebM codecs + check("video/webm; codecs=xyz", ""); + check("video/webm; codecs=xyz,vorbis", ""); + check("video/webm; codecs=vorbis,xyz", ""); + + await SpecialPowers.pushPrefEnv({ set: [["media.av1.enabled", true]] }); + check('video/webm; codecs="av1"', "probably"); + + await SpecialPowers.pushPrefEnv({ set: [["media.av1.enabled", false]] }); + check('video/webm; codecs="av1"', ""); +} diff --git a/dom/media/test/cancellable_request.sjs b/dom/media/test/cancellable_request.sjs new file mode 100644 index 0000000000..ffeb0c7818 --- /dev/null +++ b/dom/media/test/cancellable_request.sjs @@ -0,0 +1,162 @@ +function parseQuery(request, key) { + var params = request.queryString.split("&"); + for (var j = 0; j < params.length; ++j) { + var p = params[j]; + if (p == key) { + return true; + } + if (p.indexOf(key + "=") == 0) { + return p.substring(key.length + 1); + } + if (!p.includes("=") && key == "") { + return p; + } + } + return false; +} + +function push32BE(array, input) { + array.push(String.fromCharCode((input >> 24) & 0xff)); + array.push(String.fromCharCode((input >> 16) & 0xff)); + array.push(String.fromCharCode((input >> 8) & 0xff)); + array.push(String.fromCharCode(input & 0xff)); +} + +function push32LE(array, input) { + array.push(String.fromCharCode(input & 0xff)); + array.push(String.fromCharCode((input >> 8) & 0xff)); + array.push(String.fromCharCode((input >> 16) & 0xff)); + array.push(String.fromCharCode((input >> 24) & 0xff)); +} + +function push16LE(array, input) { + array.push(String.fromCharCode(input & 0xff)); + array.push(String.fromCharCode((input >> 8) & 0xff)); +} + +function buildWave(samples, sample_rate) { + const RIFF_MAGIC = 0x52494646; + const WAVE_MAGIC = 0x57415645; + const FRMT_MAGIC = 0x666d7420; + const DATA_MAGIC = 0x64617461; + const RIFF_SIZE = 44; + + var header = []; + push32BE(header, RIFF_MAGIC); + push32LE(header, RIFF_SIZE + samples.length * 2); + push32BE(header, WAVE_MAGIC); + push32BE(header, FRMT_MAGIC); + push32LE(header, 16); + push16LE(header, 1); + push16LE(header, 1); + push32LE(header, sample_rate); + push32LE(header, sample_rate); + push16LE(header, 2); + push16LE(header, 16); + push32BE(header, DATA_MAGIC); + push32LE(header, samples.length * 2); + for (var i = 0; i < samples.length; ++i) { + push16LE(header, samples[i], 2); + } + return header; +} + +const CC = Components.Constructor; +const Timer = CC("@mozilla.org/timer;1", "nsITimer", "initWithCallback"); +const BinaryOutputStream = CC( + "@mozilla.org/binaryoutputstream;1", + "nsIBinaryOutputStream", + "setOutputStream" +); + +function poll(f) { + if (f()) { + return; + } + new Timer( + function () { + poll(f); + }, + 100, + Ci.nsITimer.TYPE_ONE_SHOT + ); +} + +function handleRequest(request, response) { + var cancel = parseQuery(request, "cancelkey"); + if (cancel) { + setState(cancel[1], "cancelled"); + response.setStatusLine(request.httpVersion, 200, "OK"); + response.write("Cancel approved!"); + return; + } + + var samples = []; + for (var i = 0; i < 1000000; ++i) { + samples.push(0); + } + var bytes = buildWave(samples, 44100).join(""); + + var key = parseQuery(request, "key"); + response.setHeader("Content-Type", "audio/x-wav"); + response.setHeader("Content-Length", "" + bytes.length, false); + + var out = new BinaryOutputStream(response.bodyOutputStream); + + var start = 0, + end = bytes.length - 1; + if (request.hasHeader("Range")) { + var rangeMatch = request.getHeader("Range").match(/^bytes=(\d+)?-(\d+)?$/); + + if (rangeMatch[1] !== undefined) { + start = parseInt(rangeMatch[1], 10); + } + + if (rangeMatch[2] !== undefined) { + end = parseInt(rangeMatch[2], 10); + } + + // No start given, so the end is really the count of bytes from the + // end of the file. + if (start === undefined) { + start = Math.max(0, bytes.length - end); + end = bytes.length - 1; + } + + // start and end are inclusive + if (end === undefined || end >= bytes.length) { + end = bytes.length - 1; + } + + if (end < start) { + response.setStatusLine(request.httpVersion, 200, "OK"); + start = 0; + end = bytes.length - 1; + } else { + response.setStatusLine(request.httpVersion, 206, "Partial Content"); + var contentRange = "bytes " + start + "-" + end + "/" + bytes.length; + response.setHeader("Content-Range", contentRange); + } + } + + if (start > 0) { + // Send all requested data + out.write(bytes.slice(start, end + 1), end + 1 - start); + return; + } + + // Write the first 1.2M of the Wave file. We know the cache size is set to + // 100K so this will fill the cache and and cause a "suspend" event on + // the loading element. + out.write(bytes, 1200000); + + response.processAsync(); + // Now wait for the message to cancel this response + poll(function () { + if (getState(key[1]) != "cancelled") { + return false; + } + response.finish(); + return true; + }); +} diff --git a/dom/media/test/chain.ogg b/dom/media/test/chain.ogg new file mode 100644 index 0000000000..3535b280f4 Binary files /dev/null and b/dom/media/test/chain.ogg differ diff --git a/dom/media/test/chain.ogg^headers^ b/dom/media/test/chain.ogg^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/chain.ogg^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/chain.ogv b/dom/media/test/chain.ogv new file mode 100644 index 0000000000..3e684b64a5 Binary files /dev/null and b/dom/media/test/chain.ogv differ diff --git a/dom/media/test/chain.ogv^headers^ b/dom/media/test/chain.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/chain.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/chain.opus b/dom/media/test/chain.opus new file mode 100644 index 0000000000..9fa67f94c3 Binary files /dev/null and b/dom/media/test/chain.opus differ diff --git a/dom/media/test/chain.opus^headers^ b/dom/media/test/chain.opus^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/chain.opus^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/chained-audio-video.ogg b/dom/media/test/chained-audio-video.ogg new file mode 100644 index 0000000000..adda68bb47 Binary files /dev/null and b/dom/media/test/chained-audio-video.ogg differ diff --git a/dom/media/test/chained-audio-video.ogg^headers^ b/dom/media/test/chained-audio-video.ogg^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/chained-audio-video.ogg^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/chained-video.ogv b/dom/media/test/chained-video.ogv new file mode 100644 index 0000000000..a6288ef6c9 Binary files /dev/null and b/dom/media/test/chained-video.ogv differ diff --git a/dom/media/test/chained-video.ogv^headers^ b/dom/media/test/chained-video.ogv^headers^ new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/dom/media/test/chained-video.ogv^headers^ @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/dom/media/test/chrome/chrome.toml b/dom/media/test/chrome/chrome.toml new file mode 100644 index 0000000000..57d1843841 --- /dev/null +++ b/dom/media/test/chrome/chrome.toml @@ -0,0 +1,12 @@ +[DEFAULT] +subsuite = "media" +support-files = [ + "../gizmo.mp4", + "../gizmo-noaudio.mp4", + "../TestPatternHDR.mp4", + "../tone2s-silence4s-tone2s.opus", +] + +["test_accumulated_play_time.html"] + +["test_telemetry_source_buffer_type.html"] diff --git a/dom/media/test/chrome/test_accumulated_play_time.html b/dom/media/test/chrome/test_accumulated_play_time.html new file mode 100644 index 0000000000..e59c0377b2 --- /dev/null +++ b/dom/media/test/chrome/test_accumulated_play_time.html @@ -0,0 +1,694 @@ + + + +Test Video Play Time Related Permanent Telemetry Probes + + + + + + + diff --git a/dom/media/test/chrome/test_telemetry_source_buffer_type.html b/dom/media/test/chrome/test_telemetry_source_buffer_type.html new file mode 100644 index 0000000000..85ccfd1000 --- /dev/null +++ b/dom/media/test/chrome/test_telemetry_source_buffer_type.html @@ -0,0 +1,105 @@ + + + +Telemetry : test permanent probe MSE_SOURCE_BUFFER_TYPE + + + + + + + diff --git a/dom/media/test/chromeHelper.js b/dom/media/test/chromeHelper.js new file mode 100644 index 0000000000..a89d12d6dd --- /dev/null +++ b/dom/media/test/chromeHelper.js @@ -0,0 +1,23 @@ +/* -*- Mode: javascript; indent-tabs-mode: nil; js-indent-level: 2 -*- */ +/* vim: set ft=javascript ts=2 et sw=2 tw=80: */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +/* eslint-env mozilla/chrome-script */ + +"use strict"; + +// eslint-disable-next-line mozilla/use-services +const dirSvc = Cc["@mozilla.org/file/directory_service;1"].getService( + Ci.nsIProperties +); + +addMessageListener("media-test:getcwd", () => { + let cwd; + try { + cwd = dirSvc.get("CurWorkD", Ci.nsIFile).path; + } finally { + sendAsyncMessage("media-test:cwd", cwd); + } +}); diff --git a/dom/media/test/cloneElementVisually_helpers.js b/dom/media/test/cloneElementVisually_helpers.js new file mode 100644 index 0000000000..52e6cca36e --- /dev/null +++ b/dom/media/test/cloneElementVisually_helpers.js @@ -0,0 +1,232 @@ +const TEST_VIDEO_1 = + "http://mochi.test:8888/tests/dom/media/test/bipbop_225w_175kbps.mp4"; +const TEST_VIDEO_2 = + "http://mochi.test:8888/tests/dom/media/test/pixel_aspect_ratio.mp4"; +const LONG_VIDEO = "http://mochi.test:8888/tests/dom/media/test/gizmo.mp4"; + +/** + * Ensure that the original