MediaStream

Интерфейс MediaStream представляет поток медиа данных. Поток состоит из нескольких треков, таких как видео и аудио треки. Каждый трек является экземпляром MediaStreamTrack. MediaStream можно получить либо с помощью конструктора, либо вызовом MediaDevices.getUserMedia().

Некоторые агенты предоставляют подклассы, чтобы привести более точную информацию или расширить функциональность, например CanvasCaptureMediaStream (en-US).

Конструктор

MediaStream() (en-US)
Создаёт и возвращает новый объект MediaStream. Можно создать пустой поток, поток, основанный на существующем или содержащий указанный список треков (массив объектов MediaStreamTrack).

Свойства

Этот интерфейс наследует свойства своего родителя, EventTarget.

MediaStream.active Только для чтения
Возвращает true, если MediaStream активен, иначе false.
MediaStream.ended Только для чтения   Этот API вышел из употребления и его работа больше не гарантируется.
Возвращает true, если достигнут конец потока. Это свойство удалено из спецификации; следует проверять свойство MediaStreamTrack.readyState (en-US), которое имеет значение "ended" у завершённых треков.
MediaStream.id (en-US) Только для чтения
Объект DOMString, содержащий 36 символов универсального уникального идентификатора (UUID) потока.

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

MediaStream.onaddtrack (en-US)
Объект event handler, содержащий действие, которое должно выполняться, когда случается событие addtrack при добавлении нового объекта MediaStreamTrack.
MediaStream.onremovetrack (en-US)
Объект event handler, содержащий действие, которое должно выполняться, когда случается событие removetrack при удалении объекта  MediaStreamTrack.

Методы

Этот интерфейс наследует методы своего родителя, EventTarget.

MediaStream.addTrack() (en-US)
Сохраняет копию данного объекта MediaStreamTrack. Если данный трек добавлялся в MediaStream ранее, ничего не происходит.
MediaStream.clone() (en-US)
Возвращает точную копию объекта MediaStream. Исключение составляет значение id (en-US), которое изменится на новое уникальное.
MediaStream.getAudioTracks() (en-US)
Возвращает список объектов MediaStreamTrack, хранимых в объекте MediaStream с атрибутом kind имеющим значение "audio". Порядок не определён и может меняться между браузерами, а также между вызовами.
MediaStream.getTrackById() (en-US)
Возвращает трек с trackid соответствующем данному. Если в метод не передано аргументов или трека с данным ID нет, возвращает null. Если несколько треков имеют одинаковый ID, возвращает первый из них.
MediaStream.getTracks() (en-US)
Возвращает список всех объектов MediaStreamTrack, сохранённых в объекте MediaStream, вне зависимости от значения их свойства kind. Порядок не определён и может меняться между браузерами, а также между вызовами.
MediaStream.getVideoTracks() (en-US)
Возвращает список объектов MediaStreamTrack, хранимых в объекте MediaStream с атрибутом kind имеющим значение "video". Порядок не определён и может меняться между браузерами, а также между вызовами.
MediaStream.removeTrack()
Удаляет данный объект MediaStreamTrack. Если данный трек не сохранён в объекте MediaStream, ничего не происходит.

События

addtrack
Вызывается при добавлении нового объекта MediaStreamTrack.
Также доступно как свойство onaddtrack.
removetrack
Вызывается при удалении объекта MediaStreamTrack.
Также доступно как свойство onremovetrack.

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

Specification
Media Capture and Streams
# mediastream

Поддержка браузерами

BCD tables only load in the browser

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