[发明专利]一种用于MP4文件的恢复方法和系统有效
申请号: | 201911007369.4 | 申请日: | 2019-10-22 |
公开(公告)号: | CN110851301B | 公开(公告)日: | 2022-08-19 |
发明(设计)人: | 林文化;沈长达;吴少华 | 申请(专利权)人: | 厦门市美亚柏科信息股份有限公司 |
主分类号: | G06F11/14 | 分类号: | G06F11/14 |
代理公司: | 厦门福贝知识产权代理事务所(普通合伙) 35235 | 代理人: | 陈远洋 |
地址: | 361000 福建省厦门市*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 mp4 文件 恢复 方法 系统 | ||
本发明给出了一种用于MP4文件的方法和系统,包括获取系统分配使用的簇大小CL,读取待恢复MP4文件数据,提取待恢复MP4文件数据的moov特征码;响应于提取到moov特征码,获取moov特征码中所有的Chunk的偏移信息;计算每个Chunk所属的簇序号以及其在所属的簇内的起始的偏移位置;响应于当前簇内的Chunk数大于等于第一阈值,且基于簇内的偏移位置具有完整的Chunk解析,将当前簇作为目标簇;将目标簇和moov特征码所在的簇保存为MP4文件。该方法在数据未被覆盖的完整情况下,能够100%恢复视频数据,并保证文件的完整,实现通道按文件恢复分离。
技术领域
本发明涉及计算机数据恢复领域,尤其是一种用于MP4文件的恢复方法和系统。
背景技术
MP4是一种使用MPEG-4的多媒体档案格式,以“容器”方式组织文件,能够存储数码音视频信息。随着智能手机和视频录制设备的发展与普及,人们在视频方面的需求越来越大。而在这方面MP4格式视频占据着重要的部分。日常使用中的意外情况如设备故障、文件系统损坏、人为删除等原因,常常导致文件丢失。
国内外现存有几款软件能够针对MP4视频文件进行恢复。对丢失的MP4视频文件这些软件针主要采取如下方案:搜索MP4的容器特征信息(如ftyp、mdat、moov等),根据容器的长度信息或者特征信息的存储位置差,提取、保存数据。
现存的MP4文件恢复的方案严重依赖于文件物理存储连续性、结构完整性和数据准确性等,恢复效果差,恢复的结果文件可能因通道混合而无法播放,如下列情景:
1.MP4文件的物理存储位置不连续,或多个通道文件交替存储的情况;
2.容器格式特征码或长度信息自定义用途等情况下。
发明内容
为了解决现有技术中MP4文件恢复的方案存在的恢复效果差等技术问题,本发明提出了一种用于MP4文件的恢复方法和系统,用以解决物理存储位置不连续等导致恢复的视频效果不理想的问题。
在一个方面,本发明提出了一种用于MP4文件的恢复方法,包括以下步骤:
S1:获取系统分配使用的簇大小CL,读取待恢复MP4文件数据,提取待恢复MP4文件数据的moov特征码;
S2:响应于提取到moov特征码,获取moov特征码中所有的Chunk的偏移信息;
S3:计算每个Chunk所属的簇序号以及其在所属的簇内的起始的偏移位置;
S4:响应于当前簇内的Chunk数大于等于第一阈值,且基于簇内的偏移位置具有完整的Chunk解析,将当前簇作为目标簇;
S5:将目标簇和moov特征码所在的簇保存为MP4文件。
优选的,系统分配使用的簇大小CL设置为4、8、16、32、64和128中的一个。利用簇大小对文件进行簇的分拆,便于进行判断。
优选的,步骤S4还包括,当前簇内的Chunk数小于第一阈值时,验证当前簇内Chunk与其前后簇的偏移关系,若满足,将当前簇作为目标簇。通过偏移关系确认完整Chunk数小于第一阈值的情况,可以使文件的恢复更加完整。
优选的,第一阈值设置为2或3。第一阈值的设置为2或3可以满足识别的准确性和效率。
优选的,步骤S3中Chunk所属的簇的计算方式为:簇序号Cseq=CK/CL,其中,CK表示获取到的Chunk相对文件头偏移,CL表示簇大小。
优选的,步骤S3中每个Chunk在其所属的簇内偏移的计算方式为:簇内偏移Coff=CK%CL,即CK/CL的余数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门市美亚柏科信息股份有限公司,未经厦门市美亚柏科信息股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911007369.4/2.html,转载请声明来源钻瓜专利网。