大疆炸机后MOV修复方法(DJI Inspire 3)

dji大疆可以说是无人机中的华为,产品线之广性能之高让高傲的美国人侧面,质量和性价比才是王道。另外产品线的细分也是制胜法宝,无论是手持、农用机、特殊无人机还是影视级产品DJI都有涉及,给人的感觉就是在无人机细分方面它已经无孔不入。Dji inspire3是针对影视级市场推出的产品,其支持8K视频使用的是aprh高清视频编码。过新编码导致此类视频目前暂时没有修复程序可以修复,下面我们来看下这个有点另类的案例。

故障文件:

X032C0008_240616_08R6.MOV/12.58G

故障现象:

在拍摄时不知道是原因导致了无人机“炸机”,查看文件时发现最后一条素材文件X032C0008_240616_08R6_0.MOV无法播放。这个情况实际上和我们处理过很多摄像机断电的情况是一样的(比如索尼摄像机断电),无人机拍摄也是需要电池给摄像机供电的,正常情况下当终端下达停止拍摄指令时无人机管理器系统会在后台对拍摄的RAW文件进行打包封装。

而“炸机”很明显是一种意外事件,当无人机失控的时候,个人推测肯定会先切断摄像机的电源,而启动“最小模式”保证炸机之后一些定位设备能向终端发送信号(比如GPS定位信号方便找回)。当意外发生时是无法保证无人机管理程序能正常履行“对RAW文件打包/封装成MOV”的职责,因为此时管理程序有更重要的事情去做。这就是为什么把“炸机”理解为摄像机断电的理论依据,当然实际情况也验证了这个想法。

可以看到损坏文件的文件头,其类型为qt,说明是高清类视频文件。1号扇区可以看到有一些自定义的数据,一个公司是否认真做事儿从这些自定义数据中就能看出,MOV类文件是允许自定义TRAK存在的,当然这个不是必须的。dji用这些自定义的TRAK写入了一些基本信息,也包含一些视频属性元数据, 这样做的优势是拍摄后的文件有了“校验”,可以确定元文件是否被修改过来保证视频是否原始。反观国内一些小厂,自以为把视频文件做到符合qt类规范就很厉害了,硬件优化做不到位可以理解,但是软件方面也不下功夫,只能说是态度问题。这一类厂商基本上是昙花一现,制造一堆孤品。

图1:损坏文件的文件头截图

故障分析:

使用”CHS QT文件结构分析程序“进行分析,可以看到视频编码是aprh(Apple ProRes RAW HQ),没看错,这个Apple就是美国苹果公司。PRORES是Apple为了实现RAW级的视频而发布的编码,可以实现2K/4K/8K甚至更高级别的视频编码。而QT文件结构也是APPLE公司的杰作,我们一直说QT只是一种视频“容器“,可以把不同的编码按规范放进这个”容器“,很显然苹果不甘心只当“花瓶”,所以搞出了Apple Prores高清编码,对象很明确就是影视工作者。Apple Prores何时发布没有查过,或许是在老乔同志离开苹果创建“皮克斯工作室(Pixar Animation Studio”的时候吧 ~~~ :-) :-)  :-)

图2:aprh高清视频编码 made in Apple  :-)

故障处理:

经过进一步分析发现aprh编码存在一些dji自定义值,目前尚不清楚dji是否对这种编码做了细节上的改变。不过按照苹果的行事风格,这种可能性应该不大,apple就是规矩的代名词。虽然和以往的apple prores编码略有不同,但基于苹果优良的传承性,还是发现了一些规律,剩下的事儿就是把这些规律转换成代码,用程序去执行循环的操作。由于Dji Inspire 3面对的就是影视群体,所以根据规划我们会把此类视频的修复放到CHS零壹视频修复程序影视版中,目前影视版的恢复和修复模块还在开发中,各位看官们敬请期待!

图3:aprh编码和apcn等高清编码的血缘关系明显

STEP1:使用CHS零壹视频恢复程序影视版的修复模块先进行修复

点击“样本文件”->点击“损坏文件”->修复

STEP2:等待修复完成,可以看到程序已经成功解析出来样本文件的类型、摄像机品牌、轨道数量等参数。

