flv - 修复提前停止的 flv 文件

标签 flv

我前段时间下载了一些flv视频,当观看它们时,它们会停在一个点上。如果我跳过那个点,他们会继续播放到另一个点,然后我可以再次跳过(循环一直持续到视频结束)

我已经试过了
avconv -i input.flv -acodec copy -vcodec copy -g 1 output.flv
据我了解,阅读了很多关于这个问题的大部分无用的帖子,我的元数据中没有任何关键帧,然后在出现错误帧时停止。

我尝试将 -g 设置得更高,但 output.flv 与原始文件第一次停止的位置相同。有没有什么工具可以解决这个问题。

我不记得原始链接的位置,重新下载不是一个选项,你可以看到我的重新编码尝试失败了。

我使用的是 Linux Ubuntu,所以我不能使用可用的 Windows 工具。

编辑

经过一番挣扎,我仍然无法修复文件。

我认为元数据是问题的假设是错误的。在尝试了一系列工具后,我发现它们中的大多数都以文件结尾(在文件中间)停止。

元数据就是它应该的样子。 (我成功提取了它)。似乎流已损坏。我尝试重新混合,重新编码注入(inject)元数据,他们都没有工作,他们产生的文件仍然停留在同一位置,或者只是流到坏点。

我的问题与此处列出的完全相同:link

任何帮助将不胜感激。即使我必须用十六进制编辑器破解一些文件,我也会采取任何解决方案。 (我尝试删除我认为不好的部分,但这导致它根本无法播放)

我现在有一台 Windows 机器可供使用,因此运行 Windows 实用程序不再是问题。

最佳答案

我修好了它。

不是我希望的解决方案,但我设法使用 avconv 将文件拆分为不同的位

avconv -ss "$TIME" -i "$IN" -vcodec copy -acodec copy "$OUT"."$PART".mkv

将 ss 放在输入文件之前会导致它使用关键帧跳转到正确的位置,然后没有遇到损坏的位并崩溃。在每个损坏的位之后,我用新的 $TIME 重复上一步。

最后,我将所有位与 avconv concat 选项一起添加,现在它可以工作了。当到达先前的损坏位时,视频会向前跳跃一点,但这很好。

关于flv - 修复提前停止的 flv 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12975128/

相关文章:

ffmpeg - 使用 FFMPEG 从 720p .mov 文件转换的 FLV 视频缺少音频和播放问题

html - HTML 的 H.264/FLV 最佳实践

audio - 转码音频和视频

flash - 如何从 JW Player 5.1 中提取 .flv 流?

.htaccess - 缓存较大的 flv 文件 5mb +

c# - C# Windows 窗体中的 VLC 视频播放器不播放 .flv 网络文件

html - 在网页上插入视频

flash - 使用 FFMPEG 将视频转换为 flv 并丢失持续时间

FFMPEG:AVPacket 的 FLV header

vb.net - 我们可以使用 ffmpeg 直接从互联网将 flv 转换为 mp4