HTMLCanvasElement.captureStream()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since январь 2020 г..
Экспериментальная возможность: Это экспериментальная технология
Так как спецификация этой технологии ещё не стабилизировалась, смотрите таблицу совместимости по поводу использования в различных браузерах. Также заметьте, что синтаксис и поведение экспериментальной технологии может измениться в будущих версиях браузеров, вслед за изменениями спецификации.
HTMLCanvasElement.captureStream() метод возвращает CanvasCaptureMediaStream, который является видеозахватчиком (оцифровщиком) в реальном времени на поверхности canvas.
Синтаксис
MediaStream = canvas.captureStream(frameRate);
Параметры
frameRateНеобязательный-
Число двойной точности с плавающей точкой, указывающее частоту захвата каждого фрейма. Если не установлено, новый фрейм будет захватываться каждый раз, как canvas изменится;
если установлено в 0, будет захвачен один фрейм.
Возвращаемое значение
Ссылка на MediaStream объект.
Исключения
- NotSupportedError
-
Параметр
frameRateимеет отрицательное значение.
Пример
// Поиск элемента canvas для захвата
var canvasElt = document.querySelector("canvas");
// Получение потока
var stream = canvasElt.captureStream(25); // 25 FPS
// Делать что-то с потоком
// например, отправить что-то другому компьютеру, используя RTCPeerConnection
// pc это RTCPeerConnection, созданное где-то ещё
pc.addStream(stream);
Спецификации
| Specification |
|---|
| Media Capture from DOM Elements> # dom-htmlcanvaselement-capturestream> |
Совместимость с браузерами
Loading…
Смотрите также
CanvasCaptureMediaStream, the interface it belongs to.HTMLMediaElement.captureStream(), which allows capturing a stream from a media element.MediaStreamMedia Capture and Streams API