DJI RONIN 4D变0字节恢复案例

RONIN 4D这个产品听起来比较陌生,还是DJI大疆出品。没错,这是大疆进军影视级的重点明星机型。前阵子刚处理过大疆RONIN 4D的修复案例,下边这个案例是和exfat有关的老问题:文件长度变成0字节。

故障存储:希捷18T /MS Exfat文件系统。

故障现象:

图1:变为0字节的素材文件

希捷的18T单盘,做为移动硬盘使用一直用于存放素材,为了在MAC和WIN系统间切换,所以使用了exfat文件系统。某日在查找使用之前一些素材时发现很多文件变成了0字节。使用通用恢复软件扫描无果(有文件名和容量但不能播放)。

故障分析:

由于客户在发现变成0字节后就没有再做过任何操作,所以这是一个典型的EXFAT文件系统导致的问题。关于EXFAT再来啰嗦下(不在码字了直接复制之前的分析,有好奇心的请公众号搜索同类帖子):

exfat文件系统出错导致文件属性出错

   关于exfat之前说过很多次,但是近期使用此文件系统出问题的机率如此频繁,所以我再赘述下。exfat 全称是Extended File Allocation Table File System,扩展FAT文件系统,FAT就是之前FAT32中的“FAT”即文件分配表,这个表研究数据结构的人不算陌生,从字面意思就能看出,exfat并非全新的文件系统。微软开发此文件系统的目的是为了应对FAT32无法管理单个超过4G的文件,也是为了弥补NTFS日志型文件系统在闪存等小型存储设备中的不足(一个是默认的簇大小过小,一个是不断的读写日志对闪存是一种损耗)。

exfat在存储时使用两种方式,对文件进行分类:

  1. 无碎片文件,即连续存放的,通过在exfat目录项中记录首簇指针和长度来获取文件的链表。减少文件系统额外的IO时间,这个算是针对FAT32的升级。
  2. 存在碎片的文件,即不连续存放的。因为1是一种理想状态,需要各种条件满足才能达到,但是更多情况下是文件不得不以碎片的形式存在(比如经常删除或者使用空间快要达到上限),这种情况下仍然使用FAT32的FAT表进行文件的表链记录。目录项中只记录首簇指针和文件大小,通过首簇指针进行FAT表跳转,很熟悉的味道,和FAT32一毛一样。

这里不讨论exfat的优劣和传输速度,仅仅一点微软开发exfat初衷是为了解决闪存类的文件系统存储问题,为了弥补NTFS的不足,当然不能说exfat就不能用在非闪存上而是其适用最优对象是闪存类小型存储身设备(如SD卡),

很显然大容量的存储不在这个最优对象之内。

另外技术分析当文件长度变为0后,首簇指针也清0,通过文件头获取首簇指针跳转FAT表发现其FAT表链也清0了。也就是目录项->FAT表所有环节通通出错,目前尚不清楚这是个例还是仅在大型存储上存在,因为目前以我的经验至少没有发现在闪存类存在此问题,所以不好下结论,只能以“exfat的文件系统结构不适合管理大型存储“来做总结,在这里我们强烈建议如果您是视频从业者,在存储文件要用到微软文件系统时强烈建议”非闪存类的存储设备慎用exfat文件系统“避免因此导致数据出问题。

通过分析现存的正常的MOV文件可以得出结论,原始文件本身就存在片段化,有很多碎片存在。片段化的文件依靠的目录项中的首簇指针+FAT表中的表链,两者如果全部出问题,那么表链打破,此时通用类恢复软件是无能为力的(因为目录项中文件长度也变成0字节了,所以通过文件系统去恢复是没有任何希望的)。

得出结论就是:在exfat中多数出错的文件是碎片很多的。

故障处理:

此类exfat变0字节的案例处理了很多,也引发了CHS实验室工程师的思考,我们常规的方法是通过使用CHS零壹视频恢复高级版来扫描即可,这种方法极其有效,因为是通过定位视频数据块(音视频帧)来扫描和重组所以识别精确恢复效果极好,但有一个小的缺点就是处理大容量盘时可能时间略长。我们一直在寻找此类问题的快速解决方案,精确的模型能实现精确定位但是带来了时间成本过高。

