Spec-Zone.ru › Web APIs

RTCRtpSender: метод setStreams()

Метод RTCRtpSender setStreams() связывает трак track отправителя со специфицированными объектами MediaStream.

Синтаксис

setStreams()
setStreams(mediaStream1)
setStreams(mediaStream1, mediaStream2)
setStreams(mediaStream1, mediaStream2, /* …, */ mediaStreamN)

Параметры

mediaStreamN Необязательно

Произвольное количество объектов MediaStream, указанных в качестве аргументов, определяющих потоки, к которым принадлежит трак track отправителя. Если этот параметр не указан, с треком не будут связаны новые потоки.

Возвращаемое значение

None (undefined).

Исключения

InvalidStateError DOMException

Выбрасывается, если соединение отправителя закрыто.

Описание

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

После добавления трака ко всем потокам будет инициирована повторная установка соединения событием negotiationneeded, отправляемым в объект RTCPeerConnection, к которому принадлежит отправитель.

Примеры

В этом примере все траки объекта RTCPeerConnection добавляются к указанному потоку.

function addTracksToStream(stream) {
  let senders = pc.getSenders();

  senders.forEach((sender) => {
    if (sender.track && sender.transport.state === connected) {
      sender.setStreams(stream);
    }
  });
}

После вызова метода RTCPeerConnection getSenders() для получения списка отправителей подключения, функция addTracksToStream() перебирает список. Для каждого отправителя, если трак отправителя не null и состояние транспорта connected, мы вызываем setStreams() для добавления трака к указанному stream.

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

Спецификация
WebRTC: Решение реального времени в браузерах
# dom-rtcrtpsender-setstreams

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

Рабочий стол Мобильный
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на IOS Samsung Internet WebView Android
setStreams 76 79 113 63 14.1 76 113 54 14.5 12.0 79

© 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/RTCRtpSender/setStreams

Spec-Zone.ru

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