Spec-Zone.ru › Web APIs

RTCPeerConnection: событие addstream

Устаревшее: Эта функция больше не рекомендуется. Хотя некоторые браузеры могут её всё ещё поддерживать, она может быть удалена из соответствующих веб-стандартов, удалена в процессе или оставаться только для совместимости. Избегайте её использования и, если возможно, обновите существующий код; см. таблицу совместимости внизу этой страницы, чтобы принять решение. Имейте в виду, что эта функция может перестать работать в любое время.

Нестандартная: Эта функция нестандартна и не входит в список стандартов. Не используйте её на производственных сайтах, обращённых к Вебу: она не будет работать для каждого пользователя. Также могут существовать значительные несовместимости между реализациями, и поведение может измениться в будущем.

Устаревшее событие addstream отправляется в RTCPeerConnection, когда к нему добавлен новый медиаконтент в виде объекта MediaStream.

Предупреждение: Это событие удалено из спецификации WebRTC. Вместо этого вы должны отслеживать событие track, которое отправляется для каждой добавленной медиадорожки в RTCPeerConnection.

Аналогично, вы можете отслеживать удаление потоков из соединения, отслеживая событие removestream.

Это событие не отменяется и не распространяется.

Синтаксис

Используйте имя события в методах, таких как addEventListener(), или установите свойство обработчика событий.

addEventListener("addstream", (event) => {});

onaddstream = (event) => {};

Тип события

A MediaStreamEvent. Наследуется от Event.

Свойства события

Так как MediaStreamEvent является Event, это событие также реализует эти свойства.

MediaStreamEvent.stream Только для чтения

Содержит MediaStream, содержащий поток, связанный с событием.

Примеры

В этом примере проверяется, поддерживает ли браузер пользователя событие track. Если поддерживает, устанавливается обработчик событий track; в противном случае устанавливается обработчик событий addstream . pc является RTCPeerConnection.

if (pc.addTrack !== undefined) {
  pc.ontrack = (ev) => {
    ev.streams.forEach((stream) => doAddStream(stream));
  };
} else {
  pc.onaddstream = (ev) => {
    doAddStream(ev.stream);
  };
}

Эта функция вызывает функцию doAddStream() один раз для каждого добавляемого потока в RTCPeerConnection, независимо от того, отправляет ли браузер событие addstream или track.

Вы также можете использовать метод addEventListener() для установки обработчика события:

pc.addEventListener("addstream", (ev) => doAddStream(ev.stream), false);

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

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на iOS Samsung Internet WebView Android
addstream_event 24 15 22 15 Нет 25 24 14 Нет 1.5 ≤37

См. также

  • ВебRTC API
  • RTCPeerConnection.addStream()
  • MediaStreamEvent

© 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/RTCPeerConnection/addstream_event

Spec-Zone.ru

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