Spec-Zone.ru › Web APIs

Подпись к видео

Базовая поддержка Широко распространена *

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.

* Некоторые части этой функции могут иметь различный уровень поддержки.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Интерфейс TextTrack API WebVTT представляет собой подпись к элементу мультимедиа.

Объект этого типа владеет списком объектов VTTCue, которые будут отображаться над видео в различные моменты времени.

Объекты TextTrack могут быть добавлены к элементу HTMLVideoElement или HTMLAudioElement с помощью метода HTMLMediaElement.addTextTrack(), что эквивалентно добавлению подписей декларативно с помощью элементов <track> внутри элементов <video> или <audio>. Объекты TextTrack хранятся в списке TextTrackList, который можно получить с помощью свойства HTMLMediaElement.textTracks.

EventTarget Подпись к видео

Свойства экземпляра

Этот интерфейс также наследует свойства от EventTarget.

TextTrack.activeCues Только для чтения

Объект TextTrackCueList, содержащий список активных подписей. Подписи активны, если текущая позиция воспроизведения медиа находится между начальным и конечным временем подписи. Таким образом, для отображаемых подписей, таких как субтитры или титры, активные подписи отображаются в данный момент.

TextTrack.cues Только для чтения

Список TextTrackCueList содержащий все подписи к треку.

TextTrack.id Только для чтения

Строка, идентифицирующая подпись, если она есть. Если идентификатор отсутствует, то это пустая строка (""). Если подпись связана с элементом <track>, то идентификатор подписи совпадает с идентификатором элемента.

TextTrack.inBandMetadataTrackDispatchType Только для чтения

Возвращает строку, указывающую тип диспетчеризации данных внутри подписи.

TextTrack.kind Только для чтения

Возвращает строку, обозначающую тип подписи, которую описывает TextTrack. Она должна соответствовать одному из разрешенных значений.

TextTrack.label Только для чтения

Строка, понятная пользователю, которая содержит метку подписи, если она есть; в противном случае это пустая строка (""), в этом случае может потребоваться сгенерировать пользовательскую метку кодом, используя другие атрибуты подписи, если метка подписи должна быть показана пользователю.

TextTrack.language Только для чтения

Строка, которая определяет язык текста, на котором написан контент подписи. Значение должно соответствовать формату, указанному в RFC 5646: Метки для идентификации языков (также известные как BCP 47), так же как и атрибут HTML lang. Например, это может быть "en-US" для английского языка США или "pt-BR" для бразильского португальского.

TextTrack.mode

Строка, определяющая текущий режим подписи, которая должна соответствовать одному из допустимых значений. Изменение этого свойства изменяет текущий режим подписи в соответствии с ним. По умолчанию это disabled, если атрибут boolean элемента <track> default не установлен в true — в этом случае режим по умолчанию showing.

sourceBuffer Только для чтения

Буфер SourceBuffer, который создал подпись. Возвращает null, если подпись не была создана буфером SourceBuffer или буфер SourceBuffer был удалён из атрибута MediaSource.sourceBuffers его родительского источника медиа.

Методы экземпляра

Этот интерфейс также наследует методы от EventTarget.

Примечание: Интерфейс TextTrackCue является абстрактным классом, используемым в качестве родителя для других интерфейсов подписей, таких как VTTCue. Следовательно, при добавлении или удалении подписи вы передаете один из типов подписи, унаследованных от TextTrackCue.

TextTrack.addCue()

Добавляет подпись (указанную как объект TextTrackCue) в список подписей трека.

TextTrack.removeCue()

Удаляет подпись (указанную как объект TextTrackCue) из списка подписей трека.

События

cuechange

Срабатывает при входе и выходе подписей. Определенная подпись появляется при входе и исчезает при выходе. Также доступно через свойство oncuechange.

Пример

В следующем примере добавляется новая подпись к видео, а затем устанавливается её отображение с помощью TextTrack.mode.

let video = document.querySelector("video");
let track = video.addTextTrack("captions", "Captions", "en");
track.mode = "showing";

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

Спецификация
HTML
# texttrack

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

Рабочий стол Мобильный телефон
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на IOS Samsung Internet WebView Android
TextTrack 23 12
31В версиях Firefox до Firefox 50 субтитры не отображались при воспроизведении медиа без одной или нескольких дорожек видео.
≤12.1 6 25 31 ≤12.1 7 1.5 4.4
activeCues 23 12
31Начиная с Firefox 69, субтитры больше не загружаются неправильно, когда TextTrack mode disabled; в этом случае возвращаемый список пуст.
≤12.1 6 25 31 ≤12.1 7 1.5 4.4
addCue 23 12 31 ≤12.1 6 25 31 ≤12.1 7 1.5 4.4
cuechange_event 23 12 31 ≤12.1 6 25 31 ≤12.1 7 1.5 4.4
cues 23 12
31Начиная с Firefox 69, субтитры больше не загружаются неправильно, когда TextTrack mode disabled; в этом случае возвращаемый список пуст.
≤12.1 6 25 31 ≤12.1 7 1.5 4.4
id 33 18 31 20 8 33 31 20 8 2.0 4.4.3
inBandMetadataTrackDispatchType Нет 12–79 31 Нет 8 Нет 31 Нет 8 Нет Нет
kind 23 12 31 ≤12.1 6 25 31 ≤12.1 7 1.5 4.4
label 23 12 31 ≤12.1 6 25 31 ≤12.1 7 1.5 4.4
language 23 12 31 ≤12.1 6 25 31 ≤12.1 7 1.5 4.4
mode 23 12
31До Firefox 52, использование JavaScript для изменения режима текстовой дорожки, являющейся частью элемента медиа, отправляло одно событие изменения в TextTrackList элемента textTracks для каждого изменения, даже если несколько изменений выполняются за один проход по циклу событий Firefox. Начиная с Firefox 52, эти изменения отражаются одним событием.
≤12.1 6 25 31 ≤12.1 7 1.5 4.4
removeCue 23 12 31 ≤12.1 6 25 31 ≤12.1 7 1.5 4.4
sourceBuffer Нет Нет Нет Нет 8 Нет Нет Нет
13Доступно в Mobile Safari на iPad, но не на iPhone.
Нет Нет

См. также

  • WebVTT
  • TextTrackCueList
  • VTTCue
  • <track>
  • HTMLTrackElement

© 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/TextTrack

Spec-Zone.ru

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