索尼RSV视频修复方法论视频文件修复时样本文件的三同

索尼RSV类的文件修复案例有很多,程序操作也很简单没什么可说的,这次这个索尼ILCE-7SM3的案例就是为了让大家更好的认识视频修复中我称之为“三同“的重要性,想要恢复的效果好必须要把准备工作做到位。

故障文件:45.1G RSV文件

故障现象:

索尼ILCE-7SM3摄像机由于拍摄时间过长导致断电,断电后生成一个45.1G的RSV文件,无法播放也无法编辑。

故障分析:

有关索尼RSV产生的原理这个之前案例已经讲过了,不在赘述,有感兴趣的请查看其它修复案例。

故障处理:

这个案例在修复的过程中由于第一次提供的样本文件没有做到“二同“或者“三同”,所以导致修复后的文件无法正常解码。无论是恢复还是修复,我们在这里特别强调下对样本文件的要求,一定要严格遵守,否则会导致修复失败.

注意样本文件的要求如下:

  1. 同一摄像机,同参数(摄像机中的视频编码、曝光等等参数), 简称“二同” ,如果是剪辑软件则要再加一个:同一剪辑软件(可选)生成的文件,简称“三同”
  2. 传输时如果是通过QQ和微信等通讯APP,一定要先把文件压缩再传输,这一点极为重要,因为多数通讯APP会为了方便传输会对原始文件进行转码压缩,而转码会丧失原有的编码特征,而使用压缩包会保护视频文件的完整性!

第2点很好判断,通过文件名即可得到信息。那么如何判断第1点呢?

事务的难易是有级别的,第1点中最好判断的就是同一摄像机,这个是最直观的。而较难的则是同参数,因为这些信息过于专业,怎么办?简单的办法是查找前后连续文件名的文件,比如前一个或者后一个,这两个文件是极大可能同参数;另外一个方法就是咨询使用人员,一般根据环境不同重新设置参数的都是比较专业的摄像师,所以可以让重新设置成同参数生成一个文件做样本也可以。

我们来看看第一次出错时客户所提供的样本文件,此文件信息如下:

样本文件名: BS3 23530_0003.MP4

故障文件名: BS3 23530_0007.RSV

可以看到和故障文件名并没有连续性,中间至少差了3个文件,如下图修复后的主要问题是播放器只能解析第一帧的画面,后续帧无法解析画面定格,而音频则正常解析。

上图:样本文件和损坏文件并不是“二同”的导致修复失败

为什么会产生这样的结果呢?为何音频正常解析而画面却永远定格在第一帧?

回答这个问题之前,有必要了解下QT视频格式的结构。QT格式固定对视频的编码方法(如图像深度,宏信息)这些是保存在单独的STSD原子中,这个和264、265有明显区别。所以播放器在解码时需要先定位STSD原子,获取了图像信息后再进行解码,所以当STSD原子中编码信息不同时就会导致解码出错,大概流程如下:

播放器解码->查找STSD原子获取编码信息->根据编码信息建立模型->加载视频帧数据到模型中->解码完成

所以播放器在获取STSD原子后只负责建立模型,至于模型和视频帧数据是否吻合,这个播放器不负责,因为QT规范中并没有校验这一项,所以两者不匹配导致了显示的画面出错,比如定格或者花帧。

知道了这些就可以反推定格第一帧的原因了,那就是编码中有部分参数可能相同。

经过和客户沟通我们得到信息在BS3 23530_0007.RSV之后还有一个008文件,这两个文件参数应该相同,重新使用008做为样本文件,进行修复。步骤如下:

STEP1: 点击选择文件打开好的样本文件,然后点击下一步。

STEP2:等待修复完成。

STEP3:扫描完成后直接查看,程序会列出文件名、是否修复、修复级别、时长、文件长度等参数,点击文件右侧可以预览前几秒视频。这次的修复结果就正常了,视频画面和音频都没有任何问题。

修复级别为四种,从一星到四星,四星是效果最好的。

这就是索尼rsv文件的修复方法,大家在遇到此类问题时,可以和我们联系!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

工具篇--4 消息中间件-RabbitMq 模型介绍

1 介绍: RabbitMQ 是一个开源的消息中间件,它实现了 AMQP(高级消息队列协议)标准,并且支持多种语言和操作系统,包括 Java、Python、Ruby、PHP、.NET、MacOS、Windows、Linux 等等。RabbitMQ 提供了可靠的消息传递机制…

竞赛无人机搭积木式编程(三)---用户自定义航点自动飞行功能(全局定位,指哪打哪)

竞赛无人机搭积木式编程(三)---用户自定义航点自动飞行功能(全局定位,指哪打哪) 无名小哥 2023年6月10日 用户通过对前面两讲中全国大学生电子设计竞赛真题植保无人机(2021)、送货无人机&#…

【UE 从零开始制作坦克】2-控制坦克移动(简单的移动效果)

效果 步骤 1. 新建蓝图类,父类选择“VehicleWheel(载具车轮)” 这里就命名为“TankWheel” 双击打开“TankWheel”,设置形状半径为40 2. 打开 “BP_West_Tank_M1A1Abrams” 选中“网格体(VehicleMesh)&…

JMeter参数化4种实现方式

目录 前言: 1 参数化释义 2 参数化实现 CSV实例 注意事项 前言: 在使用JMeter进行测试时,参数化允许您模拟不同的用户、不同的数据、不同的操作等,从而增加了测试的灵活性和复用性 1 参数化释义 什么是参数化?…

