当前位置: 首页 > news >正文

浅压缩、深压缩、双引擎、计算机屏幕编码……何去何从?

专业视听领域尤其显示控制和坐席控制领域,最近几年最激动人心的技术,莫过于分布式了。

分布式从推出之日就备受关注:担心稳定性的,质疑同步性能的,怀疑画面质量的……

诚然,我们在此前见多了带着马赛克的模糊不清的监控画面,遇到过电脑上网刷个网页几秒钟不出来的事情。

这么不靠谱的网络上能担当起专业音视频所需要的高画质、高度同步和低延时?

但是分布式音视频带给人们的体验确实是革命性的,因此吸引了众多的行业精英倾其所能的投入研发。

路虽远行则将至,事虽难做则必成。

至今,无论过去对分布式持何种看法的主流视听领域的公司都在投入研发,并且提出了各自的解决方案。

因每个公司看问题的角度,解决问题的出发点不同,提出了不同的解决方案,浅压缩、深压缩、双引擎、计算机屏幕编码……眼花缭乱。

这些分布式方案都对音视频进行IP化,但IP化必然会对视频压缩,毕竟视频的带宽比网络的带宽大太多了。

压缩就面临画质和码率问题。

分布式产品最基本的是解决显示问题,如果图像不好,再丰富的功能也是舍本逐末;如果码率过大,IP化不“彻底”,不能获得IP化的红利。

因此可以说,图像压缩和还原技术好坏,是评判一家公司技术水平的关键,也是评判一款产品优劣的核心要素。

那么何谓浅压缩、深压缩、双引擎、计算机屏幕编码?各自有什么优劣?这应该是系统建设方、使用方、设计方最关心的问题了。

首先我们以一个表格来列举下各种方式的对比,然后再逐一尽量详细客观的列出其优缺点,以便读者在设计和建设音视频系统时参考。
在这里插入图片描述

计算机屏幕编码:只用低码率、高压缩比编码方式(一般H.264/265),实现达到计算机屏幕级别(表现为颜色突然跳变,如黑底红字,黑底蓝字,红底黑字,红底蓝字等)画质要求的编码技术。高通、微软、华为都具备这方面的发明专利,国内分布式领域也有公司具有这方面的发明专利技术。系统不论大小均可胜任,缺点是成本较高。

在这里插入图片描述

优点之一:画质好,即便严苛的计算机测试画面,也和原图几乎没有差异(如上图);

优点之二:是带宽低。其采用的编码方式还是HEVC(H.265)或者H.264,因此码率1路1080P@60一般就在10-20Mbps水平,对一般的有线网络来说非常轻松,甚至可以用现有的计算机网络(甚至因特网)承载而不影响业务网络;

优点之三:和安防、视频图像网、AI等无缝衔接(因为都是H.264/265),分布式的优势体现得更大(如无需任何解码器直接取安防平台流上显示墙,直接取流进行人、车以及人脸识别等)。

缺点:技术难度大,用以实现的芯片组价格昂贵,往往还需要配合FPGA或者DSP之类,设备成本高,价格往往比较高;

浅度压缩:视听行业中一类高码率视频压缩算法的总称,这类算法因压缩程度相对较低,算法复杂度也较低,故称为浅度压缩。浅压缩分布式主要采用SDVoE、VC-2、JPEG2000和私有算法等编码方式,对视频的压缩较小,视频画面的还原度高,相比深压缩产品,画质更好,同步性更高,延时更低。但同时因为码率高,所以较多用于本地会议级的小规模场景应用,整个系统对网络带宽的要求也会高出很多,整体建设成本更高。
在这里插入图片描述

优点之一:相对降采样为4:2:0后的深度压缩画质好,尤其计算机画面,基本能做到视觉无损;

优点之二:一般来说浅度压缩用帧内编码,编码延时比较小;但是因为码率大,往往消除网络抖动的时间余量都留得比较大;综合后延时有的产品和深压缩相当,有的略优。

优点之三:器件要求不高,成本低,容易实现。

缺点之一:码率太大,一般1路1080P@60就达到300-900Mbps,1路4KP@60最大可能达到4000Mbps,远超1路千兆网的承载水平,和5G等结合就更没可能了。

缺点之二:存储需求的存储空间太大,几乎不可用。按平均码率500Mbps算,也是H.264/265码率的20-50倍。

缺点之三:编码方式和安防平台几乎都不兼容,分布式的红利发挥不出来,还需要大量的转码器、编解码器和安防平台对接。