经过一次次的尝试,通过对损坏情况的仔细分析,提出一种针对exfat清0即可以快速扫描还可以提高质量的算法,这个算法借鉴于当前的云存储模型,通过对故障特征输入让其有一定学习能力我们命名为“CHSFS级算法”。通过几次案例的恢复,此算法可以成功应对一部分exfat变0字节的情况。目前在CHS零壹视频恢复影视版内测程序中增加了这个功能,后期我们会根据情况尽最大努力不断优化算法!

STEP1:运行CHS零壹视频恢复影视版选择18T存储设备,点击右键扫描大类“阿莱影视”(目前影视版暂时没有添加DJI RONIN 4D由于其和阿莱结构相近所以暂选ARRI),扫描小类选择“mov”,然后点击下方“高级设置”。

STEP2:高级设置->其它设置->勾选”开启CHS FS级算法”然后点击下方确定进行扫描,同时默认会开启”校验视频文件”对有问题的文件进行筛选。

STEP3:等待扫描完成,由于存储空间较大,需要时间略长,经过对比开启了“CHS FS级算法”的扫描速度要高于常规算法3-4倍左右,大量节省了时间。

STEP4:查看数据,经过扫描发现了大约11T多的有效数据,程序会列出摄像机型号、视频编码、时长、文件长度等参数,经过客户对比成功找到了变为0字节的素材,至此数据恢复工作完成。

这就是大疆DJI RONIN 4D摄像机mov文件变0字节的恢复方法,大家在遇到exfat变0字节的恢复问题时(所有文件不仅仅是视频类像数据库、特殊文件都可以),可以和我们联系!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/740874.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

uniapp实现点击选项跳转到应用商店进行下载

uni-app 中如何打开外部应用,如:浏览器、淘宝、AppStore、QQ等 https://ask.dcloud.net.cn/article/35621 Android唤起应用商店并跳转到应用详情页 兼容处理多个应用商店的情况 https://juejin.cn/post/6896399353301516295 如何查看market://detail…

如何借助CRM系统获得直观的业务洞察?CRM系统图表视图解析!

Zoho CRM管理系统在优化客户体验方面持续发力,新年新UI,一波新功能正在赶来的路上。今天要介绍的新UI功能在正式推出之前,已经通过早鸟申请的方式给部分国际版用户尝过鲜了。Zoho CRM即将推出图表视图,将原始数据转换为直观的图表…

低代码开发平台-企业级可视化快速开发工具

一、你们是否也遇到了以下问题 (1)作为传统型的软件公司,你们是否也遇到以下困扰: (2)作为大型企业软件开发部,你们是否也遇到以下困扰: 二、低代码平台介绍 MSPF快速开发平台是一…

​如何使用 ArcGIS Pro 分析爆炸波及建筑

假设在某栋建筑内发生了爆炸,需要根据爆炸的范围分析出来波及的建筑,对于这一需求,我们可以通过ArcGIS Pro来实现,这里为大家介绍一下分析的方法,希望能对你有所帮助。 数据来源 教程所使用的数据是从水经微图中下载…

C语言数据类型范围概述

int范围: -2147483648~2147483647 (-2^31~2^31-1) unsigned int范围: 0~4294967295 (0~2^32-1) long 范围:-2147483648~2147483647 (-2^31~2^31-1) long long 范围: -9223372036854775808~ 9223372036854775808(-2^63~2^63-1)

30个Linux性能问题诊断思路

文章目录 在Linux系统性能问题诊断过程中,有许多关键的检查点和技术可以用来识别潜在的问题源头。以下是30个Linux性能问题诊断思路的概览,包括但不限于: 系统负载监控: 使用uptime查看当前系统运行时间、在线用户数以及1/5/15分钟…

系列学习前端之第 5 章:学习 ES6 ~ ES11

1、什么是 ECMAScript ECMAScript 是由 Ecma 国际通过 ECMA-262 标准化的脚本程序设计语言。 从第 6 版开始,发生了里程碑的改动,并保持着每年迭代一个版本的习惯。 ES62015年,ES72016年,ES82017年,ES92018年&#…

数据库板块

数据库软件: 关系型数据库: Mysql Oracle SqlServer Sqlite 非关系型数据库: Redis NoSQL 1.数组、链表、文件、数据库 数组、链表: 内存存放数据的方式(代码运行结束、关机数据丢失) 文件、数据…

