“非标”MP4文件的恢复方法

Hello,大家好,我是小程子。又到了分享程序使用经验的环节了,正所谓"公欲善其事,必先利其器"!我们对程序多一些了解有时候就能完成看似不可能的恢复任务,今天分享下当遇到"非标"mp4文件应该如何处理。

"非标"MP4文件:

我们知道MP4是一种视频"封装打包"的格式文件,既然是格式文件,那么对开发人员必然有一套"规范要求"。当然大多数开发人员都是按照规范走的,这一类文件解码、编辑都没有一点问题。其占比较高,我称之为"标准"MP4文件,它们结构完好,在恢复或者修复时没有任何问题。

对应的就有了"非标"MP4文件,有的小伙伴可能会有疑问,如果是不符合规范,那播放器不就无法解码吗?答案可能比想象中的更复杂,因为FFMPEG过于强大,是的,你不能说问题是FFMEPG导致的,因为它强大的"兼容"能力让"非标"MP4文件的解码变成了现实!

既然FFMPEG如此强大,一些开发人员动了"偷懒"的心思,怎么省事儿怎么来,不更新时间戳那是"基操",更有甚者结构体长度异常、块大小长度为0......,反正解码的时候FFMPEG都可以搞定。所谓的"非标"MP4文件,它们执行的是"最低标准"。一般出现在一些极小的品牌或者一些大品牌的早期产品上。虽然占比不高,但是确实可以遇到。

报错信息:

可以看到在高级版解析样本时会报如图1的错误,这个错误导致程序无法扫描,一般报这种错误的大多数都是结构体存在异常的"非标准"MP4文件。

图1:报错信息

解决方法:

那么如何解决"非标"MP4文件的报错问题呢?下边的操作方法适用于CHS零壹视频恢复程序标准版、专业版、高级版,我们在扫描时点击"高级设置",然后勾选以下两项(图3)。

  1. 样本解析-忽略SAMPLE长度为0的错误(注:针对样本解析)
  2. MOOV解析-忽略SAMPLE长度为0的错误(注:针对重组碎片)

设置好后,点击扫描就可以了。

图2:切换到高级设置

图3:勾选这两项

关注CHS数据实验室,了解更多恢复知识!

点击下载:CHS零壹视频恢复程序高级版

相关推荐
一点晖光4 小时前
ffmpeg视频分辨率转换
ffmpeg·音视频
数据库生产实战6 小时前
Oracle的DBMS_SPACE.SPACE_USAGE和dba_segments计算的对象块数为什么不一样?表空间异常暴增的秘密可能就在这里!
oracle·ffmpeg·dba
hjjdebug17 小时前
ffmpeg -map 是什么意思?
ffmpeg·map
黑客思维者1 天前
Python自动化截图/录屏3大方案(PIL/mss/ffmpeg)深度拆解
python·ffmpeg·自动化·录屏
一点晖光1 天前
ffmpeg处理视频命令整理
ffmpeg·音视频
Everbrilliant891 天前
FFmpeg解码视频数据OpenGL Texture播放
ffmpeg·音视频·音视频解码·ffmpeg解码·opengl播放视频·ffmpeg解码gl播放·opengl render
花启莫你是不是傻1 天前
鸿蒙下FFmpeg编译流程梳理
华为·ffmpeg·harmonyos
千里马-horse2 天前
FFmpeg 工具文档
ffmpeg
一点晖光2 天前
ffmpeg合成的视频在ios浏览器不能播放的问题
ffmpeg·音视频