цикл ffmpeg не работает, продолжает сбрасывать кадры после первого цикла - PullRequest
1 голос
/ 17 марта 2019

Я пытался заставить его работать, но получил эту ошибку, я новичок в этой вселенной, поэтому я прошу помощи. (пропустить кадры после первого цикла (так как метка времени внезапно вернется во времени).)

[flv @ 0x117a2f0] Video codec rawvideo not compatible with flv
    Could not write header for output file #0 (incorrect codec parameters ?): Function not implemented

Мой код теперь, когда я пытаюсь зациклить его, он останавливается после первого цикла, отбрасывает кадры ...

ffmpeg -f alsa -i default -f lavfi -re -fflags +genpts -i "movie=/home/pi/Documents/Youtube/video.mp4:loop=0, setpts=N/(FRAME_RATE*TB)" -c:v copy -c:a aac -f flv -max_muxing_queue_size 400 rtmp://a.rtmp.youtube.com/live2/pfjd-jhjs-k3td-XXXX

Код, который я использовал до того, как пытался исправить проблему с циклом, но других ошибок не было:

ffmpeg -re -stream_loop -1 -f alsa -i default -i /home/pi/Documents/Youtube/video.mp4 -c:v copy -c:a aac -f flv -max_muxing_queue_size 400 rtmp://a.rtmp.youtube.com/live2/pfjd-jhjs-k3td-XXXX

Кто-нибудь может помочь мне также сделать это? PS: я передаю видеофайл в виде комбо с настольным звуком (когда я играю песни в QMMP для детей (проект для детей))

Заранее спасибо!

Ответы [ 2 ]

1 голос
/ 19 марта 2019

Потоковый файл в цикле с рабочего стола аудио на YouTube работает. Спасибо всем!

ffmpeg -re -f alsa -i default -re -stream_loop -1 -i "/home/pi/Documents/Youtube/video720p.mp4" -c:v copy -c:a aac -f flv -max_muxing_queue_size 400 rtmp://a.rtmp.youtube.com/live2/pfjd-jhjs-k3td-xxxx

ffmpeg версии 4.1, если у вас более старая версия ffmpeg, команда цикла может не работать ...

1 голос
/ 17 марта 2019

Используйте

ffmpeg -re -f alsa -i default -re -stream_loop -1 -i "/home/pi/Documents/Youtube/video.mp4" -c:v copy -c:a aac -f flv -max_muxing_queue_size 400 rtmp://a.rtmp.youtube.com/live2/pfjd-jhjs-k3td-XXXX

stream_loop до недавнего времени имел ошибку, поэтому используйте ffmpeg 4.1 или новее. Устройство lavfi будет выводить только декодированные кадры, поэтому вам нужно напрямую использовать входной файл, чтобы избежать перекодирования.

Для потоковой передачи в реальном времени на всех входах должен быть установлен флаг -re.

...