2017-11-06 13 views
1

私は、リモートの中継サーバーにライブWebカメラフィードをストリーミングするデバイスをメンテナンスすると同時に、そのストリームのバージョンをローカルディスクに書き込みます。ローカルディスクに1つ、ストリーミングサーバにrtspで1つのffmpegの1つのインスタンスでこれを行います。ffmpegは、1つの出力ストリームに障害が発生した場合に終了します。

ストリーミングサーバーが何らかの理由でdisconenctsを起こした場合、ffmpeg終了する。ライブストリームが失われても私は本当に気にはなりませんが、ローカル録画も失われてしまう大きな問題です。ライブで見ることができない場合は特定のビジネスプロセスに大きな損害を与えませんが、ローカルに保存されたコピーを失うのは災害

ffmpegのは、のようなコマンドラインで開始されます。

ffmpeg -thread_queue_size 4096 -async 1 -f v4l2 
    -input_format mjpeg -framerate 30 -video_size 1280x720 
    -i /dev/video0 -thread_queue_size 4096 -async 1 -f alsa 
    -i plughw:CARD=Set,DEV=0 -r 30 -c:a aac -b:a 96k -c:v h264 -b:v 983040 
    -profile:v baseline -preset veryfast -pix_fmt yuv420p 
    -f tee -map 0:v -map 1:a 
    [f=matroska]'/var/recordings/yyyy-mm-dd/backup.mkv'| 
    [f=rtsp:rtsp_transport=tcp]rtsp://streamingserver.com:1234/session.sdp` 

ではなく、ffmpegの出力ストリームが失われた場合に実行させることができることをどのような方法(コマンドラインスイッチなど)あります辞める?

答えて

2

onfailオプションを追加します。

[f=rtsp:onfail=ignore:rtsp_transport=tcp] 

ffmpegのバージョンが最新であることを確認してください。

関連する問題