STEP3:修复完成后可以看到程序已经列出了修复级别、时长等参数,由于编码特殊试用播放是无法解码的。

STEP4:修复完成后解码变成了一个问题,win版下的quicktime是无法解码的(win版可以说是阉割版和mac版差太多了而且很久不更新),虽然解码出一些参数信息,但是画面始终无法解析。

STEP5:至次修复工作完成,但是找一个win版播放器成了一个大麻烦,最后使用了Assimilate解决了问题(PS:感谢DIT群中cwws老师提供程序及安装方法),可以看到解码成功了,至次修复工作完成。

这就是大疆炸机后MOV(DJI Inspire 3) 的修复方法,大家在遇到此类问题时,可以和我们联系。

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

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

相关文章

java泛型学习

没有java泛型会存在的问题 假设我们有一个方法,希望通过传递不同类型的参数,输出不同类型的对象值。正常情况下我们可能会写不同的方法来实现,但是这样会导致类不断增加,并且类方法很相似,不能够复用。进而导致类爆炸…

基于顺序存储的环形队列算法库构建

学习贺利坚老师基于数组的环形队列 数据结构之自建算法库——顺序环形队列_下空队列q中依次入队列数据元素abc-CSDN博客文章浏览阅读5.2k次,点赞6次,收藏6次。本文针对数据结构基础系列网络课程(3):栈和队列中第9课时环形队列的存储及基本操…

华为---理解OSPF Route-ID(五)

9.5 理解OSPF Route-ID 9.5.1 原理概述 一些动态路由协议要求使用Router-ID作为路由器的身份标示,如果在启动这些路由协议时没有指定Router-ID,则默认使用路由器全局下的路由管理Router-ID。 Router-ID选举规则为,如果通过Router-ID命令配置了Router-…

1.22 LeetCode总结(基本算法)_位运算

进制的概念 进制即进位计数制,是利用固定的数字符号和统一的规则的带进位的计数方法。 任何一种进位计数制都有一个基数,基数为 X 的进位计数制称为 X 进制,表示每一个数位上的数运算时都是逢 X 进一。 504. 七进制数 手法1:当…

APP启动流程解析

简单概括启动微信的流程就是: 1.Launcher通知AMS 要启动微信了,并且告诉AMS要启动的是哪个页面也就是首页是哪个页面 2.AMS收到消息告诉Launcher知道了,并且把要启动的页面记下来 3.Launcher进入Paused状态,告诉AMS&#xff0c…

[FreeRTOS 基础知识] 互斥访问与回环队列 概念

文章目录 为什么需要互斥访问?使用队列实现互斥访问休眠和唤醒机制环形缓冲区 为什么需要互斥访问? 在裸机中,假设有两个函数(func_A, func_B)都要修改a的值(a),那么将a定义为全局变…

css-vxe列表中ant进度条与百分比

1.vxe列表 ant进度条 <vxe-column field"actualProgress" title"进度" align"center" width"200"><template #default"{ row }"><a-progress:percent"Math.floor(row.actualProgress)"size"s…

Java程序之可爱的小兔兔

题目&#xff1a; 古典问题&#xff0c;有一对兔子&#xff0c;从出生后第3个月起每个月都生一对兔子&#xff0c;小兔子长到第三个月后每个月又生一对兔子&#xff0c;假如兔子都不死&#xff0c;问每个月的兔子总数为多少? 程序分析&#xff1a; 兔子的规律为数列1,1,2,3,…

C++基础知识——《缺省参数》和《函数重载》

P. S.&#xff1a;以下代码均在VS2019环境下测试&#xff0c;不代表所有编译器均可通过。 P. S.&#xff1a;测试代码均未展示头文件stdio.h的声明&#xff0c;使用时请自行添加。 博主主页&#xff1a;Yan. yan.                        …

【Android进阶学习】Android-广播接收器(Broadcast-Receivers)

android:theme“style/AppTheme” > 现在&#xff0c;无论什么时候Android设备被启动&#xff0c;都将被广播接收器MyReceiver所拦截&#xff0c;并且在onReceive()中实现的逻辑将被执行。 有许多系统产生的事件被定义为类Intent中的静态常量值。下面的表格列举了重要的系…

