CN110876060B - 一种编码过程中的码率调整方法及装置 - Google Patents

一种编码过程中的码率调整方法及装置 Download PDF

Info

Publication number
CN110876060B
CN110876060B CN201811011679.9A CN201811011679A CN110876060B CN 110876060 B CN110876060 B CN 110876060B CN 201811011679 A CN201811011679 A CN 201811011679A CN 110876060 B CN110876060 B CN 110876060B
Authority
CN
China
Prior art keywords
video frame
complexity
frame
target
value
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.)
Active
Application number
CN201811011679.9A
Other languages
English (en)
Other versions
CN110876060A (zh
Inventor
黄学辉
吕士表
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wangsu Science and Technology Co Ltd
Original Assignee
Wangsu Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wangsu Science and Technology Co Ltd filed Critical Wangsu Science and Technology Co Ltd
Priority to CN201811011679.9A priority Critical patent/CN110876060B/zh
Priority to EP18920187.4A priority patent/EP3637770A4/en
Priority to PCT/CN2018/108245 priority patent/WO2020042269A1/zh
Priority to US16/482,803 priority patent/US20210409724A1/en
Publication of CN110876060A publication Critical patent/CN110876060A/zh
Application granted granted Critical
Publication of CN110876060B publication Critical patent/CN110876060B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/172Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/58Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/176Methods 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 block, e.g. a macroblock

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明公开了一种编码过程中的码率调整方法及装置,其中,所述方法包括:针对已完成复杂度分析的目标视频帧,根据所述目标视频帧的帧类型和持续时间,确定所述目标视频帧的复杂度调整因子;获取待编码的当前视频帧,并根据已完成复杂度分析的所述目标视频帧的复杂度和所述复杂度调整因子,计算所述当前视频帧对应的长期复杂度;根据所述长期复杂度以及预设每像素比特数基准值,确定所述当前视频帧对应的每像素比特数目标值;按照所述每像素比特数目标值以及所述当前视频帧所属的目标视频的配置参数,确定当前编码所使用的目标码率值。本申请提供的技术方案,能够提高码率调整的便捷度。

Description

一种编码过程中的码率调整方法及装置
技术领域
本发明涉及互联网技术领域,特别涉及一种编码过程中的码率调整方法及装置。
背景技术
随着互联网技术的不断发展,涌现出大量的网络直播平台。网络直播平台在给用户带来实时性视频体验的同时,也对用户的网络带宽提出了更高的要求。目前,网络直播平台通常会限制直播视频的码率,从而使得限制之后的码率可以适应用户能够提供的带宽,进而给用户提供流畅的视频体验。
目前在限制直播视频的码率时,通常是设置一个码率上限,直播视频的实时码率通常不能超过该码率上限。然而,如果该码率上限设置得过低,会导致直播视频的画面质量较差;如果该码率上限设置得过高,又会造成带宽的浪费。因此,当前这种通过设置码率上限的方式来调整直播视频的码率,往往不够便捷。
发明内容
本申请的目的在于提供一种视编码过程中的码率调整方法及装置,能够提高码率调整的便捷度。
为实现上述目的,本申请一方面提供一种编码过程中的码率调整方法,所述方法包括:针对已完成复杂度分析的目标视频帧,根据所述目标视频帧的帧类型和持续时间,确定所述目标视频帧的复杂度调整因子;获取待编码的当前视频帧,并根据已完成复杂度分析的所述目标视频帧的复杂度和所述复杂度调整因子,计算所述当前视频帧对应的长期复杂度;根据所述长期复杂度以及预设每像素比特数基准值,确定所述当前视频帧对应的每像素比特数目标值;按照所述每像素比特数目标值以及所述当前视频帧所属的目标视频的配置参数,确定当前编码所使用的目标码率值。
为实现上述目的,本申请另一方面还提供一种编码过程中的码率调整装置,所述装置包括:复杂度调整因子确定单元,用于针对已完成复杂度分析的目标视频帧,根据所述目标视频帧的帧类型和持续时间,确定所述目标视频帧的复杂度调整因子;长期复杂度计算单元,用于获取待编码的当前视频帧,并根据已完成复杂度分析的所述目标视频帧的复杂度和所述复杂度调整因子,计算所述当前视频帧对应的长期复杂度;每像素比特数目标值确定单元,用于根据所述长期复杂度以及预设每像素比特数基准值,确定所述当前视频帧对应的每像素比特数目标值;目标码率值确定单元,用于按照所述每像素比特数目标值以及所述当前视频帧所属的目标视频的配置参数,确定当前编码所使用的目标码率值。
为实现上述目的,本申请另一方面还提供一种编码过程中的码率调整装置,所述装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现上述的方法。
由上可见,本申请提供的技术方案,可以对目标视频中的视频帧进行复杂度分析,从而得到各个目标视频帧的复杂度。该复杂度可以体现目标视频帧中内容的丰富程度。通常而言,内容越丰富,对应的编码码率也会越高。基于此,在本申请中,可以预先根据目标视频帧的帧类型和持续时间,确定该目标视频帧的复杂度调整因子。该复杂度调整因子可以作为调节码率的一个权重值。然后,针对待编码的当前视频帧,可以根据该当前视频帧之前和之后已经完成复杂度分析的目标视频帧,来计算该当前视频帧对应的长期复杂度。通过对该长期复杂度和预设每像素比特数基准值进行综合分析,从而可以确定出该当前视频帧对应的每像素比特数目标值。根据该每像素比特数目标值与该当前视频帧所属的目标视频的配置参数,可以最终确定出当前编码使用的目标码率值。后续可以根据实际需要,按照该目标码率值对编码过程中的码率进行调整。由上可见,本申请可以先分析待编码的视频帧的画面复杂度,然后根据分析出的画面复杂度,再对实际的编码码率进行调整,从而使得画面的丰富程度与最终的编码码率能够动态匹配,在不浪费带宽的情况下,还能保证用户的观看体验,极大地提高了码率调整的便捷性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施方式中编码过程中的码率调整方法步骤示意图;
图2是本发明实施方式中编码过程中的码率调整装置的功能模块示意图;
图3是本发明实施方式中编码过程中的码率调整装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本申请提供一种编码过程中的码率调整方法,请参阅图1,所述方法可以包括以下步骤。
S1:针对已完成复杂度分析的目标视频帧,根据所述目标视频帧的帧类型和持续时间,确定所述目标视频帧的复杂度调整因子。
在本实施方式中,在分析当前视频帧的复杂度时,为了减少每次处理的数据量,可以将该当前视频帧划分为指定数量的画面块。其中,划分后的各个画面块可以具备相同的大小。此外,划分后的画面块的大小,可以按照该当前视频帧对应的视频编码格式来确定。具体地,可以将划分后的画面块的大小与视频编码格式中最大编码单元的大小保持一致。例如,假设该当前视频帧对应的视频编码格式为H.264编码格式,那么划分之后的画面块的大小可以是16*16。又例如,假设该当前视频帧对应的视频编码格式为H.265编码格式,那么划分之后的画面块的大小可以为64*64。其中,画面块的大小可以用像素点作为单位,那么16*16的画面块中,横向和纵向均可以包含16个像素点。
在一个实施方式中,考虑到当前视频帧的实际分辨率可大可小,如果单纯按照编码格式划分画面块,那么划分后的画面块的大小可能不太合适。例如,如果当前视频帧的分辨率较小,那么按照上述的方式划分画面块之后,各个画面块可能会显得较大;又例如,如果当前视频帧的分辨率较大,那么按照上述的方式划分画面块之后,各个画面块可能会显得较小。因此,在实际应用中,按照视频编码格式确定画面块的大小之后,还可以根据当前视频帧的实际分辨率对画面块的大小进行调节。例如,如果划分后的画面块的大小过大,则可以适当减少画面块的大小,从而划分出更多的画面块。相反地,如果划分后的画面块的大小过小,则可以适当增大画面块的大小,从而划分出更少的画面块。
在一个实施方式中,针对分辨率较大的当前视频帧而言,就算将其划分为多个画面块,每个画面块需要处理的数据量可能还比较大。在这种情况下,可以预先对当前视频帧进行下采样,以减少该当前视频帧的分辨率,从而减少后续需要处理的数据量。具体地,在获取待处理的当前视频帧之后,可以识别所述当前视频帧的分辨率,若所述分辨率大于或者等于指定分辨率阈值,则表明该当前视频帧的分辨率过大。此时,可以对所述当前视频帧进行下采样,得到下采样后的视频帧。举例来说,对于分辨率为1280*720的当前视频帧,可以将其下采样至640*360的分辨率。针对原先的当前视频帧而言,可以按照视频编码格式确定出其对应的画面块的大小。例如,分辨率为1280*720的当前视频帧,其对应的画面块的大小为16*16,那么在对该当前视频帧进行下采样之后,可以对应减小画面块的大小。具体地,可以用下采样后的分辨率除以当前视频帧的原始分辨率,得到下采样系数。然后,利用该下采样系数对原始的画面块的大小进行换算,从而得到下采样后的视频帧对应的画面块的大小。例如,将分辨率为1280*720的当前视频帧下采样至640*360的分辨率之后,可以对应地将画面块的大小从16*16更改为8*8。在本实施方式中,在将原始的当前视频帧进行下采样,得到下采样后的视频帧时,便可以将所述下采样后的视频帧的复杂度作为所述当前视频帧的复杂度。
在本实施方式中,在确定当前视频帧或者下采样后的视频帧的复杂度时,可以预先计算划分得到的每个画面块的复杂度,然后可以将各个画面块的复杂度之和作为当前视频帧的复杂度。具体地,在计算各个画面块的复杂度时,首选可以计算各个画面块的帧间预测值和帧内预测值。
在本实施方式中,在计算画面块的帧间预测值时,可以获取所述画面块的指定顶点的坐标值,并确定用于表征运动搜索范围的宽和高。其中,所述指定顶点例如可以是所述画面块的左上角顶点。该指定顶点的坐标值可以表示为(y,x),其中,x表示所述指定顶点的横坐标值,y表示所述指定顶点的纵坐标值。所述运动搜索可以指针对所述画面块,在所述当前视频帧的前一个视频帧中搜索与所述画面块相似的画面块的过程。在实际应用中,通常会给运动搜索限制一个范围,该范围便可以通过上述的表征运动搜索范围的宽和高来表示。
在本实施方式中,可以根据所述指定顶点的坐标值以及所述表征运动搜索范围的宽和高,确定多组不同的搜索值。其中,每组搜索值中可以包括横坐标值和纵坐标值。具体地,在一个实际示例中,可以按照以下公式确定多组搜索值:
|y-y0|≤SH
|x-x0|≤SW
其中,x表示所述指定顶点的横坐标值,y表示所述指定顶点的纵坐标值,y0表示搜索值的纵坐标值,SH为表征运动搜索范围的高,x0表示搜索值的横坐标值,SW为表征运动搜索范围的宽。这样,符合上述条件的(y0,x0)便可以作为一组搜索值。
在本实施方式中,可以分别计算每组搜索值对应的搜索结果,并将最小的搜索结果对应的搜索值作为适配搜索值。具体地,在一个应用示例中,可以按照以下公式确定所述适配搜索值:
Figure BDA0001785254590000051
其中,bh表示所述画面块的高,bw表示所述画面块的宽,s表示从0至bh-1的任意整数,t表示从0至bw-1的任意整数,Pp(y+s,x+t)表示所述当前帧中坐标值为(y+s,x+t)的像素点的像素值,Pp-1(s+y0,t+x0)表示与所述当前视频帧相邻的前一视频帧中坐标值为(s+y0,t+x0)的像素点的像素值。
这样,通过将不同的搜索值代入上述的公式中,便可以得到最终的适配搜索值。
在本实施方式中,在确定出所述适配搜索值之后,便可以根据与所述当前视频帧相邻的前一视频帧中的像素值以及所述适配搜索值,确定所述画面块的帧间预测值。具体地,在一个应用示例中,可以按照以下公式确定所述画面块的帧间预测值:
Binter(i,j)=Pp-1(i+y0,j+x0)
其中,Binter(i,j)表示所述画面块中坐标值为(i,j)的像素点对应的帧间预测值,Pp-1(i+y0,j+x0)表示与所述当前视频帧相邻的前一视频帧中坐标值为(i+y0,j+x0)的像素点的像素值,i表示从0至bh-1的任意整数,j表示从0至bw-1的任意整数。
这样,确定出的画面块的帧间预测值可以是一个矩阵,矩阵中的每个元素可以与画面块中的各个像素点相对应。
在本实施方式中,在计算画面块的帧内预测值时,可以按照当前的帧内预测方法,确定出多个指定方向的候选预测值。具体地,所述当前的帧内预测方法例如可以由H.264、H.265或VP9等编码格式编码过程中的帧内预测模式实现。现有的帧内预测模式可以针对不同的预测方向,得到不同的候选预测值。在本实施方式中,可以仅选用水平方向、45度角方向、垂直方向以及135度角方向这些指定方向的候选预测值。针对每个指定方向的候选预测值,可以分别计算对应的评价值。在一个示例中,可以按照以下公式计算所述多个指定方向的候选预测值中目标指定方向的候选预测值对应的评价值:
Figure BDA0001785254590000061
其中,SAD表示所述目标指定方向的候选预测值对应的评价值,bh表示所述画面块的高,bw表示所述画面块的宽,s表示从0至bh-1的任意整数,t表示从0至bw-1的任意整数,Cintra(s,t)表示坐标值为(s,t)的像素点在所述目标指定方向对应的候选预测值,Pp(y+s,x+t)表示所述当前帧中坐标值为(y+s,x+t)的像素点的像素值。
在本实施方式中,针对各个指定方向的候选预测值,均可以利用上述的公式计算其对应的评价值。然后,可以将最小的评价值对应的候选预测值作为所述画面块的帧内预测值。
在本实施方式中,在计算得到画面块的帧间预测值和帧内预测值之后,可以计算对应的时间复杂度和空间复杂度。其中,所述时间复杂度可以体现当前视频帧与前一视频帧之间的画面变化程度,而空间复杂度可以体现当前视频帧内纹理细节的复杂程度。
在本实施方式中,可以基于所述画面块的帧间预测值和所述画面块中原始像素值之间的差值,确定所述画面块的时间复杂度。具体地,所述画面块的帧间预测值是一个矩阵,该矩阵中的各个元素与画面块的像素点一一对应。因此,在计算所述画面块的帧间预测值和所述画面块中原始像素值之间的差值时,可以将处于相同位置的帧间预测值和像素值相减,从而得到该位置上的差值。这样,最终得到的差值也是一个矩阵。在本实施方式中,在计算得到上述的矩形形式的差值之后,可以对该差值进行离散余弦变换,并可以将离散余弦变换之后的各个系数的绝对值之和作为所述画面块的时间复杂度。
按照类似的方式,在计算空间复杂度时,可以对所述画面块的帧内预测值和所述画面块中原始像素值之间的差值进行离散余弦变换,并将离散余弦变换之后的各个系数的绝对值之和作为所述画面块的空间复杂度。
在本实施方式中,得到画面块的时间复杂度和空间复杂度之后,可以将所述时间复杂度和所述空间复杂度之间的较小者,作为所述画面块的复杂度。这样,由于当前视频帧是由指定数量的画面块构成的,因此,可以根据所述指定数量的画面块中各个画面块的复杂度,确定所述当前视频帧的复杂度。具体地,可以将各个画面块的复杂度之和作为所述当前视频帧的复杂度,从而完成当前视频帧的复杂度的确定过程。
在一个实施方式中,分析当前视频帧的复杂度的过程,可以在对当前视频帧进行编码之前进行。具体地,在实际应用中,如果无法使用编码器在编码过程中的内部信息,则对于当前视频帧而言,可以先对该当前视频帧的画面复杂度进行分析,然后再将该当前视频帧输入编码器中进行编码。而如果可以使用编码器在编码过程中的内部信息,则可以直接将该当前视频帧输入编码器,在编码器识别出当前视频帧的帧类型之后,在对该当前视频帧进行画面复杂度的分析过程。其中,所述内部信息可以是编码器对当前视频帧的类型识别结果。如果无法使用该内部信息,则表明在对当前视频帧分析画面复杂度时,无法知晓该当前视频帧的帧类型。而如果可以使用该内容信息,则表明在对当前视频帧分析画面复杂度时,已经确定了该当前视频帧的帧类型。其中,所述当前视频帧的帧类型可以包括B帧、I帧以及P帧。其中,I帧可以称为内部画面帧或者关键帧,I帧可以作为独立帧,不依赖与相邻的其它视频帧。P帧可以称为向前搜索帧,B帧可以称为双向搜索帧,P帧和B帧则需要依赖前一视频帧或者相邻的两个视频帧。
在本实施方式中,若无法识别所述当前视频帧的帧类型,或者识别出所述当前视频帧为非内部画面帧(非I帧),表明该当前视频帧需要依赖其它的视频帧,此时,需要按照上述的方式,计算所述画面块的帧间预测值和帧内预测值,从而即可以确定出体现当前视频帧与前一视频帧之间的画面变化程度的时间复杂度,又可以确定出体现当前视频帧内纹理细节的复杂程度的空间复杂度。而若识别出所述当前视频帧为内部画面帧,则表明该当前视频帧不依赖于其它视频帧,因此,无需确定时间复杂度,而是可以仅计算所述画面块的帧内预测值,并将基于所述画面块的帧内预测值和所述画面块中原始像素值之间的差值确定的空间复杂度作为所述画面块的复杂度。
在本实施方式中,完成复杂度分析的视频帧可以作为目标视频帧。在完成复杂度分析之后,还可以根据所述目标视频帧的帧类型和持续时间,确定所述目标视频帧的复杂度调整因子。所述复杂度调整因子可以用于衡量不同目标视频帧的权重,从而可以对目标视频帧的复杂度进行调整。具体地,在一个应用实例中,可以按照以下公式确定所述目标视频帧的复杂度调整因子:
Wt=W(type)×W(duration)
其中,Wt表示第t个目标视频帧的复杂度调整因子,W(type)表示所述第t个目标视频帧的帧类型对应的权重系数,W(duration)表示所述第t个目标视频帧的持续时间对应的权重系数。
在本实施方式中,若能够使用编码器的内部信息,从而可以知晓目标视频帧的帧类型。这样,按照不同的帧类型可以设置W(type)不同的数值。举例来说,若所述目标视频帧为B帧,那么可以将W(type)设置为小于1的数值;而如果所述目标视频帧为P帧或者I帧,可以将W(type)设置为1。当然,在实际应用中,关于W(type)的取值,还可以按照其它的规则进行设定。以上关于B帧、P帧以及I帧的阐述,只是为了说明本申请的技术方案,并不表示本申请的技术方案仅限于以上例举的W(type)的赋值情况。此外,W(duration)可以按照持续时间的长短来赋值。具体地,持续时间越长,对应的W(duration)的取值则可以越大。
在一个实施方式中,若无法使用编码器的内部信息,那么就无法知晓目标视频帧的帧类型。在这种情况下,可以统一将W(type)设置为1,从而简化运算过程。
S3:获取待编码的当前视频帧,并根据已完成复杂度分析的所述目标视频帧的复杂度和所述复杂度调整因子,计算所述当前视频帧对应的长期复杂度。
在本实施方式中,完成复杂度分析的目标视频帧,可以被放置于编码器的处理队列中。这样,编码器可以按照先进先出的原则,从该处理队列中依次读取各个目标视频帧进行编码。编码器在获取了待编码的当前视频帧之后,可以计算该当前视频帧对应的长期复杂度。该长期复杂度,可以是基于当前已完成复杂度分析的目标视频帧的复杂度和复杂度调整因子,并且通过对该当前视频帧之前和之后的目标视频帧进行的总体加权平均的复杂度。因此,在计算所述长期复杂度时,可以综合考虑位于所述当前视频帧之前和之后的目标视频帧对该当前视频帧的影响。具体地,首先可以确定已完成复杂度分析的最后一个目标视频帧与所述当前视频帧之间的帧序号差值。其中,已完成复杂度分析的最后一个目标视频帧可以是位于处理队列最末端的目标视频帧,而编码器预计编码的当前视频帧则可以是位于处理队列最前端的目标视频帧。在本实施方式中,若能够使用编码器的内部信息,那么可以直接读取出当前视频帧的序号。这样,通过用已完成复杂度分析的最后一个目标视频帧的序号减去该当前视频帧的序号,便可以得到上述的帧序号差值。然而,若无法使用编码率的内部信息,则无法获取到当前视频帧的序号,此时,需要对该帧序号差值进行估计。
在一个实施方式中,可以获取编码器在编码过程中双向搜索帧(B帧)的最大连续帧数Bf,并确定当前已传输至所述编码器中的视频帧的第一帧数K,以及所述编码器当前已输出的视频帧的第二帧数L,那么,可以计算所述第二帧数L和所述最大连续帧数Bf的帧数和(L+Bf),并将所述第一帧数K与所述帧数和(L+Bf)的差值K-(L+Bf)作为所述帧序号差值。
在实际应用中,按照上述方式估算帧序号差值时,若计算出的结果小于0,则可以直接将该帧序号差值设置为0;若计算出的结果大于或者等于0,则可以将实际的计算结果作为帧序号差值。
在本实施方式中,在确定出上述的帧序号差值之后,可以分别获取前置影响系数decay和后置影响系数grow。其中,所述前置影响系数可以用于表征位于所述当前视频帧之前的视频帧对所述当前视频帧的影响,所述后置影响系数可以用于表征位于所述当前视频帧之后的视频帧对所述当前视频帧的影响。由于码率的调整影响的是之后编码的帧的码率,因此decay需要选择一个小于1的正数,这样随着编码的进行,越早编码的帧的复杂度对之后的编码帧的码率影响越微弱。尚未编码的帧的复杂度对当前编码帧的码率的参考意义更大,因此grow可以选择大于或等于1的值。
在本实施方式中,综合上述确定出的各个物理量,从而可以基于已完成复杂度分析的目标视频帧的复杂度和对应的复杂度调整因子,以及所述帧序号差值、所述前置影响系数和所述后置影响系数,计算所述当前视频帧对应的长期复杂度。具体地,可以按照以下公式计算该长期复杂度:
Figure BDA0001785254590000101
其中,LC表示所述继续调整后的长期复杂度,t表示已完成复杂度分析的最后一个目标视频帧的帧序号,T表示所述帧序号差值,Ci表示第i个目标视频帧的复杂度,Wi表示第i个目标视频帧的复杂度调整因子,decay表示所述前置影响系数,grow表示所述后置影响系数。
在一个实施方式中,由于在进行复杂度分析时,可能会将原始视频帧进行下采样,并针对下采样后的视频帧进行复杂度分析。在这种情况下,在计算所述长期复杂度时,还可以确定所述原始视频帧的分辨率与所述下采样后的视频帧的分辨率之间的比值scale,并基于所述比值,对计算的所述长期复杂度进行调整。例如,原始视频帧的分辨率为1000x800,而分析视频内容复杂度时进行了下采样后变为了500x400的分辨率,那么scale可以是这两个分辨率的比值4。
在一个实施方式中,考虑到上述长期复杂度相同的视频,如果采用不同的编码器编码参数进行编码,为了获得相同质量的输出视频所需的码率也是不同的,鉴于此,可以获取与编码器的编码参数相匹配的编码调整因子,并根据所述编码调整因子,对经过上述的比值调整后的长期复杂度继续进行调整。其中,根据编码器的编码参数设置不同,可以对应不同的参数模板。在本实施方式中可以预先为各个参数模板设置对应的权重值,从而产生了各个参数模板相匹配的编码调整因子。
在一个应用实例中,可以按照以下公式确定继续调整后的长期复杂度:
Figure BDA0001785254590000102
其中,M表示所述编码调整因子,scale表示所述比值。
S5:根据所述长期复杂度以及预设每像素比特数基准值,确定所述当前视频帧对应的每像素比特数目标值。
在本实施方式中,在确定当前编码所需要使用的目标码率值时,首先可以确定当前视频帧对应的每像素比特数目标值。具体地,在实际应用中,通常会先预先配置一个长期复杂度基准值,同时,还会配置该长期复杂度基准值对应的每像素比特数基准值。在这种情况下,可以计算上述的长期复杂度与长期复杂度基准值之间的比值,该比值可以作为码率调整因子。然后可以根据计算的所述比值以及所述预设每像素比特数基准值来计算所述每像素比特数目标值。其中,所述每像素比特数目标值,可以作为码率调整因子的函数,并且随着码率调整因子的变大,每像素比特数目标值也变大。基于该原则,在实际应用中,可以按照以下任意一种公式确定所述每像素比特数目标值:
BPP=rfa*BPPbase
或者
BPP=BPPbase*log2(1+rf)
或者
Figure BDA0001785254590000111
其中,BPP表示所述每像素比特数目标值,a表示预设指数参数,rf表示计算的所述比值,BPPbase表示所述预设每像素比特数基准值。
上述计算每像素比特数目标值的第一个公式中,为了防止码率随着长期复杂度的变大而增加过快,可以将预设指数参数设置为一个小于或等于1的正数。这样,随着rf变大,BPP的增长率将越来越小。
对于第二个公式,当rf很大时,BPP的增长率相比第一个公式而言,可以具备较小的增长率。
对于第三个公式,BPP会具备一个上限,该上限为(a+1)BPPbase,此时,可以比较容易地控制BPP的上限。
应当说明的是,在具体实施过程中,也可以根据具体的需求,自定义设置每像素比特数目标值和码率调整因子之间的函数关系,从而灵活地控制不同复杂度区间内码率变化的灵敏度,使得码率的调整更为灵活。
S7:按照所述每像素比特数目标值以及所述当前视频帧所属的目标视频的配置参数,确定当前编码所使用的目标码率值。
在本实施方式中,在确定出所述每像素比特数目标值后,便可以按照所述每像素比特数目标值以及所述当前视频帧所属的目标视频的配置参数,确定当前编码所使用的目标码率值。具体地,所述目标视频的配置参数可以包括所述目标视频的帧率、所述目标视频中视频帧的宽和高等参数。这样,在一个应用实例中,可以按照以下公式确定当前编码所使用的目标码率值:
R=BPP*W*H*Fr
其中,R表示当前编码所使用的目标码率值,BPP表示所述每像素比特数目标值,W表示所述目标视频中视频帧的宽,H表示所述目标视频中视频帧的高,Fr表示所述目标视频的帧率。
在本实施方式中,随着编码过程的进行,按照以上方法分析视频画面的复杂度以及计算目标码率值的过程可以同时进行着。
在确定出所述目标码率值后,若所述当前视频帧满足码率调整条件,则可以将当前编码的码率值调整为所述目标码率值之后,按照所述目标码率值对所述当前视频帧进行编码。具体地,所述码率调整条件可以根据实际情况进行设定。例如,如果所使用的编码器能够支持逐帧的码率调整,那么可以在编码每一帧之前都根据计算出的目标码率值进行码率调整。如果所使用的编码器只能够支持在每个关键帧前进行码率调整,那么可以在编码至每个关键帧时,按照当前计算出的目标码率值进行码率调整。在具体实施过程中,除了需要考虑到编码器所支持的码率调整时机外,还需要考虑到具体的需求情况,此时可以在同时满足编码器所支持的码率调整条件和具体需求所自定义的条件的情况下,进行码率的调整。上述的自定义的条件例如可以包含以下情况:
(1)1分钟内只能调整一次码率;
(2)进行画面分析,当分析到场景切换时候,才进行码率调整;
(3)在接收到用户主动发送的码率调整指令后,下一次满足编码器所支持的码率调整时机时,进行码率调整。
当然,以上例举的只是其中一部分自定义的条件,在实际应用中,必然可以具备更多的自定义条件,本申请对此并不做限定。
请参阅图2,本申请还提供一种编码过程中的码率调整装置,所述装置包括:
复杂度调整因子确定单元,用于针对已完成复杂度分析的目标视频帧,根据所述目标视频帧的帧类型和持续时间,确定所述目标视频帧的复杂度调整因子;
长期复杂度计算单元,用于获取待编码的当前视频帧,并根据已完成复杂度分析的所述目标视频帧的复杂度和所述复杂度调整因子,计算所述当前视频帧对应的长期复杂度;
每像素比特数目标值确定单元,用于根据所述长期复杂度以及预设每像素比特数基准值,确定所述当前视频帧对应的每像素比特数目标值;
目标码率值确定单元,用于按照所述每像素比特数目标值以及所述当前视频帧所属的目标视频的配置参数,确定当前编码所使用的目标码率值。
在一个实施方式中,所述长期复杂度计算单元包括:
帧序号差值确定模块,用于确定已完成复杂度分析的最后一个目标视频帧与所述当前视频帧之间的帧序号差值;
影响系数获取模块,用于分别获取前置影响系数和后置影响系数,其中,所述前置影响系数用于表征位于所述当前视频帧之前的视频帧对所述当前视频帧的影响,所述后置影响系数用于表征位于所述当前视频帧之后的视频帧对所述当前视频帧的影响;
计算模块,用于基于已完成复杂度分析的目标视频帧的复杂度和对应的复杂度调整因子,以及所述帧序号差值、所述前置影响系数和所述后置影响系数,计算所述当前视频帧对应的长期复杂度。
在一个实施方式中,所述帧序号差值确定模块包括:
帧数获取模块,用于若无法获取所述当前视频帧的帧序号,获取编码器在编码过程中双向搜索帧的最大连续帧数,并确定当前已传输至所述编码器中的视频帧的第一帧数,以及所述编码器当前已输出的视频帧的第二帧数;
差值计算模块,用于计算所述第二帧数和所述最大连续帧数的帧数和,并将所述第一帧数与所述帧数和的差值作为所述帧序号差值。
请参阅图3,本申请还提供一种编码过程中的码率调整装置,所述装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,可以实现上述编码过程中的码率调整方法。
由上可见,本申请提供的技术方案,可以对目标视频中的视频帧进行复杂度分析,从而得到各个目标视频帧的复杂度。该复杂度可以体现目标视频帧中内容的丰富程度。通常而言,内容越丰富,对应的编码码率也会越高。基于此,在本申请中,可以预先根据目标视频帧的帧类型和持续时间,确定该目标视频帧的复杂度调整因子。该复杂度调整因子可以作为调节码率的一个权重值。然后,针对待编码的当前视频帧,可以根据该当前视频帧之前和之后已经完成复杂度分析的目标视频帧,来计算该当前视频帧对应的长期复杂度。通过对该长期复杂度和预设每像素比特数基准值进行综合分析,从而可以确定出该当前视频帧对应的每像素比特数目标值。根据该每像素比特数目标值与该当前视频帧所属的目标视频的配置参数,可以最终确定出当前编码使用的目标码率值。后续可以根据实际需要,按照改目标码率值对编码过程中的码率进行调整。由上可见,本申请可以先分析待编码的视频帧的画面复杂度,然后根据分析出的画面复杂度,再对实际的编码码率进行调整,从而使得画面的丰富程度与最终的编码码率能够动态匹配,在不浪费带宽的情况下,还能保证用户的观看体验,极大地提高了码率调整的便捷性。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (13)

1.一种编码过程中的码率调整方法,其特征在于,所述方法包括:
针对已完成复杂度分析的目标视频帧,根据所述目标视频帧的帧类型和持续时间,确定所述目标视频帧的复杂度调整因子,所述目标视频帧的复杂度调整因子按照以下公式确定:
Wt=W(type)×W(duration)
其中,Wt表示第t个目标视频帧的复杂度调整因子,W(type)表示所述第t个目标视频帧的帧类型对应的权重系数,W(duration)表示所述第t个目标视频帧的持续时间对应的权重系数;
获取待编码的当前视频帧,并根据已完成复杂度分析的所述目标视频帧的复杂度和所述复杂度调整因子,对当前视频帧之前和之后的所述目标视频帧的复杂度进行总体加权平均计算,得出所述当前视频帧对应的长期复杂度;
计算所述长期复杂度与长期复杂度基准值之间的比值作为码率调整因子,并根据计算的所述比值以及预设每像素比特数基准值,确定所述当前视频帧对应的每像素比特数目标值,所述当前视频帧对应的每像素比特数目标值按照以下任意一种公式确定:
BPP=rfa*BPPbase
或者
BPP=BPPbase*log2(1+rf)
或者
Figure FDA0003526812390000011
其中,BPP表示所述每像素比特数目标值,a表示预设指数参数,rf表示计算的所述比值,BPPbase表示所述预设每像素比特数基准值;
按照所述每像素比特数目标值以及所述当前视频帧所属的目标视频的配置参数,确定当前编码所使用的目标码率值。
2.根据权利要求1所述的方法,其特征在于,计算所述当前视频帧对应的长期复杂度包括:
确定已完成复杂度分析的最后一个目标视频帧与所述当前视频帧之间的帧序号差值;
分别获取前置影响系数和后置影响系数,其中,所述前置影响系数用于表征位于所述当前视频帧之前的视频帧对所述当前视频帧的影响,所述后置影响系数用于表征位于所述当前视频帧之后的视频帧对所述当前视频帧的影响;
基于已完成复杂度分析的目标视频帧的复杂度和对应的复杂度调整因子,以及所述帧序号差值、所述前置影响系数和所述后置影响系数,计算所述当前视频帧对应的长期复杂度,具体按照以下公式计算所述长期复杂度:
Figure FDA0003526812390000021
其中,LC表示继续调整后的长期复杂度,t表示已完成复杂度分析的最后一个目标视频帧的帧序号,T表示所述帧序号差值,Ci表示第i个目标视频帧的复杂度,Wi表示第i个目标视频帧的复杂度调整因子,decay表示所述前置影响系数,grow表示所述后置影响系数。
3.根据权利要求2所述的方法,其特征在于,若在进行复杂度分析时,将原始视频帧进行下采样,并针对下采样后的视频帧进行复杂度分析,所述方法还包括:
确定所述原始视频帧的分辨率与所述下采样后的视频帧的分辨率之间的比值,并基于所述比值,对计算的所述长期复杂度进行调整。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
获取与编码器的编码参数相匹配的编码调整因子,并根据所述编码调整因子,对经过所述比值调整后的长期复杂度继续进行调整。
5.根据权利要求4所述的方法,其特征在于,按照以下公式确定继续调整后的长期复杂度:
Figure FDA0003526812390000022
其中,LC表示所述继续调整后的长期复杂度,M表示所述编码调整因子,scale表示所述比值,t表示已完成复杂度分析的最后一个目标视频帧的帧序号,T表示所述帧序号差值,Ci表示第i个目标视频帧的复杂度,Wi表示第i个目标视频帧的复杂度调整因子,decay表示所述前置影响系数,grow表示所述后置影响系数。
6.根据权利要求2所述的方法,其特征在于,若无法获取所述当前视频帧的帧序号,所述帧序号差值按照以下方式确定:
获取编码器在编码过程中双向搜索帧的最大连续帧数,并确定当前已传输至所述编码器中的视频帧的第一帧数,以及所述编码器当前已输出的视频帧的第二帧数;
计算所述第二帧数和所述最大连续帧数的帧数和,并将所述第一帧数与所述帧数和的差值作为所述帧序号差值。
7.根据权利要求1所述的方法,其特征在于,所述目标视频的配置参数中至少包括所述目标视频的帧率、所述目标视频中视频帧的宽和高;相应地,按照以下公式确定当前编码所使用的目标码率值:
R=BPP*W*H*Fr
其中,R表示当前编码所使用的目标码率值,BPP表示所述每像素比特数目标值,W表示所述目标视频中视频帧的宽,H表示所述目标视频中视频帧的高,Fr表示所述目标视频的帧率。
8.根据权利要求1所述的方法,其特征在于,按照以下步骤分析所述目标视频帧的复杂度:
将所述目标视频帧划分为指定数量的画面块后,计算所述画面块的帧间预测值和帧内预测值;
基于所述画面块的帧间预测值和所述画面块中原始像素值之间的差值,确定所述画面块的时间复杂度,并基于所述画面块的帧内预测值和所述画面块中原始像素值之间的差值,确定所述画面块的空间复杂度;
将所述时间复杂度和所述空间复杂度之间的较小者,作为所述画面块的复杂度,并根据所述指定数量的画面块中各个画面块的复杂度,确定所述目标视频帧的复杂度。
9.根据权利要求1所述的方法,其特征在于,在确定出当前编码所使用的目标码率值之后,所述方法还包括:
若所述当前视频帧满足码率调整条件,将当前编码的码率值调整为所述目标码率值之后,按照所述目标码率值对所述当前视频帧进行编码。
10.一种编码过程中的码率调整装置,其特征在于,所述装置包括:
复杂度调整因子确定单元,用于针对已完成复杂度分析的目标视频帧,根据所述目标视频帧的帧类型和持续时间,确定所述目标视频帧的复杂度调整因子,所述目标视频帧的复杂度调整因子按照以下公式确定:
Wt=W(type)×W(duration)
其中,Wt表示第t个目标视频帧的复杂度调整因子,W(type)表示所述第t个目标视频帧的帧类型对应的权重系数,W(duration)表示所述第t个目标视频帧的持续时间对应的权重系数;
长期复杂度计算单元,用于获取待编码的当前视频帧,并根据已完成复杂度分析的所述目标视频帧的复杂度和所述复杂度调整因子,对当前视频帧之前和之后的所述目标视频帧的复杂度进行总体加权平均计算,得出所述当前视频帧对应的长期复杂度;
每像素比特数目标值确定单元,用于计算所述长期复杂度与长期复杂度基准值之间的比值作为码率调整因子,并根据计算的所述比值以及预设每像素比特数基准值,确定所述当前视频帧对应的每像素比特数目标值,所述当前视频帧对应的每像素比特数目标值按照以下任意一种公式确定:
BPP=rfa*BPPbase
或者
BPP=BPPbase*log2(1+rf)
或者
Figure FDA0003526812390000041
其中,BPP表示所述每像素比特数目标值,a表示预设指数参数,rf表示计算的所述比值,BPPbase表示所述预设每像素比特数基准值;
目标码率值确定单元,用于按照所述每像素比特数目标值以及所述当前视频帧所属的目标视频的配置参数,确定当前编码所使用的目标码率值。
11.根据权利要求10所述的装置,其特征在于,所述长期复杂度计算单元包括:
帧序号差值确定模块,用于确定已完成复杂度分析的最后一个目标视频帧与所述当前视频帧之间的帧序号差值;
影响系数获取模块,用于分别获取前置影响系数和后置影响系数,其中,所述前置影响系数用于表征位于所述当前视频帧之前的视频帧对所述当前视频帧的影响,所述后置影响系数用于表征位于所述当前视频帧之后的视频帧对所述当前视频帧的影响;
计算模块,用于基于已完成复杂度分析的目标视频帧的复杂度和对应的复杂度调整因子,以及所述帧序号差值、所述前置影响系数和所述后置影响系数,计算所述当前视频帧对应的长期复杂度,具体按照以下公式计算所述长期复杂度:
Figure FDA0003526812390000051
其中,LC表示继续调整后的长期复杂度,t表示已完成复杂度分析的最后一个目标视频帧的帧序号,T表示所述帧序号差值,Ci表示第i个目标视频帧的复杂度,Wi表示第i个目标视频帧的复杂度调整因子,decay表示所述前置影响系数,grow表示所述后置影响系数。
12.根据权利要求11所述的装置,其特征在于,所述帧序号差值确定模块包括:
帧数获取模块,用于若无法获取所述当前视频帧的帧序号,获取编码器在编码过程中双向搜索帧的最大连续帧数,并确定当前已传输至所述编码器中的视频帧的第一帧数,以及所述编码器当前已输出的视频帧的第二帧数;
差值计算模块,用于计算所述第二帧数和所述最大连续帧数的帧数和,并将所述第一帧数与所述帧数和的差值作为所述帧序号差值。
13.一种编码过程中的码率调整装置,其特征在于,所述装置包括处理器和存储器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,用于实现如权利要求1至9中任一权利要求所述的方法。
CN201811011679.9A 2018-08-31 2018-08-31 一种编码过程中的码率调整方法及装置 Active CN110876060B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201811011679.9A CN110876060B (zh) 2018-08-31 2018-08-31 一种编码过程中的码率调整方法及装置
EP18920187.4A EP3637770A4 (en) 2018-08-31 2018-09-28 METHOD AND DEVICE FOR ADJUSTING CODE RATE FOR AN ENCODING PROCESS
PCT/CN2018/108245 WO2020042269A1 (zh) 2018-08-31 2018-09-28 一种编码过程中的码率调整方法及装置
US16/482,803 US20210409724A1 (en) 2018-08-31 2018-09-28 Method and device for bitrate adjustment in encoding process

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811011679.9A CN110876060B (zh) 2018-08-31 2018-08-31 一种编码过程中的码率调整方法及装置

Publications (2)

Publication Number Publication Date
CN110876060A CN110876060A (zh) 2020-03-10
CN110876060B true CN110876060B (zh) 2022-07-15

Family

ID=69581843

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811011679.9A Active CN110876060B (zh) 2018-08-31 2018-08-31 一种编码过程中的码率调整方法及装置

Country Status (4)

Country Link
US (1) US20210409724A1 (zh)
EP (1) EP3637770A4 (zh)
CN (1) CN110876060B (zh)
WO (1) WO2020042269A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111885337B (zh) * 2020-06-19 2022-03-29 成都东方盛行电子有限责任公司 一种多帧率视频高效编辑方法
CN112492305B (zh) * 2020-11-18 2022-02-11 腾讯科技(深圳)有限公司 一种数据处理方法、装置及计算机可读存储介质
CN113038130B (zh) * 2021-03-17 2024-06-04 百果园技术(新加坡)有限公司 一种视频编码方法、装置、电子设备及可读存储介质
CN113660491B (zh) * 2021-08-10 2024-05-07 杭州网易智企科技有限公司 编码方法、编码装置、存储介质及电子设备
CN115225911B (zh) * 2022-08-19 2022-12-06 腾讯科技(深圳)有限公司 一种码率自适应方法、装置、计算机设备和存储介质
CN116708933B (zh) * 2023-05-16 2024-04-16 深圳东方凤鸣科技有限公司 一种视频编码方法及装置
CN116567286B (zh) * 2023-07-10 2023-09-22 武汉幻忆信息科技有限公司 一种基于人工智能的在线直播视频处理方法及***
CN117440167B (zh) * 2023-09-28 2024-05-28 书行科技(北京)有限公司 一种视频解码方法、装置、计算机设备、介质及产品
CN117596425A (zh) * 2023-10-24 2024-02-23 书行科技(北京)有限公司 编码帧率的确定方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6731685B1 (en) * 2000-09-20 2004-05-04 General Instrument Corporation Method and apparatus for determining a bit rate need parameter in a statistical multiplexer
CN105120282A (zh) * 2015-08-07 2015-12-02 上海交通大学 一种时域依赖的码率控制比特分配方法
CN108200431A (zh) * 2017-12-08 2018-06-22 重庆邮电大学 一种视频编码码率控制帧层比特分配方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7418037B1 (en) * 2002-07-15 2008-08-26 Apple Inc. Method of performing rate control for a compression system
US20040252758A1 (en) * 2002-08-14 2004-12-16 Ioannis Katsavounidis Systems and methods for adaptively filtering discrete cosine transform (DCT) coefficients in a video encoder
AU2006223416A1 (en) * 2005-03-10 2006-09-21 Qualcomm Incorporated Content adaptive multimedia processing
CN101895758B (zh) * 2010-07-23 2012-07-18 南京信息工程大学 基于帧复杂度的h.264码率控制方法
WO2012058394A1 (en) * 2010-10-27 2012-05-03 Vid Scale, Inc. Systems and methods for adaptive video coding
CN103561266B (zh) * 2013-11-06 2016-11-02 北京牡丹电子集团有限责任公司数字电视技术中心 基于对数r-q模型和层次化比特分配的码率控制方法
CN104994387B (zh) * 2015-06-25 2017-10-31 宁波大学 一种融合图像特征的码率控制方法
CN105187832B (zh) * 2015-09-09 2018-06-22 成都金本华电子有限公司 基于2.5g无线网络移动视频码率控制方法
CN106791837B (zh) * 2016-12-15 2019-11-26 北京数码视讯科技股份有限公司 视频编码的前驱分析方法和装置
CN108235016B (zh) * 2016-12-21 2019-08-23 杭州海康威视数字技术股份有限公司 一种码率控制方法及装置
CN108174210A (zh) * 2018-02-09 2018-06-15 杭州雄迈集成电路技术有限公司 一种适用于视频压缩的自适应宏块级码率控制***及控制方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6731685B1 (en) * 2000-09-20 2004-05-04 General Instrument Corporation Method and apparatus for determining a bit rate need parameter in a statistical multiplexer
CN105120282A (zh) * 2015-08-07 2015-12-02 上海交通大学 一种时域依赖的码率控制比特分配方法
CN108200431A (zh) * 2017-12-08 2018-06-22 重庆邮电大学 一种视频编码码率控制帧层比特分配方法

Also Published As

Publication number Publication date
CN110876060A (zh) 2020-03-10
EP3637770A1 (en) 2020-04-15
EP3637770A4 (en) 2020-04-29
WO2020042269A1 (zh) 2020-03-05
US20210409724A1 (en) 2021-12-30

Similar Documents

Publication Publication Date Title
CN110876060B (zh) 一种编码过程中的码率调整方法及装置
KR101342284B1 (ko) 적응적 움직임 검색 범위
US11172220B2 (en) Video encoding method, and storage medium thereof
CN108012163B (zh) 视频编码的码率控制方法及装置
JP2008541569A (ja) マクロブロックレベルレート制御
EP1057342A1 (en) Adaptive quantizer in a motion analysis based buffer regulation scheme for video compression
WO2021129007A1 (zh) 视频码率的确定方法、装置、计算机设备及存储介质
JP3659157B2 (ja) 映像内容に重み付けをする画像圧縮方式
CN111050169B (zh) 图像编码中量化参数的生成方法、装置及终端
CN101112101A (zh) 使用参数方程式进行视频编码的速率控制技术
WO2022021422A1 (zh) 视频编码方法、编码器、***以及计算机存储介质
CN112243129B (zh) 视频数据处理方法、装置、计算机设备及存储介质
KR20130095322A (ko) 양자화 제어 장치 및 방법, 및 양자화 제어 프로그램
JP5043849B2 (ja) ビデオシーケンスにおける可変形状動き推定
CN113691814A (zh) 视频编码方法、装置、电子装置和存储介质
CN110876082B (zh) 一种视频帧的复杂度的确定方法及装置
CN113630600A (zh) 人类视觉***自适应视频编码
CN112235576B (zh) 编码方法、装置、电子设备及存储介质
JP6117818B2 (ja) 知覚表象を使用した符号化および復号化
CN114938450A (zh) 一种编码方法、编码装置及电子设备
CN117676148A (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
GR01 Patent grant
GR01 Patent grant