Использование вывода ffmpeg для HLS и Image Stills - PullRequest
0 голосов
/ 27 ноября 2018

Я хочу объединить вывод из потока RTSP в и поток HLS и несколько фотоснимков.Я могу сделать это хорошо по отдельности (очевидно), но у меня проблемы с объединением вещей.Могу ли я получить быстрые руки?

Вот мои выводы (это работает):

Вывод потоков HLS:

ffmpeg -rtsp_transport tcp -i '$RTSP_URL'
    -c:v copy -b:v 64K -f flv rtmp://localhost/hls/stream_low \
    -c:v copy -b:v 512K -f flv rtmp://localhost/hls/stream_high

Вывод фотографий:

ffmpeg -hide_banner -i '$(RTSP_URL)' -y  \
    -vframes 1 -vf "scale=1920:-1" -q:v 10 out/screenshot_1920x1080.jpeg \
    -vframes 1 -vf "scale=640:-1" -q:v 10 out/screenshot_640x360.jpeg \
    -vframes 1 -vf "scale=384:-1" -q:v 10 out/screenshot_384x216.jpeg \
    -vframes 1 -vf "scale=128:-1" -q:v 10 out/screenshot_128x72.jpeg

Любая помощь приветствуется (я также опубликовал награду ^ _ ^)

Спасибо, ребята!

1 Ответ

0 голосов
/ 27 ноября 2018

Просто

ffmpeg -rtsp_transport tcp -i '$RTSP_URL'
    -c:v copy -b:v 64K -f flv rtmp://localhost/hls/stream_low \
    -c:v copy -b:v 512K -f flv rtmp://localhost/hls/stream_high \
    -vframes 1 -vf "scale=1920:-1" -q:v 10 out/screenshot_1920x1080.jpeg \
    -vframes 1 -vf "scale=640:-1" -q:v 10 out/screenshot_640x360.jpeg \
    -vframes 1 -vf "scale=384:-1" -q:v 10 out/screenshot_384x216.jpeg \
    -vframes 1 -vf "scale=128:-1" -q:v 10 out/screenshot_128x72.jpeg

Обратите внимание, что ваши потоки "HLS" на самом деле являются потоками RTMP, как указано в протоколе вывода.Кроме того, с -c:v copy нет кодирования видео, поэтому -b:v не имеет никакого эффекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...