Как записать видео / аудио сеанс WebRTC на стороне сервера?
Я создаю веб-приложение с использованием WebRTC, где мне нужно записывать и сохранять каждый сеанс на сервере, чтобы другой пользователь мог получить к нему доступ позже. Я не хочу записывать на стороне клиента, для чего доступно решение. Каков наилучший способ сделать это. Есть ли какое-то решение уже там.
2 ответа
Для этого вы должны использовать медиа-сервер WebRTC. Kurento Media Server - это одна из ваших возможностей. В репозиториях Kurento GitHub есть несколько примеров для записи на стороне сервера. Вероятно, самый простой - это запись с генераторами.
Вы можете реализовать поддержку websocket на стороне сервера и просто передавать данные с клиента на сервер через канал websocket.
Целесообразно использовать двоичный режим на канале websocket. Итак, на стороне клиента это будет выглядеть следующим образом:
var stream_ws = new WebSocket('ws://localhost/ws');
stream_ws.binaryType = 'arraybuffer';
stream_ws.send(streambuffer);
Переменная streambuffer - это объект ArrayBuffer, который содержит данные, которые вы получаете из MediaRecorder. На стороне сервера вы можете сохранить поток на диск.