深度压缩:视听行业中一类低码率视频压缩算法的总称,与浅度压缩相反,这类算法因压缩程度相对较高,故称为深度压缩。行业内一般特指用安防H.264/265编码芯片的,降采样为4:2:0后进行编码的方式。因为画质比较低,所以一般应用于低成本,要求不高的场合。
在这里插入图片描述

优点之一:带宽低。其采用的编码方式是HEVC(H.265)或者H.264,因此1路1080P@60码率一般就在10-20Mbps水平,对一般的有线网络来说非常轻松,甚至可以用现有的计算机网络承载而不影响业务;

优点之二:和安防、视频图像网、AI等无缝衔接(因为都是H.264/265),分布式的优势体现得更大(如无需任何解码器直接取安防平台流上显示墙,直接取流进行人、车以及人脸识别等)。

优点之三:成本低,容易实现。因为采用安防芯片,芯片成本低,而且一般有较为成熟的方案,进行功能性研发即可。

缺点:画质较差。一般视频画面,电脑画面没问题,但是有强烈反差的画面,如CAD图、轨道交通图、雷达图、电力运行图,甚至部分情况下word,excel的效果都无法接受(如当excel表格选中一列时就模糊了,特别是当文字是红色时)。

双引擎(双码流):一个设备里边同时放置高码率编码芯片和低码率编码芯片,严格来说它并不是一种编码方式,但它是一种解决码率和画质的方法:高码率芯片用于解决本地显示清晰度问题,低码率编解码芯片(一般是H.264/265)为了解决远距离传输和对接安防平台的问题。实现较为容易,但网络较为复杂,同时只解决了本地画质问题,异地画质和存储画质问题还是未能解决。
在这里插入图片描述

优点之一:能兼顾本地显示画质和远距离传输的低码率要求;

优点之二:低码率引擎其实一般就是安防编解码芯片,所以也能和安防、视频图像网等对接。

优点之三:成本虽然比浅压缩和深压缩略高,但是浅压缩芯片和安防芯片(深压缩)都便宜,所以即便都放置进去,成本也低,而且容易实现。

缺点之一:远距离传输和存储的画质始终还是安防级的画质,是难以让人满意的。高码率和低码率同时编码1路图像,始终只是权宜之计,并没有从根本上解决压缩率和画质的问题。

缺点之二:浅压缩的码率还是很高,即便本地应用,大规模的应用对核心交换机的压力非常大,接入交换机选型也非常苛刻(系统必须满足极限要求,即每个端口900Mbps,48路的接入交换机,则上行44G,10个10G口都不够,但是往往接入交换机达不到48个千兆线速+4个万兆线速的包交换速度)。

缺点之三:系统互相影响大,系统稳定性,特别是大规模项目的稳定性,尚需要时间检验。

结语

一方面,是网络技术的飞速发展,虽然主流还是千兆网络,但是万兆网络也不再昂贵,且全部的千兆网络迭代到万兆尚需时日;
另一方面是视频清晰度往更清(4KP30,4KP60,8KP30均已经较为常见)、色彩更丰富(从24位色往30、36位升级,内容增加50%)方向升级的速度更快。

正在建设中,且可预见的近5-10年内大放异彩的5G,虽然下载速度达到500Mbps甚至更高,但是普遍上行速度为50+Mbps,即便网络良好的地方上行速度也就在200Mbps,是无法承载哪怕1路1080P@60的浅压缩视频流的,更别说1路4KP60了。

所以现阶段看来,分布式在未来5-10年内要充分5G的红利,依托5G生态建立更多精彩的应用,甚至能否跳出显示控制的狭窄应用,无缝融合到指挥、业务流程,实现更大的价值,低码率和画质始终是绕不过去的槛。

何去何从,我们拭目以待!
原文链接:https://mp.weixin.qq.com/s/jvp1I9BcngYxX0OVwqHivw

相关文章:

浅压缩、深压缩、双引擎、计算机屏幕编码……何去何从?

专业视听领域尤其显示控制和坐席控制领域,最近几年最激动人心的技术,莫过于分布式了。 分布式从推出之日就备受关注:担心稳定性的,质疑同步性能的,怀疑画面质量的…… 诚然,我们在此前见多了带着马赛克的…...

2020年通信工程师初级专业实务真题

