Я использую VLC для потоковой передачи видео на удаленный сервер. К сожалению, иногда соединение теряется, и мне нужно убить и перезапустить VLC, чтобы он снова заработал.
Сложность в том, что VLC не возвращается при возникновении ошибки. Он печатает ошибку на терминале, но продолжает работать.
Я хотел бы создать скрипт, который запускает VLC, отслеживает его вывод и убивает, а затем перезапускает его при отображении ошибки.
Как это сделать?
Спасибо
cvlc -vvv http://my_incoming_stream --sout '#transcode{vcodec=h264,vb=1200,scale=Auto,width=640,height=480,acodec=mp3,ab=128,channels=2,samplerate=44100}:std{access=rtmp,mux=ffmpeg{mux=flv},dst=rtmp://my_output_server}'
@MarcSances Я уже видел вашу ссылку, но она использует файл журнала. Я бы предпочел использовать непосредственно вывод терминала, если это возможно. - person fdamien12   schedule 23.04.2021tail -f
для чтения файла журнала, но любой вывод команды вместоtail -f
должен работать одинаково. Однако обратите внимание, чтоstderr
не будет учитываться, если вы не наберете2>1
перед своим каналом. - person Marc Sances   schedule 24.04.2021