MediaSource: свойство duration
Ограниченное использование
Эта функция не относится к Baseline, так как не работает в некоторых из наиболее широко используемых браузеров.
Примечание: Эта функция доступна в Dedicated Web Workers.
Свойство duration интерфейса MediaSource получает и устанавливает продолжительность текущего воспроизводимого медиа.
Значение
Число с плавающей точкой. Ожидается значение в секундах.
Исключения
При установке нового значения для этого свойства могут быть выброшены следующие исключения.
-
InvalidAccessErrorDOMException -
Выбрасывается, если была попытка установить значение продолжительности, которое было отрицательным или
NaN. -
InvalidStateErrorDOMException -
Выбрасывается, если
MediaSource.readyStateне равноopen, или один или несколько объектовSourceBufferв спискеMediaSource.sourceBuffersобновляются (т.е. их свойствоSourceBuffer.updatingимеет значениеtrue).
Примеры
Следующий фрагмент основан на примере, написанном Ником Дезольнье (посмотреть демо, или скачать исходный код для более подробного изучения). Функция getMediaSource(), которая не определена здесь, возвращает MediaSource.
const mediaSource = getMediaSource();
function sourceOpen() {
console.log(this.readyState); // open
const sourceBuffer = mediaSource.addSourceBuffer(mimeCodec);
fetchAB(assetURL, (buf) => {
sourceBuffer.addEventListener("updateend", () => {
mediaSource.endOfStream();
mediaSource.duration = 120;
video.play();
console.log(mediaSource.readyState); // ended
});
sourceBuffer.appendBuffer(buf);
});
}
// …
Спецификации
| Спецификация |
|---|
| Media Source Extensions™ # dom-mediasource-duration |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
duration |
23 | 12 | 42 | 15 | 8 | 25 | 41 | 14 | 13Доступно в Mobile Safari на iPad, но не на iPhone. |
1.5 | 4.4.3 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/MediaSource/duration