文章目录 一、第1章 现代通信网概述:信令网、同步网、管理网。第10章 通信业务:通信产业链,通信终端的分类,通信业务的定义及分类二、第3章 接入网:无线接入网的优点,接入网的接口(UNI&#xff…...

Linux常见面试题汇总

Linux上如何查询某个端口是否被占用&#xff1f; 在Linux上&#xff0c;你可以使用以下几种方法来查询某个端口是否被占用&#xff1a; 使用netstat命令&#xff1a; netstat -tuln | grep <端口号>这个命令会列出当前正在运行的所有TCP和UDP端口&#xff0c;并过滤出指…...

C语言小游戏:贪吃蛇(游戏开发的环境和功能介绍)

❀❀❀ 文章由不准备秃的大伟原创 ❀❀❀ ♪♪♪ 若有转载&#xff0c;请联系博主哦~ ♪♪♪ ❤❤❤ 致力学好编程的宝藏博主&#xff0c;代码兴国&#xff01;❤❤❤ 生命不停&#xff0c;学习不止。铁汁们&#xff0c;我是大伟&#xff0c;欢迎来到大伟的游戏时间&#xff0c…...

ElementUI Form:InputNumber 计数器

ElementUI安装与使用指南 InputNumber 计数器 点击下载learnelementuispringboot项目源码 效果图 el-radio.vue &#xff08;InputNumber 计数器&#xff09;页面效果图 项目里el-input-number.vue代码 <script> export default {name: el_input_number,data() {re…...

apk反编译修改教程系列---修改apk的默认颜色 布局颜色 手机电脑同步演示【十】

往期教程&#xff1a; apk反编译修改教程系列-----修改apk应用名称 任意修改名称 签名【一】 apk反编译修改教程系列-----任意修改apk版本号 版本名 防止自动更新【二】 apk反编译修改教程系列-----修改apk中的图片 任意更换apk桌面图片【三】 apk反编译修改教程系列---简单…...

响应式开发如何设置断点,小屏幕界面该如何显示(有动图)

Hi&#xff0c;我是贝格前端工场&#xff0c;本期分享响应式开发&#xff0c;如何设置屏幕断点&#xff0c;pc页面布局到了移动端之后该如何布局的问题&#xff0c;微软也提供了设置屏幕断点的动图演示&#xff0c;非常直观。 一、什么是响应式开发&#xff0c;为何要设置屏幕断…...

Java基础 集合(二)List详解

目录 简介 数组与集合的区别如下&#xff1a; 介绍 AbstractList 和 AbstractSequentialList Vector 替代方案 Stack ArrayList LinkedList 前言-与正文无关 生活远不止眼前的苦劳与奔波&#xff0c;它还充满了无数值得我们去体验和珍惜的美好事物。在这个快节奏的世界…...

UE4运用C++和框架开发坦克大战教程笔记(十七)(第51~54集)

UE4运用C和框架开发坦克大战教程笔记&#xff08;十七&#xff09;&#xff08;第51~54集&#xff09; 51. UI 框架介绍UE4 使用 UI 所面临的问题以及解决思路关于即将编写的 UI 框架的思维导图 52. 管理类与面板类53. 预加载与直接加载54. UI 首次进入界面 51. UI 框架介绍 U…...

GaussDB新体验,新零售选品升级注入新思路【华为云GaussDB:与数据库同行的日子】

选品思维&#xff1a;低频VS高频 一个的商超&#xff0c;假设有50个左右的品类&#xff0c;每个品类下有2到10个不等的商品。然而如此庞大的商品&#xff0c;并非所有都是高频消费品。 结合自身日常的消费习惯&#xff0c;对于高频和低频的区分并不难。一般大型家电、高端礼盒…...

C语言问题汇总

指针 #include <stdio.h>int main(void){int a[4] {1,2,3,4};int *p &a1;int *p1 a1;printf("%#x,%#x",p[-1],*p1);} 以上代码中存在错误。 int *p &a1; 错误1&#xff1a;取a数组的地址&#xff0c;然后1&#xff0c;即指针跳过int [4]大小的字节…...

QT 的 blockSignals(true) 的作用范围

在 Qt 中&#xff0c;blockSignals 是一个用于控件的方法&#xff0c;它用于阻止控件发出的信号。如果你在一个 MainWindow 对象上调用 blockSignals(true)&#xff0c;它会阻止该 MainWindow 对象发出的所有信号。 这意味着&#xff0c;如果 MainWindow 上有任何子控件&#…...

【C++私房菜】类和对象万字详解

目录 一、类与对象 1、类是什么 二、类和对象的基础知识 2.1 定义类&#xff1a;成员变量和成员函数 2.2 创建对象&#xff1a;实例化一个类的对象。 2.3对象的生命周期&#xff1a;构造函数和析构函数。 a. 构造函数 b. 析构函数 c.小结&#xff1a; 三、成员变量和…...

PDF下载添加水印和访问密码

下载接口 ApiOperation(value "下载文件-pdf", notes "下载文件pdf版", httpMethod "GET", response WebResult.class)RequestMapping(value "/downloadPdf", method RequestMethod.GET)public void downloadFilePdf(RequestPar…...

基于SSM+MySQL的的新闻发布系统设计与实现

目录 项目简介 项目技术栈 项目运行环境 项目截图 代码截取 源码获取 项目简介 新闻发布系统是一款基于Servletjspjdbc的网站应用程序&#xff0c;旨在提供一个全面且高效的新闻发布平台。该系统主要包括后台管理和前台新闻展示两个平台&#xff0c;涵盖了新闻稿件的撰写…...

记录首次使用yolov8-obb

1.数据格式 之前使用的数据格式是yolov5_obb的数据格式&#xff0c;然后需要转数据格式&#xff1a; 目前的数据只支持四个坐标点标注的数据&#xff0c;参考&#xff1a;If a corner of the rotate rectangle is out of the image range, How to annotate the image? Issu…...

深度学习环境配置:Anaconda 安装和 pip 源

conda是一种通用包管理系统&#xff0c;与pip的使用类似&#xff0c;环境管理则允许用户方便地安装不同版本的python并可以快速切换。 Anaconda则是一个打包的集合&#xff0c;里面预装好了conda、某个版本的python、众多packages、科学计算工具等等&#xff0c;就是把很多常用…...

100 个 NLP 面试问题

100 个 NLP 面试问题 一、 说明 对于技术磨练中&#xff0c;其中一项很酷的技能培训是提问。不知道答案并没有多大的错;错就错在不谷歌这些疑问。本篇就是在面试之前&#xff0c;您将此文档复制给自己&#xff0c;做一个系统的模拟实战。 二、经典NLP问题&#xff08;共8题&a…...

C# OMRON PLC FINS TCP协议简单测试

FINS(factory interface network service)通信协议是欧姆龙公司开发的用于工业自动化控制网络的指令&#xff0f;响应系统。运用 FINS指令可实现各种网络间的无缝通信&#xff0c;包括用于信息网络的 Etherne(以太网)&#xff0c;用于控制网络的Controller Link和SYSMAC LINK。…...

MQTT在linux下服务端和客户端的应用

MQTT&#xff08;Message Queuing Telemetry Transport&#xff09;是一种轻量级、开放标准的消息传输协议&#xff0c;设计用于受限设备和低带宽、不稳定网络的通信。 MQTT的一些关键特点和概念&#xff1a; 发布/订阅模型&#xff1a; MQTT采用发布/订阅&#xff08;Publ…...

Docker 离线安装指南

参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性&#xff0c;不同版本的Docker对内核版本有不同要求。例如&#xff0c;Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本&#xff0c;Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...

【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器

——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的​​一体化测试平台​​&#xff0c;覆盖应用全生命周期测试需求&#xff0c;主要提供五大核心能力&#xff1a; ​​测试类型​​​​检测目标​​​​关键指标​​功能体验基…...

CMake基础:构建流程详解

目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...

vue3 字体颜色设置的多种方式

在Vue 3中设置字体颜色可以通过多种方式实现&#xff0c;这取决于你是想在组件内部直接设置&#xff0c;还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法&#xff1a; 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

04-初识css

一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...

LLM基础1_语言模型如何处理文本

基于GitHub项目&#xff1a;https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken&#xff1a;OpenAI开发的专业"分词器" torch&#xff1a;Facebook开发的强力计算引擎&#xff0c;相当于超级计算器 理解词嵌入&#xff1a;给词语画"…...

数据库分批入库

今天在工作中&#xff0c;遇到一个问题&#xff0c;就是分批查询的时候&#xff0c;由于批次过大导致出现了一些问题&#xff0c;一下是问题描述和解决方案&#xff1a; 示例&#xff1a; // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用

1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

OpenLayers 分屏对比(地图联动)

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能&#xff0c;和卷帘图层不一样的是&#xff0c;分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...

是否存在路径(FIFOBB算法)

题目描述 一个具有 n 个顶点e条边的无向图&#xff0c;该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序&#xff0c;确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数&#xff0c;分别表示n 和 e 的值&#xff08;1…...