使用 ffmpeg 修复由于丢流导致的丢帧/跳帧的 mp4

使用 ffmpeg 修复由于丢流导致的丢帧/跳帧的 mp4

如果网络连接(wifi)信号较差,我的安全摄像头(EufyCam)的输出流偶尔会丢失 rtsp 流,有时一次丢失长达 10 秒。

尽管如此,流还是被记录到我的 Synology NAS 上,并且当从 NAS 下载剪辑作为.mp4文件时,它们最终会在播放中跳过。

例如在播放时,视频将冻结(丢失的流期间重复的帧),但音频继续,并且播放器中的时间戳将跳过时间。

例如,它会从 跳到0:00:350:00:54跳过近 20 秒。这会在播放时以及使用其他程序(如 Subtitle Edit)时造成很多问题。

我尝试过重新编码,尝试过重置 pts、转码、删除重复帧的启发式措施

我尝试使用 ffmpeg 生成诸如“输出流中的非单调 DTS”或“队列输入在时间上是倒退的”之类的警告,尽管通常会生成输出文件,但没有任何文件提供我想要的输出,即只是跳过/省略丢失的帧(在播放中不跳过),就像跳过的时间段从未发生过一样。

如果您有不相关的建议,例如硬接线摄像头等,请知悉我当前的设置是根据我的情况而定的最佳设置。

理想情况下,音频会同步,但如果不同步,我不介意稍后通过其他方式进行同步。

显然,这些格式非常复杂,也许从来就不是为了处理这类问题,但如果有任何方法可以“修复”这个问题,用 ffmpeg 或任何其他软件,我们将不胜感激。

相关内容