微积分-导数1(导数与变化率)

切线 要求与曲线 C C C相切于 P ( a , f ( a ) ) P(a, f(a)) P(a,f(a))点的切线&#xff0c;我们可以在曲线上找到与之相近的一点 Q ( x , f ( x ) ) Q(x, f(x)) Q(x,f(x))&#xff0c;然后求出割线 P Q PQ PQ的斜率&#xff1a; m P Q f ( x ) − f ( a ) x − a m_{PQ} \…

AES 高级加密加速器实验

1、AES介绍 Kendryte K210 内置 AES&#xff08;高级加密加速器&#xff09;&#xff0c;相对于软件可以极⼤的提高 AES 运算速度。 AES 加速器支持多种加密/解密模式&#xff08;ECB,CBC,GCM&#xff09;,多种⻓度的 KEY&#xff08;ECB,CBC,GCM&#xff09;的运算。 AES 加…

Linux常用环境变量

Linux常用环境变量 一、常用的默认的shell环境变量二、环境变量 PATH三、持久化修改环境变量四、常用的环境变量 一、常用的默认的shell环境变量 1、当我们在shell命令行属于一个命令&#xff0c;shell解释器去解释这个命令的时候&#xff0c;需要先找到这个命令. 找到命令有两…

鸿蒙 HarmonyOS NEXT星河版APP应用开发—上篇

一、鸿蒙开发环境搭建 DevEco Studio安装 下载 访问官网&#xff1a;https://developer.huawei.com/consumer/cn/deveco-studio/选择操作系统版本后并注册登录华为账号既可下载安装包 安装 建议&#xff1a;软件和依赖安装目录不要使用中文字符软件安装包下载完成后&#xff0…

【Linux 基础】文件与目录管理

1. 文件和目录的基本概念 文件&#xff1a;是数据的集合&#xff0c;可以是文本、图像、视频等。 目录&#xff08;也称为文件夹&#xff09;&#xff1a;是文件和子目录的集合&#xff0c;用于组织文件。 2. 目录和路径 绝对路径&#xff1a;从根目录&#xff08;/&#x…

2021-03-29:加密与解密

前段时间导师分配的任务主要是看《加密与解密》这本书&#xff0c;“书本写的很详细&#xff0c;认真看会看懂的&#xff01;” 是的啊&#xff0c;书本写的很详细&#xff0c;可是作为一个没基础的小白看起来还是挺吃力的&#xff0c;概念一个接一个的出现&#xff0c;虽然看…

Android应用--简、美音乐播放器添加电话监听

3. 控制音量 4. 获取专辑图片 5. 在线下载歌词 6. 在线搜索音乐 7. 在线下载音乐 8. 实现有趣功能–甩歌 9. 界面美化–实现专辑倒影 10.实现左右界面切换 11.实现在通知栏显示播放状态 12.实现音乐播放的桌面小控件 暂时想到这些功能&#xff0c;如果朋友们有什么建…

Day7 —— 大数据技术之Hive

Hive快速入门系列 Hive的概述什么是Hive&#xff1f;使用Hive的原因 Hive架构Hive安装Hive配置文件修改启动Hive以命令行方式启动&#xff08;在$HIVE_HOME/bin目录下&#xff09;以JDBC连接启动&#xff08;beeline方式连接&#xff09; Hive基本操作Hive数据库操作Hive表操作…

css 动画

transform的3D动画 3D形变函数会创建一个合成层来启用GPU硬件加速 translate transform: translateY(100px);transform: translateX(100px);transform: translateZ(100px);transform: translate3d(100px,100px,100px); // x,y,z的简写rotate deg弧度 transform: rotateX(-40…

C语言学习记录20240622

这次需要用 C 语言库 Allegro 写爆破彗星游戏。项目有一些描述如需要绘制飞船、彗星、子弹&#xff0c;需要响应按键实现飞船加速、减速、转向、开火&#xff0c;需要绘制弹道&#xff0c;需要实现彗星旋转、缩放&#xff0c;需要碰撞检测&#xff0c;需要显示计分。 这些用 w…