tplink安防监控raw文件转码合成mp4的方法

news2024/11/27 0:25:25

Tplink(深圳普联)专业的网络设备生产商,属于安防监控市场的后来者。Tplink的安防产品恢复了很多,其嵌入式文件系统也一直迭代更新。今天要说的案例比较特殊,其不仅仅要求恢复,还要求能解析出音频并且要求画面和声音实现“同步”。我们来看看这个特殊的恢复案例:

故障存储:

TOSHIBA DT02ABA400VKQ0H0R

故障现象:

这台TPLINK录像机做过初始化操作,客户需要指定时间段的视频,经过使用CHS零壹视频恢复程序监控版扫描,已经成功保存了数据。但是由于情况特殊涉及到取证问题,客户提出两个要求:

  1. 能否恢复音频
  2. 能否保证画面和声音的“同步”

客户提出这两个要求,是因为其查看设备时发现,通过手机APP可以下载扩展名为mp4的文件,播放时画面和声音都有的。这说明摄像头具备音频采集功能且录像机也具备音频流接收的功能,基于此,硬件上采集音频的条件是满足的。

故障分析:

从恢复角度来讲CHS零壹视频恢复程序监控版已经很好的履行了自己的职责:“在被初始化的大容量存储设备上找到指定时间的视频文件”。客户的两个请求实则已经超出了数据恢复的范畴,因为这个涉及到的是把RAW视频和音频数据进行转码和打包成mp4文件。由于各个厂商的转码/打包都属于内部算法涉及到商业机密,在早期除了大华和海康提供了转换的工具(某段时间甚至开放过API),但是随着竞争的激烈,这些都统统不存在了。之后做为头部厂商的海康、大华、天地伟业开发了各自的RAW播放器,这种播放器可以直接解码RAW视频和音频,这样就实现了“画面”和“声音”的同步,但是让人遗憾的是除了头部厂商之外其它安防厂商并不提供RAW播放器,这个名单包含tplink!

想要实现“画面”和“声音”的同步,从现有的恢复、修复视频、音频经验能得出结论:

  1. RAW视频编码(这里是265)需要转码成HEVC编码,这两种编码虽然本质上相同,但分属两个不同组织制定,为了符合相应的规范是很有必要转码的。
  2. RAW音频编码,这个分为两种一种是压缩编码(如aac),一种是高清编码(如sowt)。同样为了符合相应的规范是很有必要转码的。
  3. 同步问题,所谓的同步,是在解码器解码时在解一帧画面时同时解码一帧或多帧音频。也就是说同一个mp4文件中至少有两个轨道,即视频和音频轨道,这两个轨道是底层轨道,最终需要汇集到一个逻辑轨道,保证同步效果。

   当然这个又涉及到不同速率调整,以及对PCR时间的转换,MP4中有DTS和PTS两个时间概念也是需要考虑的。

  1. 需要对mp4/mov/3GP等qt类视频文件结构极其熟悉才可以做到心中有底,很多人可能对mp4文件有误解,认为mp4是一类视频格式,实际上mp4仅仅是一个容器而已,因为mp4可以把不同的视频和音频编码打包到一个文件,就像一个瓶子一样,至于瓶子中放什么东西,mp4并不关注,只要符合它要求的就是合法的(比如瓶子里灌装按卫生标准去生产的饮料就可以上市销售),合法的编码就可以得到播放器(比如基于ffmpeg的播放器或者编辑软件)的解码,所以我们要做的就是努力去把所有一切做到符合mp4规范。

上边罗列这么多条足以说明转码和打包的难度之大,所以前期我们曾经建议客户和厂商联系来获取相应的技术支持,但是很遗憾厂商不提供这样的服务。经过客户不断和我们沟通,做为数据恢复从业者深感责任重大,本着遇到困难至少应该尝试着去解决的原则,我们接下了这个烫手的山芋。

故障处理:

通过客户传来的mp4文件确定了转码后的视频编码为HVC1,音频则为A-law(一种准高清PCM类编码)。

图1:mp4文件的音视频编码

STEP1:先把指定时间段的视频文件定位到并保存,做好转换的准备。

STEP2:编写一个“CHS安防监控MP4合成程序TPLINK版”的程序,主要处理如下问题:

  1. 通过一个好的mp4样本文件得到相应的参数信息
  2. 把安防RAW音视频转换成对应的HVC1和PCM,需要分离RAW音频和视频块,然后再转码
  3. 最后合成mp4文件

程序以文件为单位进行一个个转换和合成的操作(如图2)。

图2:CHS安防监控MP4合成程序TPLINK版 合成程序

STEP3:查看合成文件,可以看到文件的音频和视频编码都已经转码成功,至此转码/合成工作完成,总共6条视频,合成后达到画面和声音同步的完美效果,最后和客户核对数据,其对结果极其满意。

图3:共计转码/合成6条MP4视频

图4:合成MP4文件的视频编码

图5:合成MP4文件的音频编码

在完成了转码/合成工作后,思考一个问题“是否所有的安防监控产品都可以如何这般处理?”,这个问题至少理论上是可行的。实际上操作起来可能难度大一些,就以TPLINK为例,型号不同可能厂家用的转码/合成方案会有差异,所以不具备通用性,但是可以模块化处理,比如TPLINK的做成不同的型号对应相应的转码/合成模块,当然这个工作量就相当大了。

这就是tplink安防视频raw音视频转码合并mp4的方法,大家在遇到此类问题时,可以和我们联系!

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

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

相关文章

入门Rabbitmq

1、什么是消息队列 消息队列:应用之间传递消息的方式,允许应用程序异步发送和接收消息,不需要连接对方 消息:文本字符串,对象.... 队列:存储数据。先进先出 2、应用场景 ①库存系统挂掉之后 MQ会等待&…

AI PPT生成器,一键在线智能生成PPT工具

PPT作为商业沟通和教育培训中的重要工具,PPT制作对于我们来说并不陌生。但是传统的PPT制作不仅耗时,而且想要做出精美的PPT,需要具备一定的设计技能。下面小编就来和大家分享几款AI PPT工具,只要输入主题,内容就可以在…

本地快速部署大语言模型开发平台Dify并实现远程访问保姆级教程

文章目录 前言1. Docker部署Dify2. 本地访问Dify3. Ubuntu安装Cpolar4. 配置公网地址5. 远程访问6. 固定Cpolar公网地址7. 固定地址访问 前言 本文主要介绍如何在Linux Ubuntu系统使用Docker快速部署大语言模型应用开发平台Dify,并结合cpolar内网穿透工具实现公网环境远程访问…

C# WPF入门学习主线篇(二十八)—— 使用集合(ObservableCollection)

C# WPF入门学习主线篇(二十八)—— 使用集合(ObservableCollection) 在WPF中,数据绑定是构建动态和响应式用户界面的关键。ObservableCollection是一个特别有用的集合类型,它不仅支持数据绑定,还…

在Tomcat中部署war包

1、准备war包 确保已经有一个有效的war包,该war包包含了web应用程序的所有内容; 2、停止tomcat服务器 在部署之前,确保tomcat服务器已经停止,进入tomcat的配置目录执行命令:[路径]/tomcat/conf; 在Linux…

windows系统实现应用程序开机即运行(不登录系统也行)

由于近期需要设置一个Java程序开机自启动,因此试了一下方法,总结了两点,一个是需要用户登录系统之后再启动,一种是不需要登录,只要开机就会启动。 先看准备工作,写一个启动脚本: echo on E: cd…

[STM32]万年历

[STM32]万年历 需要资料的请在文章末尾获取~ ​​ 01描述 使用原件:stm32f103c8t6最小系统板x1,0.96寸OLED显示屏四角x1,4x4矩阵按键x1; 键位对应图: 1, 2, 3, 4------------- 切换页面 设置…

Dynamics 365 on-premise 隐藏高级查找导出按钮

提示 着急可以直接看结果代码部分 背景 Dynamics 365 on-premise中有个高级查找的功能,查询的结果支持导出,如下图 业务反馈这个有数据安全风险,要修改显示规则。 一开始想着能用RibbonWorkbench改,就很爽快得答应了业务。结果用RibbonWorkbench改不了。 反复尝试 既…

AI早班车2024.5.21

先一步知道AI未来! 全球AI新闻速递 1.中国电信:发布万亿参数语义模型 Tele-FLM-1T。 2.蚂蚁图数据库再获LDBC权威测试世界第一。 3.昇腾 AI 算力性能已超英伟达 A100,近半中国大模型选择昇腾技术路线。 4.中国气象局发布“风清”、“风雷”…

