我正在尝试从 SD 卡中恢复 MP4 视频文件,这些文件在传输过程中突然消失了。该卡仍然显示存储空间已被占用,但这些视频无法打开,也无法正常显示出来。这些是重要的个人录像,我需要关于最佳 SD 卡视频恢复方法或工具的建议,以便在不造成更多损坏的情况下将它们恢复。
我知道那种感觉。你删掉了一个需要的视频片段,胃里一沉,第一反应就是不停折腾存储卡,直到某个办法奏效。我也这么干过一次。结果很糟。如果你的视频是从 SD 卡上消失的,立刻停止对这张卡进行任何操作。
已删除并不总是意味着彻底消失。在大多数 SD 卡上,文件数据还会保留一段时间。系统只是把那部分空间标记为可用。只要没有新数据覆盖上去,你的视频通常仍然可以恢复。
我首先会怎么做
1. 停止向存储卡写入任何内容
这一步最重要。
不要再拍视频。不要再拍照片。不要把文件移动到卡里。也不要格式化它,即使 Windows 一直提示你这样做。把卡拔出来,先别动,等你准备好扫描它时再说。
这是我从一次周末旅行用的相机存储卡上吃过的亏。后来又录了几个新片段,结果之前一半的旧素材都报废了。
2. 检查你的电脑是否还能识别这张卡
在尝试恢复之前,先看看这张卡是否还能显示出来。
换一个读卡器。
试试另一个 USB 端口。
如果你有第二台电脑,把它插到那台电脑上试试。
在 Windows 上,打开磁盘管理,看看那里是否能看到这张卡。
如果 Windows 说这张卡是 RAW,或者弹出格式化提示,先别慌。我见过恢复工具在这种状态下扫描存储卡,通常也能顺利进行。如果这张卡在任何地方都没有显示出来,那你面对的可能是存储卡损坏或读卡器故障,而不只是简单的误删。
我见过有效的恢复工具
3. 使用恢复软件扫描存储卡
对于视频,Disk Drill 是我用过的较好选择之一。它支持很多种文件类型,而且它针对相机的扫描模式对处理碎片化的视频文件很有帮助,这在运动相机、无人机和一些微单相机上很常见。
我见过它从 GoPro、DJI 和 Sony 这类存储卡中找回片段,而普通文件扫描会漏掉一部分内容。
Windows 版本可免费恢复最多 100 MB。对于大型视频文件,这个限制帮不上太多,但足够你先扫描、预览,并在花钱之前确认你的素材是否还在。
如果你想走免费路线,PhotoRec 值得一试。它能用。不太好看。它还常常会去掉原始文件名和文件夹结构,所以你要做好面对一堆通用名称恢复文件的准备。不过,考虑到它完全免费,它确实很多次帮人找回了视频素材。
我会如何进行恢复
4. 恢复到另一块驱动器,绝不要恢复到同一张卡
使用读卡器连接 SD 卡。
运行完整扫描或深度扫描。
按视频文件筛选结果。
预览所有看起来有希望的文件。
将恢复的文件保存到你的电脑或外部驱动器。
不要将恢复的文件再保存回 SD 卡。我知道这听起来很明显,但人们确实会这么做。如果你把恢复的数据写回同一张卡,就有可能覆盖其他尚未恢复的已删除文件的一部分。
如果恢复的视频无法播放
5. 文件可能还在,但已经损坏
这一部分最让人头疼。有时候恢复能把文件找回来,但视频片段就是打不开。
我首先会尝试 VLC Media Player。遇到其他播放器失败并报错的损坏文件时,VLC 曾经帮我打开过。
如果 VLC 也处理不了,就看看视频修复工具。有些工具会使用同一台相机、相同设置录制的正常样本来重建损坏的视频。听起来有点奇怪,但没错,它有时确实有效。
如果你的系统一直提示要格式化存储卡,先别理它。先恢复。清理以后再说。
最重要的是什么
时间很重要。写入操作更重要。
如果你能尽快停止使用存储卡,并在有内容覆盖已删除区域之前开始恢复,成功几率就会更高。如果存储卡仍然能读取,你还有不错的机会。如果你继续在上面录制,情况很快就会变糟。就是这么简单。
如果空间仍然显示已被占用,你的 MP4 文件通常还在,但文件表在传输过程中弄乱了。关于一点我与 @mikeappsreviewer 略有不同意见,如果你的电脑仍然能读取这张 SD 卡,我会先对 SD 卡做一个逐字节镜像。应当基于镜像操作,而不是直接操作卡。故障中的卡会很快变得更糟。
使用 USB Image Tool、HDD Raw Copy 或 Win32 Disk Imager。将镜像保存到你的电脑上。然后用 Disk Drill 扫描这个镜像。这样可以降低风险,也方便你之后用其他工具重试。
如果文件恢复出来了但无法播放,问题通常出在 MP4 头部,moov atom 丢失或损坏。MediaInfo 可以帮助检查这一点。ffmpeg 有时可以用以下命令修复:
ffmpeg -i broken.mp4 -c copy fixed.mp4
如果 ffmpeg 失败,untrunc 或使用同一台相机样本文件的修复工具通常效果更好。
在恢复之前,也请检查卡上的隐藏文件。在 Windows 上,运行:
attrib -h -r -s /s /d X:.
这可以修复那种传输后文件看似消失但存储空间仍显示已使用的卡。廉价 SD 卡和不稳定的读卡器上我见过这种情况。
如果你需要一个分步视频,这个 YouTube 上的 SD 卡 MP4 视频恢复指南 很容易跟着操作。
如果卡仍然显示已用空间,我不会认为这些文件“消失了”。有时传输会中途失败,最终留下孤立数据、损坏的目录条目,或零字节占位文件。和 @mikeappsreviewer 及 @reveurdenuit 的看法稍有不同:在对任何东西运行修复命令之前,先检查卡的健康状况。如果可以,使用像 H2testw 这样的工具,或 SD 卡格式化工具的诊断功能。假卡或即将损坏的卡会让恢复看起来有希望,然后又把一切再次损坏。
另外,不要先运行 CHKDSK。很多人喜欢建议这么做,但在相机卡上,它可能会把视频结构弄得一团糟。
我会这样尝试:
- 把卡的锁定开关拨上。
- 将所有可见内容完整复制到你的电脑上,包括那些奇怪的文件夹。
- 使用 Disk Drill 扫描丢失的 MP4/MOV 特征,并查看文件大小是否看起来合理。
- 如果恢复出的文件存在但无法播放,用 MPV 测试,而不只是 VLC。MPV 对损坏文件的处理能力强得有点离谱。
- 将恢复出来的片段大小与你的相机平时每分钟生成的文件大小进行比较。很小的文件通常意味着只是只有头部的垃圾文件。
还有一件很多人会忽略的事:检查相机品牌自己的恢复/导入工具。Canon、Sony、Panasonic、GoPro、DJI 等有时会用它们自己的方式重建片段,而且比通用工具做得更好。
这个关于从 SD 卡恢复已删除视频和相机素材的帖子里也有一些有用的真实经验提示。顺便说一句,不要把卡插进拔出 20 次,这会让不稳定的读卡器/卡组合表现得更糟。
我想补充一下 @reveurdenuit、@himmelsjager 和 @mikeappsreviewer 所说的一点:检查一下相机是否将片段写成了分段文件,或是作为由附属文件管理的媒体。很多相机会创建诸如 THM、XML、BDMV、IDX、BIN、CPI 或厂商元数据之类的辅助文件。如果这些文件丢失了,但原始视频数据块仍然存在,通用恢复工具可能只能找回有效载荷,却会留下无法播放或莫名被截断的 MP4。
所以我不会一开始就去恢复每一个 MP4。我会先尽可能恢复整张卡的完整结构,包括隐藏的系统文件夹。有时候,关键在于重建原始文件夹布局,然后通过相机厂商自己的软件导入,而不是直接拖拽片段。
如果卡已经不稳定,我对过早做健康测试这点略有不同意见。反复完整读取可能会进一步压垮一张濒死的卡。如果它会断连、变慢,或显示的容量读数发生变化,那就做一次高质量镜像或一次完整扫描,然后停止。
具体说到 Disk Drill:
优点
- 很擅长查找已删除或丢失的视频文件
- 预览功能有助于在恢复前确认素材是否真实可用
- 与 PhotoRec 这类工具相比,界面更友好
缺点
- Windows 版免费恢复额度对视频来说很小
- 恢复后的文件名和文件夹结构仍然可能很混乱
- 深度扫描可能会返回大量误报的 MP4 碎片
如果 Disk Drill 显示出很多名称相似但大小异常的 MP4,先恢复少量样本,不要一次全恢复。真正的片段通常会符合你的相机正常的码率和时长模式。碎片文件往往只能打开几秒钟,然后就失效了。
另外,如果你的卡是装在转接卡里的 microSD,请更换转接卡。它们比人们想象中更容易出故障。

