修复损坏的MP4


24

我从Android手机(Sony Xperia P,如果需要知道)拍摄了一段视频,在停止录制之前,手机的内存已满,手机也挂了。我重新启动了手机,视频在那里,但是我无法从Android上的任何媒体播放器播放它。在mp4 format

因此,我尝试在PC和Mac上使用不同的视频播放器(例如VLC,Quick Time,Windows Media Player等)打开它,但是它们都无法播放。我知道视频已损坏,但我相信它可以修复,因为它的大小超过1 GB。有什么我可以尝试修复的视频文件吗?视频非常重要。

Answers:


18

如果您有ffmpeg,请从命令行尝试:

ffmpeg -i input.mp4 -c copy output.mp4

如果问题仅出在容器上,则可以解决此问题。

如果这样不起作用,请发布完整的终端消息,因为它可能提供有关如何修复文件的线索。


抱歉,我忘了那个视频。今晚我将尝试您的方法。您能告诉我任何有关如何安装ffmpeg的链接的信息。他们只是提供zip或tar存档。不管怎么说
noob 2013年

12
这么晚才回复很抱歉。这是我在使用FFMPEG命令得到的错误- [MOV,MP4,M4A,3GP,3G2,MJ2 @ 0x7f88f9018e00]的moov原子未找到input.mp4:处理输入时的数据无效发现
小白

1
你有解决过这个吗?遇到同样的问题。认为这也差不多是由同一件事引起的
2014年

1
我有相同的问题和相同的输出。我可以用以下方法解决它:grauonline.de/cms2/?page_id=5,但是如果您需要视频的另一半,则必须付费。有人可以建议其他任何软件来修复我的mp4文件吗?
VaTo

1
您是否尝试过restore_mp4_to_h264?stackoverflow.com/questions/23202611/…–
薄荷

11

这是一个老问题,但我遇到了同样的情况,我想我会发布对我有用的解决方案。

当您看到“找不到Moov原子”消息时,通常意味着创建视频的任何内容都无法写入包含有关诸如视频中使用的编解码器之类信息的终端元数据。没有这个“动荡的原子”,大多数播放器将拒绝该视频。

如果您有另一个视频是由同一设备生成的,则可以使用untrunc程序生成新的moov原子,该原子在大多数情况下将使文件可播放。

您将需要自己编译untrunc程序。我在Ubuntu 12.04 docker容器中构建了它,并且需要安装以下先决条件才能构建它:

sudo apt-get install libavformat-dev libavcodec-dev \
  libavutil-dev libqt4-dev make g++ libz-dev

1
对于大文件(〜1 GB)不起作用。
肯·夏普
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.