MathType2024官方原版补丁包下载

MathType 7是一款功能强大的数学公式编辑器,广泛应用于各种文档和演示中,用于创建和编辑复杂的数学公式。下面我将详细介绍MathType 7的主要功能和使用方法,以及一些使用技巧。 一、主要功能 公式编辑:MathType 7提供了一个直观…

VS 调试Hololens 2工程报错 有未经处理的异常: Microsoft C++ 异常:

原因是unity 少安装了XR工具包 安装完后重新用unity打包,然后vs打开打包出来的工程,电脑和眼镜用usb连接,直接运行调试就可以了

养鸭场的污水怎么处理

养鸭场的污水怎么处理 养鸭场废水处理是现代农业管理中至关重要的环节之一。随着养殖业规模的扩大和环保要求的提高,有效处理养鸭废水已成为一个迫切的挑战。本文将介绍养鸭场废水的特点及处理方法,并重点讨论各种先进的废水处理设备,包括生物…

word中图片位置问题(后续遇到问题再更新)

问题1:图片插入后显示不全 具体表现为:复制黏贴、或者插入图片后,出现插入的图片显示不全,或者不显示。 例如: 这是因为:图片被设定了固定行距 解决方案:ctrl1 效果: 问题2&am…

Elasticsearch进阶篇(一):Elasticsearch写入原理深入详解

Elasticsearch写入原理深入详解 1. ES相关问题 引用官方文档地址:分片内部原理 | Elasticsearch: 权威指南 | Elastic 为什么Elasticsarch是近实时,而不是准实时? 为什么文档的CRUD (创建-读取-更新-删除) 操作是实时的? Elast…

FineReport报表如何在单元格中显示本地图片(图片地址已存储到MySQL数据库中)

帆软帮助文档对应查看链接:https://help.fanruan.com/finereport/doc-view-854.html?source4#需求:在设计FineReport报表时,想在单元格中显示图书信息对应的图片,图片路径已存储到MySQL数据库中 一、查询数据库 查询MySQL中图书…

为什么defineProps宏函数不需要从vue中import导入?

前言 我们每天写vue代码时都在用defineProps,但是你有没有思考过下面这些问题。为什么defineProps不需要import导入?为什么不能在非setup顶层使用defineProps?defineProps是如何将声明的 props 自动暴露给模板? 举几个例子 我们…

【算法面试题】-06

智能成绩表 题目描述 小明来到学校当老师&#xff0c;需要将学生按考试总分或单科分数进行排名&#xff0c;你能帮帮他吗&#xff1f; 输入描述 第 1 行输入两个整数&#xff0c;学生人数 n 和科目数量 m。 0 < n < 100 0 < m < 10 第 2 行输入 m 个科目名称&…

Singularity(三)| 将docker转化为singularity容器

Singularity&#xff08;三&#xff09;| 将docker转化为singularity容器 Singularity 容器格式 Singularity 容器存在两种不同的格式&#xff08;或者称为状态&#xff09;&#xff1a; 适用于生产的压缩的 只读 singularity 镜像文件&#xff08;Singularity Image File&…

果冻废水处理设备的技术特点

诸城市鑫淼环保小编带大家了解一下果冻废水处理设备的技术特点 1.果冻废水处理设备的工作原理 果冻废水处理设备采用了先进的物理、化学和生物处理技术&#xff0c;通过预处理、沉淀、生化处理等步骤&#xff0c;将果冻废水中的有害物质去除或转化为无害物质&#xff0c;从而达…

探索机器学习:智能时代的魔法

在智能科技的浪潮中&#xff0c;机器学习如同一股神秘的力量&#xff0c;悄然改变着我们的世界。它不仅仅是编程代码的延伸&#xff0c;更是一种让机器通过“学习”来解决问题的魔法。本文将带你深入了解机器学习的奥秘&#xff0c;探索它的世界&#xff0c;并展望未来的无限可…

探索性数据分析EDA的数据可视化

大家好&#xff0c;数据可视化是探索性数据分析的重要组成部分&#xff0c;因为它有助于分析和可视化数据&#xff0c;以获得对数据分布、变量之间的关系和潜在异常值的启示性见解。Python具有丰富的库&#xff0c;可以快速高效地创建可视化。 在Python中&#xff0c;通常使用…