MediaStreamTrack: метод stop()
Базовая Широко доступна
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с сентября 2017 года.
Метод stop() интерфейса MediaStreamTrack останавливает поток.
Синтаксис
stop()
Параметры
Нет.
Возвращаемое значение
None (undefined).
Описание
Вызов stop() сообщает пользовательскому агенту, что источник потока — будь то файлы, сетевые потоки или локальная камера или микрофон — больше не нужен объекту MediaStreamTrack. Поскольку несколько потоков могут использовать один и тот же источник (например, если два вкладки используют микрофон устройства), сам источник не останавливается немедленно. Вместо этого он отсоединяется от потока, а сам объект потока останавливается. Когда ни один поток не использует источник, источник может быть полностью остановлен.
Сразу после вызова stop(), свойство readyState устанавливается в значение ended. Обратите внимание, что событие ended в этой ситуации не будет сгенерировано.
Примеры
Остановка видеопотока
В этом примере показана функция, которая останавливает видеопоток, вызывая stop() для каждого потока в заданном элементе <video>.
function stopStreamedVideo(videoElem) {
const stream = videoElem.srcObject;
const tracks = stream.getTracks();
tracks.forEach((track) => {
track.stop();
});
videoElem.srcObject = null;
}
Для этого используется получение потока видеоэлемента из его свойства srcObject. Затем список потоков в потоке получает метод getTracks(). Далее, для перебора списка потоков используется forEach() и вызывается метод stop() каждого потока.
Наконец, srcObject устанавливается в значение null для разрыва связи с объектом MediaStream, чтобы он мог быть освобожден.
Спецификации
| Спецификация |
|---|
| Захват медиа и потоки # dom-mediastreamtrack-stop |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari в iOS | Samsung Internet | WebView Android | |
stop |
32 | 12 | 34 | 19 | 11 | 32 | 34 | 19 | 11 | 2.0 | 4.4.3 |
См. также
-
MediaStreamTrack, интерфейс, к которому он принадлежит. MediaStreamTrack.readyStateended
© 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/MediaStreamTrack/stop