造价信息网工程造价信息最新明细

提供造价信息网工程造价信息、厂商报价市场价,交通工程造价信息,电网工程造价信息,园林苗木绿化造价信息,工程定额免费资源可在 祖国建材通 www.zgjct.com 查询获取下载 造价信息网工程造价信息更新明细如下: 直辖市 …

深入浅出通信原理 | 通信系统模型中的基带信号的发送与接收

微信公众号上线,搜索公众号小灰灰的FPGA,关注可获取相关源码,定期更新有关FPGA的项目以及开源项目源码,包括但不限于各类检测芯片驱动、低速接口驱动、高速接口驱动、数据信号处理、图像处理以及AXI总线等 本节目录 一、通信系统模型中的信…

使用ERNIE Bot SDK和一条核心prompt开发AI“划拳“游戏!

项目背景 划拳是汉族民间饮酒时一种助兴取乐的游戏,起源于汉代。 游戏规则如下: 两人同时伸出一只手,先攥起拳头,代表财不外露。再伸出一到五个手指,表示从零到五之间的数字,同时嘴里大声喊出两人所出数字之和。 两人…

构建智慧高速公路:软件管理平台业务架构解析

随着交通网络的不断完善和技术的快速发展,智慧高速公路正成为交通领域的重要发展方向。在智慧高速公路系统中,软件管理平台扮演着关键的角色,它不仅是管理各种设备和系统的核心,还承担着数据监控、故障诊断、维护管理等重要任务。…

Linux 一键部署Nginx+ModSecurity

前言 ModSecurity 是 Apache 基金会的一个开源、高性能的 Web 应用程序防火墙(WAF),它提供了强大的安全规则引擎,用于检测和阻止各种攻击行为,如 SQL 注入、XSS 跨站点脚本攻击等。而 nginx 是一个高性能的 Web 服务器,常用于处理大量的并发请求,具有很高的负载均衡能力…

智慧在线医疗在线诊疗APP患者端+医生端音视频诊疗并开处方

智慧在线医疗:音视频诊疗新纪元 🌐 智慧医疗新篇章 随着科技的飞速发展,智慧医疗正逐步走进我们的生活。特别是在线医疗,凭借其便捷、高效的特点,已成为许多患者的首选。而其中的“智慧在线医疗患者端医生端音视频诊疗…

SQLCMD完全指南:掌控 SQL Server

SQL Server 拥有被广泛认可的一流管理工具——SQL Server Management Studio(简称 SSMS)。它提供了丰富的功能,极大地简化了开发人员和数据库管理员(DBA)的工作。 目录 SQLCMD 入门使用 SQLCMD 连接 SQL ServerSQLCMD …

[信号与系统]有关滤波器的一些知识背景

前言 最近在看FIR和IIR,本文作为前置,需要在理解这两种滤波器之前阅读。 本文内容会详细讲述一下有关滤波器的技术要求。 选频滤波器的频率响应 选频滤波器(Selective Frequency Filter)的频率响应是描述该滤波器在不同频率下…

浙江保融科技2025实习生校招校招笔试分享

笔试算法题一共是有4道,第一道是手搓模拟实现一个ArrayList,第二道是判断字符串是否回文,第三道是用代码实现1到2种设计模式。 目录 一.模拟实现ArrayList 二.判断字符串是否回文 ▐ 解法一 ▐ 解法二 ▐ 解法三 三.代码实现设计模式 一…

文件扫描工具哪个好?便捷的文件扫描工具推荐

对于初入职场的大学毕业生,申请就业补贴是一项不可忽视的福利。 它不仅能够为新生活带来经济上的缓解,也有助于职业生涯的顺利起步。面对申请过程中需提交的文件,如纸质劳动合同,不必烦恼。市面上众多文件扫描软件能助你一臂之力…

C#使用NPOI库实现Excel的导入导出操作——提升数据处理效率的利器

文章目录 一、NPOI库简介二、安装与引入三、Excel的导入操作1.CSV格式导入2.XLS格式导入3. XLSX格式导入 四、Excel的导出操作1. CSV格式导出2. XLS格式导出3. XLSX格式导出 五、NPOI库的应用优势与改进方向总结 在日常工作学习中,我们经常需要处理Excel文件&#x…