@CoinCoin

Как реагировать на отключение устройства?

Добрый день
Есть деешвая камера которая отдает картинку в MJPEG направляю ее в RTMP
ffmpeg  -i http://192.168.1.100:80/mjpeg/1 -c:v libx264 -preset ultrafast -tune zerolatency -crf 23 -f flv "rtmp://127.0.0.1:1935/app/stream?secret=qwerty"

Результат:

Metadata:
encoder : Lavf59.17.100
Stream #0:0: Video: h264 ([7][0][0][0] / 0x0007), yuvj422p(pc, bt470bg/unknown/unknown, progressive), 320x240, q=2-31, 25 fps, 1k tbn
Metadata:
encoder : Lavc59.20.100 libx264
Side data:
cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
frame= 74 fps=5.1 q=24.0 size= 269kB time=00:00:02.92 bitrate= 755.7kbits/s speed=0.201x


Но если вдруг питание камеры отключается и включается, то FFMPEG не закрывается а просто 269kB зависает на 1 месте
Подскажите, существует ли какой-то механизм реконекта к камере?
  • Вопрос задан
  • 38 просмотров
Пригласить эксперта
Ответы на вопрос 1
Alex-rsk
@Alex-rsk
Бэкендер
-reconnect
Reconnect automatically when disconnected before EOF is hit.

-reconnect_at_eof
If set then eof is treated like an error and causes reconnection, this is useful for live / endless streams.

-reconnect_on_network_error
Reconnect automatically in case of TCP/TLS errors during connect.

-reconnect_on_http_error
A comma separated list of HTTP status codes to reconnect on. The list can include specific status codes (e.g. ’503’) or the strings ’4xx’ / ’5xx’.

-reconnect_streamed
If set then even streamed/non seekable streams will be reconnected on errors.

-reconnect_delay_max
Set the maximum delay in seconds after which to give up reconnecting.

-reconnect_max_retries
Set the maximum number of times to retry a connection. Default unset.

-reconnect_delay_total_max
Set the maximum total delay in seconds after which to give up reconnect

https://ffmpeg.org/ffmpeg-protocols.html
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы