0
试图通过HLS重新串流并记录我的Hikvision IP摄像机ffmpeg
。FFmpeg HLS分段开始时间计算错误
因此,基本上一切工作正常,但是,当我试图计算整个记录的持续时间时,它会导致分段TS文件之间的不匹配。
所以基本上我的FFmpeg正在做的:
"ffmpeg",
"-rtsp_transport", "tcp",
"-stimeout", "3000000",
"-re",
"-i", stream,
"-vcodec", "copy",
"-acodec", "libfdk_aac",
"-f", "segment",
"-segment_list_type", "m3u8",
"-segment_list", name,
"-segment_list_size", "1",
"-segment_format", "mpegts",
"-segment_time", "5",
segment_filename,
,其结果是:
filename cam1-1502731225-000018.ts
start_time 90.128000
end_time 96.150489
filename cam1-1502731225-000019.ts
start_time 96.128000
end_time 102.150489
filename cam1-1502731225-000020.ts
start_time 102.128000
end_time 105.150489
所以文件中的每一END_TIME应该是一样的下一个文件的START_TIME。虽然并非如此。
已经失去了几天找到解决方案 - 迄今没有运气!但我确实观察到,如果我将视频输出到MP4文件,然后将其作为输入(对于相同的命令行) - 那就没问题。
我假设它必须是原始RTSP URL的PTS问题。试图应用-filter_complex setpts=N/(16*TB)
时 - 它修复了问题,但是为编码绘制了CPU资源。
感谢您的回复。我认为完全相同的东西,尝试了不同的选择(例如-an(没有音频) - 同样的东西,你能告诉我些什么吗? –
我的建议是忽略它。 – szatmary