2013-10-03 5 views
5

Я изучаю WebRTC, и я открыл тысячи вкладок. но все равно я точно не знаю, какой код я должен написать там, где !!!WebRTC Записать видео на сервер

У меня будет сайт с использованием asp.net 4.5 и IIS 8 (при необходимости). У него должна быть конференция vidoe. но для систем безопасности мне нужно записывать видео с обеих сторон на сервере. Поэтому я думаю, что не могу использовать p2p. пожалуйста, помогите мне, предоставив несколько пошаговых руководств, и, пожалуйста, не давайте мне больше ссылок !!! (У меня нет больше места для открытия новой вкладки: D)

ответ

0

Для этого вам обязательно нужно специальное решение. В webrtc ничего нет, что позволит это по умолчанию - как вы сказали, webrtc по умолчанию является p2p, без какого-либо сервера, который проходит потоковый трафик.

Поэтому вам необходимо создать приложение на стороне сервера, которое будет действовать как клиент webrtc. Он должен иметь возможность установить полное соединение webrtc (SDP exchange, ICE ...); а затем браузер начнет отправлять вам аудио- и видеопакеты, которые вы можете записать.

Если вы хотите отправить те же аудио/видео пакеты другому браузеру (клиенту webrtc) для полноценной аудио-видеоконференции, вам придется разрешить другим клиентам webrtc подключаться к одному и тому же серверу. По сути, ваш сервер будет аудио/видео-мостом webrtc с возможностью записи.

Существует открытый аудио/видео мост webrtc, который вы можете проверить для идей - licode Но, очевидно, вам придется изменить свой код для своей цели. Удачи. FYI их сервер работает на Linux и MacOSX.

1

Вы можете делать то, что вы пытаетесь сделать с помощью WebRTC, но вы хотите задействовать реле, поэтому данные передаются через сервер, и вы можете записывать кадры на диск. То, что это будет сделано, по существу, исключает часть P2P, но все же делает весь поток данных по UDP, а не TCP, что обеспечивает высокую производительность и низкую пропускную способность. Речь идет о лучшем, на что вы можете надеяться, не перейдя на что-то вроде флэш-медиа-сервера.

Для поддержки в IE вам понадобится какой-то плагин - он не поддерживает собственный WebRTC, и нет поддержки для родных UDP-подключений во Flash, так что это либо апплеты Java, либо пользовательские плагины.

Мы сделали тяжелый подъем в основном, что вы пытаетесь сделать с помощью IceLink (я работаю @ Frozen Mountain). О, и для обеспечения соблюдения реле вам необходимо подавить пары пар-кандидатов, которые не попадают через реле (поскольку WebRTC может иметь несколько кандидатов из нескольких источников, просто подавление ненужных параметров гарантирует, что реле это единственный вариант).

Надеюсь, что это поможет!

+0

Однако, похоже, нет простого способа записи.Похоже, что IceLink работает только как сервер TURN, но нет никакой документации о том, чтобы действительно что-то делать на сервере IceLink (и без видимых встроенных функций записи). – Kat

+0

Эй, Майк! Вам просто нужно создать объект «Конференция» на сервере (Java или .NET) и присоединиться к нему как обычный одноранговый узел. Затем вы используете IvfVideoRecordingProvider как ваш поставщик «рендеринга» для рендеринга на диск, а не на экран. (Да, нам нужно обновить документы - работая над этим: -D). – jvenema

+0

Я вижу, поэтому он обрабатывает сервер как клиент в топологии звезды. Благодарю. – Kat

0

В прошлом мы использовали платформу TokBox для видеоконференций WebRTC + запись. Секрет заключается в том, чтобы принудительно направлять видеопотоки через сервер, чтобы они могли быть захвачены и сохранены на диске.

Приятная вещь в реализации TokBox заключалась в том, что они соединяли видеопотоки вместе, в синхронизации, в одном файле, независимо от количества участников. Таким образом, мы закончили с простой в использовании/управлении/распространением видеозаписи.

Это было 2 года назад. Я считаю, что теперь возможно то же самое с самим размещенным медиа-сервером Kurento и другими платформами.

Смежные вопросы