Как избавиться от ошибок `jitter buffer full`?
Я использую ffmpeg из одного из последних снимков.
ffmpeg version N-90078-gf611fef Copyright (c) 2000-2018 the FFmpeg developers
Проблема в том, что с камеры по rtsp есть такой поток:
ibb.co/fmckCc
Со стороны камеры это нельзя исправить,
потому что!
Я принимаю его так:
ffmpeg \
-strict experimental \
-fflags + genpts \
-fflags + latm \
-seek2any 1 \
-avoid_negative_ts + make_zero \
-max_delay 5000000 \
-rtsp_transport udp \
-i rtsp: // admin: @ 192.168.87.21: 554/0? .sdp \
-map 0 \
-r 15 \
-c: v copy \
-an \
-f mpegts udp: //239.0.0.1: 1234? ttl = 1? pkt_size = 1316
В выводе вижу вот такие ошибки:
[rtsp @ 0x154d180] jitter buffer full
[rtsp @ 0x154d180] RTP: missed 1 packets
[rtsp @ 0x154d180] jitter buffer full
[rtsp @ 0x154d180] RTP: missed 1 packets
[rtsp @ 0x154d180] jitter buffer full
[rtsp @ 0x154d180] RTP: missed 2 packets
[rtsp @ 0x154d180] jitter buffer full
[rtsp @ 0x154d180] RTP: missed 4 packets
из-за этого картина рассыпается.
Я увеличил буфер udp в настройках ядра Linux:
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.udp_mem = 8388608 12582912 16777216
net.ipv4.tcp_rmem = 4096 87380 8388608
net.ipv4.tcp_wmem = 4096 65536 8388608
Но это не решило мою проблему.
Как можно без потерь принимать корректно RTP ?