CN112804562A - 基于片重组的视频编码方法、装置、终端及介质 - Google Patents
基于片重组的视频编码方法、装置、终端及介质 Download PDFInfo
- Publication number
- CN112804562A CN112804562A CN202011622078.9A CN202011622078A CN112804562A CN 112804562 A CN112804562 A CN 112804562A CN 202011622078 A CN202011622078 A CN 202011622078A CN 112804562 A CN112804562 A CN 112804562A
- Authority
- CN
- China
- Prior art keywords
- video
- slice
- fragments
- inter
- dependency
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 230000006798 recombination Effects 0.000 title abstract description 8
- 238000005215 recombination Methods 0.000 title abstract description 8
- 239000012634 fragment Substances 0.000 claims abstract description 85
- 230000005540 biological transmission Effects 0.000 claims abstract description 19
- 238000004590 computer program Methods 0.000 claims description 11
- 238000000605 extraction Methods 0.000 claims description 6
- 230000008521 reorganization Effects 0.000 claims description 2
- 238000000638 solvent extraction Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 19
- 230000007547 defect Effects 0.000 abstract description 10
- 238000009792 diffusion process Methods 0.000 abstract description 4
- 238000012856 packing Methods 0.000 abstract description 4
- 230000004048 modification Effects 0.000 abstract description 3
- 238000012986 modification Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 239000000835 fiber Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明提供基于片重组的视频编码方法、装置、终端及介质,本发明通过改变视频分片的装包策略,减少视频分片的跨数据包依赖性和错误扩散,可减少网络传输中数据包损坏和丢失对视频质量的损害;在相同的丢包率的情况下:客观上,多数情况下接收端还原出的视频画面的平均峰值信噪比数值更高;主观上,视频画面中的缺损区域面积更小,且大体上由大面积条带状缺损转化为零散小块缺损。本发明不要求对编码器本身作任何修改,可以直接对现有的视频编解码软件产生的码流进行抗误码处理,运用该方法改进现有的视频编码和传输系统,具有较大的便利性。由于该方法仅通过分片的重新排序起到抗误码作用,不添加冗余信息,节省网络传输容量。
Description
技术领域
本发明涉及视频处理技术领域,特别是涉及基于片重组的视频编码方法、装置、终端及介质。
背景技术
近年来,移动互联网中的视频内容越来越多。由于原始视频画面数据量极大,必须经过视频压缩编码才能在计算机存储介质上存储或在网络中传输,接收端经过相应的解码操作还原出原始的视频画面。
现有的视频编码算法中大量地考虑了视频各部分画面之间的关联,因此编码后得到的分片之间也具有较强的依赖性。其中,在编码中具有依赖性的一系列连续的视频帧构成一个图像组(Group of Pictures,GOP)。每个视频帧由一个或多个分片构成,每个分片中包含若干个数据块。解码算法在解码某个数据块时,要求其前置数据块均已正确取得并解码,即要求其所属分片必须正确取得,才能顺利还原出相应位置的视频画面,否则视频解码算法将自动使用一些替代信息对于缺失信息进行填补,导致最终还原得到的视频画面与原始视频画面不一致,有缺损部分。根据运动矢量所指向的区域的不同,一个块可能依赖某个分片中的一个块,某个分片中的多个相邻的块,或某几个相邻分片中的多个相邻的块,这使得它们所属的分片之间也具有相应的依赖关系。
在网络传输,尤其是无线网络中,网络传输的容量是不稳定的,同时网络传输存在一定的误码率,不可避免地会带来一些数据块的信息错误或丢失。由于数据丢失的最小单位为包,而一个包中包含了多个数据块的信息,不同的装包方式使得在正确传输的包比例相同时,可解码的数据块的比例产生巨大的差距。现有的视频编解码系统中一般要求编码器产生较大(包含较多数据块)的分片,并直接将其封装成数据包依次传输。这样做使得最终的数据包所承载的数据块顺序是固定的,没有考虑依赖关系,会导致大量正确到达的包由于其他误码包中的前置数据块无法正确解码而被丢弃,大幅降低了网络有数据丢失的情况下视频画面的质量。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供基于片重组的视频编码方法、装置、终端及介质,用于解决现有技术中因网络数据丢失而大幅降低视频画面质量的问题。
为实现上述目的及其他相关目的,本发明的第一方面提供基于片重组的视频编码方法,包括:获取编码后的图像组的视频码流;通过检索视频编码器日志或解析视频码流,检索所述图像组的视频码流中各个分片内容所包含的所有数据块的预测模式和运动矢量信息,据以构建分片间依赖关系图;对所述分片间依赖关系图进行遍历并将其按照预设规则进行区域划分;根据区域划分结果,对所述视频码流中的分片进行分组,以将同一区域的分片划入同一组中,并在相应分片的数据中附加供用于在解码时还原原始顺序的元数据;将分组后的视频分片组装成网络数据包并通过网络进行传输;重复上述操作,直至完成所有视频码流的传输。
于本发明的第一方面的一些实施例中,所述方法还包括通过设定缩放系数来对所述视频码流中的分片进行尺寸限定,以使最大分片尺寸符合网络数据包最大允许尺寸。
于本发明的第一方面的一些实施例中,所述分片间依赖关系图由各分片内所含数据块之间的依赖关系合并得到。
于本发明的第一方面的一些实施例中,所述对所述分片间依赖关系图进行遍历并将其按照预设规则进行区域划分,包括:按照分片间依赖关系的紧密程度来划分区域,且每个划分区域内分片尺寸之和应符合网络数据包所允许的尺寸要求。
于本发明的第一方面的一些实施例中,在相应分片的数据中所附加的元数据至少包括该分片所属帧的序号以及帧内分片序号。
为实现上述目的及其他相关目的,本发明的第二方面提供一种基于片重组的视频编码装置,包括:视频编码模块,用于将获取到的视频画面编码成标准的视频码流;依赖信息提取模块,用于通过检索视频编码器日志或解析视频码流,检索所述图像组的视频码流中各个分片内容所包含的所有数据块的预测模式和运动矢量信息,据以构建分片间依赖关系图;分片重组模块,用于对所述分片间依赖关系图进行遍历并将其按照预设规则进行区域划分,并根据区域划分结果对所述视频码流中的分片进行分组,以将同一区域的分片划入同一组中,并在相应分片的数据中附加供用于在解码时还原原始顺序的元数据;发送模块,用于将分组后的视频分片组装成网络数据包并通过网络进行传输。
于本发明的第二方面的一些实施例中,所述依赖信息提取模块所构建的分片间依赖关系图由各分片内所含数据块之间的依赖关系合并得到。
于本发明的第二方面的一些实施例中,所述分片重组模块按照分片间依赖关系的紧密程度来划分区域,且每个划分区域内分片尺寸之和应符合网络数据包所允许的尺寸要求。
为实现上述目的及其他相关目的,本发明的第三方面提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述基于片重组的视频编码方法。
为实现上述目的及其他相关目的,本发明的第四方面提供一种编码终端,包括:处理器及存储器;所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行所述基于片重组的视频编码方法。
如上所述,本发明的基于片重组的视频编码方法、装置、终端及介质,具有以下有益效果:(1)通过改变视频分片的装包策略,减少视频分片的跨数据包依赖性和错误扩散,可减少网络传输中数据包损坏和丢失对视频质量的损害;在相同的丢包率的情况下:客观上,多数情况下接收端还原出的视频画面的平均峰值信噪比(Peak Signal-to-NoiseRatio,PSNR)数值更高;主观上,视频画面中的缺损区域面积更小,且大体上由大面积条带状缺损转化为零散小块缺损。(2)由于分片(Slice)是多种现有的视频编解码标准中均有的一种较为高层次的语法结构,且十分易于从码流中提取出各个分片单独处理,该方法不要求对编码器本身作任何修改,可以直接对现有的视频编解码软件产生的码流进行抗误码处理,运用该方法改进现有的视频编码和传输系统,具有较大的便利性。(3)由于该方法仅通过分片的重新排序起到抗误码作用,不添加冗余信息,节省网络传输容量。
附图说明
图1A显示为现有技术中数据块之间依赖关系示意图。
图1B显示为现有技术中分片之间依赖关系示意图。
图1C显示为现有技术中基于数据库顺序的数据包传输示意图。
图1D显示为本发明一实施例中的数据包传输示意图。
图2显示为本发明一实施例中基于片重组的视频编码方法的流程示意图。
图3显示为本发明一实施例中基于片重组的视频编码装置的结构示意图。
图4显示为本发明一实施例中编码终端的结构示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,在下述描述中,参考附图,附图描述了本发明的若干实施例。应当理解,还可使用其他实施例,并且可以在不背离本发明的精神和范围的情况下进行机械组成、结构、电气以及操作上的改变。下面的详细描述不应该被认为是限制性的,并且本发明的实施例的范围仅由公布的专利的权利要求书所限定。这里使用的术语仅是为了描述特定实施例,而并非旨在限制本发明。空间相关的术语,例如“上”、“下”、“左”、“右”、“下面”、“下方”、“下部”、“上方”、“上部”等,可在文中使用以便于说明图中所示的一个元件或特征与另一元件或特征的关系。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”、“固持”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特征、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、操作、元件、组件、项目、种类、和/或组的存在、出现或添加。此处使用的术语“或”和“和/或”被解释为包括性的,或意味着任一个或任何组合。因此,“A、B或C”或者“A、B和/或C”意味着“以下任一个:A;B;C;A和B;A和C;B和C;A、B和C”。仅当元件、功能或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。
为便于本领域技术人员理解,现对现有技术中的视频编解码系统做详细的解释说明。现有的视频编解码系统一般由编码端和解码端两个部分组成,编码端和解码端在不同的计算机设备上执行编码和解码算法。
现有的视频编码算法中大量地考虑了视频各部分画面之间的关联,因此编码后得到的分片之间也具有较强的依赖性。图1A为一个示例,根据运动矢量所指向的区域的不同,一个块可能依赖某个分片中的一个块,某个分片中的多个相邻的块,或某几个相邻分片中的多个相邻的块。如图1A中分片Slice5至少包括数据块A5、数据块B5、数据块C5;数据块A5依赖分片Slice1中的数据块A1;数据块B5依赖分片Slice2中的多个相邻的数据块B21、B22、B23、B24;数据块C5依赖两个相邻分片中的多个数据块C31、C32、C33、C34,这样使得数据块所属的分片之间也具有相应的依赖关系,如图1B所示,分片Slice5分别与分片Slice1、分片Slice2、分片Slice3及分片Slice4之间也都具有相应的依赖关系。
如图1C所示的视频编解码系统中,一般要求编码器产生较大的分片,并直接将其封装成数据包依次传输,这样做使得最终的数据包所承载的数据块顺序虽是固定的,但并没有考虑依赖关系,会导致大量正确到达的包由于其他误码包中的前置数据块无法正确解码而被丢弃,大幅降低了网络有数据丢失的情况下视频画面的质量。
有鉴于此,本发明提出基于片重组的视频编码方法、装置、终端及介质,旨在对符合互联网视频编码标准的视频编码器产生的视频码流中的分片结构,要求编码器产生较小(包含较少数据块)的分片,再依照分片之间的依赖关系和用户指定的规则调整其顺序和组包方式,其效果如图1D所示。通过本发明的技术方案可间接调整每个数据包所承载的数据块,减少网络传输丢包时的错误扩散,从而减少受影响的视频图像的范围大小。与此同时,解码端可以使用适当的方法逆向操作将每个分片恢复其原始位置,使其能够正确地由符合互联网视频编码标准的视频解码器解码。
为了使本发明的目的、技术方案及优点更加清楚明白,通过下述实施例并结合附图,对本发明实施例中的技术方案的进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定发明。
如图2所示,展示了本发明一实施例中基于片重组的视频编码方法的流程示意图。本实施例中基于片重组的视频编码方法主要包括如下各步骤。
步骤S21:获取编码后的图像组的视频码流。其中,所述视频码流可以是符合互联网视频编码标准(例如H.264或HEVC)的视频编码器所实时输出的视频码流,也可以是由视频编码器预先生成并存储于计算机存储介质中的视频码流,或是第三方通过网络提供的由上述方法产生的视频码流。
在一些示例中,所述方法还包括通过设定缩放系数来对所述视频码流中的分片进行尺寸限定,以使最大分片尺寸符合网络数据包最大允许尺寸。具体而言,该视频码流具有分片结构且设置允许的最大分片尺寸不大于网络数据包的最大允许尺寸与缩放系数的乘积,所述缩放系数介于0和1之间,从而使分片尺寸较小。视频编码器所产生的视频码流首先置入缓冲区中,待缓冲区中的视频码流构成一个图像组后再进入下一步处理。
步骤S22:通过检索视频编码器日志或解析视频码流,检索所述图像组的视频码流中各个分片内容所包含的所有数据块的预测模式和运动矢量信息,据以构建分片间依赖关系图。其中,分片间依赖关系由各分片内所含数据块之间的依赖关系合并得到。与此同时,本实施例中所述分片间依赖关系图可采用有向无环图表示,有向无环图指的是一个无回路的有向图,其生成树个数等于入度非零的节点的入度积。
步骤S23:对所述分片间依赖关系图进行遍历并将其按照预设规则进行区域划分。
优选地,每个划分区域内分片尺寸之和应符合网络数据包所允许的尺寸要求。具体而言,对上述分片间依赖关系图进行遍历后可根据用户提供的规则将其有序划分为若干区域,要求每个区域内部的分片大尺寸和必须不超过网络数据包的最大允许尺寸。
优选地,按照分片间依赖关系的紧密程度来划分区域,以将依赖关系紧密的分片划入同一区域,反之划入不同区域。应理解的是,具体的划分规则可由用户指定,例如:以包含关键帧(I帧)数据的分片为起点,对依赖关系图进行深度优先遍历,按照遍历顺序划分区域,将遍历时相邻访问的分片划入同一区域内。
步骤S24:根据区域划分结果,对所述视频码流中的分片进行分组,以将同一区域的分片划入同一组中,并在相应分片的数据中附加供用于在解码时还原原始顺序的元数据。具体而言,将划入同一区域的分片也分入同一组中,并且在相应分片的数据中附加必要的元数据,包括该分片所属帧的序号以及帧内分片序号。
步骤S25:将分组后的视频分片组装成网络数据包并通过网络进行传输。
步骤S26:重复上述操作,直至完成所有视频码流的传输。
需说明的是,本实施例提供的基于片重组的视频编码方法可应用于计算机设备,例如台式电脑、笔记本电脑、平板电脑、智能手机、智能手环、智能手表、智能头盔、智能电视、个人数字助理(Personal Digital Assistant,简称PDA)等个人电脑;也可应用于服务器,所述服务器可以根据功能、负载等多种因素布置在一个或多个实体服务器上,也可以由分布的或集中的服务器集群构成。
如图3所示,展示了本发明一实施例中基于片重组的视频编码装置的结构示意图。本实施例中的视频编码装置具体包括:视频编码模块301、依赖信息提取模块302、分片重组模块303、发送模块304。
所述视频编码模块301可采用任何符合互联网视频编码标准的编码器,例如HEVC视频编码器或H.264编码器等,用以将外部设备录制的视频画面编码为标准的视频码流。视频码流中最大分片大小的缩放系数介于0~1之间(例如可取0.1),由于目前互联网普遍以1500字节的MTU运行,相应的UDP数据包最大大小为1472字节,因而分片最大尺寸设置为1472×0.1≈147字节;图像组大小设为24帧,编码得到的视频码流首先置入缓冲区中,以图像组为单位交付给后续模块进行处理。
依赖信息提取模块302用于通过检索视频编码器日志或解析视频码流,检索所述图像组的视频码流中各个分片内容所包含的所有数据块的预测模式和运动矢量信息,据以构建分片间依赖关系图。具体可读取并解析所述视频码流中的各个编码单元的预测模式和运动矢量信息,据以构建分片间依赖关系图。
分片重组模块303用于对所述分片间依赖关系图进行遍历并将其按照预设规则进行区域划分,并根据区域划分结果对所述视频码流中的分片进行分组,以将同一区域的分片划入同一组中,并在相应分片的数据中附加供用于在解码时还原原始顺序的元数据。具体而言,可获取视频码流和依赖关系图,以包含关键帧(I帧)数据的分片为起点,对依赖关系图进行深度优先遍历,按照遍历顺序划分区域,将遍历时相邻访问的分片划入同一区域内;按照依赖关系图的划分结果对分片进行分组;向相应的包含分片数据的NALU上附加元数据,如下表1所示(非分片类型的NALU,例如包含视频元数据的NALU不进行分组处理)。
表1.添加元数据后的数据格式
发送模块304为网络发送模块,用于将上述分组好的分片打包成UDP数据包(即包含分片数据的NALU根据分组情况,同一个分组的装入同一包中,其它类型的NALU单独组包),通过IP网络使用UDP协议进行传输。
在本实施例中,编码装置中的传输模块将分片打包成UDP数据包后通过网络传输给解码装置,所述解码装置在接收到数据包后可以任意可行方式对其进行解读和使用,编码装置不对其做限定。
在一些示例中,解码装置可包括接收模块305、分片重组还原模块306、视频播放模块307。所述接收模块305用于从IP网络接收UDP数据包并置入缓冲区中,并待当前图像组的数据包全部接收完毕后再进执行下一步处理。其中,判断当前图像组的数据包是否已全部接收完毕的标准是,若接收到来自新的图像组的数据,则判定当前图像组的数据包已经全部接收完毕,否则没有全部接收完毕。所述分片重组还原模块306每次处理一个图像组的数据包时,提取数据包中的NALU,对于包含分片数据的NALU,根据附加的元数据排序还原原始顺序,同时去除添加的元数据,还原原始的视频码流格式。所述视频播放模块307的内部包含HEVC视频解码器和视频播放用户界面;获取上述经过还原处理的视频码流,解码并播放。
应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,视频编码模块可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上视频编码模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(digital signal processor,简称DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(Central Processing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。
如图4所示,展示了本发明一实施例中编码终端的结构示意图。本实例提供的编码终端,包括:处理器41、存储器42、通信器43;存储器42通过系统总线与处理器41和通信器43连接并完成相互间的通信,存储器42用于存储计算机程序,通信器43用于和其他设备进行通信,处理器41用于运行计算机程序,使电子终端执行如上基于片重组的视频编码方法的各个步骤。
上述提到的系统总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该系统总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口用于实现数据库访问装置与其他设备(例如客户端、读写库和只读库)之间的通信。存储器可能包含随机存取存储器(Random Access Memory,简称RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述基于片重组的视频编码方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过计算机程序相关的硬件来完成。前述的计算机程序可以存储于一计算机可读存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
于本发明提供的实施例中,所述计算机可读写存储介质可以包括只读存储器、随机存取存储器、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁存储设备、闪存、U盘、移动硬盘、或者能够用于存储具有指令或数据结构形式的期望的程序代码并能够由计算机进行存取的任何其它介质。另外,任何连接都可以适当地称为计算机可读介质。例如,如果指令是使用同轴电缆、光纤光缆、双绞线、数字订户线(DSL)或者诸如红外线、无线电和微波之类的无线技术,从网站、服务器或其它远程源发送的,则所述同轴电缆、光纤光缆、双绞线、DSL或者诸如红外线、无线电和微波之类的无线技术包括在所述介质的定义中。然而,应当理解的是,计算机可读写存储介质和数据存储介质不包括连接、载波、信号或者其它暂时性介质,而是旨在针对于非暂时性、有形的存储介质。如申请中所使用的磁盘和光盘包括压缩光盘(CD)、激光光盘、光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中,磁盘通常磁性地复制数据,而光盘则用激光来光学地复制数据。
综上所述,本发明提供基于片重组的视频编码方法、装置、终端及介质,本发明通过改变视频分片的装包策略,减少视频分片的跨数据包依赖性和错误扩散,可减少网络传输中数据包损坏和丢失对视频质量的损害;在相同的丢包率的情况下:客观上,多数情况下接收端还原出的视频画面的平均峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)数值更高;主观上,视频画面中的缺损区域面积更小,且大体上由大面积条带状缺损转化为零散小块缺损。由于分片(Slice)是多种现有的视频编解码标准中均有的一种较为高层次的语法结构,且十分易于从码流中提取出各个分片单独处理,该方法不要求对编码器本身作任何修改,可以直接对现有的视频编解码软件产生的码流进行抗误码处理,运用该方法改进现有的视频编码和传输系统,具有较大的便利性。由于该方法仅通过分片的重新排序起到抗误码作用,不添加冗余信息,节省网络传输容量。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (10)
1.一种基于片重组的视频编码方法,其特征在于,包括:
获取编码后的图像组的视频码流;
通过检索视频编码器日志或解析视频码流,检索所述图像组的视频码流中各个分片内容所包含的所有数据块的预测模式和运动矢量信息,据以构建分片间依赖关系图;
对所述分片间依赖关系图进行遍历并将其按照预设规则进行区域划分;
根据区域划分结果,对所述视频码流中的分片进行分组,以将同一区域的分片划入同一组中,并在相应分片的数据中附加供用于在解码时还原原始顺序的元数据;
将分组后的视频分片组装成网络数据包并通过网络进行传输;
重复上述操作,直至完成所有视频码流的传输。
2.根据权利要求1所述的视频编码方法,其特征在于,所述方法还包括通过设定缩放系数来对所述视频码流中的分片进行尺寸限定,以使最大分片尺寸符合网络数据包最大允许尺寸。
3.根据权利要求1所述的视频编码方法,其特征在于,所述分片间依赖关系图由各分片内所含数据块之间的依赖关系合并得到。
4.根据权利要求1所述的视频编码方法,其特征在于,所述对所述分片间依赖关系图进行遍历并将其按照预设规则进行区域划分,包括:按照分片间依赖关系的紧密程度来划分区域,且每个划分区域内分片尺寸之和应符合网络数据包所允许的尺寸要求。
5.根据权利要求1所述的视频编码方法,其特征在于,在相应分片的数据中所附加的元数据至少包括该分片所属帧的序号以及帧内分片序号。
6.一种基于片重组的视频编码装置,其特征在于,包括:
视频编码模块,用于将获取到的视频画面编码成标准的视频码流;
依赖信息提取模块,用于通过检索视频编码器日志或解析视频码流,检索所述图像组的视频码流中各个分片内容所包含的所有数据块的预测模式和运动矢量信息,据以构建分片间依赖关系图;
分片重组模块,用于对所述分片间依赖关系图进行遍历并将其按照预设规则进行区域划分,并根据区域划分结果对所述视频码流中的分片进行分组,以将同一区域的分片划入同一组中,并在相应分片的数据中附加供用于在解码时还原原始顺序的元数据;
发送模块,用于将分组后的视频分片组装成网络数据包并通过网络进行传输。
7.根据权利要求6所述的视频编码装置,其特征在于,所述依赖信息提取模块所构建的分片间依赖关系图由各分片内所含数据块之间的依赖关系合并得到。
8.根据权利要求6所述的视频编码装置,其特征在于,所述分片重组模块按照分片间依赖关系的紧密程度来划分区域,且每个划分区域内分片尺寸之和应符合网络数据包所允许的尺寸要求。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述基于片重组的视频编码方法。
10.一种编码终端,其特征在于,包括:处理器及存储器;
所述存储器用于存储计算机程序;
所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行如权利要求1至5中任一项所述基于片重组的视频编码方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011622078.9A CN112804562B (zh) | 2020-12-30 | 2020-12-30 | 基于片重组的视频编码方法、装置、终端及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011622078.9A CN112804562B (zh) | 2020-12-30 | 2020-12-30 | 基于片重组的视频编码方法、装置、终端及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112804562A true CN112804562A (zh) | 2021-05-14 |
CN112804562B CN112804562B (zh) | 2022-01-07 |
Family
ID=75807498
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011622078.9A Active CN112804562B (zh) | 2020-12-30 | 2020-12-30 | 基于片重组的视频编码方法、装置、终端及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112804562B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107852500A (zh) * | 2015-08-24 | 2018-03-27 | 华为技术有限公司 | 运动矢量场编码方法和解码方法、编码和解码装置 |
US20180332293A1 (en) * | 2017-05-10 | 2018-11-15 | Samsung Electronics Co., Ltd. | Image processing device and image processing method performing slice-based compression |
CN110996099A (zh) * | 2019-11-15 | 2020-04-10 | 网宿科技股份有限公司 | 一种视频编码方法、系统及设备 |
-
2020
- 2020-12-30 CN CN202011622078.9A patent/CN112804562B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107852500A (zh) * | 2015-08-24 | 2018-03-27 | 华为技术有限公司 | 运动矢量场编码方法和解码方法、编码和解码装置 |
US20180332293A1 (en) * | 2017-05-10 | 2018-11-15 | Samsung Electronics Co., Ltd. | Image processing device and image processing method performing slice-based compression |
CN110996099A (zh) * | 2019-11-15 | 2020-04-10 | 网宿科技股份有限公司 | 一种视频编码方法、系统及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112804562B (zh) | 2022-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2586639C2 (ru) | Способ и устройство кодирования или декодирования | |
US10587875B2 (en) | Coding tools for subjective quality improvements in video codecs | |
CN104462524A (zh) | 一种物联网数据压缩存储方法 | |
US20140006016A1 (en) | Voice signal encoding and decoding method, device, and codec system | |
CN105554513A (zh) | 一种基于h.264的全景视频传输方法及系统 | |
CN112822488B (zh) | 基于块重组的视频编解码系统、方法、装置、终端及介质 | |
US20190356911A1 (en) | Region-based processing of predicted pixels | |
WO2022042325A1 (zh) | 视频处理方法、装置、设备及存储介质 | |
US20230319279A1 (en) | Media Packetization For Network Qualitative Communication | |
CN112804562B (zh) | 基于片重组的视频编码方法、装置、终端及介质 | |
CN112822549A (zh) | 基于分片重组的视频流解码方法、系统、终端及介质 | |
WO2024124901A1 (zh) | 点云处理方法、装置、设备、介质和程序产品 | |
US9344720B2 (en) | Entropy coding techniques and protocol to support parallel processing with low latency | |
US20140092987A1 (en) | Entropy coding techniques and protocol to support parallel processing with low latency | |
WO2023130896A1 (zh) | 媒体数据的数据处理方法、装置、计算机设备及存储介质 | |
CN116684595A (zh) | 一种超低时延的图像编码系统、方法、装置及存储介质 | |
CN112822492B (zh) | 抗误码视频编码重组方法、装置、设备、系统和介质 | |
CN115643310A (zh) | 一种压缩数据的方法、装置和系统 | |
CN114173153A (zh) | 视频处理方法、装置和电子设备 | |
CN112788344B (zh) | 基于编码单元重组的视频解码方法、装置、系统、介质及终端 | |
CN112822514B (zh) | 基于依赖关系的视频流分组传输方法、系统、终端及介质 | |
US12022088B2 (en) | Method and apparatus for constructing motion information list in video encoding and decoding and device | |
CN112788339B (zh) | 视频编码优化方法、装置、系统、介质及终端 | |
WO2023130893A1 (zh) | 流媒体传输方法、装置、电子设备及计算机可读存储介质 | |
GB2483297A (en) | Encoded video data storage by splitting the data into multiple sub-streams and storing each sub-stream separately |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |