Я ищу способ переключения ввода RTSP двух ipcam в захват одного файла MP4.

На данный момент я слушаю:

ffmpeg -re -i udp://127.0.0.1:20000 -c:v copy -an out.mp4

Пока в цикле:

  while:
  do
         ffmpeg -re -rtsp_transport tcp -i rtsp://admin:admin@192.168.5.23/av1_0 -f h264 -c:v copy -an -t 5 udp://127.0.0.1:20000

         ffmpeg -re -rtsp_transport tcp -i rtsp://admin:admin@192.168.5.24/av1_0 -f h264 -c:v copy -an -t 5 udp://127.0.0.1:20000

  done

Файл out.mp4 сгенерирован правильно, но некоторые кадры повреждены во время переключения.

Делаем проверку с помощью команды:

ffmpeg -v error -i out.mp4 -f null -

Я получаю ошибки:

[h264 @ 0x213c740] error while decoding MB 54 49, bytestream -11
[h264 @ 0x213c740] error while decoding MB 83 56, bytestream -15
[h264 @ 0x213c740] error while decoding MB 0 55, bytestream -7
[h264 @ 0x213c740] error while decoding MB 3 65, bytestream -14
[h264 @ 0x213c740] error while decoding MB 114 51, bytestream -13

Если вместо этого я не прерываю поток rtsp ipcam, ошибки не появляются, и видео идеально.

Где я не прав? Может быть, это неправильный метод? заранее спасибо

0