CN112511838A - 一种降低视频转码延时的方法、装置、设备和可读介质 - Google Patents
一种降低视频转码延时的方法、装置、设备和可读介质 Download PDFInfo
- Publication number
- CN112511838A CN112511838A CN202110160818.XA CN202110160818A CN112511838A CN 112511838 A CN112511838 A CN 112511838A CN 202110160818 A CN202110160818 A CN 202110160818A CN 112511838 A CN112511838 A CN 112511838A
- Authority
- CN
- China
- Prior art keywords
- decoded
- current frame
- encoding
- requirement
- encoded
- 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
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000012544 monitoring process Methods 0.000 claims abstract description 9
- 230000008569 process Effects 0.000 claims description 27
- 238000010586 diagram Methods 0.000 description 16
- 238000003860 storage Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 11
- 238000004590 computer program Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 230000006872 improvement Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 229920001296 polysiloxane Polymers 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- 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/40—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种降低视频转码延时的方法、装置、设备和可读介质,方案包括:以帧为单位将输入的压缩码流进行解码;实时监测当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求,每当监测到当前待解码帧中已经完成解码但未进行编码的部分满足编码搜索区域的要求后就将此部分进行编码,直至将此待解码帧编码完毕;然后对输入的压缩码流中的其它帧同样按此方案进行编码,直至将输入的压缩码流中的全部帧编码完毕。本发明技术方案中,每当待转码视频的一个帧中已经完成解码的部分满足编码搜索区域的要求时,即启动编码工作,从而能够及时启动编码器,进而能够有效降低转码延时,提升用户体验。
Description
技术领域
本申请涉及视频转码技术领域,尤其涉及一种降低视频转码延时的方法、装置、设备和可读介质。
背景技术
随着移动互联网技术的快速发展,视频点播和视频直播逐渐成为时下热点,各种视频编解码标准也在不断地提高着视频图像数据的压缩率、清晰度等参数。视频转码过程中需要将已经压缩编码的视频码流转换成另一种格式的视频码流,以适应不同的网络带宽、不同的终端处理能力和不同的用户需求。
视频是由若干帧图像组成的,视频转码本质上是一个先解码,再编码的过程,视频转码过程需要进行大量的计算,现有技术中,通常存在转码延时超过一帧的情况,而这会严重影响用户体验,比如现场直播领域中需要在较低延迟的情况下完成转码,转码延时超过一定阈值后,用户体验就会下降很多。为降低转码延时,现有技术大多通过减少转码流程、牺牲图像转码质量的方式降低视频转码过程中的计算量从而减少转码延时,而这会导致转码后的视频质量下降。
在视频编解码协议大发展的今天,各种编解码协议层出不穷,很多场景下需要进行视频转换,视频转码技术的应用越来越广泛,如何在降低视频转码延时的同时保证转码后图像的质量是一个亟需解决的技术问题。
发明内容
本说明书实施例提供一种降低视频转码延时的方法、装置、设备和可读介质,以降低转码延时,提升用户体验效果。
为解决上述技术问题,本说明书实施例是这样实现的:
本说明书实施例提供一种降低视频转码延时的方法,包括:
步骤102:以帧为单位将输入的压缩码流进行解码;
步骤104:实时监测当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求,得到判断结果;
步骤106:如果所述判断结果为是,则对所述当前待解码帧中已经完成解码但未进行编码的部分进行编码;
如果所述判断结果为否,则继续对所述当前待解码帧进行解码,直至所述当前待解码帧中已经完成解码但未进行编码的部分满足所述编码搜索区域的要求,然后对所述当前待解码帧中满足所述编码搜索区域的要求的部分进行编码;
步骤108:重复步骤104至步骤106,每当监测到所述当前待解码帧中已经完成解码但未进行编码的部分满足编码搜索区域的要求后,将所述当前待解码帧中已经完成解码但未进行编码的部分进行编码,直至将所述当前待解码帧编码完毕;
步骤110:重复步骤104至步骤108,直至将输入的压缩码流中的全部帧编码完毕。
优选的,所述步骤104中,如果对所述压缩码流的解码速度大于对所述压缩码流的编码速度且所述当前待解码帧的整帧已完成解码,则不再判断所述当前待解码帧已经完成解码但未进行编码的部分是否满足编码搜索区域的要求。
优选的,所述编码搜索区域是一个矩形区域,所述矩形区域的长度为预定的长度,所述矩形区域的高度为预定的高度。
优选的,所述当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求是指,当所述当前待解码帧中已经完成解码但未进行编码的部分的长度大于等于所述预定的长度且高度大于等于所述预定的高度时,所述当前待解码帧中已经完成解码但未进行编码的部分满足编码搜索区域的要求。
优选的,在对所述当前待解码帧的编码过程中,如果所述当前待解码帧最后剩余的未编码的部分不满足所述编码搜索区域的要求,则以预定的像素对所述当前待解码帧最后剩余的未编码的部分进行补齐,得到补齐后的未编码区域,使得所述补齐后的未编码区域满足所述编码搜索区域的要求。
本说明书实施例提供一种降低视频转码延时的装置,包括:
压缩码流解码模块,用于以帧为单位将输入的压缩码流进行解码;
判断模块,用于实时监测当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求,得到判断结果;
第一编码模块,用于如果所述判断结果为是,则对所述当前待解码帧中已经完成解码但未进行编码的部分进行编码;
如果所述判断结果为否,则继续对所述当前待解码帧进行解码,直至所述当前待解码帧中已经完成解码但未进行编码的部分满足所述编码搜索区域的要求,然后对所述当前待解码帧中满足所述编码搜索区域的要求的部分进行编码;
第二编码模块,用于每当监测到所述当前待解码帧中已经完成解码但未进行编码的部分满足编码搜索区域的要求后,将所述当前待解码帧中已经完成解码但未进行编码的部分进行编码,直至将所述当前待解码帧编码完毕;
迭代模块,用于将输入的压缩码流中的全部帧编码完毕。
本说明书实施例提供的一种降低视频转码延时的设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述处理器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行以下步骤:
步骤102:以帧为单位将输入的压缩码流进行解码;
步骤104:实时监测当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求,得到判断结果;
步骤106:如果所述判断结果为是,则对所述当前待解码帧中已经完成解码但未进行编码的部分进行编码;
如果所述判断结果为否,则继续对所述当前待解码帧进行解码,直至所述当前待解码帧中已经完成解码但未进行编码的部分满足所述编码搜索区域的要求,然后对所述当前待解码帧中满足所述编码搜索区域的要求的部分进行编码;
步骤108:重复步骤104至步骤106,每当监测到所述当前待解码帧中已经完成解码但未进行编码的部分满足编码搜索区域的要求后,将所述当前待解码帧中已经完成解码但未进行编码的部分进行编码,直至将所述当前待解码帧编码完毕;
步骤110:重复步骤104至步骤108,直至将输入的压缩码流中的全部帧编码完毕。
本说明书实施例提供的一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现一种降低转码延时的方法。
本说明书中提供的至少一个实施例能够达到以下有益效果:本发明技术方案中,当待转码视频的一个帧中已经完成解码的部分满足编码搜索区域的要求时,即启动编码工作,而不必等待此帧全部完成解码或编码搜索区域所在的行全部编码完毕后才启动编码过程,这样在对视频转码时,能够及时启动编码器,从而能够有效降低转码延时,提升用户体验。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书实施例中提供的一种降低转码延时的方法的流程图。
图2为本说明书实施例中提供的一种降低转码延时的方法中判断当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求的示意图。
图3为本说明书实施例中提供的一种降低转码延时的方法中另一种判断当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求的示意图。
图4为本说明书实施例提供的降低转码延时的方法中,说明随着解码过程的进行而对当前待解码帧进行处理的示意图。
图5为本说明书实施例中表明随着对当前待解码帧的解码过程的进行,此帧中解码完成部分的比例变大,待解码部分所占比例变小的示意图。
图6为本说明书实施例提供的对应于图1的一种降低转码延时的装置的结构示意图。
图7为本说明书实施例提供的对应于图1的一种降低转码延时的设备的结构示意图。
具体实施方式
为使本说明书一个或多个实施例的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书一个或多个实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书一个或多个实施例保护的范围。
如背景技术部分记载的,视频转码过程中需要将某种格式的压缩形式的视频码流转换成另一种格式的压缩形式的视频码流,以适应不同的网络带宽、不同的终端处理能力和不同的用户需求,视频转码本质上是一个先将输入的压缩格式的视频码流进行解码,再将解码后得到的视频码流进行编码的过程。在将某一种格式的视频转换为另一种格式的视频的过程中,通常都是先将视频暂时解码,然后将其重新编码成需要的格式。同时如背景技术部分所描述的,现有技术中在对视频进行转码时,通常以帧为单位,待将一帧解码完成后,再将解码得到的帧进行编码,从而这会造成一帧的延时,而在视频点播和视频直播等领域,要求视频转码的延时必须很低,这样用户体验才较好,当视频转码的延时超过一定阈值后,就会严重影响用户体验。现有的视频转码技术大多通过减少转码流程、牺牲图像转码质量的方式降低视频转码过程中的计算量从而减少视频转码延时,这会导致转码后的视频质量下降。
本说明书实施例提供了一种能够有效降低视频转码延时的方法,通过对视频转码过程的现有技术中存在的技术缺陷进行分析,本实施例技术方案中,当组成待转码视频的各个视频帧中已经完成解码的部分满足编码搜索区域的要求时,即启动编码工作,而不必等待各个视频帧全部完成解码后才启动对相应视频帧的编码处理,这样在对视频转码时,能够及时启动编码器,从而能够有效降低转码延时,提高用户体验。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1为本说明书实施例提供的一种降低转码延时的方法的流程示意图。从程序角度而言,流程的执行主体可以为搭载于应用服务器的程序或客户端。
如图1所示,该流程可以包括以下步骤:
步骤102:以帧为单位将输入的压缩码流进行解码。
帧是视频中一幅静止的画面,连续的帧就形成动画,如电视图像等。通过摄像机、摄像头等工具采集的原始数字视频信息数据量巨大,存储及传输困难,必须经过编码压缩处理,去除包含的冗余信息后才能够方便地进行存储和传输。本步骤初始输入的压缩码流中包括一系列的编码压缩处理后的视频帧,本实施例技术方案的目的是以输入的压缩码流中包含的视频帧以帧为单位先对帧进行解码再对帧进行编码,每编码完一个视频帧,就对下一个视频帧同样进行先解码后编码的处理,直至将输入的压缩码流中包含的所有视频帧编码完毕,从而将初始输入的压缩码流最终转换为需要的格式的压缩码流。
步骤104:实时监测当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求,得到判断结果。
本实施例技术方案中实时监测步骤102中正在进行解码操作的视频帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求,得到判断结果。其中,从图形形状角度而言,编码搜索区域是一个基本块,此基本块的面积要小于当前待解码帧的面积。下面以图2对术语编码搜索区域进行进一步解释说明,图2中,1表示当前待解码帧,2表示编码搜索区域,当前待解码帧1中每一个小的方格都代表组成此待解码帧的像素。其中,编码搜索区域2为一个矩形,矩形的长度为预定的长度(为便于说明问题,在图2中此预定的长度为待解码帧的长度),高度为预定的高度,编码器会对搜索范围内的所有像素点都进行匹配对比,选出最合适的运动向量。需要说明的是,在图2中,为便于说明本实施例技术方案,所述编码搜索区域的长度与待解码帧的图像的长度相同,但是应当理解,如前文陈述,本实施例技术方案中,从图形面积角度来说,编码搜索区域本质上是一个比待解码帧所在图像的面积小的基本块,对此基本块的形状,本实施例技术方案并不做具体限定,对该搜索区域的大小也不做具体规定,本领域技术人员可根据实际需要灵活设定该搜索区域的形状和大小,但此编码搜索区域的面积要小于待解码帧所在图像的面积,比如可设定此编码搜索区域的面积为待解码帧所在图像的面积的1%、5%、10%,但此比例不宜设置的过大,因为此比例设置的过大时(比如设定此编码编码搜索区域的面积为待解码帧所在图像的面积的60%或更高),只有待解码帧解码完成的区域满足此编码搜索区域的要求时才能启动编码,这样转码延时会比较高。举例说明,如图3所示,1表示当前待解码帧,3表示另一种形式的编码搜索区域,此另一种形式的编码搜索区域3的长度小于待解码帧的图像的长度,这样在图3的例子中,只要待解码帧已经完成解码的区域满足此另一种形式的编码搜索区域3的要求,就可以立即启动编码,而不必等待此另一种形式的编码搜索区域3所在行的全部像素解码完毕才启动编码。
步骤106:如果所述判断结果为是,则对所述当前待解码帧中已经完成解码但未进行编码的部分进行编码;如果所述判断结果为否,则继续对所述当前待解码帧进行解码,直至所述当前待解码帧中已经完成解码但未进行编码的部分满足所述编码搜索区域的要求,然后对所述当前待解码帧中满足所述编码搜索区域的要求的部分进行编码。
如图2所示,当步骤104中的待解码帧已经完成解码的部分满足编码搜索区域的要求时,即可启动编码过程,而不必等待所述待解码帧的整帧全部完成解码后才启动编码过程,这样本实施例技术方案中当编码条件满足后能及时启动编码过程,从而能够有效降低转码延时。当编码搜索区域的形状为图3中的符号3所表示的形状时,步骤104中的待解码帧已经完成解码的部分满足编码搜索区域3的要求时,即可启动编码过程,而不必等待区域3所在行的所有行全部解码完成时才启动编码过程。
步骤108:重复步骤104至步骤106,每当监测到所述当前待解码帧中已经完成解码但未进行编码的部分满足编码搜索区域的要求后,将所述当前待解码帧中已经完成解码但未进行编码的部分进行编码,直至将所述当前待解码帧编码完毕。
通常情况下,步骤104中的所述当前待解码帧中已经完成解码但未进行编码的部分只占所述当前待解码帧的整帧图像的一部分,对所述当前待解码帧中未进行编码的部分,同样需要判断此未进行编码的部分中已经完成解码的部分是否满足编码搜索区域的要求,一旦监测到满足要求,即启动对满足要求的那部分的编码工作,直至将所述当前待解码帧全部完成编码工作。如图4所示,对当前待解码帧,需要实时监测已经完成解码的部分是否满足编码搜索区域的要求,当监测到满足此要求后,就将此部分送入编码器进行编码,这样如图5所示,对于当前待解码帧,解码完成部分所占的比例越来越大,待解码部分所占的比例越来越小。
步骤110:重复步骤104至步骤108,直至将输入的压缩码流中的全部帧编码完毕。
视频转码实质上是对待转码视频先解码然后再编码的过程,视频是由一系列帧图像组成,当对待转码视频中的一个单位的视频帧完成先解码后编码的转码操作后,需对剩余的待转码视频帧继续进行先解码后编码的处理,即对剩余的待转码视频帧中的每单位视频帧都进行步骤102至步骤108,直至将待转码视频中的全部视频帧处理完毕。
进一步优化方案,所述步骤104中,如果对所述压缩码流的解码速度大于对所述压缩码流的编码速度且所述当前待解码帧的整帧已完成解码,则不再判断所述当前待解码帧已经完成解码但未进行编码的部分是否满足编码搜索区域的要求。
进一步优化方案,所述当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求是指,当所述当前待解码帧中已经完成解码但未进行编码的部分的长度大于等于所述预定的长度且高度大于等于所述预定的高度时,所述当前待解码帧中已经完成解码但未进行编码的部分满足编码搜索区域的要求。
进一步优化方案,在对所述当前待解码帧的编码过程中,如果所述当前待解码帧最后剩余的未编码的部分不满足所述编码搜索区域的要求,则以预定的像素对所述当前待解码帧最后剩余的未编码的部分进行补齐,得到补齐后的未编码区域,使得所述补齐后的未编码区域满足所述编码搜索区域的要求。
本发明技术方案中,当待转码视频的一个帧中已经完成解码的部分满足编码搜索区域的要求时,即启动编码工作,而不必等待此帧全部完成解码才启动编码,这样在对视频转码时,能够及时启动编码器,从而能够有效降低转码延时,提升用户体验。
应当理解,本说明书一个或多个实施例所述的方法中,部分步骤的顺序可以根据实际需要调整,或者可以省略部分步骤。重点需要说明的是,本实施例技术方案部分步骤可以并行执行,由于视频转码实质上是对待转码视频先进行解码然后再进行编码的过程,步骤102至步骤108部分步骤可以并行处理,从而整体提高运算效率。
基于同样的思路,本说明书实施例还提供了上述方法对应的装置,图6为本说明书实施例提供的对应于图1的一种降低转码延时的装置的结构示意图。如图6所示,该装置包括:
压缩码流解码模块602,用于以帧为单位将输入的压缩码流进行解码;
判断模块604,用于实时监测当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求,得到判断结果;
第一编码模块606,用于如果所述判断结果为是,则对所述当前待解码帧中已经完成解码但未进行编码的部分进行编码;
如果所述判断结果为否,则继续对所述当前待解码帧进行解码,直至所述当前待解码帧中已经完成解码但未进行编码的部分满足所述编码搜索区域的要求,然后对所述当前待解码帧中满足所述编码搜索区域的要求的部分进行编码;
第二编码模块608,用于每当监测到所述当前待解码帧中已经完成解码但未进行编码的部分满足编码搜索区域的要求后,将所述当前待解码帧中已经完成解码但未进行编码的部分进行编码,直至将所述当前待解码帧编码完毕;
迭代模块610,用于将输入的压缩码流中的全部帧编码完毕。
图7为本说明书实施例提供的对应于图1的一种降低转码延时的设备的结构示意图。如图7所示,设备700可以包括:
至少一个处理器710;以及,
与所述至少一个处理器通信连接的存储器730;其中,
所述存储器730存储有可被所述至少一个处理器710执行的指令720,所述指令被所述至少一个处理器710执行,以使所述至少一个处理器710能够执行以下步骤序列:
步骤102:以帧为单位将输入的压缩码流进行解码;
步骤104:实时监测当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求,得到判断结果;
步骤106:如果所述判断结果为是,则对所述当前待解码帧中已经完成解码但未进行编码的部分进行编码;
如果所述判断结果为否,则继续对所述当前待解码帧进行解码,直至所述当前待解码帧中已经完成解码但未进行编码的部分满足所述编码搜索区域的要求,然后对所述当前待解码帧中满足所述编码搜索区域的要求的部分进行编码;
步骤108:重复步骤104至步骤106,每当监测到所述当前待解码帧中已经完成解码但未进行编码的部分满足编码搜索区域的要求后,将所述当前待解码帧中已经完成解码但未进行编码的部分进行编码,直至将所述当前待解码帧编码完毕;
步骤110:重复步骤104至步骤108,直至将输入的压缩码流中的全部帧编码完毕。
本说明书实施例还提供一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现:
步骤102:以帧为单位将输入的压缩码流进行解码;
步骤104:判断当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求,得到判断结果;
步骤106:如果所述判断结果为是,则对所述当前待解码帧中已经完成解码但未进行编码的部分进行编码;
步骤108:重复步骤104至步骤106,将所述当前待解码帧中剩余的未进行编码的部分完成编码;
步骤110:重复步骤102至步骤108,直至将所述输入的压缩码流中的全部帧完成编码。
上述对本说明书特定实施例进行了描述。其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device, PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字符系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20 以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字符助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字符多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带式磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (8)
1.一种降低视频转码延时的方法,包括:
步骤102:以帧为单位将输入的压缩码流进行解码;
步骤104:实时监测当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求,得到判断结果;
步骤106:如果所述判断结果为是,则对所述当前待解码帧中已经完成解码但未进行编码的部分进行编码;
如果所述判断结果为否,则继续对所述当前待解码帧进行解码,直至所述当前待解码帧中已经完成解码但未进行编码的部分满足所述编码搜索区域的要求,然后对所述当前待解码帧中满足所述编码搜索区域的要求的部分进行编码;
步骤108:重复步骤104至步骤106,每当监测到所述当前待解码帧中已经完成解码但未进行编码的部分满足编码搜索区域的要求后,将所述当前待解码帧中已经完成解码但未进行编码的部分进行编码,直至将所述当前待解码帧编码完毕;
步骤110:重复步骤104至步骤108,直至将输入的压缩码流中的全部帧编码完毕。
2.根据权利要求1所述的方法,其特征在于,所述步骤104中,如果对所述压缩码流的解码速度大于对所述压缩码流的编码速度且所述当前待解码帧的整帧已完成解码,则不再判断所述当前待解码帧已经完成解码但未进行编码的部分是否满足编码搜索区域的要求。
3.根据权利要求1所述的方法,其特征在于,所述编码搜索区域是一个矩形区域,所述矩形区域的长度为预定的长度,所述矩形区域的高度为预定的高度。
4.根据权利要求3所述的方法,其特征在于,所述当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求是指,当所述当前待解码帧中已经完成解码但未进行编码的部分的长度大于等于所述预定的长度且高度大于等于所述预定的高度时,所述当前待解码帧中已经完成解码但未进行编码的部分满足编码搜索区域的要求。
5.根据权利要求3所述的方法,其特征在于,在对所述当前待解码帧的编码过程中,如果所述当前待解码帧最后剩余的未编码的部分不满足所述编码搜索区域的要求,则以预定的像素对所述当前待解码帧最后剩余的未编码的部分进行补齐,得到补齐后的未编码区域,使得所述补齐后的未编码区域满足所述编码搜索区域的要求。
6.一种降低视频转码延时的装置,其特征在于,包括:
压缩码流解码模块,用于以帧为单位将输入的压缩码流进行解码;
判断模块,用于实时监测当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求,得到判断结果;
第一编码模块,用于如果所述判断结果为是,则对所述当前待解码帧中已经完成解码但未进行编码的部分进行编码;
如果所述判断结果为否,则继续对所述当前待解码帧进行解码,直至所述当前待解码帧中已经完成解码但未进行编码的部分满足所述编码搜索区域的要求,然后对所述当前待解码帧中满足所述编码搜索区域的要求的部分进行编码;
第二编码模块,用于每当监测到所述当前待解码帧中已经完成解码但未进行编码的部分满足编码搜索区域的要求后,将所述当前待解码帧中已经完成解码但未进行编码的部分进行编码,直至将所述当前待解码帧编码完毕;
迭代模块,用于将输入的压缩码流中的全部帧编码完毕。
7.一种降低视频转码延时的设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行下列操作步骤:
步骤102:以帧为单位将输入的压缩码流进行解码;
步骤104:实时监测当前待解码帧中已经完成解码但未进行编码的部分是否满足编码搜索区域的要求,得到判断结果;
步骤106:如果所述判断结果为是,则对所述当前待解码帧中已经完成解码但未进行编码的部分进行编码;
如果所述判断结果为否,则继续对所述当前待解码帧进行解码,直至所述当前待解码帧中已经完成解码但未进行编码的部分满足所述编码搜索区域的要求,然后对所述当前待解码帧中满足所述编码搜索区域的要求的部分进行编码;
步骤108:重复步骤104至步骤106,每当监测到所述当前待解码帧中已经完成解码但未进行编码的部分满足编码搜索区域的要求后,将所述当前待解码帧中已经完成解码但未进行编码的部分进行编码,直至将所述当前待解码帧编码完毕;
步骤110:重复步骤104至步骤108,直至将输入的压缩码流中的全部帧编码完毕。
8.一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现权利要求1至5中任一项所述的降低视频转码延时的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110160818.XA CN112511838A (zh) | 2021-02-05 | 2021-02-05 | 一种降低视频转码延时的方法、装置、设备和可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110160818.XA CN112511838A (zh) | 2021-02-05 | 2021-02-05 | 一种降低视频转码延时的方法、装置、设备和可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112511838A true CN112511838A (zh) | 2021-03-16 |
Family
ID=74952766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110160818.XA Pending CN112511838A (zh) | 2021-02-05 | 2021-02-05 | 一种降低视频转码延时的方法、装置、设备和可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112511838A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114095733A (zh) * | 2021-08-23 | 2022-02-25 | 镕铭微电子(济南)有限公司 | 视频转码中元数据的处理方法、视频转码设备及电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002015556A2 (en) * | 2000-08-15 | 2002-02-21 | Polycom Israel Ltd. | Delay reduction for transmission and processing of video data |
US20080310515A1 (en) * | 2007-06-14 | 2008-12-18 | Yasutomo Matsuba | MPEG-2 2-Slice Coding for Simple Implementation of H.264 MBAFF Transcoder |
CN104768021A (zh) * | 2015-04-22 | 2015-07-08 | 四川正冠科技有限公司 | 一种超低时延的h.264编码方法及编码器 |
US20170228798A1 (en) * | 2002-05-31 | 2017-08-10 | Innotive Corporation | Method for providing real-time service of huge and high quality digital image on internet |
KR102106716B1 (ko) * | 2018-11-15 | 2020-05-04 | 전자부품연구원 | 타일 기반 스트리밍을 위한 분산 트랜스코딩 방법 및 시스템 |
CN111953987A (zh) * | 2020-07-15 | 2020-11-17 | 广州柯维新数码科技有限公司 | 视频转码方法、计算机设备和存储介质 |
-
2021
- 2021-02-05 CN CN202110160818.XA patent/CN112511838A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002015556A2 (en) * | 2000-08-15 | 2002-02-21 | Polycom Israel Ltd. | Delay reduction for transmission and processing of video data |
US20170228798A1 (en) * | 2002-05-31 | 2017-08-10 | Innotive Corporation | Method for providing real-time service of huge and high quality digital image on internet |
US20080310515A1 (en) * | 2007-06-14 | 2008-12-18 | Yasutomo Matsuba | MPEG-2 2-Slice Coding for Simple Implementation of H.264 MBAFF Transcoder |
CN104768021A (zh) * | 2015-04-22 | 2015-07-08 | 四川正冠科技有限公司 | 一种超低时延的h.264编码方法及编码器 |
KR102106716B1 (ko) * | 2018-11-15 | 2020-05-04 | 전자부품연구원 | 타일 기반 스트리밍을 위한 분산 트랜스코딩 방법 및 시스템 |
CN111953987A (zh) * | 2020-07-15 | 2020-11-17 | 广州柯维新数码科技有限公司 | 视频转码方法、计算机设备和存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114095733A (zh) * | 2021-08-23 | 2022-02-25 | 镕铭微电子(济南)有限公司 | 视频转码中元数据的处理方法、视频转码设备及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190387234A1 (en) | Encoding method, decoding method, encoder, and decoder | |
CN115861131A (zh) | 基于图像生成视频、模型的训练方法、装置及电子设备 | |
CN113473126A (zh) | 视频流的处理方法、装置、电子设备及计算机可读介质 | |
CN102113327A (zh) | 图像编码装置、方法、集成电路、程序 | |
CN115240102A (zh) | 基于图像和文本的模型训练方法及装置 | |
CN115240103A (zh) | 基于视频和文本的模型训练方法及装置 | |
JP4865662B2 (ja) | エントロピー符号化装置、エントロピー符号化方法およびコンピュータプログラム | |
CN112511838A (zh) | 一种降低视频转码延时的方法、装置、设备和可读介质 | |
CN111327898B (zh) | 一种视频编码的方法、装置、电子设备及存储介质 | |
CN111654706B (zh) | 一种视频压缩方法、装置、设备及介质 | |
CN109089120B (zh) | 分析辅助编码 | |
TW201403489A (zh) | 移動補償影像處理裝置與影像處理方法 | |
CN109788289B (zh) | 一种反量化方法、系统、设备及计算机可读介质 | |
CN114501149B (zh) | 一种音频/视频文件的解码方法、装置、设备及可读介质 | |
CN115484494B (zh) | 一种数字孪生视频流的处理方法、装置及设备 | |
CN111405293A (zh) | 一种视频传输方法及装置 | |
US9471995B2 (en) | Codec engine with inline image processing | |
US20150098512A1 (en) | Image processing apparatus and method thereof | |
CN109831670B (zh) | 一种反量化方法、系统、设备及计算机可读介质 | |
CN115240099A (zh) | 基于多模态关联数据的模型训练方法及装置 | |
CN113256765A (zh) | Ai主播视频的生成方法、装置、电子设备及存储介质 | |
US20200154111A1 (en) | Image mapping methods, apparatuses, device, and computer-readable memory medium | |
CN107277650B (zh) | 视频文件切割方法及装置 | |
CN117221504B (zh) | 一种视频抠像方法及装置 | |
CN116389789A (zh) | 一种移动端视频画质增强的方法、装置、介质及电子设备 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210316 |