CN115665420A - 一种基于gb28181的高清低码视频转换方法、装置及应用 - Google Patents
一种基于gb28181的高清低码视频转换方法、装置及应用 Download PDFInfo
- Publication number
- CN115665420A CN115665420A CN202211298924.5A CN202211298924A CN115665420A CN 115665420 A CN115665420 A CN 115665420A CN 202211298924 A CN202211298924 A CN 202211298924A CN 115665420 A CN115665420 A CN 115665420A
- Authority
- CN
- China
- Prior art keywords
- data
- stream
- video
- yuv
- packet loss
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请提出了一种基于GB28181的高清低码视频转换方法、装置及应用,包括以下步骤:获取至少一GB28181流数据,将所述GB28181流数据分为流标识与流特征并分别存储在磁盘IO上;在内存上设置缓冲器,所述缓冲器根据存储在磁盘IO上的流标识顺序读取对应的流特征,再通过音视频过滤器过滤掉流特征中与视频无关的数据,得到视频数据,再对视频数据进行流解码得到YUV数据;使用所述YUV优化器对所述YUV数据进行优化,过滤掉所述YUV数据中数据质量差的数据,得到优化数据;定义一个压缩字典,根据所述压缩字典对所述优化数据进行编码压缩,得到输出视频。本方案可以在短时间内将基于GB28181的视频流数据转换为清晰度高、数据占用小的高清低码视频。
Description
技术领域
本申请涉及视频监控技术领域,特别是涉及一种基于GB28181的高清低码视频转换方法、装置及应用。
背景技术
GB28181协议规定了公共安全视频监控联网系统的互联结构、传输、交换、控制的基本要求和安全性要求以及控制、传输流程和协议接口等技术要求,本标准适用于公共安全视频监控联网系统的方案设计、系统检测、验收以及与之相关的设备研发、生产。
传统的GB28181转码形式要对输入的GB28181流进行解封装和流解码后,再对其进行流编码,最后进行封装输出,通过这样的流程进行GB28181视频流的转换在排除掉带宽等不稳定因素的影响之后,存在转码耗时长、画面延迟大、画面相对不稳定和生成的数据包大等缺点。
转码耗时长是因为没有对GB28181流进行处理,导致流编码和解码过程非常耗费时间,且还需要对GB28181流进行加载,并对解码结果进行封装;另外因为在解码过程中并未对YUV的关键帧进行渲染,存在YUV数据丢包问题,且没有对这些丢包的数据进行处理,,导致转码的视频画面不稳定以及画面延迟大的问题;且不处理丢包严重的YUV数据以及也没有对正常的YUV数据进行处理的情况也导致了数据包很大。
发明内容
本申请实施例提供了一种基于GB28181的高清低码视频转换方法、装置及应用,可以对基于GB28181流数据进行转换保存,使得体积更小,且在对视频进行点播时,使得清晰度提升,码率降低。
第一方面,本申请实施例提供了一种基于GB28181的高清低码视频转换方法,所述方法包括:
获取至少一GB28181流数据,将所述GB28181流数据分为流标识与流特征并分别存储在磁盘IO上;
在内存上设置缓冲器,所述缓冲器根据存储在磁盘IO上的流标识顺序读取对应的流特征,对所述缓冲器读取的所述流特征进行解封装操作后,通过音视频过滤器过滤流特征中与视频无关的数据得到视频数据,并将所述视频数据存入内存中,再对内存中的视频数据进行流解码得到YUV数据;
使用所述YUV优化器对所述YUV数据进行优化,过滤所述YUV数据中数据质量差的丢包图像帧,并复用丢包图像帧上一关键帧图像数据补充所述丢包图像帧,得到优化数据;
定义一个压缩字典,根据所述压缩字典对所述优化数据进行编码压缩,得到输出视频,所述压缩字典将连续二进制简化为唯一对应的简化二进制。
第二方面,本申请实施例提供了一种基于GB28181的高清低码视频转换装置,包括:
获取模块:获取至少一GB28181流数据,将所述GB28181流数据分为流标识与流特征并分别存储在磁盘IO上;
第一优化模块:在内存上设置缓冲器,所述缓冲器根据存储在磁盘IO上的流标识顺序读取对应的流特征,对所述缓冲器读取的所述流特征进行解封装操作后,通过音视频过滤器过滤流特征中与视频无关的数据得到视频数据,并将所述视频数据存入内存中,再对内存中的视频数据进行流解码得到YUV数据;
第二优化模块:使用所述YUV优化器对所述YUV数据进行优化,过滤所述YUV数据中数据质量差的丢包图像帧,并复用丢包图像帧上一关键帧图像数据补充所述丢包图像帧,得到优化数据;
输出模块:定义一个压缩字典,根据所述压缩字典对所述优化数据进行编码压缩,得到输出视频,所述压缩字典将连续二进制简化为唯一对应的简化二进制。
第三方面,本申请实施例提供了一种电子装置,包括存储器与处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行一种基于GB28181的高清低码视频转换方法。
第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序包括用于控制过程以执行过程的程序代码,所述过程包括一种基于GB28181的高清低码视频转换方法。
本发明的主要贡献和创新点如下:
本申请实施例在对流数据解封装前增加了一个缓冲器,加速了解封装的速度,也使得CPU的调用更加方便,便捷,在解封装后增加了音视频过滤器,过滤掉字幕、附件等数据,只保留音频数据与视频数据,大大缩减了流数据的体积;在视频解码后增加了YUV优化器,过滤掉掉包率高的YUV数据,且缓冲上一个关键帧图像对其进行替换,在增加了清晰度的同时降低了数据包的体积;最后又定义了一个压缩字典,根据压缩字典定义的规则对数据包进行处理,再一次极大程度的压缩了数据包。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种基于GB28181的高清低码视频转换方法的流程图;
图2是根据本申请实施例的一种缓冲器的结构示意图;
图3是根据本申请实施例的一种YUV优化器的结构示意图;
图4是根据本申请实施例的一种客户端点播方法示意图;
图5是根据本申请实施例的一种基于GB28181的高清低码视频转换装置的结构框图;
图6是根据本申请实施例的电子装置的硬件结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
GB28181:《GBT 28181-2016公共安全视频监控联网系统信息传输、交换、控制技术要求》规范的应用层协议。
RTP:实时传输协议(Real-time Transport Protocol或简写RTP)是一个网络传输协议,它是由IETF的多媒体传输工作小组1996年在RFC 1889中公布的。
RTCP:RTP控制协议(RTCP:RTP Control Protocol)RTCP提供数据分发质量反馈信息,这是RTP作为传输协议的部分功能并且它涉及到了其它传输协议的流控制和拥塞控制。
YUV:是一种颜色编码方法。常使用在各个视频处理组件中。YUV在对照片或视频编码时,考虑到人类的感知能力,允许降低色度的带宽。
P帧、B帧:在针对连续动态图像编码时,将连续若干幅图像分成P,B,I三种类型,P帧由在它前面的B帧或者I帧预测而来,它比较与它前面的P帧或者I帧之间的相同信息或数据,也即考虑运动的特性进行帧间压缩。
实施例一
本申请实施例提供了一种基于GB28181的高清低码视频转换方法,可以在短时间内将视频转换为清晰度高、数据占用小的高清低码视频,具体地,参考图1,所述方法包括:
获取至少一GB28181流数据,将所述GB28181流数据分为流标识与流特征并分别存储在磁盘IO上;
在内存上设置缓冲器,所述缓冲器根据存储在磁盘IO上的流标识顺序读取对应的流特征,对所述缓冲器读取的所述流特征进行解封装操作后,通过音视频过滤器过滤流特征中与视频无关的数据得到视频数据,并将所述视频数据存入内存中,再对内存中的视频数据进行流解码得到YUV数据;
使用所述YUV优化器对所述YUV数据进行优化,过滤所述YUV数据中数据质量差的丢包图像帧,并复用丢包图像帧上一关键帧图像数据补充所述丢包图像帧,得到优化数据;
定义一个压缩字典,根据所述压缩字典对所述优化数据进行编码压缩,得到输出视频,所述压缩字典将连续二进制简化为唯一对应的简化二进制。
在一些实施例中,在“所述缓冲器根据存储在磁盘IO上的流标识顺序读取对应的流特征”步骤中,所述缓冲器设置在内存中,每一GB2181流数据都包含多个流标识与流特征,所述流标识与所述流特征一一对应,所述流标识以数加链表的哈希结构存储,根据所述流标识定位流特征的索引,根据所述流特征的索引对流特征进行顺序读取。
具体的,所述流标识的Rtp协议头文件中包含ssrc(实时传输协议)数据,该数据为所述流特征的唯一标识,以所述ssrc数据为键,流特征信息为值便可形成一对一的索引关系,从而根据所述流标识对流特征的索引进行定位
在一具体实施例中,如图2所示,所述缓冲器只针对GB28181流数据进行缓冲,GB28181应用层协议的底层是基于RTP和RTCP通信,RTP通信作为主要的流数据传输方式主要是通过UDP协议进行传输,但是为了避免传输协议的单一,且保证所述缓冲器的兼容性,常规的TCP协议也要进行兼容。
具体的,所述缓冲器用来将磁盘IO上的流数据更顺滑的过渡到内存上进行存放,以便本方法在执行时,处理器可以直接从内存上获取数据;为解决首次加载流数据较慢的问题,将所述缓冲器在本方法进行启动时便预先加载于内存中,当GB28181流数据的流数据丢包或对所述流数据重新推流时,能够迅速加载流特征进行解封装操作,即使中间丢包严重,也可很快的重新定位到流的特征并解析出数据,实现首次缓冲,后续“秒开”,且因为本方案使用磁盘IO的顺序读取,无需遍历整个磁盘,所以在读取速度方面,本方案几乎能完成内存的读取速度,且磁盘的廉价能极大的降低开销。
GB28181流数据对应一流标识,不同流标识依次序存续在哈希槽内。具体的,所述流标识的存储形式如图3所示,图3最上方为哈希槽的编号,方格内的编号为GB28181流数据的流标识,当对流数据进行存储时,对所述流数据对应的唯一流标识进行哈希运算,再将哈希运算结果与哈希运算结果的数组长度进行取模运算,将取模运算的结果以链表的形式进储存,如图3的箭头部分所示。
具体的,所述流标识内还存储有对应流特征在磁盘IO中的偏移量,根据所述流标识获取对应流特征的索引,使用所述流特征的索引结合对应流特征的偏移量对所述流特征进行读取。本方案通过哈希结构和偏移量,将索引和特征分开存储,既能快速定位,还能通过数组的扩容容纳更多的数据。
在一些实施例中,在“通过音视频过滤器过滤掉流特征中与视频无关的数据,得到视频数据,并将所述视频数据存入内存中,再对内存中的视频数据进行流解码得到YUV数据”步骤中,所述音视频过滤器过滤掉所述流特征中字幕、附件以及其他与视频无关的数据,得到YUV数据,所述YUV数据仅包含音频流数据和视频流数据。
具体的,为了提高资源利用率,提高并发性能,所述音频过滤器在所述磁盘IO中对所述流特征进行过滤,得到视频数据,并将所述视频数据放入内存中。
具体的,所述音频流数据绑定在对应的视频流数据上,除音频流数据与视频流数据外的数据对大多数业务场景都是没有意义的,并且占据了较大的数据包;所述YUV数据是所述视频数据通过YUV编码之后得到的数据,其中Y表示明亮度,U和V表示色彩饱和度,U和V用来指定像素的色度。
在一些实施例中,如图3所示,所述YUV优化器由YUV解析层、丢包率检测层,阈值判断层依次串联,所述阈值判断层存在两个分支,第一分支为YUV过滤器层连接到关键帧缓冲层,第二分支为丢包补偿层连接到YUV压缩层,再连接到关键帧缓冲层,所述关键帧缓冲层的输出即为所述YUV优化器的输出结果。
具体的,所述YUV数据中音频流数据占用小,所以无需对其进行处理,只对所述YUV数据中的视频流数据进行处理。
进一步的,所述YUV数据输入到所述YUV优化器中,所述YUV解析层对所述YUV数据进行解析,得到视频流数据,所述丢包检测层对所述视频流数据进行检测,得到所述视频流数据中每一图像帧的丢包率,并将丢包率发送给阈值判断层进行判断,若其中一帧图像的丢包率大于第一设定阈值,则这一图像帧为所述丢包图像帧,将所述丢包图像帧输入到第一分支,由所述YUV过滤器层对这一图像帧帧进行过滤,并使用所述关键帧缓冲层复用所述丢包图像帧的上一关键帧图像数据进行补充;若其中一帧图像的丢包率小于第一设定阈值,则使用丢包补偿层对这一图像帧进行渲染,并通过YUV压缩层对渲染后的图像帧进行压缩,再输入到所述关键帧缓冲层中。
具体的,由于原始流数据中的关键帧数据量大、且可能存在丢包,所以所述关键帧缓冲层使用所述YUV压缩层压缩后的关键帧图像替换掉对应的原始关键帧图像,以达到降低数据包,优化图像画面的作用。
在本申请实施例中,所述YUV优化器的作用主要由两个,其中一点是过滤掉丢包率高的YUV数据,因为丢包率高的YUV数据的视频表现形式并不好,不能给用户带来良好的体验,而且所述丢包补偿层在对这些数据进行渲染时会产生大量的数据包,占用了存储空间,另一点是当这一图像帧的丢包率较高时,过滤掉这一图像帧,并复用这一图像帧的上一个关键帧图像数据进行替换,并丢弃掉所述关键帧图像数据的P帧数据和B帧数据,从而达到输出流的稳定。
具体的,所述关键帧缓冲层会默认缓冲上一个关键帧图像的YUV数据,以方便当前帧的丢包率过高时,直接复用上一个关键帧图像数据。
进一步的,由于所述关键帧缓冲层为所述YUV优化器的最后一层,所以所述关键帧缓冲层复用的上一关键帧图像为经过所述YUV压缩层压缩过的图像,相较于传统的复用关键帧可以极大程度的降低计算机的负载率。
具体的,所述丢包补偿层对丢包率小于第一设定阈值的图像进行渲染,会导致渲染后的图像数据量增多,所以通过所述YUV压缩层对渲染后的图像进行压缩。
具体的,所述YUV优化器主要的目的是为了对所述YUV数据进行压缩,并尽可能的保证较低的码率和较高的分辨率,在本方案中,对所述YUV数据进行压缩的方式为量化压缩。
在一些实施例中,在“所述压缩字典将连续二进制简化为唯一对应的简化二进制”步骤中,将所述二进制字符串中的连续二进制作为可定义项,获取所述可定义项的重复项和重复个数,再使用二进制字符串以重复个数组合重复项的方式对其进行定义,并将定义内容封装为协议码保存在所述压缩字典中。
具体的,为了使得数据的保存更加整洁,减少错误的发生,将定义内容封装为协议码之后,在存储时将不同规律的字符串进行隔开,所述协议码表征。
具体的,由于计算机中都是以二进制进行数据保存,所以不可避免的会出现很多规律重复的连续数据,本方案对这些规律重复的连续数据进行定义,并赋予新的命名,并保存为压缩字典,在客户端和服务端中都对所述压缩字典进行缓冲,在数据保存和获取过程中以压缩字典的定义内容进行编码或解码,便可以节省大量存储空间。
在一具体实施例中,字典格式如下:
有一段二进制字符串为0000 0000 0000 0000,则这段二进制字符串可以看作16个0,则以重复个数组合重复项的方式进行定义,得到二进制字符串1 00000,其中,1 0000字符串为二进制的16,表征重复个数,0表征重复项。
同理,二进制字符串1001 1001 1001 1001可以看做4组1001,以重复个数组合重复项的方式进行定义,得到二进制字符串100 1001,其中,100字符串为二进制的4,表征重复个数,1001表征重复项。
从上述具体实施例可知,本方案所提出的压缩字典定义模式使得所述流数据的数据包体积更好,且可以将码率提高到4倍以上,更加节省存储空间。
具体的,如图4所示,由于所述输出视频是根据所述压缩字典进行编码压缩而成的,在客户端对输出视频进行点播时,需要根据所述压缩字典对所述输出视频进行解码。
实施例二
基于相同的构思,参考图5,本申请还提出了一种基于GB28181的高清低码视频转换装置,包括:
获取模块:获取至少一GB28181流数据,将所述GB28181流数据分为流标识与流特征并分别存储在磁盘IO上;
第一优化模块:在内存上设置缓冲器,所述缓冲器根据存储在磁盘IO上的流标识顺序读取对应的流特征,对所述缓冲器读取的所述流特征进行解封装操作后,通过音视频过滤器过滤流特征中与视频无关的数据得到视频数据,并将所述视频数据存入内存中,再对内存中的视频数据进行流解码得到YUV数据;
第二优化模块:使用所述YUV优化器对所述YUV数据进行优化,过滤所述YUV数据中数据质量差的丢包图像帧,并复用丢包图像帧上一关键帧图像数据补充所述丢包图像帧,得到优化数据;
输出模块:定义一个压缩字典,根据所述压缩字典对所述优化数据进行编码压缩,得到输出视频,所述压缩字典将连续二进制简化为唯一对应的简化二进制。
实施例三
本实施例还提供了一种电子装置,参考图6,包括存储器404和处理器402,该存储器404中存储有计算机程序,该处理器402被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
具体地,上述处理器402可以包括中央处理器(CPU),或者特定集成电路(ApplicationSpecificIntegratedCircuit,简称为ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。
其中,存储器404可以包括用于数据或指令的大容量存储器404。举例来说而非限制,存储器404可包括硬盘驱动器(HardDiskDrive,简称为HDD)、软盘驱动器、固态驱动器(SolidStateDrive,简称为SSD)、闪存、光盘、磁光盘、磁带或通用串行总线(UniversalSerialBus,简称为USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器404可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器404可在数据处理装置的内部或外部。在特定实施例中,存储器404是非易失性(Non-Volatile)存储器。在特定实施例中,存储器404包括只读存储器(Read-OnlyMemory,简称为ROM)和随机存取存储器(RandomAccessMemory,简称为RAM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(ProgrammableRead-OnlyMemory,简称为PROM)、可擦除PROM(ErasableProgrammableRead-OnlyMemory,简称为EPROM)、电可擦除PROM(ElectricallyErasableProgrammableRead-OnlyMemory,简称为EEPROM)、电可改写ROM(ElectricallyAlterableRead-OnlyMemory,简称为EAROM)或闪存(FLASH)或者两个或更多个以上这些的组合。在合适的情况下,该RAM可以是静态随机存取存储器(StaticRandom-AccessMemory,简称为SRAM)或动态随机存取存储器(DynamicRandomAccessMemory,简称为DRAM),其中,DRAM可以是快速页模式动态随机存取存储器404(FastPageModeDynamicRandomAccessMemory,简称为FPMDRAM)、扩展数据输出动态随机存取存储器(ExtendedDateOutDynamicRandomAccessMemory,简称为EDODRAM)、同步动态随机存取内存(SynchronousDynamicRandom-AccessMemory,简称SDRAM)等。
存储器404可以用来存储或者缓存需要处理和/或通信使用的各种数据文件,以及处理器402所执行的可能的计算机程序指令。
处理器402通过读取并执行存储器404中存储的计算机程序指令,以实现上述实施例中的任意一种基于GB28181的高清低码视频转换方法。
可选地,上述电子装置还可以包括传输设备406以及输入输出设备408,其中,该传输设备406和上述处理器402连接,该输入输出设备408和上述处理器402连接。
传输设备406可以用来经由一个网络接收或者发送数据。上述的网络具体实例可包括电子装置的通信供应商提供的有线或无线网络。在一个实例中,传输设备包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备406可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
输入输出设备408用于输入或输出信息。在本实施例中,输入的信息可以是GB28181协议的流数据等,输出的信息可以是转换后的输出视频等。
可选地,在本实施例中,上述处理器402可以被设置为通过计算机程序执行以下步骤:
S101、获取至少一GB28181流数据,将所述GB28181流数据分为流标识与流特征并分别存储在磁盘IO上;
S102、在内存上设置缓冲器,所述缓冲器根据存储在磁盘IO上的流标识顺序读取对应的流特征,对所述缓冲器读取的所述流特征进行解封装操作后,通过音视频过滤器过滤流特征中与视频无关的数据得到视频数据,并将所述视频数据存入内存中,再对内存中的视频数据进行流解码得到YUV数据;
S103、使用所述YUV优化器对所述YUV数据进行优化,过滤所述YUV数据中数据质量差的丢包图像帧,并复用丢包图像帧上一关键帧图像数据补充所述丢包图像帧,得到优化数据;
S104、定义一个压缩字典,根据所述压缩字典对所述优化数据进行编码压缩,得到输出视频,所述压缩字典将连续二进制简化为唯一对应的简化二进制。
需要说明的是,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
通常,各种实施例可以以硬件或专用电路、软件、逻辑或其任何组合来实现。本发明的一些方面可以以硬件来实现,而其他方面可以以可以由控制器、微处理器或其他计算设备执行的固件或软件来实现,但是本发明不限于此。尽管本发明的各个方面可以被示出和描述为框图、流程图或使用一些其他图形表示,但是应当理解,作为非限制性示例,本文中描述的这些框、装置、系统、技术或方法可以以硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备或其某种组合来实现。
本发明的实施例可以由计算机软件来实现,该计算机软件由移动设备的数据处理器诸如在处理器实体中可执行,或者由硬件来实现,或者由软件和硬件的组合来实现。包括软件例程、小程序和/或宏的计算机软件或程序(也称为程序产品)可以存储在任何装置可读数据存储介质中,并且它们包括用于执行特定任务的程序指令。计算机程序产品可以包括当程序运行时被配置为执行实施例的一个或多个计算机可执行组件。一个或多个计算机可执行组件可以是至少一个软件代码或其一部分。另外,在这一点上,应当注意,如图6中的逻辑流程的任何框可以表示程序步骤、或者互连的逻辑电路、框和功能、或者程序步骤和逻辑电路、框和功能的组合。软件可以存储在诸如存储器芯片或在处理器内实现的存储块等物理介质、诸如硬盘或软盘等磁性介质、以及诸如例如DVD及其数据变体、CD等光学介质上。物理介质是非瞬态介质。
本领域的技术人员应该明白,以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (9)
1.一种基于GB28181的高清低码视频转换方法,其特征在于,包括:
获取至少一GB28181流数据,将所述GB28181流数据分为流标识与流特征并分别存储在磁盘IO上;
在内存上设置缓冲器,所述缓冲器根据存储在磁盘IO上的流标识顺序读取对应的流特征,对所述缓冲器读取的所述流特征进行解封装操作后,通过音视频过滤器过滤流特征中与视频无关的数据得到视频数据,并将所述视频数据存入内存中,再对内存中的视频数据进行流解码得到YUV数据;
使用所述YUV优化器对所述YUV数据进行优化,过滤所述YUV数据中数据质量差的丢包图像帧,并复用丢包图像帧上一关键帧图像数据补充所述丢包图像帧,得到优化数据;
定义一个压缩字典,根据所述压缩字典对所述优化数据进行编码压缩,得到输出视频,所述压缩字典将连续二进制简化为唯一对应的简化二进制。
2.根据权利要求1所述的一种基于GB28181的高清低码视频转换方法,其特征在于,在“所述缓冲器根据存储在磁盘IO上的流标识顺序读取对应的流特征”步骤中,所述缓冲器设置在内存中,每一GB2181流数据都包含多个流标识与流特征,所述流标识与所述流特征一一对应,所述流标识以数加链表的哈希结构存储,根据所述流标识定位流特征的索引,根据所述流特征的索引对流特征进行顺序读取。
3.根据权利要求1所述的一种基于GB28181的高清低码视频转换方法,其特征在于,在“通过音视频过滤器过滤掉流特征中与视频无关的数据,得到视频数据,并将所述视频数据存入内存中,再对内存中的视频数据进行流解码得到YUV数据”步骤中,所述音视频过滤器过滤掉所述流特征中字幕、附件以及其他与视频无关的数据,得到YUV数据,所述YUV数据仅包含音频流数据和视频流数据。
4.根据权利要求1所述的一种基于GB28181的高清低码视频转换方法,其特征在于,所述YUV优化器由YUV解析层、丢包率检测层,阈值判断层依次串联,所述阈值判断层存在两个分支,第一分支为YUV过滤器层连接到关键帧缓冲层,第二分支为丢包补偿层连接到YUV压缩层,再连接到关键帧缓冲层,所述关键帧缓冲层的输出即为所述YUV优化器的输出结果。
5.根据权利要求4所述的一种基于GB28181的高清低码视频转换方法,其特征在于,所述YUV数据输入到所述YUV优化器中,所述YUV解析层对所述YUV数据进行解析,得到视频流数据,所述丢包检测层对所述视频流数据进行检测,得到所述视频流数据中每一图像帧的丢包率,并将丢包率发送给阈值判断层进行判断,若其中一帧图像的丢包率大于第一设定阈值,则这一图像帧为所述丢包图像帧,将所述丢包图像帧输入到第一分支,由所述YUV过滤器层对这一图像帧帧进行过滤,并使用所述关键帧缓冲层复用所述丢包图像帧的上一关键帧图像数据进行补充;若其中一帧图像的丢包率小于第一设定阈值,则使用丢包补偿层对这一图像帧进行渲染,并通过YUV压缩层对渲染后的图像帧进行压缩,再输入到所述关键帧缓冲层中。
6.根据权利要求1所述的一种基于GB28181的高清低码视频转换方法,其特征在于,在“所述压缩字典将连续二进制简化为唯一对应的简化二进制”步骤中,将所述二进制字符串中的连续二进制作为可定义项,获取所述可定义项的重复项和重复个数,再使用二进制字符串以重复个数组合重复项的方式对其进行定义,并将定义内容封装为协议码保存在所述压缩字典中。
7.一种基于GB28181的高清低码视频转换装置,其特征在于,包括:
获取模块:获取至少一GB28181流数据,将所述GB28181流数据分为流标识与流特征并分别存储在磁盘IO上;
第一优化模块:在内存上设置缓冲器,所述缓冲器根据存储在磁盘IO上的流标识顺序读取对应的流特征,对所述缓冲器读取的所述流特征进行解封装操作后,通过音视频过滤器过滤流特征中与视频无关的数据得到视频数据,并将所述视频数据存入内存中,再对内存中的视频数据进行流解码得到YUV数据;
第二优化模块:使用所述YUV优化器对所述YUV数据进行优化,过滤所述YUV数据中数据质量差的丢包图像帧,并复用丢包图像帧上一关键帧图像数据补充所述丢包图像帧,得到优化数据;
输出模块:定义一个压缩字典,根据所述压缩字典对所述优化数据进行编码压缩,得到输出视频,所述压缩字典将连续二进制简化为唯一对应的简化二进制。
8.一种电子装置,包括存储器与处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1-6任一所述的一种基于GB28181的高清低码视频转换方法。
9.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序,所述计算机程序包括用于控制过程以执行过程的程序代码,所述过程包括根据权利要求1-6任一所述的一种基于GB28181的高清低码视频转换方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211298924.5A CN115665420A (zh) | 2022-10-24 | 2022-10-24 | 一种基于gb28181的高清低码视频转换方法、装置及应用 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211298924.5A CN115665420A (zh) | 2022-10-24 | 2022-10-24 | 一种基于gb28181的高清低码视频转换方法、装置及应用 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115665420A true CN115665420A (zh) | 2023-01-31 |
Family
ID=84988801
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211298924.5A Pending CN115665420A (zh) | 2022-10-24 | 2022-10-24 | 一种基于gb28181的高清低码视频转换方法、装置及应用 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115665420A (zh) |
-
2022
- 2022-10-24 CN CN202211298924.5A patent/CN115665420A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101292490B1 (ko) | Rtp 패킷에 vc―1 정보를 캡슐화하는 방법, 이를구현하기 위한 컴퓨터 판독가능 매체, rtp 데이터구조체, 액세스 유닛 데이터 구조체, 소스 모듈, 디코더모듈, 소스 모듈 및 디코더 모듈을 포함하는 시스템, 및타겟 모듈 | |
US20200036983A1 (en) | Picture file procesing method and apparatus, and storage medium | |
US11006134B2 (en) | Picture decoding and encoding methods and apparatuses, decoder, and encoder | |
US9699465B2 (en) | Method and device for partitioning an image | |
US20070133674A1 (en) | Device for coding, method for coding, system for decoding, method for decoding video data | |
US8908759B2 (en) | Network packet aware data encoding | |
US10873751B2 (en) | Video parameter set (VPS) syntax re-ordering for easy access of extension parameters | |
JP2005176352A (ja) | 移動通信端末機の動画像ストリーミングサービスのための無線動画像ストリーミングファイル、サービス方法及びシステム | |
JP2016523007A (ja) | 改善されたrtpペイロードフォーマット設計 | |
WO2023246047A1 (zh) | 一种jpeg图像压缩的方法、系统、设备和存储介质 | |
US20190356911A1 (en) | Region-based processing of predicted pixels | |
KR20230022401A (ko) | 장기 참조, 딥 러닝, 및 로드 밸런싱을 사용한 비디오 스루풋 개선 | |
WO2016022920A1 (en) | System and method for reordering of prefixes and suffixes in variable length coding to increase throughput | |
CN117176952A (zh) | 视频封装及解封装方法、装置、电子设备和计算机可读存储介质 | |
CN115665420A (zh) | 一种基于gb28181的高清低码视频转换方法、装置及应用 | |
JP7562485B2 (ja) | ストリーミングサーバ、送信方法及びプログラム | |
CN108124183B (zh) | 以同步获取影音以进行一对多影音串流的方法 | |
CN105657448A (zh) | 一种编码视频流的转发方法、装置及系统 | |
CN114979093A (zh) | 一种基于rtp的数据传输方法、装置、设备和介质 | |
US20240056098A1 (en) | Parallel entropy coding | |
US10271075B2 (en) | Cloud encoding system | |
US20240056577A1 (en) | Handling trailing bits in arithmetic encoding and decoding | |
WO2023078048A1 (zh) | 视频比特流封装、解码、访问方法及装置 | |
US20240080484A1 (en) | Method and device for luma mapping with cross component scaling | |
US7007113B2 (en) | System and method for data re-compression for communication over IP |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |