HTMLMediaElement

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Интерфейс HTMLMediaElement добавляет к HTMLElement свойства и методы, необходимые для поддержки базовых мультимедийных возможностей, общих для аудио и видео. Элементы HTMLVideoElement и HTMLAudioElement наследуют этот интерфейс.

Свойства

Этот интерфейс также наследует свойства от своих предков HTMLElement, Element, Node и EventTarget.

HTMLMediaElement.audioTracks

AudioTrackList, в котором перечислены объекты AudioTrack, содержащиеся в элементе.

HTMLMediaElement.autoplay

Boolean, который отражает атрибут HTML autoplay, указывающий, должно ли воспроизведение начинаться автоматически, как только будет доступно достаточно медиафайлов, чтобы сделать это без прерывания.

Примечание: Сайты, которые автоматически воспроизводят аудио (или видео с аудиодорожкой), могут быть неприятными для пользователей, поэтому их следует по возможности избегать. Если вы должны предлагать функцию автозапуска, вы должны включить её (требуется, чтобы пользователь специально включил её). Однако это может быть полезно при создании элементов мультимедиа, источник которых будет установлен позднее под контролем пользователя.

HTMLMediaElement.buffered Только для чтения

Возвращает объект TimeRanges, который указывает диапазоны медиаисточника, который браузер буферизировал (если есть) в момент обращения к свойству buffered.

HTMLMediaElement.controller

Объект MediaController, представляющий медиа-контроллер, назначенный элементу, либо null, если ни один не назначен.

HTMLMediaElement.controls

Является Boolean, который отражает атрибут HTML controls, указывающий, должны ли отображаться элементы пользовательского интерфейса для управления ресурсом.

HTMLMediaElement.controlsList Только для чтения

Возвращает DOMTokenList, который помогает агенту пользователя выбирать элементы управления для отображения на элементе мультимедиа всякий раз, когда агент пользователя показывает свой собственный набор элементов управления. DOMTokenList принимает одно или несколько из трёх возможных значений: nodownload, nofullscreen и noremoteplayback.

HTMLMediaElement.crossOrigin

DOMString, указывающий настройку CORS для этого медиаэлемента.

HTMLMediaElement.currentSrc Только для чтения

Возвращает DOMString с абсолютным URL-адресом выбранного медиа-ресурса.

HTMLMediaElement.currentTime

Двойное значение, обозначающее текущее время воспроизведения в секундах. Установка этого значения ищет носитель в новое время.

HTMLMediaElement.defaultMuted

Является Boolean, который отражает атрибут HTML muted, который указывает, должен ли звук вывода медиа-элемента по умолчанию отключаться.

HTMLMediaElement.defaultPlaybackRate

Двойное значение, обозначающее скорость воспроизведения по умолчанию для мультимедиа.

HTMLMediaElement.disableRemotePlayback

Boolean, который устанавливает или возвращает состояние удалённого воспроизведения, указывая, разрешено ли медиаэлементу иметь удалённый пользовательский интерфейс воспроизведения.

HTMLMediaElement.duration Только для чтения

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

HTMLMediaElement.ended Только для чтения

Возвращает Boolean, который указывает, закончил ли воспроизведение медиа-элемент.

HTMLMediaElement.error Только для чтения

Возвращает объект MediaError для самой последней ошибки или null, если ошибки не было.

HTMLMediaElement.loop

Является Boolean, который отражает атрибут HTML loop, который указывает, должен ли медиа-элемент начинаться сначала, когда он достигает конца.

HTMLMediaElement.mediaGroup

Это DOMString, который отражает атрибут HTML mediagroup, который указывает имя группы элементов, к которой он принадлежит. Группа медиа-элементов имеет общий MediaController.

HTMLMediaElement.mediaKeys Только для чтения Экспериментальная возможность

Возвращает объект MediaKeys или ноль. MediaKeys - это набор ключей, которые связанный HTMLMediaElement может использовать для дешифрования мультимедийных данных во время воспроизведения.

HTMLMediaElement.mozAudioCaptured Только для чтения Non-standard

Возвращает Boolean. Связанный с захватом аудиопотока.

HTMLMediaElement.mozFragmentEnd Non-standard

Двойник, обеспечивающий доступ к времени окончания фрагмента, если медиа-элемент имеет URI-фрагмент для currentSrc, в противном случае он равен продолжительности медиа.

HTMLMediaElement.mozFrameBufferLength Non-standard Устарело

Это unsigned long, который указывает число выборок, которые будут возвращены в кадровом буфере каждого события MozAudioAvailable. Это число является общим для всех каналов, и по умолчанию установлено количество каналов * 1024 (например, 2 канала * 1024 выборок = всего 2048).

Для свойства mozFrameBufferLength может быть установлено новое значение для более низкой задержки, больших объёмов данных и т. Д. Указанный размер должен быть числом от 512 до 16384. Использование любого другого размера приводит к возникновению исключения. Лучшее время для установки новой длины - после того, как сработало событие загруженных метаданных, когда известна аудиоинформация, но до того, как аудио началось, или события MozAudioAvailable начали срабатывать.

HTMLMediaElement.mozSampleRate Только для чтения Non-standard Устарело

Возвращает двойное число, представляющее количество семплов в секунду, которые будут воспроизведены. Например, 44100 выборок в секунду - это частота дискретизации, используемая аудио CD.

HTMLMediaElement.muted

Boolean, определяющий, отключён ли звук. true, если звук отключён, и false в противном случае.

HTMLMediaElement.networkState Только для чтения

Возвращает unsigned short (перечисление), указывающее текущее состояние выборки мультимедиа по сети.

HTMLMediaElement.paused Только для чтения

Возвращает Boolean, который указывает, приостановлен ли медиа-элемент.

HTMLMediaElement.playbackRate

Двойное число, указывающее скорость воспроизведения мультимедиа.

HTMLMediaElement.played Только для чтения

Возвращает объект TimeRanges, который содержит диапазоны медиаисточников, которые воспроизводил браузер, если таковые имеются.

HTMLMediaElement.preload

Это DOMString, который отражает атрибут HTML preload, указывающий, какие данные должны быть предварительно загружены, если таковые имеются. Возможные значения: none, metadata, auto.

HTMLMediaElement.preservesPitch Non-standard

Является Boolean, который определяет, будет ли сохранена высота звука. Если установлено значение false, высота звука будет регулироваться в зависимости от скорости звука. Это реализовано с помощью префиксов в Firefox (mozPreservedPitch) и WebKit (webkitPreservedPitch).

HTMLMediaElement.readyState Только для чтения

Возвращает unsigned short (перечисление), указывающее состояние готовности носителя.

HTMLMediaElement.seekable Только для чтения

Возвращает объект TimeRanges, который содержит временные диапазоны, к которым пользователь может обращаться, если таковые имеются.

HTMLMediaElement.seeking Только для чтения

Возвращает Boolean, который указывает, находится ли медиа в процессе поиска новой позиции.

HTMLMediaElement.sinkId Только для чтения Экспериментальная возможность

Возвращает DOMString, который является уникальным идентификатором аудиоустройства, предоставляющего выходные данные, или пустую строку, если используется пользовательский агент по умолчанию. Этот идентификатор должен быть одним из значений MediaDeviceInfo.deviceid, возвращаемых из MediaDevices.enumerateDevices (), id-multimedia или id-communications.

HTMLMediaElement.src

Это DOMString, который отражает атрибут HTML src, который содержит URL-адрес используемого медиа-ресурса.

HTMLMediaElement.srcObject

MediaStream, представляющий медиафайл для воспроизведения или воспроизведённый в текущем HTMLMediaElement, или null, если не назначен.

HTMLMediaElement.textTracks Только для чтения

Возвращает список объектов TextTrack, содержащихся в элементе.

HTMLMediaElement.videoTracks Только для чтения

Возвращает список объектов VideoTrack, содержащихся в элементе.

HTMLMediaElement.volume

Двойной показатель громкости звука, от 0,0 (тихий) до 1,0 (самый громкий).

Обработчики событий

HTMLMediaElement.onencrypted

Устанавливает Event Handler, вызываемый, когда носитель зашифрован.

HTMLMediaElement.onwaitingforkey

Устанавливает EventHandler, вызываемый, когда воспроизведение заблокировано во время ожидания ключа шифрования.

Устаревшие атрибуты

Эти атрибуты устарели и не должны использоваться, даже если браузер все ещё поддерживает их.

HTMLMediaElement.initialTime Только для чтения Non-standard

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

HTMLMediaElement.mozChannels Только для чтения Non-standard Устарело

Возвращает значение типа double, представляющее количество каналов в аудиоресурсе (например, 2 для стерео).

Устаревшие обработчики событий

HTMLMediaElement.onmozinterruptbegin Non-standard

Устанавливает EventHandler, вызываемый, когда медиа-элемент прерывается из-за менеджера аудио-каналов. Это было специфично для Firefox, оно было реализовано для Firefox OS и было удалено в Firefox 55.

HTMLMediaElement.onmozinterruptend Non-standard

Устанавливает Event Handler, вызываемый при завершении прерывания. Это было специфично для Firefox, оно было реализовано для Firefox OS и было удалено в Firefox 55.

Методы

Этот интерфейс также наследует методы от своих предков HTMLElement, Element, Node и EventTarget.

HTMLMediaElement.addTextTrack()

Добавляет текстовую дорожку (например, дорожку для субтитров) к элементу мультимедиа.

HTMLMediaElement.captureStream() Экспериментальная возможность

Возвращает MediaStream, захватывает поток медиа-контента.

HTMLMediaElement.canPlayType()

Определяет, может ли указанный тип носителя воспроизводиться.

HTMLMediaElement.fastSeek()

Прямо стремится к данному времени.

HTMLMediaElement.load()

Сбрасывает носитель в начало и выбирает наилучший из доступных источников из источников, предоставленных с использованием атрибута src или элемента <source>.

HTMLMediaElement.mozCaptureStream() Non-standard

[введите описание]

HTMLMediaElement.mozCaptureStreamUntilEnded() Non-standard

[введите описание]

HTMLMediaElement.mozGetMetadata() Non-standard

Возвращает Object, который содержит свойства, которые представляют метаданные из воспроизводимого медиаресурса в виде пар {key: value}. Отдельная копия данных возвращается каждый раз, когда вызывается метод. Этот метод должен вызываться после возникновения события загруженных метаданных.

HTMLMediaElement.pause()

Пауза воспроизведения мультимедиа.

HTMLMediaElement.play()

Начинается воспроизведение мультимедиа.

HTMLMediaElement.seekToNextFrame() Non-standard Экспериментальная возможность

Стремится к следующему кадру в медиа. Этот нестандартный экспериментальный метод позволяет вручную управлять считыванием и воспроизведением мультимедиа с настраиваемой скоростью или перемещаться по мультимедиа покадрово для выполнения фильтрации или других операций.

HTMLMediaElement.setMediaKeys() Экспериментальная возможность

Возвращает Промис. Устанавливает клавиши MediaKeys, используемые при дешифровании медиафайлов во время воспроизведения.

HTMLMediaElement.setSinkId() Экспериментальная возможность

Устанавливает идентификатор аудиоустройства, которое будет использоваться для вывода, и возвращает Promise. Это работает только тогда, когда приложение имеет право использовать указанное устройство.

Устаревшие методы

Эти методы устарели и не должны использоваться, даже если браузер все ещё поддерживает их.

HTMLMediaElement.mozLoadFrom() Non-standard Устарело

Этот метод, доступный только в реализации Mozilla, загружает данные из другого медиа-элемента. Это работает аналогично load () за исключением того, что вместо обычного алгоритма выбора ресурса для источника просто устанавливается значение currentSrc другого элемента. Это оптимизировано, так что этот элемент получает доступ ко всем кешированным и буферизованным данным другого элемента; фактически эти два элемента совместно используют загруженные данные, поэтому данные, загруженные любым из этих элементов, доступны обоим.

События

Наследует методы от своего родителя HTMLElement, определённого в миксине GlobalEventHandlers. Обработайте эти события, используя addEventListener () или назначив обработчик событий свойству oneventname этого интерфейса.

abort

Срабатывает, когда ресурс загружен не полностью, но не в результате ошибки.

canplay

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

canplaythrough

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

durationchange

Запускается, когда атрибут продолжительности был обновлён.

emptied

Запускается, когда носитель становится пустым; например, когда носитель уже загружен (или частично загружен), и для его перезагрузки вызывается метод HTMLMediaElement.load ().

ended

Срабатывает, когда воспроизведение останавливается, когда достигнут конец носителя (<audio> или <video>) или если дальнейшие данные недоступны.

error

Срабатывает, когда ресурс не может быть загружен из-за ошибки.

loadeddata

Запускается, когда первый кадр носителя завершил загрузку.

loadedmetadata

Запускается, когда метаданные были загружены

loadstart

Запускается, когда браузер начал загружать ресурс.

pause

Вызывается, когда обрабатывается запрос на приостановку воспроизведения, и действие переходит в состояние паузы, чаще всего это происходит, когда вызывается медиа HTMLMediaElement.pause ().

play

Срабатывает, когда свойство paused изменяется с true на false, в результате использования метода HTMLMediaElement.play () или атрибута autoplay

playing

Запускается, когда воспроизведение готово начать после приостановки или задержки из-за отсутствия данных.

progress

Периодически запускается, когда браузер загружает ресурс.

ratechange

Запускается, когда скорость воспроизведения изменилась.

seeked

Запускается, когда скорость воспроизведения изменилась.

seeking

Запускается, когда начинается операция поиска

stalled

Запускается, когда пользовательский агент пытается извлечь данные мультимедиа, но данные неожиданно не поступают.

suspend

Запускается, когда загрузка медиа-данных была приостановлена.

timeupdate

Запускается, когда время, указанное атрибутом currentTime, было обновлено.

volumechange

Запускается при изменении громкости.

waiting

Срабатывает, когда воспроизведение остановлено из-за временной нехватки данных

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

Specification
HTML Standard
# htmlmediaelement

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

BCD tables only load in the browser

Смотрите также