设计模式(十八):行为型之观察者模式

设计模式系列文章 设计模式(一):创建型之单例模式 设计模式(二、三):创建型之工厂方法和抽象工厂模式 设计模式(四):创建型之原型模式 设计模式(五):创建型之建造者模式 设计模式(六):结构型之代理模式 设计模式…

分布式数据库HBase

大数据基础-分布式数据库HBase 概述HBase简介HBase与传统关系数据库的对比分析 HBase数据模型数据模型概述数据模型相关概念数据坐标 HBase的实现原理HBase功能组件表和RegionRegion的定位HBase框架结构HMasterRegionServerHBase协作组件RegionColumnFamilyKeyValue小结 HBase运…

STM32单片机(六)TIM定时器 -> 第二节:TIM定时中断练习(定时器定时中断和定时器外部时钟)

❤️ 专栏简介:本专栏记录了从零学习单片机的过程,其中包括51单片机和STM32单片机两部分;建议先学习51单片机,其是STM32等高级单片机的基础;这样再学习STM32时才能融会贯通。 ☀️ 专栏适用人群 :适用于想要…

docker数据管理---数据卷,数据卷容器

在Docker中,数据卷(data volumes)和数据卷容器(data volume containers)是用于在容器之间共享和持久化数据的两种不同的机制。 一、数据卷 数据卷是一个特殊的目录或目录,可以绕过容器文件系统的常规层&a…

【RabbitMQ教程】第六章 —— RabbitMQ - 延迟队列

💧 【 R a b b i t M Q 教程】第六章—— R a b b i t M Q − 延迟队列 \color{#FF1493}{【RabbitMQ教程】第六章 —— RabbitMQ - 延迟队列} 【RabbitMQ教程】第六章——RabbitMQ−延迟队列💧 🌷 仰望天空,妳我亦是行人…

2023年前端面试高频考点HTML5+CSS3

目录 浏览器的渲染过程⭐⭐⭐ CSS 、JS 阻塞 DOM 解析和渲染 回流(重排)和重绘⭐⭐ 选择器 ID选择器、类选择器、标签选择器(按优先级高到低排序)⭐⭐ 特殊符号选择器(>,,~,空格&#xff0…

Stopwatch工具类计时器探究

搬砖的我们 特别是Java开发的童鞋们, 经常需要通过记录开始时间和结束时间,然后通过计算差值,得到时间差,如下面的代码: long start System.currentTimeMillis(); long end System.currentTimeMillis(); System.out.println(…

医疗设备都在用哪些晶振?

医疗设备是指用于医疗诊断、治疗、监测等方面的各种设备。随着科技的不断发展,医疗设备的功能不断增强,精度和稳定性也得到了大幅提升。在这些医疗设备中,晶振是非常重要的元件之一。本文将介绍医疗设备中常用的晶振类型及其特点。 一、晶振…

P20[6-8]编码器接口测速(软)

与外部中断编码器逻辑不同,此处编码器使用的是定时器方法 1.Encoder编码器部分: #include "stm32f10x.h" // Device header void Encoder_Init(void) { RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE); RCC_APB2PeriphClockCm…

阿里云弹性公网EIP收费价格表

阿里云弹性公网EIP怎么收费?EIP地域不同价格不同,EIP计费模式分为包年包月和按量付费,弹性公网IP可以按带宽收费也可以按使用流量收费,阿里云百科分享阿里云弹性公网IP不同地域、不同计费模式、按带宽和按使用流量详细收费价格表&…

Java泛型的使用

1.什么是泛型? 所谓泛型,就是允许在定义类、接口时通过 一个标识 表示类中某个属性的类型或者是某个方法的返回值及参数类型。这个类型参数将在使用时(例如,继承或实现这个接口,用这个类型声明变量、创建对象时&#…

取石子游戏——算法与编程

取石子游戏 目录 问题描述输入输出格式输入格式:输出格式: 输入输出样例输入样例#1:输出样例#1:提示信息 算法尼姆博奕 代码 问题描述 A l i c e Alice Alice和 B o b Bob Bob在玩取石子游戏,摆在他们面前的有 n n n堆…

RFID期末复习总结

一.概念部分 1.基础概念 射频识别无线电频率识别RFID 应答器:存放识别信息的电子数据载体 阅读器:将识别信息从应答器中读出(还可以写入数据) 应答器是统称,在各种专业场合有专业名字,比如射频卡&#…

2022 年全国硕士研究生入学统一考试管理类专业学位联考逻辑试题

2022 年全国硕士研究生入学统一考试管理类专业学位联考逻辑试题 一. 逻辑推理:第 26~55 小题,每小题 2 分,共 60 分。下列每题给出的 A、B、C、D、E 五个选项中,只有一项是符合试题要求的。 26.百年党史充分揭示了中国共产党为什么…

object类clone、finalize

2 什么是API API(Application Programming Interface,应用程序接口)是一些预先定义的函数。目的是提供应用程序与开发人员基于某软件可以访问的一些功能集,但又无需访问源码或理解内部工作机制的细节. API是一种通用功能集,有时公…

Linux操作系统——第四章 进程间通信

目录 进程间通信介绍 进程间通信目的 进程间通信发展 进程间通信分类 管道 System V IPC POSIX IPC 管道 什么是管道 匿名管道 管道读写规则 管道特点 命名管道 创建一个命名管道 匿名管道与命名管道的区别 命名管道的打开规则 system V共享内存 共享内存示意…