Перекодировать RTMP прямой поток на несколько клиентов
Я регулярно отслеживаю прямые трансляции на сайте picarto.tv. Веб-сайт использует RTMP для потоковой передачи, поэтому для отображения источника видео требуется флэш-память. Многие (мобильные / встроенные) устройства не имеют вспышки, поэтому я хочу иметь видео в формате, подобном MP4.
У меня есть двухъядерный VPS под управлением Ubuntu 14.04 с 2 ГБ ОЗУ, который я хочу использовать для перекодирования видео в реальном времени. VPS имеет сетевой канал 1 Гбит / с, поэтому пропускная способность не является реальной проблемой, хотя она ограничена 500 ГБ в месяц.
То, что я хочу, это уметь:
- Смотрите трансляцию на моем телефоне / планшете / умном телевизоре / не флэш-устройстве
- Позволяет смотреть видео не менее чем на 10-15 устройств одновременно
- Поэтому я хочу предотвратить создание потока транскодирования для каждого клиентского устройства.
- Использование потокового вывода MP4 кажется лучшей идеей, потому что большинство устройств поддерживают его
Я старался ffmpeg
конвертировать RTMP в MP4, но это позволяет только для одного клиента. Все cvlc
Команды, которые я обнаружил, либо слишком интенсивны для моего сервера, либо вообще не выводят видео.
ffserver
вроде работал, но это было слишком нестабильно и больше не поддерживается. Это дало мне расплывчатые ошибки, которые нельзя было отследить ни по какой реальной причине, а иногда и вообще ничего не выводило без чего-либо в журналах.
Есть ли какой-либо инструмент (например, ffserver
но поддерживается) или какой-то другой способ для меня предоставить MP4-версию RTMP-потока способом однократного декодирования потока ко многим?
1 ответ
Попробуйте компонент потокового процессора openvcx openvsx с github.com/openvcx/openvcx
Такая командная строка будет принимать поток RTMP и выводить его для Chrome, Safari, iOS, Android.
bin / vsx -v --capture = rtmp: // xxxx/bla/lalala --live=8080 --mkvlive --httplive --rtsp --flvlive
Вам также может понадобиться перекодировать его с помощью командной строки --xcode=.... Больше информации об этом здесь http://openvcx.com/vsxuserguide.php