test_SplitAppend.html (1077B)
1 <!DOCTYPE HTML> 2 <html> 3 <head> 4 <title>MSE: append initialization and media segment separately</title> 5 <script src="/tests/SimpleTest/SimpleTest.js"></script> 6 <script type="text/javascript" src="mediasource.js"></script> 7 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> 8 </head> 9 <body> 10 <pre id="test"> 11 <script class="testbody" type="text/javascript"> 12 13 SimpleTest.waitForExplicitFinish(); 14 15 runWithMSE(async (ms, v) => { 16 await once(ms, "sourceopen"); 17 const sb = ms.addSourceBuffer("video/webm"); 18 19 const arrayBuffer = await fetchWithXHR("seek.webm"); 20 sb.appendBuffer(new Uint8Array(arrayBuffer, 0, 318)); 21 v.play(); 22 await once(sb, "updateend"); 23 sb.appendBuffer(new Uint8Array(arrayBuffer, 318)); 24 await once(sb, "updateend"); 25 ms.endOfStream(); 26 await once(v, "ended"); 27 // XXX: Duration should be exactly 4.0, see bug 1065207. 28 ok(Math.abs(v.duration - 4) <= 0.002, "Video has correct duration"); 29 ok(Math.abs(v.currentTime - 4) <= 0.002, "Video has played to end"); 30 SimpleTest.finish(); 31 }); 32 33 </script> 34 </pre> 35 </body> 36 </html>