WebRTC - запись медиапотока видеоконференции в одном файле
Я пытаюсь сделать приложение для видеоконференций с помощью функции записи конференции, используя WebRTC
, Я очень плохо знаком с вещами видеоконференций и сценариями соединения клиент-сервер.
Я создал демонстрационное приложение для видеоконференций с использованием однорангового соединения. который работает отлично. но мне также нужно записать всю конференцию (видео + аудио обеих сторон) в один файл.
Во что я заглянул WebRTC
Демо, у меня не было такого способа сделать это. Я не уверен, смогу ли я сделать это путем слияния WebRTC
с любым другим инструментом или просто используя WebRTC
с некоторой пользовательской логикой.
Пожалуйста, помогите мне в этом, я также открыт для использования любого другого инструмента с открытым исходным кодом, если они предоставляют такую функциональность.
2 ответа
Полный отказ от ответственности: я работаю на SightCall
Мы предлагаем SDK для видеоконференций (инструментарий), построенный на WebRTC. Одна из функций, которую мы имеем - это запись. Чтобы использовать это с WebRTC, вы должны создать приложение для вызова нашего JS API, а не напрямую WebRTC. Наше облако устанавливает вызов и использует WebRTC непосредственно в браузере. Когда вы записываете конференцию (два или более пользователей), мы создаем для вас файл фильма на S3. Создание фильма требует обработки и транскодирования, а настройка программного обеспечения самостоятельно не проста. Вот почему мы предлагаем его как облачный сервис.
Другой браузер сейчас работает по-другому.
Я думаю, что только Firefox позволяет создавать единую запись в файл прямо из потока WebRTC в данный момент.
Chrome разделит аудио- и видеодорожку, поэтому вам нужно объединить их самостоятельно, используя ffmpeg, например https://www.webrtc-experiment.com/ffmpeg/ в браузере... НЕ РЕКОМЕНДУЕМ, или отправить их на сервер и объединить он использует полноформатный ffmpeg в качестве фоновой задачи.
Не слишком опытный эксперт по ffmpeg, но я думаю, что вам нужно сместить звук примерно на 1 секунду раньше или на 1 секунду позже, чтобы правильно синхронизировать аудио- и видеопоток с моей попытки сделать подобное в прошлый раз. Забыл, в какую сторону.
По сути, вам нужно подать видео и аудио поток, выбрать что-то вроде webm-кодирования или mp4-кодирования и aac audio или mp3 и т. Д. И вывести его в один файл. Все, что я могу сказать, - у вас будет много проб и ошибок, чтобы получить правильный результат. Удачи:)
https://ffmpeg.org/ffmpeg.html
или, возможно, попробуйте что-то вроде http://www.kurento.org/ которое, я думаю, сделает это для вас.