Как «перекодировать» RTSP в HLS с наименьшими затратами?

Как перекодировать RTSP в HLS с наименьшими затратами в Linux?
Кодек источника, как сообщает vlc: H264 MPEG-4 AVC.

Можно ли "перенаправить" поток не пережимая видео? Какими средствами?

ps. Пробовал кучу софта (ffmpeg грузит процессор (c debian-multimedia), cftmpserver не понимает моего rtsp источника (с svn), openrtsp нужен сервер - опять перекодировка)

pps. Рассматриваются и другие варианты: главные условия: минимальная нагрузка при конвертации и получить на выходе поток, который можно прикрутить к вебу (flash, html5 video, WebM и т.п.).

Спасибо!
  • Вопрос задан
  • 16407 просмотров
Решения вопроса 2
vvpoloskin
@vvpoloskin
Инженер связи
Походу у вас косяк с перекодированием с ffmpeg. Пересоберите ffmpeg с нужными
либами кодеков.

А вообще, если надо именно HLS, ставьте nginx + rtmp-модуль, он поддерживает HLS. На него подавайте поток (у меня работает так):
ffmpeg -re -i rtsp://192.168.0.1/ -vcodec copy -acodec copy -vbsf h264_mp4toannexb -f flv rtmp://localhost/hls/720p
Ответ написан
Привет. Ffmpeg + nginx rtmp module(hls умеет делать)
У меня работает без поедания проца.

Зы: сам hls не делал но интересно реализовать. мой скайп neo_new
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
vermus
@vermus Автор вопроса
В общем в live режиме hls не получиться, смотрите пост.

"This introduces a minimum lag of 5 seconds."

По ссылке есть решение, но оно без звука и с помощью javasript - я не пробовал.
Ответ написан
Комментировать
@hbruser
В общем в live режиме hls не получиться, смотрите пост.


Этот пост про задержку, а не про производительность.
В случае ТС требуются минимальные затраты на перепакетизацию потока.

Минимальные затраты может дать использование Flash, т.к. Flash поддерживает H.264 и потребуется только ре-пакетизация потока в тот же кодек. Если использовать HTML5(WebM) затраты будут выше, так как потребуется транскодинг в VP8 или VP9 видео кодек, а это как раз сильно затратная операция.

>По ссылке есть решение, но оно без звука и с помощью javasript - я не пробовал.
Тоже самое, но со звуком
По ссылке совсем другая технология, там видео перекодируется на лету в MPEG1. Не очень затратный кодек, т.к. сжимает плохо. Поэтому производительность будет лучше чем в WebM и хуже чем в Flash.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы