Spec-Zone.ru › Web APIs

SourceBuffer: свойство mode

Ограниченная доступность

Эта функция не является базовой, так как она не работает во всех широко используемых браузерах.

  • Узнать больше
  • Показать полную совместимость
  • Отправить отзыв

Примечание: Эта функция доступна в посвященных веб-воркерах.

Свойство mode интерфейса SourceBuffer управляет тем, могут ли медиа-сегменты добавляться к SourceBuffer в произвольном порядке или в строгой последовательности.

Доступные значения:

  • segments: Временные метки медиа-сегментов определяют порядок их воспроизведения. Сегменты могут быть добавлены к SourceBuffer в любом порядке.
  • sequence: Порядок добавления сегментов к SourceBuffer определяет порядок их воспроизведения. Временные метки сегментов автоматически генерируются для сегментов, соблюдающих этот порядок.

Значение свойства mode устанавливается при создании SourceBuffer с помощью MediaSource.addSourceBuffer(). Если для медиа-сегментов уже существуют временные метки, значение будет установлено в segments; в противном случае – в sequence.

Если вы попытаетесь установить значение свойства mode в segments, когда начальное значение равно sequence, будет выброшено исключение. Порядок существующих сегментов должен быть сохранен в режиме sequence. Однако вы можете изменить значение с segments на sequence. Это просто означает, что порядок воспроизведения будет фиксированным, и будут сгенерированы новые временные метки, отражающие это.

Это свойство не может быть изменено во время обработки SourceBuffer вызова appendBuffer() или remove().

Значение

Строка.

Исключения

При установке нового значения для этого свойства могут быть выброшены следующие исключения:

InvalidAccessError DOMException

Выбрасывается, если была предпринята попытка установить значение в segments, когда начальное значение равно sequence.

InvalidStateError DOMException

Выбрасывается, если объект SourceBuffer обновляется (т. е. его свойство SourceBuffer.updating в настоящее время true), последний добавленный медиа-сегмент в этот SourceBuffer неполный или этот SourceBuffer был удален из MediaSource.

Примеры

Этот фрагмент устанавливает режим sourceBuffer в 'sequence' если он в настоящее время установлен в 'segments', тем самым устанавливая порядок воспроизведения в соответствии с порядком добавления медиа-сегментов.

const curMode = sourceBuffer.mode;
if (curMode === "segments") {
  sourceBuffer.mode = "sequence";
}

Спецификации

Спецификация
Media Source Extensions™
# dom-sourcebuffer-mode

Совместимость браузеров

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на IOS Samsung Internet WebView Android
mode 23 12 42 15 8 33 42 14
13Доступно в Mobile Safari на iPad, но не на iPhone.
3.0 4.4.3
worker_support 108 108 Нет 94 Нет 108 Нет 73 Нет 21.0 108

См. также

  • MediaSource
  • SourceBufferList

© 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/SourceBuffer/mode

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API