如果录制视频时异常退出(蓝屏死机、程序崩溃等),会导致录制的 MP4 文件损坏无法打开。
在这里简单记录一下解决方法。
1
首先尝试用 ffmpeg。运行
ffmpeg -i <损坏文件> -c copy <输出路径>
看看能不能正常运行。
如果不能,且报错提示“moov atom not found”,那就继续往下看。
如果报其他错误,建议另寻他法。
2
准备一个 “参考文件”,也就是同一个软件用同样编码设置录出来的视频。没有的话现录一个也行,只要保证录制参数一样即可。
下载 untrunc 工具,解压,运行“untrunc-gui.exe”。
图中“reference file”为“参考文件”,“truncated file”为损坏文件。然后“Repair”。
输出文件与损坏文件在相同文件夹下。
如果弹窗提示“end - start == new_length”错误,可以尝试勾选 -s
、-k
或者两个都选上。
其他建议
“moov” 一般在录制结束时才会写入,所以异常退出就会导致 “moov” 缺失,进而无法播放。
这算是 MP4 容器格式的缺陷。如果可以,建议换用 MKV 格式,MKV 格式即便录制异常退出也不会损坏。