// Adding the first init segment will fire a durationchange.
await Promise.all([once(sb, "updateend"), once(v, "loadedmetadata")]);
ok(true, "got loadedmetadata");
// Set mediasource duration to 0, so future appendBuffer
// will update the mediasource duration.
// Changing the duration will fire a durationchange.
ms.duration = 0;
sb.appendBuffer(new Uint8Array(arrayBuffer, 318));
// Adding more data will fire durationchange.
await once(sb, "updateend");
ok(true, "got updateend");
// this will not fire durationchange as new duration == old duration
ms.endOfStream();
await once(ms, "sourceended");
is(durationChangeCount, 3, "durationchange not fired as many times as expected");
// XXX: Duration should be exactly 4.0, see bug 1065207.
ok(Math.abs(v.duration - 4) <= 0.002, "Video has correct duration");
SimpleTest.finish();
});
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.