尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

MP4 损坏打不开?untrunc 一条命令重建索引

MP4 损坏打不开?untrunc 一条命令重建索引 MP4 损坏打不开untrunc 一条命令重建索引【免费下载链接】untruncRestore a truncated mp4/mov. Improved version of ponchio/untrunc项目地址: https://gitcode.com/gh_mirrors/un/untruncMP4 录到一半打不开了用 untrunc 无损修复 MP4借同设备的正常视频重建损坏文件索引。什么损坏能修、什么修不了遇到 MP4 无法播放或想找 MOV 文件损坏修复方案先花 10 秒判断你的情况属于哪一类再决定是否值得折腾。能修MP4、MOV、M4V、3GP 里数据还在、索引坏了的损坏。录制写到一半中断、moov 原子丢失或被截断都属于这一类untrunc 会重建索引并输出可播放的_fixed文件。能修H.264 与 HEVC 编码的视频流GoPro、Sony XAVC 的格式也已适配支持 2GB 以上的文件内存占用低。不能修数据区mdat本身已丢失或被覆盖。存储卡格式化过、文件被后续写入覆盖untrunc 变不出不存在的数据。不能修帧数据内部的画面损坏。它不重新编码只补索引数据区质量是什么样修出来就是什么样。它是 ponchio/untrunc 的改进分支比原版快 10 倍以上修复流程本身通常只需几分钟。安装 untrunc 与第一条修复命令Linux 上装好 ffmpeg 的三个编译依赖libavformat、libavcodec、libavutil 开发包两条命令完成编译git clone https://gitcode.com/gh_mirrors/un/untrunc cd untrunc makeWindows 有官方预编译包macOS 用 Homebrew 装好 ffmpeg 和 yasm 后再 make也可以用仓库自带的 Dockerfile 直接跑容器。核心命令只有一条参数顺序是正常视频在前、损坏视频在后untrunc ok.mp4 broken.mp4跑完后同目录会出现broken_fixed.mp4。原理速览moov 索引是怎么重建的MP4 由一系列原子组成mdat 存画面和声音的实际数据moov 是一张记录每一帧数据位于文件哪个偏移的索引表。截断损坏时常见情况是 mdat 还在、moov 残缺。untrunc 先解析正常视频的全部原子结构再拿它当模板在损坏文件里按相同规律逐帧定位数据最后写出新的索引。打个比方仓库里的货都还在只是货单被撕了untrunc 拿同批次另一个箱子的货单格式照着重新打一张。参考视频怎么选、失败时怎么排查参考视频不对口相机不同、分辨率或码率不同帧结构对不上匹配率会明显下降。优先用同设备、同设置拍的一段手上没有的话先用untrunc -i ok.mp4查看轨道参数再决定用哪段做参照。修完音画不同步加-v看详细日志确认是哪一步没对上再用-sv把视频时长拉伸到与音频一致。结构坏到连 mp4 结构都识别不出加-sm强制搜索 mdat配合-vv日志观察它停在哪一步。现在就能做一件小事从常用相机里挑一段正常的短视频存好再对手头损坏的文件跑一次untrunc -v ok.mp4 broken.mp4把完整日志留档。如果数据还在几分钟内就能拿到_fixed文件如果日志显示 mdat 对不上基本可以判断数据已丢失及时止损改用数据恢复方案。【免费下载链接】untruncRestore a truncated mp4/mov. Improved version of ponchio/untrunc项目地址: https://gitcode.com/gh_mirrors/un/untrunc创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表