Это экспериментальная технология
Так как спецификация этой технологии ещё не стабилизировалась, смотрите таблицу совместимости по поводу использования в различных браузерах. Также заметьте, что синтаксис и поведение экспериментальной технологии может измениться в будущих версиях браузеров, вслед за изменениями спецификации.
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 | Status | Comment |
---|---|---|
Media Capture from DOM Elements Определение 'HTMLCanvasElement.captureStream()' в этой спецификации. |
Рабочий черновик | Initial definition |
Совместимость с браузерами
We're converting our compatibility data into a machine-readable JSON format.
This compatibility table still uses the old format,
because we haven't yet converted the data it contains.
Find out how you can help!
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | 51.0 | 43 (43)[1] | Нет | 36.0 | ? |
Feature | Android | Android Webview | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic support | Нет | 51.0 | 51.0 | 43.0 (43) | Нет | 38 | ? |
[1] In Firefox 41 and 42, this feature was disabled by default; set the preference canvas.capturestream.enabled
to true
to enable it.
Смотри так же
CanvasCaptureMediaStream
, the interface it belongs to.HTMLMediaElement.captureStream()
, which allows capturing a stream from a media element.MediaStream
Media Capture and Streams API