Я использую приложение Shinobi CCTV для записи нескольких IP-камер в сети. Shinobi использует FFMPEG и передает флаг, чтобы сегментировать поток RTSP в 15-минутные записи. Если я подключаюсь к потоку с помощью FFMPEG, прошу его сегментировать через 15 минут и скопировать его в файл на жестком диске, он работает нормально.
Шиноби передает довольно сложный набор флагов, и я изо всех сил пытаюсь понять, где проблема. Я поместил пастбин здесь: https://pastebin.com/Bh46JD9D с соответствующими строками около 257.
[segment @ 0x50bee40] stream:0 start_pts_time:0 pts:536040 pts_time:5.956 dts:536040 dts_time:5.956 -> pts:536040 pts_time:5.956 dts:536040 dts_time:5.956
2018-05-05T18-19-31.mp4
[segment @ 0x50bee40] segment:'/home/chris/2018-05-05T18-19-31.mp4' count:0 ended
[AVIOContext @ 0x50249c0] Statistics: 2 seeks, 16 writeouts
[segment @ 0x50bee40] Opening '/home/chris/2018-05-05T18-19-30.mp4' for writing
[file @ 0x4ed3a80] Setting default whitelist 'file,crypto'
[segment @ 0x50bee40] segment:'/home/chris/2018-05-05T18-19-30.mp4' starts with packet stream:0 pts:541980 pts_time:6.022 frame:125
Опции, установленные Shinobi:
ffmpeg -loglevel debug -analyzeduration 1000000 -probesize 1000000
\ -fflags +igndts -rtsp_transport tcp -i "rtsp://192.168.0.249:554/11"
\ -an -vcodec copy -s 640x480 -f segment -segment_atclocktime 1
\ -reset_timestamps 1 -strftime 1 -segment_list pipe:2 -segment_time 900
\ "/home/chris/%Y-%m-%dT%H-%M-%S.mp4" -f mp4 -an -c:v copy
\ -movflags +frag_keyframe+empty_moov+default_base_moof
\ -metadata title="Poseidon Stream" -reset_timestamps 1
Я не вижу каких-либо ошибок или причин преждевременного сокращения сегмента потока. Кто-нибудь может посоветовать?
Благодарю.