视频监控系统中,中心录像服务器的录像文件实际大小和理论值相差很大的问题解决

本文主要是介绍视频监控系统中,中心录像服务器的录像文件实际大小和理论值相差很大的问题解决,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、现象描述

二、视频监控的录像文件计算

(一)计算方法

1、仅视频部分

2、视频和音频部分

3、使用平均码率

(二)计算工具

1、关注威迪斯特公众号

2、打开“计算容量”的小工具

三、原因分析

(一)实际码流检测

(二)检查配置

1、接入方式

2、通道配置

(三)分析原因

四、问题解决

(一)更改接入方式

(二)监测码率

(三)统计录像容量


一、现象描述

        使用AS-V1000视频监控平台录像服务器进行录像,在进行录像文件下载时,发现下载的录像文件大小与理论值的相差很大,将近10倍。如下图编号5的摄像机的数据:

        理论值是12GB,而统计下来的实际值是1.3G,是什么原因造成的?

二、视频监控的录像文件计算

(一)计算方法

1、仅视频部分

        使用码流来计算。码流(以kbit/s为单位)除以8,然后乘以录像时间(秒为单位),最后除以1024再除以1024,得到的结果就是以GB为单位的文件大小。

2、视频和音频部分

        视频部分如上节所述。

        音频部分需要考虑采样率、位深和声道数。文件大小 = 采样率 × 位深 × 声道数 × 时长 ÷ 8。得出的结果是以字节为单位,需要根据实际情况转换为适当的单位(如MB或GB)

        然后将视频和音频部分的文件大小相加,得到总的录像文件大小。

3、使用平均码率

        平均码率(以kbit/s为单位)除以8,然后乘以录像时间(秒为单位),最后除以1024再除以1024,结果就是以GB为单位的录像文件大小。

以上这些计算方式都是基于理论值,实际文件大小可能会因为压缩算法、编码方式、音频和视频格式以及具体参数等因素而有所不同。

(二)计算工具

1、关注威迪斯特

         在微信中选择“添加朋友”,然后选择“公众号”,输入“威迪斯特”或者“vidisit”,就可以看到苏州威迪斯特。如下图示,第一个就是“苏州威迪斯特”。

2、打开“计算容量”的小工具

        关注以后,进入威迪斯特,出现如下界面,按照图示进行操作。

        弹出如下界面:

        可以通过选择或填入相关参数(例如码率、分辨率、摄像头个数、天数),进行录像文件大小理论值的计算。

三、原因分析

(一)实际码流检测

        使用视频监控平台的C/S客户端,可以查看摄像头视频的实时码率只有60K左右,如下图示:

        进入IPC的配置,摄像头配置页面可以看到,设置的码率为512K

实际画面码率与配置码率相差了大约8~9倍,由此可以推测是在接入时配置出现了问题

(二)检查配置

1、接入方式

         进入视频监控平台的管理端,查看该设备的配置,发现摄像头接入时使用的是RTSP的方式接入。

2、通道配置

         然后进入通道配置,发现RTSP可能是子码流方式,如下图示:

   

(三)分析原因

        客户的设备是海康的网络摄像机,海康网络摄像机RTSP取流有两种方式:

        (1)主码流取流:rtsp://<用户名>:<密码>@<ip>:554/h264/ch1/main/av_stream

        (2)子码流取流:rtsp://<用户名>:<密码>@<ip>:554/h264/ch1/sub/av_stream

        由此可以看到,在配置时使用的子码流取流。

        主码流通常码流较大,清晰度高;而子码流的码率较小,图像较流畅,但画质相对较低。
        因此,可以初步判断,实时视频码率较低的原因可能就是取流时配置了子码流而非主码流的地址。

四、问题解决

        根据上一章节分析,需要更改接入方式和前端设备配置

(一)更改接入方式

        将关联RTSP地址中的sub,更改为main,使设备在取流时选择主码流。

(二)监测码率

        使用C/S客户端,可以查看摄像头视频的实时码率,如下图示:

        可以看到码率接近512K左右。

(三)统计录像容量

        发现实际录像文件大小与理论值相近,实际值为10.5G,比理论值差8%左右。如下图所示:

        问题得到了解决!


文章正下方可以看到我的联系方式:鼠标“点击” 下面的 “威迪斯特-就是video system 微信名片”字样,就会出现我的二维码,欢迎沟通探讨。


这篇关于视频监控系统中,中心录像服务器的录像文件实际大小和理论值相差很大的问题解决的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/980869

相关文章

Vue3绑定props默认值问题

《Vue3绑定props默认值问题》使用Vue3的defineProps配合TypeScript的interface定义props类型,并通过withDefaults设置默认值,使组件能安全访问传入的... 目录前言步骤步骤1:使用 defineProps 定义 Props步骤2:设置默认值总结前言使用T

JWT + 拦截器实现无状态登录系统

《JWT+拦截器实现无状态登录系统》JWT(JSONWebToken)提供了一种无状态的解决方案:用户登录后,服务器返回一个Token,后续请求携带该Token即可完成身份验证,无需服务器存储会话... 目录✅ 引言 一、JWT 是什么? 二、技术选型 三、项目结构 四、核心代码实现4.1 添加依赖(pom

504 Gateway Timeout网关超时的根源及完美解决方法

《504GatewayTimeout网关超时的根源及完美解决方法》在日常开发和运维过程中,504GatewayTimeout错误是常见的网络问题之一,尤其是在使用反向代理(如Nginx)或... 目录引言为什么会出现 504 错误?1. 探索 504 Gateway Timeout 错误的根源 1.1 后端

Web服务器-Nginx-高并发问题

《Web服务器-Nginx-高并发问题》Nginx通过事件驱动、I/O多路复用和异步非阻塞技术高效处理高并发,结合动静分离和限流策略,提升性能与稳定性... 目录前言一、架构1. 原生多进程架构2. 事件驱动模型3. IO多路复用4. 异步非阻塞 I/O5. Nginx高并发配置实战二、动静分离1. 职责2

解决升级JDK报错:module java.base does not“opens java.lang.reflect“to unnamed module问题

《解决升级JDK报错:modulejava.basedoesnot“opensjava.lang.reflect“tounnamedmodule问题》SpringBoot启动错误源于Jav... 目录问题描述原因分析解决方案总结问题描述启动sprintboot时报以下错误原因分析编程异js常是由Ja

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

深度剖析SpringBoot日志性能提升的原因与解决

《深度剖析SpringBoot日志性能提升的原因与解决》日志记录本该是辅助工具,却为何成了性能瓶颈,SpringBoot如何用代码彻底破解日志导致的高延迟问题,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言第一章:日志性能陷阱的底层原理1.1 日志级别的“双刃剑”效应1.2 同步日志的“吞吐量杀手”

MySQL 表空却 ibd 文件过大的问题及解决方法

《MySQL表空却ibd文件过大的问题及解决方法》本文给大家介绍MySQL表空却ibd文件过大的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录一、问题背景:表空却 “吃满” 磁盘的怪事二、问题复现:一步步编程还原异常场景1. 准备测试源表与数据