CN109561310A - 视频编码处理方法、装置、设备和存储介质 - Google Patents

视频编码处理方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN109561310A
CN109561310A CN201710880645.2A CN201710880645A CN109561310A CN 109561310 A CN109561310 A CN 109561310A CN 201710880645 A CN201710880645 A CN 201710880645A CN 109561310 A CN109561310 A CN 109561310A
Authority
CN
China
Prior art keywords
frame
video
frames
value
bit rate
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
Application number
CN201710880645.2A
Other languages
English (en)
Other versions
CN109561310B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201710880645.2A priority Critical patent/CN109561310B/zh
Priority to JP2019555653A priority patent/JP6899448B2/ja
Priority to PCT/CN2018/092573 priority patent/WO2019062226A1/zh
Priority to EP18863575.9A priority patent/EP3606073B1/en
Priority to KR1020197033417A priority patent/KR102307771B1/ko
Publication of CN109561310A publication Critical patent/CN109561310A/zh
Priority to US16/435,020 priority patent/US10827182B2/en
Application granted granted Critical
Publication of CN109561310B publication Critical patent/CN109561310B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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/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/103Selection of coding mode or of prediction mode
    • H04N19/114Adapting the group of pictures [GOP] structure, e.g. number of B-frames between two anchor frames
    • 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/124Quantisation
    • 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/142Detection of scene cut or scene change
    • 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/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
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • 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/177Methods 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 a group of pictures [GOP]
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明涉及一种视频编码处理方法、装置、计算机设备和存储介质,该方法包括:获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值;根据所述占比值确定当前视频场景是否发生变化,当确定发生变化时,根据所述占比值确定当前组视频帧序列中帧内编码帧的目标码率;根据所述目标码率对所述帧内编码帧进行编码。本申请的方案提高了视频编码的自适应编码能力。

Description

视频编码处理方法、装置、设备和存储介质
技术领域
本发明涉及计算机技术领域,特别是涉及一种视频编码处理方法、装置、设备和存储介质。
背景技术
随着科学技术的发展,信息传输的方式越来越多样化。视频由于其所展示的内容的丰富性,成为一个非常主要的信息传输方式,比如,视频通话或在线直播等。在通过视频进行信息传输时,需要对视频进行编码。
目前,在视频编码时,需根据当前的帧内编码帧之前的视频帧的码率或量化步长来确定当前帧内编码帧的编码码率,从而按照该编码码率对当前帧内编码帧进行编码。
然而,视频中画面变化复杂,之前的视频帧序列中视频帧的码率或量化步长对当前帧内编码帧的编码码率分配的参考意义不大。于是,传统的编码方式难以准确地确定当前帧内编码帧的编码码率,使得自适应编码能力较差。
发明内容
基于此,有必要针对传统方法的自适应编码能力较差的问题,提供一种视频编码处理方法、装置、计算机设备和存储介质。
一种视频编码处理方法,所述方法包括:
获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值;
根据所述占比值确定当前视频场景是否发生变化,当确定发生变化时,根据所述占比值确定当前组视频帧序列中帧内编码帧的目标码率;
根据所述目标码率对所述帧内编码帧进行编码。
一种视频编码处理装置,所述装置包括:
占比值获取模块,用于获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值;
视频场景检测模块,用于根据所述占比值确定当前视频场景是否发生变化;
目标码率确定模块,用于当所述视频场景检测模块占比值确定所述当前视频场景发生变化时,根据所述占比值确定当前组视频帧序列中帧内编码帧的目标码率;
编码模块,用于根据所述目标码率对所述帧内编码帧进行编码。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值;
根据所述占比值确定当前视频场景是否发生变化,当确定发生变化时,根据所述占比值确定当前组视频帧序列中帧内编码帧的目标码率;
根据所述目标码率对所述帧内编码帧进行编码。
一种存储有计算机程序的存储介质,所述计算机程序被一个或多个处理器执行时,使得一个或多个处理器执行如下步骤:
获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值;
根据所述占比值确定当前视频场景是否发生变化,当确定发生变化时,根据所述占比值确定当前组视频帧序列中帧内编码帧的目标码率;
根据所述目标码率对所述帧内编码帧进行编码。
上述视频编码处理方法、装置、计算机设备和存储介质,在编码当前组视频帧序列中帧内编码帧时进行场景变化判断,通过前一组视频帧序列中的帧间预测帧中帧内预测块的占比值,确定当前视频场景是否发生变化。在确定当前视频场景发生变化时,则根据帧内预测块的占比值,确定当前组视频帧序列中帧内编码帧的目标码率。其中,帧内预测块的占比值能够反映图像间相关性强弱,根据能够反映图像间相关性强弱的帧内预测块的占比值确定当前组视频帧序列中帧内编码帧的目标码率的分配,使得在当前视频场景发生变化时,对当前组视频帧序列中帧内编码帧的目标码率分配的更加准确,从而提高了自适应编码能力。
附图说明
图1为一个实施例中视频编码处理方法的应用环境图;
图2为一个实施例中视频编码处理方法的流程示意图;
图3为一个实施例中阶段确定步骤的流程示意图;
图4为一个实施例中目标码率的确定步骤的流程示意图;
图5为另一个实施例中视频编码处理方法的流程示意图;
图6为一个实施例中视频编码处理方法的原理示意图;
图7为一个实施例中视频编码处理装置的框图;
图8为一个实施例中占比值获取模块的框图;
图9为另一个实施例中视频编码处理装置的框图;
图10为一个实施例中计算机设备的内部结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1为一个实施例中视频编码处理方法的应用环境图。参照图1,该应用环境中包括通过网络连接的第一终端110和第二终端120。第一终端110和第二终端120具有视频编解码功能。在一个实施例中,第一终端110和第二终端120可安装视频通话应用程序。第一终端110和第二终端120可以是台式计算机或移动终端,移动终端可以包括手机、平板电脑、个人数字助理和穿戴式设备等中的至少一种。
在一个实施例中,第一终端110和第二终端120通过视频通话应用程序进行实时地视频通话。第一终端110可以获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值。第一终端110可以根据占比值确定当前视频场景是否发生变化,当确定发生变化时,根据占比值确定当前组视频帧序列中帧内编码帧的目标码率。第一终端110可以根据目标码率对帧内编码帧进行编码。进一步地,第一终端110可以将编码后得到的编码视频流发送至第二终端120(即视频通话对端),第二终端120对接收的编码视频流进行解码播放。
可以理解,可以实现多方视频通话,所以第二终端120可以为至少一个。
需要说明的是,图1所示的应用环境图仅为本申请提供的视频编码处理方法的一个实施例。在其它实施例,第一终端110也可以通过服务器与第二终端120之间实现网络连接,即第一终端110可以将编码后的编码视频流发送至服务器,由服务器将该编码视频流转发至第二终端120。
可以理解,本申请所提供的视频编码处理方法不仅适用于视频实时通话场景,还可以适用于视频在线直播的应用环境中,该应用环境就包括第三终端、服务器和第四终端。其中,第三终端用于采集视频帧发送至服务器,服务器用于编码视频帧并推送编码后的编码视频流至第四终端,第四终端用于解码服务器推送的编码视频流并播放。那么,本申请所提供的视频编码处理方法就应用于该视频在线直播的应用环境中的服务器,该应用环境中的服务器通过本申请所提供的视频编码处理方法来对帧内编码帧进行编码,以实现直播视频流的编码,将编码后的编码视频流发送至第四终端进行解码播放。
可以理解,这个的“第一”、“第二”、“第三”和“第四”仅用于区分表述,不做其他从属、权限和顺序等方面的限定。
图2为一个实施例中视频编码处理方法的流程示意图。本实施例主要以该视频编码处理方法应用于计算机设备来举例说明,该计算机设备可以是图1中的第一终端110或第二终端120,也可以是上述视频在线直播的应用环境中的服务器。参照图2,该方法具体包括如下步骤:
S202,获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值。
其中,帧间预测帧,是利用视频图像帧间的相关性参考其他视频帧进行编码的视频帧。帧间预测帧包括P帧(向前帧间预测帧,Predictive-codedPicture)和/或B帧(双向帧间预测帧,Bidirectionally predicted picture)。
一组视频帧序列(GOP,Group of Picture),是以帧内编码帧(I帧,Intra-codedpicture)起始的、且包括帧间预测帧的一组视频帧序列。前一组视频帧序列,是之前的、且最接近当前组视频帧序列的一组视频帧序列。当前组视频帧序列,是当前待进行编码的视频帧序列。
具体地,计算机设备可以选取前一组视频帧序列中的全部或部分的帧间预测帧。在一个实施例中,计算机设备可以选取前一组视频帧序列中最接近当前组视频帧序列的一个帧间预测帧。计算机设备也可以确定前一组视频帧序列中帧间预测帧的总数量,按照距当前组视频帧序列由近到远的顺序,从前一组视频帧序列中选取数量小于该总数量的多个连续的帧间预测帧。比如,前一组视频帧序列为(Ipre,P1,P2,B1,P3,P4),那么,计算机设备可以选取最接近的一个P4帧,也可以按照距当前组视频帧序列由近到远的顺序,从前一组视频帧序列中选取数量小于前一组视频帧序列中帧间预测帧总数量5的多个连续的帧间预测帧。比如选取3个最接近的连续的帧间预测帧P4、P3和B1。
可以理解,计算机设备也可以选取前一组视频帧序列中非完全连续的帧间预测帧。比如,计算机设备也可以选取P1、B1,P3和P4,其中,P1就和B1不连续。
其中,帧内预测块(Intra块),是一帧当中采用帧内编码模式编码的块。帧内预测块是利用相邻像素的相关性,通过像素块的左边和上边的像素进行预测,只需对实际值和预测值的差值进行编码。
可以理解,一帧帧间预测帧由多个块组成,这多个组成帧间预测帧的块中包括帧内预测块和帧间预测块。帧间预测块(Inter块),是一帧当中采用帧间编码模式编码的块。
帧内预测块的占比值,是在组成同一帧间预测帧的所有块中,帧内预测块所占的比例。比如,共有30个块组成一个帧间预测帧,其中,帧内预测块有10个,则帧内预测块的占比值为10/30=1/3。
可以理解,当在步骤S202中选取的是多个帧间预测帧时,则需要分别获取各帧间预测帧中帧内预测块的占比值。
S204,根据占比值确定当前视频场景是否发生变化,当确定发生变化时,根据占比值确定当前组视频帧序列中帧内编码帧的目标码率。
其中,码率,即视频码率,是数据传输时单位时间传送的数据位数。
当前视频场景,是当前的视频场景。视频场景,通过整体的视频图像进行展现。视频场景发生变化,是当前视频图像的稳定性或密集程度发生变化,比如,当前视频场景由静止状态变化为运动状态,则说明当前视频图像的稳定性发生变化,则当前视频场景发生变化,又或者,当前视频场景的背景由简单变为复杂,则说明当前视频图像的密集程度发生变化,则当前视频场景发生变化。
在一个实施例中,计算机设备可以根据帧内预测块的占比值判断当前视频场景是否发生变化。具体地,计算机设备可以直接将获取的帧内预测块的占比值与预设的帧内预测块占比值阈值进行比对,根据比对结果,判断当前视频场景是否发生变化。
在一个实施例中,当选取的帧间预测帧为多个连续的帧间预测帧时,根据占比值确定当前视频场景是否发生变化包括:确定各帧间预测帧中帧内预测块占比值中的最大值和最小值;获取多个预设的帧内预测块占比值阈值;当最大值和最小值之间存在至少一个帧内预测块占比值阈值时,则判定当前视频场景发生变化。
在一个实施例中,多个预设的帧内预测块占比值阈值可以如下,其中Thre表示帧内预测块占比值阈值:
现结合上述多个预设的帧内预测块占比值阈值对如何判定当前视频场景发生变化进行解释说明。比如,各占比值中的最大值和最小值分别为15%和8%,则最大值15%和最小值8%之间存在一个帧内预测块占比值阈值10%(Thre3),则判定当前视频场景发生变化。
在一个实施例中,根据占比值确定当前视频场景是否发生变化还包括:判断最大值和最小值是否位于相邻两个帧内预测块占比值阈值之间;当最大值和最小值位于相邻两个帧内预测块占比值阈值之间时,则判定当前视频场景未发生变化。
同样结合上述多个预设的帧内预测块占比值阈值进行举例说明。比如,各占比值中的最大值和最小值分别为8%和6%,则最大值8%和和最小值6%位于相邻两个帧内预测块占比值阈值5%(Thre2)和10%(Thre3)之间,则判定当前视频场景未发生变化。
可以理解,当选取的帧间预测帧为一个时,则获取的帧内预测块的占比值为一个。具体地,计算机设备可以直接根据该帧间预测帧中各帧内预测块的分布位置及分布走向,以及帧内预测块的占比值的大小,判定当前视频场景是否发生变化。
具体地,当根据占比值确定当前视频场景发生变化时,计算机设备可以根据占比值本身确定当前组视频帧序列中帧内编码帧的目标码率。
在一个实施例中,当选取的帧间预测帧为一个时,则获取的帧内预测块的占比值只有一个。计算机设备可以根据占比值与预设码率的映射关系,获取与该占比值相应映射的预设码率作为当前组视频帧序列中帧内编码帧的目标码率。
在另一个实施例中,当选取的帧间预测帧为多个时,则获取的帧内预测块的占比值也有多个。计算机设备可以根据该多个占比值的均值,确定当前组视频帧序列中帧内编码帧的目标码率。计算机设备也可以从该多个占比值中选取部分占比值,根据该挑选出的部分的占比值的均值,确定当前组视频帧序列中帧内编码帧的目标码率。在一个实施例中,计算机设备还可以选取最接近于当前组视频帧序列的帧间预测帧中帧内预测块的占比值,根据该占比值,确定当前组视频帧序列中帧内编码帧的目标码率。
S206,根据目标码率对帧内编码帧进行编码。
具体地,计算机设备可以根据所确定的当前组视频帧序列中帧内编码帧的目标码率,对当前组视频帧序列中帧内编码帧进行编码。
上述实施例中,在编码当前组视频帧序列中帧内编码帧时,通过选取的前一组视频帧序列中的帧间预测帧中帧内预测块的占比值,对当前视频场景是否发生变化进行判断。在确定当前视频场景发生变化时,则根据帧内预测块的占比值,确定当前组视频帧序列中帧内编码帧的目标码率。其中,帧内预测块的占比值能够反映图像间相关性强弱,根据能够反映图像间相关性强弱的帧内预测块的占比值确定当前组视频帧序列中帧内编码帧的目标码率的分配,使得在当前视频场景发生变化时,对当前组视频帧序列中帧内编码帧的目标码率分配的更加准确,从而提高了自适应编码能力。
在一个实施例中,选取的帧间预测帧为多个连续的帧间预测帧。当确定发生变化时,根据占比值确定当前组视频帧序列中帧内编码帧的目标码率包括:当根据占比值确定当前视频场景发生变化时,则确定各帧间预测帧中帧内预测块的占比值的均值;根据占比值的均值确定当前组视频帧序列中帧内编码帧的目标码率;目标码率与占比值的均值负相关。
其中,占比值的均值可以是算数平均值,也可以是加权平均值。在一个实施例中,计算机设备可以根据选取的各帧间预测帧与当前组视频帧序列的距离大小,为各帧间预测帧分配相应的权重。其中,权重和与当前组视频帧序列的距离反相关,与当前组视频帧序列的距离越小(即越近),所对应的权重越大,与当前组视频帧序列的距离越大(即越远),所对应的权重越小。
在一个实施例中,计算机设备可以根据占比值的均值与预设码率间的映射关系,获取与所确定的占比值的均值相映射的预设码率,作为当前组视频帧序列中帧内编码帧的目标码率。其中,目标码率与占比值的均值负相关。
在另一个实施例中,计算机设备也可以根据占比值的均值,确定当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例;该比例与占比值的均值负相关;获取单帧平均码率;根据单帧平均码率和比例,得到帧内编码帧的目标码率。
其中,单帧平均码率,是一帧的平均码率。在一个实施例中,计算机设备中可以设置编码器,通过编码器对视频帧进行编码。编码器中都有预先设置编码参数,该编码参数包括每秒目标码率和帧率,该编码参数还可以包括单帧平均码率。在一个实施例中,编码器中可以预先设置单帧平均码率,计算机设备可以获取预先设置的单帧平均码率。在另一个实施例中,编码器中可以预先设置每秒目标码率和帧率,计算机设备可以获取预先设置的每秒目标码率和帧率,将每秒目标码率除以帧率,得到单帧平均码率。
在一个实施例中,计算机设备可以根据占比值的均值与预设比例间的映射关系,获取与占比值的均值相映射的预设比例,作为前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例。该比例与占比值的均值负相关。计算机设备可以根据该比例与获取的单帧平均码率的乘积,得到前组视频帧序列中帧内编码帧的目标码率。
上述实施例中,当根据占比值确定当前视频场景发生变化时,根据各帧间预测帧中帧内预测块的占比值的均值。其中,占比值的均值能够反映图像间相关性强弱,若占比值的均值较小,则多为静止场景,图像之间的相关性比较强,若占比值的均值较大,则多为运动场景,图像之间的相关性比较弱。根据占比值的均值确定当前组视频帧序列中帧内编码帧的目标码率;目标码率与占比值的均值负相关。可以理解,当占比值的均值较小,图像之间的相关性较强时,则帧间预测帧所需码率较低,此时可以提高帧内编码帧的码率,以助于提高食品整体的压缩效率。当占比值的均值较大,图像之间的相关性较弱,则帧间预测帧所需码率较高,此时可以降低帧内编码帧的码率。
在一个实施例中,步骤S202包括:获取目标选取数量;按照距当前组视频帧序列由近到远的顺序,从前一组视频帧序列中选取满足目标选取数量的连续的帧间预测帧;获取所选取的帧间预测帧中帧内预测块的占比值。
其中,目标选取数量,是需选取帧间预测帧的目标数量。在一个实施例中,目标选取数量可以是预设的选取数量。
在另一个实施例中,获取目标选取数量包括:确定前一组视频帧序列中的帧间预测帧的总数量;获取预设的选取数量;将预设的选取总数量和所确定的数量中的较小值作为目标选取数量。
其中,前一组视频帧序列中的帧间预测帧的总数量,是前一组视频帧序列中的所有帧间预测帧的数量总和。预设的选取数量,是预先设置的需选取帧间预测帧的数量。
具体地,计算机设备可以确定预设的选取总数量和所确定的数量中的较小值,将确定的较小值作为目标选取数量。可以理解,通过该实施例中的选取较小值的方式,可以防止当前一组视频帧序列中的帧间预测帧的总数量小于预设的选取数量时,造成的选取出错问题,增强了系统的灵活性与稳定性。
上述实施例中,按照距当前组视频帧序列由近到远的顺序,从前一组视频帧序列中选取满足目标选取数量的连续的帧间预测帧,使得选取的帧间预测帧的状态与当前组视频帧序列的帧内编码帧之间的关联性更强,能够更加准确的反映当前的视频场景下帧内编码帧所需的目标码率。
在一个实施例中,根据占比值的均值,确定当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例包括:确定占比值的均值在递减的预设阶段函数中所对应的阶段;获取与确定的阶段对应的预设比例;将获取的预设比例作为当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例。
其中,阶段函数,是对于自变量的不同取值区间,有着不同对应法则的函数。对应法则用于表示自变量和因变量间的依存关系,比如,y=f(x)表示变量y是变量x的函数,其中f就表示变量y与变量x的对应法则。阶段函数的自变量在同一取值区间内,有着相同对应法则,不同取值区间的自变量分别有不同的对应法则。可以理解,阶段函数包括多个且有限的阶段。阶段函数的各个阶段是根据自变量的取值区间进行划分,同一自变量的取值区间对应于一个阶段。
递减的预设阶段函数,是预先设置的递减阶段函数。将阶段函数中自变量的不同取值区间相互比较,其中比较结果较大的自变量取值区间,在递减阶段函数中的相应阶段所对应的函数值反而较小。可以理解,对于阶段函数而言,较大的取值区间中的自变量的任意取值比相对较小的取值区间中的自变量的取值大,比如,取值区间1为大于等于0且小于5%,取值区间2为大于等于5%且小于10%,则取值区间2比取值区间1大,取值区间2中的任意取值都比取值区间1中的自变量的取值大。
具体地,计算机设备可以根据预先设置的占比值的均值和预设阶段段数中的各阶段的映射函数,确定该占比值的均值在预设阶段函数中所对应的阶段。比如,占比值的均值为8%时,对应于预设阶段函数中的第2阶段。
进一步地,计算机设备可以获取与确定的阶段对应的预设比例,将获取的预设比例作为当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例。在一个实施例中,计算机设备可以获取预先设置的阶段与预设比例间的对应关系,获取与该阶段对应的预设比例。比如,第2阶段对应预设比例为5:1。
在另一个实施例中,阶段函数是分段常值函数。分段常值函数的函数值是多个常数,同一取值区间的自变量,对应于相同的常数函数值,不同取值区间的自变量,对应不同的常数函数值。可以理解,将阶段函数中自变量的不同取值区间相互比较,其中比较结果较大的自变量取值区间,在递减的分段常值函数中的相应阶段所对应的常数函数值反而较小。本实施例中,分段常值函数的各阶段中的常数函数值即为与该阶段对应的预设比例。
上述实施例中,通过确定占比值的均值在递减的预设阶段函数中所对应的阶段;获取与确定的阶段对应的预设比例;将获取的预设比例作为当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例,不需要进行复杂的计算,即可快速且准确地确定出当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例,以快速确定目标码率,从而提高了视频编码效率。
如图3所示,在一个实施例中,确定占比值的均值在递减的预设阶段函数中所对应的阶段(简称阶段确定步骤),具体包括如下步骤:
S302,获取多个预设的码率分配占比值阈值。
其中,码率分配占比值阈值,是预先设置的用于实现码率分配的占比值阈值。需要说明的是,码率分配占比值阈值可以与帧内预测块占比值阈值设置相同的值,也可以设置不同的值。
在一个实施例中,多个预设的码率分配占比值阈值可以如下,其中TH表示码率分配占比值阈值:
S304,将占比值的均值与多个预设的码率分配占比值阈值分别比对,确定占比值的均值所处于的码率分配占比值阈值区间。
其中,码率分配占比值阈值区间,是由两两大小相邻的码率分配占比值阈值组成的区间。可以理解,不同的码率分配占比值阈值区间之间所包括的码率分配占比值阈值不重复。一个处于临界位置的码率分配占比值阈值只包括于一个码率分配占比值阈值区间,当前一个码率分配占比值阈值区间中包括该处于临界位置的码率分配占比值阈值,则后一个码率分配占比值阈值区间中就不包括该处于临界位置的码率分配占比值阈值。
比如,5%(TH2)就是一个处于临界位置的码率分配占比值阈值,当码率分配占比值阈值区间1为大于等于0且小于5%时,则码率分配占比值阈值区间2就包括5%这个码率分配占比值阈值,码率分配占比值阈值区间2为大于等于5且小于15%。
现以步骤S302中一个实施例所示出的码率分配占比值阈值为例,解释说明占比值的均值所处于的码率分配占比值阈值区间。假设,占比值的均值为30%,码率分配占比值阈值区间分别为大于等于0且小于5%,大于等于5%且小于15%,大于等于15%且小于40%,以及大于等于40%且小于100%。则占比值的均值30%位于大于等于15%且小于40%这一码率分配占比值阈值区间。
S306,在以多个码率分配占比值阈值为函数跳跃点的、且递减的预设阶段函数中,确定该码率分配占比值阈值区间所对应的阶段。
其中,阶段函数的函数跳跃点是将阶段函数划分阶段的点。大小相邻两个函数跳跃点间对应于阶段函数的一个阶段。
可以理解,两两大小相邻的码率分配占比值阈值组成的码率分配占比值阈值区间,与以多个码率分配占比值阈值为函数跳跃点的预设阶段函数所对应的各阶段相对应,即一个码率分配占比值阈值区间在预设阶段函数中有相对应的阶段。
在一个实施例中,两两大小相邻的码率分配占比值阈值组成的码率分配占比值阈值区间,与构成该区间的码率分配占比值阈值作为函数跳跃点所构成的阶段相对应。
具体地,计算机设备可以预先设置以多个预设的码率分配占比值阈值为函数跳跃点的预设阶段函数,该预设阶段函数为递减的阶段函数。计算机设备可以获取构成该码率分配占比值阈值区间的码率分配占比值阈值,确定获取的码率分配占比值阈值作为函数跳跃点所构成的阶段,得到该码率分配占比值阈值区间所对应的阶段。
在一个实施例中,以多个码率分配占比值阈值为函数跳跃点的、且递减的预设阶段函数如下。其中,X为自变量,Y为函数的因变量,TH表示码率分配占比值阈值:
现以步骤S302中一个实施例所示出的码率分配占比值阈值为例来解释说明如何确定阶段。假设确定的占比值的均值15%所处于的码率分配占比值阈值区间为大于等于15%且小于40%,则该码率分配占比值阈值区间所对应的阶段为第3阶段,该第3阶段所对应的预设比例(即函数值)为3,则将预设比例3作为当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例。
上述实施例中,设置以多个码率分配占比值阈值为函数跳跃点的、且递减的预设阶段函数,在实际计算时,只需简单的将占比值的均值与多个码率分配占比值阈值比对,确定所对应的码率分配占比值阈值区间,可以根据该区间快速地确定出在预设阶段函数中所对应的阶段,进而能够快速地确定出当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例,以快速得到目标码率,从而提高视频编码效率。
在一个实施例中,该方法还包括:当根据占比值确定当前视频场景未发生变化时,则获取前一组视频帧序列中的帧间预测帧的平均量化参数;根据平均量化参数和预设的量化参数偏移量,确定当前组视频帧序列中帧内编码帧的量化参数;根据量化参数,对帧内编码帧进行编码。
其中,量化参数(Quantization parameter),反映了空间细节压缩情况,如果QP较小,大部分的细节都会被保留,如果QP增大,一些细节丢失,码率降低,图像失真加强和质量下降。帧间预测帧的平均量化参数,是将前一组视频帧序列中的各帧间预测帧的量化参数求平均值得到平均量化参数。量化参数偏移量,是量化参数所需偏移的量。
具体地,计算机设备可以将平均量化参数减去预设的量化参数偏移量,得到当前组视频帧序列中帧内编码帧的量化参数。计算机设备可以根据该量化参数对帧内编码帧进行编码。
上述实施例中,当当前视频场景未发生变化,则前一组视频帧序列中的帧间预测帧的平均量化参数就具有比较准确的参考意义,因此基于前一组视频帧序列中的帧间预测帧的平均量化参数与量化参数偏移量确定的当前组视频帧序列中帧内编码帧的量化参数,能够符合当前视频码率的需求,从而根据量化参数对帧内编码帧进行编码,保证了视频编码质量。
如图4所示,在一个实施例中,该方法还包括目标码率的确定步骤,具体包括以下步骤:
S402,当根据占比值确定当前视频场景未发生变化时,则确定前一组视频帧序列中包括的帧内编码帧的码率与包括的帧间预测帧的平均码率的第一比值。
可以理解,在对当前组视频帧序列进行编码时,前一组视频帧序列的各视频帧已经编码完成,编码码率已确定出。计算机设备可以获取前一组视频帧序列中包括的帧内编码帧的码率和前一组视频帧序列中包括的帧间预测帧的平均码率,根据包括的帧内编码帧的码率除以包括的帧间预测帧的平均码率得到第一比值。
S404,将前一组视频帧序列中包括的帧内编码帧的量化步长除以包括的帧间预测帧的平均量化步长,得到第二比值。
其中,量化是将要压缩的图像的数据进行一定的变换映射的过程。量化步长是对输入的图像进行量化和去量化处理时所涉及到的一个要素。量化步长的大小,和量化前的输入图像与经过量化及去量化后的输出图像间的差别正相关。量化步长越小,经过量化及去量化后的输出图像越接近于量化前的输入图像。即量化步长影响视频的压缩质量。
可以理解,在对当前组视频帧序列进行编码时,前一组视频帧序列的各视频帧已经编码完成,则前一组视频帧序列中的各帧的量化步长已确定出。计算机设备可以前一组视频帧序列中包括的帧间预测帧的量化步长,并求取各帧间预测帧的平均量化步长。计算机设备可以获取前一组视频帧序列中包括的帧内编码帧的量化步长,根据包括的帧内编码帧的量化步长除以包括的帧间预测帧的平均量化步长,得到第二比值。
S406,根据第一比值和第二比值的乘积,得到当前组视频帧序列中包括的帧内编码帧的目标码率与包括的帧间预测帧的平均目标码率的码率比例。
具体地,计算机设备可以直接将第一比值和第二比值的乘积,作为当前组视频帧序列中包括的帧内编码帧的目标码率与当前组视频帧序列中包括的帧间预测帧的平均目标码率的码率比例。计算机设备也可以将第一比值和第二比值的乘积再乘以相应的码率比例调节系数,得到当前组视频帧序列中包括的帧内编码帧的目标码率与当前组视频帧序列中包括的帧间预测帧的平均目标码率的码率比例。
S408,获取当前组视频帧序列的总目标码率。
可以理解,计算机设备中有预先设置编码参数,该编码参数中包括一组视频帧序列的总码率。计算机设备可以获取预先设置的总码率作为当前组视频帧序列的总目标码率。
S410,根据总目标码率和码率比例,得到当前组视频帧序列中帧内编码帧的目标码率。
可以理解,码率比例是当前组视频帧序列中包括的帧内编码帧的目标码率与包括的帧间预测帧的平均目标码率的比例。
具体地,计算机设备可以获取当前组视频帧序列中的帧间预测帧的数量,根据该数量、总目标码率和码率比例,得到当前组视频帧序列中帧内编码帧的目标码率。
可以理解,总目标码率为当前组视频帧序列中包括的帧内编码帧的目标码率和包括的各帧间预测帧的目标码率之和。
在一个实施例中,计算机设备可以按照以下公式得到当前组视频帧序列中帧内编码帧的目标码率:
其中,CT为当前组视频帧序列的总目标码率,CI为当前组视频帧序列的帧内编码帧的目标码率,CJi为当前组视频帧序列的各帧间预测帧的目标码率,n为当前组视频帧序列中帧间预测帧的数量,R为当前组视频帧序列中包括的帧内编码帧的目标码率与包括的帧间预测帧的平均目标码率的码率比例。
可以理解,计算机设备可以根据得到的当前组视频帧序列中帧内编码帧的目标码率,对当前组视频帧序列中的帧内编码帧进行编码。
上述实施例中,当当前视频场景未发生变化,则前一组视频帧序列中的各帧的码率和量化步长就具有比较准确的参考意义,因此基于前一组视频帧序列中各帧的码率和量化步长得到的当前组视频帧序列中帧内编码帧的目标码率能够比较准确,以保证视频编码质量。
在一个实施例中,当前组视频帧序列为通过视频通话应用获取的视频帧序列。该方法还包括:通过视频通话应用,将编码后得到的编码视频流发送至视频通话对端进行解码播放。
可以理解,计算机设备中安装有视频通话应用,以实现视频实时通话。在视频实时通话过程中,计算机设备作为视频流发送端,可以通过视频通话应用实时采集视频帧序列,并对采集的视频帧序列进行编码。在根据确定的目标码率对当前组视频帧序列中的帧内编码帧进行编码后,计算机设备可以通过视频通话应用,将编码后得到的编码视频流发送至视频通话对端。其中,视频通话对端为至少一个。接收到编码视频流的视频通话对端可以对编码视频流进行解码,并播放解码后的视频流。
上述实施例中,计算机设备通过视频通话应用获取当前组视频帧序列,并通过前一组视频帧序列中的帧间预测帧的镇内预测块的占比值,确定当前组视频帧序列的目标码率并据此进行编码。计算机设备通过视频通话应用将按照上述方法编码后的编码视频流发送至视频通话对端进行解码播放,使得视频实时通话自适应编码能力更强,提高了视频实时通话的质量。
如图5所示,在一个实施例中,提供了另一种视频编码处理方法,该方法具体包括以下步骤:
S502,确定前一组视频帧序列中的帧间预测帧的总数量;获取预设的选取数量。
S504,将预设的选取数量和所确定的总数量中的较小值作为目标选取数量。
S506,按照距当前组视频帧序列由近到远的顺序,从前一组视频帧序列中选取满足目标选取数量的连续的帧间预测帧。
其中,当前组视频帧序列为通过视频通话应用获取的视频帧序列。
S508,获取帧间预测帧中帧内预测块的占比值,确定各占比值中的最大值和最小值。
S510,获取多个预设的帧内预测块占比值阈值。
S512,当最大值和最小值之间存在至少一个帧内预测块占比值阈值时,判定当前视频场景发生变化,则进入步骤S516。
S514,当最大值和最小值位于相邻两个帧内预测块占比值阈值之间时,判定当前视频场景未发生变化,则进入步骤S526。
S516,确定各帧间预测帧中帧内预测块占比值的均值;获取多个预设码率分配占比值阈值。
S518,将占比值的均值与多个预设的码率分配占比值阈值分别比对,确定占比值的均值所处于的码率分配占比值阈值区间。
S520,在以多个码率分配占比值阈值为函数跳跃点的、且递减的预设分段阶段函数中,确定码率分配占比值阈值区间所对应的阶段。
S522,获取与确定的阶段对应的预设比例;将获取的预设比例作为当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例。
其中,比例与占比值的均值负相关。
S524,获取单帧平均码率;根据单帧平均码率和比例,得到帧内编码帧的目标码率。
其中,获取单帧平均码率包括:获取预设的每秒目标码率;获取预设的帧率;将每秒目标码率除以帧率,得到单帧平均码率。
S526,确定前一组视频帧序列中包括的帧内编码帧的码率与包括的帧间预测帧的平均码率的第一比值。
S528,将前一组视频帧序列中包括的帧内编码帧的量化步长除以包括的帧间预测帧的平均量化步长,得到第二比值。
S530,根据第一比值和第二比值的乘积,得到当前组视频帧序列中包括的帧内编码帧的目标码率与包括的帧间预测帧的平均目标码率的码率比例。
S532,获取当前组视频帧序列的总目标码率;根据总目标码率和码率比例,得到当前组视频帧序列中帧内编码帧的目标码率。
S534,根据目标码率对帧内编码帧进行编码,通过视频通话应用,将编码后得到的编码视频流发送至视频通话对端进行解码播放。
上述视频编码处理方法,在编码当前组视频帧序列中帧内编码帧时,通过选取的前一组视频帧序列中的帧间预测帧中帧内预测块的占比值,对当前视频场景是否发生变化进行判断。在确定当前视频场景发生变化时,则根据帧内预测块的占比值,确定当前组视频帧序列中帧内编码帧的目标码率。其中,帧内预测块的占比值能够反映图像间相关性强弱,根据能够反映图像间相关性强弱的帧内预测块的占比值确定当前组视频帧序列中帧内编码帧的目标码率的分配,使得在当前视频场景发生变化时,对当前组视频帧序列中帧内编码帧的目标码率分配的更加准确,从而提高了自适应编码能力。
其次,当根据占比值确定当前视频场景发生变化时,根据各帧间预测帧中帧内预测块的占比值的均值。其中,占比值的均值能够反映图像间相关性强弱,若占比值的均值较小,则多为静止场景,图像之间的相关性比较强,若占比值的均值较大,则多为运动场景,图像之间的相关性比较弱。根据占比值的均值确定当前组视频帧序列中帧内编码帧的目标码率;目标码率与占比值的均值负相关。可以理解,当占比值的均值较小,图像之间的相关性较强时,则帧间预测帧所需码率较低,此时可以提高帧内编码帧的码率,以助于提高食品整体的压缩效率。当占比值的均值较大,图像之间的相关性较弱,则帧间预测帧所需码率较高,此时可以降低帧内编码帧的码率。
然后,通过确定占比值的均值在递减的预设阶段函数中所对应的阶段;获取与确定的阶段对应的预设比例;将获取的预设比例作为当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例,不需要进行复杂的计算,即可快速且准确地确定出当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例,以快速确定目标码率,从而提高了视频编码效率。
最后,通过视频通话应用获取当前组视频帧序列,并通过前一组视频帧序列中的帧间预测帧的镇内预测块的占比值,确定当前组视频帧序列的目标码率并据此进行编码。计算机设备通过视频通话应用将按照上述方法编码后的编码视频流发送至视频通话对端进行解码播放,使得视频实时通话自适应编码能力更强,提高了视频实时通话的质量。
图6为一个实施例中视频编码处理方法的原理示意图。参照图6,当前组GOP(即当前组视频帧序列)和前一组GOP(前一组视频帧序列)都是由I帧(即帧内编码帧)和P/B帧(P/B帧表示,P帧和/或B帧,可以理解P帧和B帧皆为帧间预测帧)组成的视频帧序列。
计算机设备可以从按照距当前组GOP的距离由近到远的顺序,从前一组GOP中选取帧间预测帧,如图6中,就近选择2个P帧。每个P帧包括Intra块(帧内预测块)和Inter块(帧间预测块)。计算机设备可以分别确定所选取的各个P帧中Intra块占比值,得到Intra块占比值1和Intra块占比值2。计算机设备可以将Intra块占比值1和Intra块占比值2分别与预设的多个Thre(即Intra块占比值阈值)比对。当比对结果为图6中的第(1)种情况时,即Intra块占比值1和Intra块占比值2之间存在Thre4,则判定当前视频场景发生变化。当比对结果为图6中的第(2)种情况时,即Intra块占比值1和Intra块占比值2位于相邻的Thre4和Thre5之间,则判定当前视频场景未发生变化。
针对当前视频场景发生变化的情况,计算机设备可以确定Intra块占比值1和Intra块占比值2的均值,并将该均值与预设的多个TH(即码率分配占比值阈值)进行比对,以确定该均值在由该多个TH为跳跃点的、且递减的预设阶段函数Y中所对应的阶段。可以理解,大小相邻的2个TH对应于该预设阶段函数的一个阶段,所以将均值与预设的多个TH进行比对可以确定出该均值在预设阶段函数中所对应的阶段,预设阶段函数中每一阶段都有一个对应的预设比例。如图6所示,该均值对应的是大于等于TH4且小于TH5的这个阶段,则计算机设备可以获取大于等于TH4且小于TH5的这个阶段所对应的预设比例2,将该预设比例2作为当前组GOP中I帧的目标码率与单帧平均码率的比例。计算机设备可以获取单帧平均码率,结合该比例,得到当前组GOP中I帧的目标码率。
针对当前视频场景未发生变化的情况,计算机设备可以将前一组GOP中I帧的码率除以P/B帧的平均码率,得到第一比值,并将前一组GOP中I帧的量化步长除以P/B帧的平均量化步长,得到第二比值,根据第一比值和第二比值,得到当前组GOP中I帧的目标码率与P/B帧目标码率比例。计算机设备可以获取当前组GOP的总目标码率,并结合当前组GOP中I帧的目标码率与P/B帧目标码率比例,得到当前组GOP中I帧的目标码率。
计算机设备可以按照所得到的当前组GOP中I帧的目标码率,编码当前组GOP中的I帧。
如图7所示,在一个实施例中,提供了一种视频编码处理装置700,该装置700包括:占比值获取模块702、视频场景检测模块704、目标码率确定模块706及编码模块708,其中:
占比值获取模块702,用于获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值。
视频场景检测模块704,用于根据占比值确定当前视频场景是否发生变化。
目标码率确定模块706,用于当视频场景检测模块704确定当前视频场景发生变化时,根据占比值确定当前组视频帧序列中帧内编码帧的目标码率。
编码模块708,用于根据目标码率对帧内编码帧进行编码。
在一个实施例中,选取的帧间预测帧为多个连续的帧间预测帧。目标码率确定模块706还用于当根据占比值确定当前视频场景发生变化时,则确定各帧间预测帧中帧内预测块的占比值的均值;根据占比值的均值确定当前组视频帧序列中帧内编码帧的目标码率;目标码率与占比值的均值负相关。
如图8所示,在一个实施例中,占比值获取模块702包括:
帧间预测帧选取模块702a,用于获取目标选取数量;按照距当前组视频帧序列由近到远的顺序,从前一组视频帧序列中选取满足目标选取数量的连续的帧间预测帧。
预测块占比值确定模块702b,用于获取帧间预测帧中帧内预测块的占比值。
在一个实施例中,帧间预测帧选取模块702a还用于确定前一组视频帧序列中的帧间预测帧的总数量;获取预设的选取数量;将预设的选取数量和所确定的总数量中的较小值作为目标选取数量。
在一个实施例中,选取的帧间预测帧为多个连续的帧间预测帧。视频场景检测模块704还用于确定各帧间预测帧中帧内预测块占比值中的最大值和最小值;获取多个预设的帧内预测块占比值阈值;当最大值和最小值之间存在至少一个帧内预测块占比值阈值时,则判定当前视频场景发生变化。
在一个实施例中,视频场景检测模块704还用于判断最大值和最小值是否位于相邻两个帧内预测块占比值阈值之间;当最大值和最小值位于相邻两个帧内预测块占比值阈值之间时,则判定当前视频场景未发生变化。
在一个实施例中,目标码率确定模块706还用于根据占比值的均值,确定当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例;比例与占比值的均值负相关;获取单帧平均码率;根据单帧平均码率和比例,得到帧内编码帧的目标码率。
在一个实施例中,目标码率确定模块706还用于确定占比值的均值在递减的预设阶段函数中所对应的阶段;获取与确定的阶段对应的预设比例;将获取的预设比例作为当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例。
在一个实施例中,目标码率确定模块706还用于获取多个预设的码率分配占比值阈值;将占比值的均值与多个预设的码率分配占比值阈值分别比对,确定占比值的均值所处于的码率分配占比值阈值区间;在以多个码率分配占比值阈值为函数跳跃点的、且递减的预设阶段函数中,确定码率分配占比值阈值区间所对应的阶段。
在一个实施例中,目标码率确定模块706还用于获取预设的每秒目标码率;获取预设的帧率;将每秒目标码率除以帧率,得到单帧平均码率。
在一个实施例中,目标码率确定模块706还用于当根据占比值确定当前视频场景未发生变化时,则获取前一组视频帧序列中的帧间预测帧的平均量化参数;根据平均量化参数和预设的量化参数偏移量,确定当前组视频帧序列中帧内编码帧的量化参数;根据量化参数,对帧内编码帧进行编码。
在一个实施例中,目标码率确定模块706还用于当根据占比值确定当前视频场景未发生变化时,则确定前一组视频帧序列中包括的帧内编码帧的码率与包括的帧间预测帧的平均码率的第一比值;将前一组视频帧序列中包括的帧内编码帧的量化步长除以包括的帧间预测帧的平均量化步长,得到第二比值;根据第一比值和第二比值的乘积,得到当前组视频帧序列中包括的帧内编码帧的目标码率与包括的帧间预测帧的平均目标码率的码率比例;获取当前组视频帧序列的总目标码率;根据总目标码率和码率比例,得到当前组视频帧序列中帧内编码帧的目标码率。
如图9所示,在一个实施例中,当前组视频帧序列为通过视频通话应用获取的视频帧序列。该装置还包括:
视频流发送模块710,用于通过视频通话应用,将编码后得到的编码视频流发送至视频通话对端进行解码播放。
图10为一个实施例中计算机设备的内部结构示意图。参照图10,该计算机设备可以是图1中所示的第一终端110或第二终端120。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质可存储操作系统和计算机程序,该计算机程序被执行时,可使得处理器执行一种视频编码处理方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该内存储器中可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行一种视频编码处理方法。计算机设备的网络接口用于进行网络通信。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏等,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是外接的键盘、触控板或鼠标等。该计算机设备可以是个人计算机、移动终端或车载设备,移动终端包括手机、平板电脑、个人数字助理或可穿戴设备等中的至少一种。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的视频编码处理装置可以实现为一种计算机程序的形式,所述计算机程序可在如图10所示的计算机设备上运行,所述计算机设备的非易失性存储介质可存储组成该视频编码处理装置的各个程序模块,比如,图7所示的占比值获取模块702、视频场景检测模块704、目标码率确定模块706及编码模块708。各个程序模块所组成的计算机程序用于使该计算机设备执行本说明书中描述的本申请各个实施例的视频编码处理方法中的步骤,例如,计算机设备可以通过如图7所示的视频编码处理装置700中的占比值获取模块702获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值。计算机设备可以通过视频场景检测模块704根据占比值确定当前视频场景是否发生变化,并通过目标码率确定模块706当确定当前视频场景发生变化时,根据占比值确定当前组视频帧序列中帧内编码帧的目标码率。计算机设备可以通过编码模块708根据目标码率对帧内编码帧进行编码。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值;
根据所述占比值确定当前视频场景是否发生变化,当确定发生变化时,根据所述占比值确定当前组视频帧序列中帧内编码帧的目标码率;
根据所述目标码率对所述帧内编码帧进行编码。
在一个实施例中,选取的所述帧间预测帧为多个连续的帧间预测帧;所述当确定发生变化时,根据所述占比值确定当前组视频帧序列中帧内编码帧的目标码率包括:
当根据所述占比值确定当前视频场景发生变化时,则
确定各所述帧间预测帧中帧内预测块的占比值的均值;
根据所述占比值的均值确定当前组视频帧序列中帧内编码帧的目标码率;所述目标码率与所述占比值的均值负相关。
在一个实施例中,所述获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值包括:
获取目标选取数量;
按照距当前组视频帧序列由近到远的顺序,从所述前一组视频帧序列中选取满足所述目标选取数量的连续的帧间预测帧;
获取所述帧间预测帧中帧内预测块的占比值。
在一个实施例中,所述获取目标选取数量包括:
确定前一组视频帧序列中的帧间预测帧的总数量;
获取预设的选取数量;
将所述预设的选取数量和所确定的所述总数量中的较小值作为目标选取数量。
在一个实施例中,选取的所述帧间预测帧为多个连续的帧间预测帧;所述根据所述占比值确定当前视频场景是否发生变化包括:
确定各所述帧间预测帧中帧内预测块占比值中的最大值和最小值;
获取多个预设的帧内预测块占比值阈值;
当所述最大值和所述最小值之间存在至少一个所述帧内预测块占比值阈值时,则判定当前视频场景发生变化。
在一个实施例中,所述根据所述占比值确定当前视频场景是否发生变化还包括:
判断所述最大值和所述最小值是否位于相邻两个所述帧内预测块占比值阈值之间;
当所述最大值和所述最小值位于相邻两个所述帧内预测块占比值阈值之间时,则判定当前视频场景未发生变化。
在一个实施例中,所述根据所述占比值确定当前组视频帧序列中帧内编码帧的目标码率包括:
根据所述占比值的均值,确定当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例;所述比例与所述占比值的均值负相关;
获取单帧平均码率;
根据所述单帧平均码率和所述比例,得到所述帧内编码帧的目标码率。
在一个实施例中,所述根据所述占比值的均值,确定当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例包括:
确定所述占比值的均值在递减的预设阶段函数中所对应的阶段;
获取与确定的所述阶段对应的预设比例;
将获取的所述预设比例作为当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例。
在一个实施例中,所述确定所述占比值的均值在递减的预设阶段函数中所对应的阶段包括:
获取多个预设的码率分配占比值阈值;
将所述占比值的均值与多个预设的码率分配占比值阈值分别比对,确定所述占比值的均值所处于的码率分配占比值阈值区间;
在以多个所述码率分配占比值阈值为函数跳跃点的、且递减的预设阶段函数中,确定所述码率分配占比值阈值区间所对应的阶段。
在一个实施例中,所述获取单帧平均码率包括:
获取预设的每秒目标码率;
获取预设的帧率;
将所述每秒目标码率除以所述帧率,得到单帧平均码率。
在一个实施例中,所述计算机可读指令还使得处理器执行以下步骤:
当根据所述占比值确定当前视频场景未发生变化时,则
获取所述前一组视频帧序列中的帧间预测帧的平均量化参数;
根据所述平均量化参数和预设的量化参数偏移量,确定当前组视频帧序列中帧内编码帧的量化参数;
根据所述量化参数,对所述帧内编码帧进行编码。
在一个实施例中,所述计算机可读指令还使得处理器执行以下步骤:
当根据所述占比值确定当前视频场景未发生变化时,则
确定所述前一组视频帧序列中包括的帧内编码帧的码率与包括的帧间预测帧的平均码率的第一比值;
将所述前一组视频帧序列中包括的帧内编码帧的量化步长除以包括的帧间预测帧的平均量化步长,得到第二比值;
根据所述第一比值和所述第二比值的乘积,得到当前组视频帧序列中包括的帧内编码帧的目标码率与包括的帧间预测帧的平均目标码率的码率比例;
获取所述当前组视频帧序列的总目标码率;
根据所述总目标码率和所述码率比例,得到所述当前组视频帧序列中帧内编码帧的目标码率。
在一个实施例中,所述当前组视频帧序列为通过视频通话应用获取的视频帧序列;
所述计算机可读指令还使得处理器执行以下步骤:通过所述视频通话应用,将编码后得到的编码视频流发送至视频通话对端进行解码播放。
在一个实施例中,提供了一种存储有计算机程序的存储介质,所述计算机程序被一个或多个处理器执行时,使得一个或多个处理器执行如下步骤:
获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值;
根据所述占比值确定当前视频场景是否发生变化,当确定发生变化时,根据所述占比值确定当前组视频帧序列中帧内编码帧的目标码率;
根据所述目标码率对所述帧内编码帧进行编码。
在一个实施例中,选取的所述帧间预测帧为多个连续的帧间预测帧;所述当确定发生变化时,根据所述占比值确定当前组视频帧序列中帧内编码帧的目标码率包括:
当根据所述占比值确定当前视频场景发生变化时,则
确定各所述帧间预测帧中帧内预测块的占比值的均值;
根据所述占比值的均值确定当前组视频帧序列中帧内编码帧的目标码率;所述目标码率与所述占比值的均值负相关。
在一个实施例中,所述获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值包括:
获取目标选取数量;
按照距当前组视频帧序列由近到远的顺序,从所述前一组视频帧序列中选取满足所述目标选取数量的连续的帧间预测帧;
获取所述帧间预测帧中帧内预测块的占比值。
在一个实施例中,所述获取目标选取数量包括:
确定前一组视频帧序列中的帧间预测帧的总数量;
获取预设的选取数量;
将所述预设的选取数量和所确定的所述总数量中的较小值作为目标选取数量。
在一个实施例中,选取的所述帧间预测帧为多个连续的帧间预测帧;所述根据所述占比值确定当前视频场景是否发生变化包括:
确定各所述帧间预测帧中帧内预测块占比值中的最大值和最小值;
获取多个预设的帧内预测块占比值阈值;
当所述最大值和所述最小值之间存在至少一个所述帧内预测块占比值阈值时,则判定当前视频场景发生变化。
在一个实施例中,所述根据所述占比值确定当前视频场景是否发生变化还包括:
判断所述最大值和所述最小值是否位于相邻两个所述帧内预测块占比值阈值之间;
当所述最大值和所述最小值位于相邻两个所述帧内预测块占比值阈值之间时,则判定当前视频场景未发生变化。
在一个实施例中,所述根据所述占比值确定当前组视频帧序列中帧内编码帧的目标码率包括:
根据所述占比值的均值,确定当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例;所述比例与所述占比值的均值负相关;
获取单帧平均码率;
根据所述单帧平均码率和所述比例,得到所述帧内编码帧的目标码率。
在一个实施例中,所述根据所述占比值的均值,确定当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例包括:
确定所述占比值的均值在递减的预设阶段函数中所对应的阶段;
获取与确定的所述阶段对应的预设比例;
将获取的所述预设比例作为当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例。
在一个实施例中,所述确定所述占比值的均值在递减的预设阶段函数中所对应的阶段包括:
获取多个预设的码率分配占比值阈值;
将所述占比值的均值与多个预设的码率分配占比值阈值分别比对,确定所述占比值的均值所处于的码率分配占比值阈值区间;
在以多个所述码率分配占比值阈值为函数跳跃点的、且递减的预设阶段函数中,确定所述码率分配占比值阈值区间所对应的阶段。
在一个实施例中,所述获取单帧平均码率包括:
获取预设的每秒目标码率;
获取预设的帧率;
将所述每秒目标码率除以所述帧率,得到单帧平均码率。
在一个实施例中,所述计算机可读指令还使得处理器执行以下步骤:
当根据所述占比值确定当前视频场景未发生变化时,则
获取所述前一组视频帧序列中的帧间预测帧的平均量化参数;
根据所述平均量化参数和预设的量化参数偏移量,确定当前组视频帧序列中帧内编码帧的量化参数;
根据所述量化参数,对所述帧内编码帧进行编码。
在一个实施例中,所述计算机可读指令还使得处理器执行以下步骤:
当根据所述占比值确定当前视频场景未发生变化时,则
确定所述前一组视频帧序列中包括的帧内编码帧的码率与包括的帧间预测帧的平均码率的第一比值;
将所述前一组视频帧序列中包括的帧内编码帧的量化步长除以包括的帧间预测帧的平均量化步长,得到第二比值;
根据所述第一比值和所述第二比值的乘积,得到当前组视频帧序列中包括的帧内编码帧的目标码率与包括的帧间预测帧的平均目标码率的码率比例;
获取所述当前组视频帧序列的总目标码率;
根据所述总目标码率和所述码率比例,得到所述当前组视频帧序列中帧内编码帧的目标码率。
在一个实施例中,所述当前组视频帧序列为通过视频通话应用获取的视频帧序列;
所述计算机可读指令还使得处理器执行以下步骤:通过所述视频通话应用,将编码后得到的编码视频流发送至视频通话对端进行解码播放。
应该理解的是,虽然本申请各实施例中的各个步骤并不是必然按照步骤标号指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (18)

1.一种视频编码处理方法,所述方法包括:
获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值;
根据所述占比值确定当前视频场景是否发生变化,当确定发生变化时,根据所述占比值确定当前组视频帧序列中帧内编码帧的目标码率;
根据所述目标码率对所述帧内编码帧进行编码。
2.根据权利要求1所述的方法,其特征在于,选取的所述帧间预测帧为多个连续的帧间预测帧;
所述当确定发生变化时,根据所述占比值确定当前组视频帧序列中帧内编码帧的目标码率包括:
当根据所述占比值确定当前视频场景发生变化时,则
确定各所述帧间预测帧中帧内预测块的占比值的均值;
根据所述占比值的均值确定当前组视频帧序列中帧内编码帧的目标码率;所述目标码率与所述占比值的均值负相关。
3.根据权利要求1所述的方法,其特征在于,所述获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值包括:
获取目标选取数量;
按照距当前组视频帧序列由近到远的顺序,从所述前一组视频帧序列中选取满足所述目标选取数量的连续的帧间预测帧;
获取所述帧间预测帧中帧内预测块的占比值。
4.根据权利要求3所述的方法,其特征在于,所述获取目标选取数量包括:
确定前一组视频帧序列中的帧间预测帧的总数量;
获取预设的选取数量;
将所述预设的选取数量和所确定的所述总数量中的较小值作为目标选取数量。
5.根据权利要求1所述的方法,其特征在于,选取的所述帧间预测帧为多个连续的帧间预测帧;
所述根据所述占比值确定当前视频场景是否发生变化包括:
确定各所述帧间预测帧中帧内预测块占比值中的最大值和最小值;
获取多个预设的帧内预测块占比值阈值;
当所述最大值和所述最小值之间存在至少一个所述帧内预测块占比值阈值时,则判定当前视频场景发生变化。
6.根据权利要求5所述的方法,其特征在于,所述根据所述占比值确定当前视频场景是否发生变化还包括:
判断所述最大值和所述最小值是否位于相邻两个所述帧内预测块占比值阈值之间;
当所述最大值和所述最小值位于相邻两个所述帧内预测块占比值阈值之间时,则判定当前视频场景未发生变化。
7.根据权利要求1所述的方法,其特征在于,所述根据所述占比值确定当前组视频帧序列中帧内编码帧的目标码率包括:
根据所述占比值的均值,确定当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例;所述比例与所述占比值的均值负相关;
获取单帧平均码率;
根据所述单帧平均码率和所述比例,得到所述帧内编码帧的目标码率。
8.根据权利要求7所述的方法,其特征在于,所述根据所述占比值的均值,确定当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例包括:
确定所述占比值的均值在递减的预设阶段函数中所对应的阶段;
获取与确定的所述阶段对应的预设比例;
将获取的所述预设比例作为当前组视频帧序列中帧内编码帧的目标码率和单帧平均码率的比例。
9.根据权利要求8述的方法,其特征在于,所述确定所述占比值的均值在递减的预设阶段函数中所对应的阶段包括:
获取多个预设的码率分配占比值阈值;
将所述占比值的均值与多个预设的码率分配占比值阈值分别比对,确定所述占比值的均值所处于的码率分配占比值阈值区间;
在以多个所述码率分配占比值阈值为函数跳跃点的、且递减的预设阶段函数中,确定所述码率分配占比值阈值区间所对应的阶段。
10.根据权利要求7述的方法,其特征在于,所述获取单帧平均码率包括:
获取预设的每秒目标码率;
获取预设的帧率;
将所述每秒目标码率除以所述帧率,得到单帧平均码率。
11.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当根据所述占比值确定当前视频场景未发生变化时,则
获取所述前一组视频帧序列中的帧间预测帧的平均量化参数;
根据所述平均量化参数和预设的量化参数偏移量,确定当前组视频帧序列中帧内编码帧的量化参数;
根据所述量化参数,对所述帧内编码帧进行编码。
12.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当根据所述占比值确定当前视频场景未发生变化时,则
确定所述前一组视频帧序列中包括的帧内编码帧的码率与包括的帧间预测帧的平均码率的第一比值;
将所述前一组视频帧序列中包括的帧内编码帧的量化步长除以包括的帧间预测帧的平均量化步长,得到第二比值;
根据所述第一比值和所述第二比值的乘积,得到当前组视频帧序列中包括的帧内编码帧的目标码率与包括的帧间预测帧的平均目标码率的码率比例;
获取所述当前组视频帧序列的总目标码率;
根据所述总目标码率和所述码率比例,得到所述当前组视频帧序列中帧内编码帧的目标码率。
13.根据权利要求1至12中任一项所述的方法,其特征在于,所述当前组视频帧序列为通过视频通话应用获取的视频帧序列;
所述方法还包括:
通过所述视频通话应用,将编码后得到的编码视频流发送至视频通话对端进行解码播放。
14.一种视频编码处理装置,其特征在于,所述装置包括:
占比值获取模块,用于获取前一组视频帧序列中的帧间预测帧中帧内预测块的占比值;
视频场景检测模块,用于根据所述占比值确定当前视频场景是否发生变化;
目标码率确定模块,用于当所述视频场景检测模块确定所述当前视频场景发生变化时,根据所述占比值确定当前组视频帧序列中帧内编码帧的目标码率;
编码模块,用于根据所述目标码率对所述帧内编码帧进行编码。
15.根据权利要求14所述的装置,其特征在于,选取的所述帧间预测帧为多个连续的帧间预测帧;
所述视频场景检测模块还用于确定各所述帧间预测帧中帧内预测块占比值中的最大值和最小值;获取多个预设的帧内预测块占比值阈值;当所述最大值和所述最小值之间存在至少一个所述帧内预测块占比值阈值时,则判定当前视频场景发生变化。
16.根据权利要求14所述的装置,其特征在于,所述当前组视频帧序列为通过视频通话应用获取的视频帧序列。
所述装置还包括:
视频流发送模块,用于通过所述视频通话应用,将编码后得到的编码视频流发送至视频通话对端进行解码播放。
17.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至13中任一项所述方法的步骤。
18.一种存储有计算机程序的存储介质,所述计算机程序被一个或多个处理器执行时,使得一个或多个处理器执行如权利要求1至13中任一项所述方法的步骤。
CN201710880645.2A 2017-09-26 2017-09-26 视频编码处理方法、装置、设备和存储介质 Active CN109561310B (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201710880645.2A CN109561310B (zh) 2017-09-26 2017-09-26 视频编码处理方法、装置、设备和存储介质
JP2019555653A JP6899448B2 (ja) 2017-09-26 2018-06-25 ビデオの符号化処理方法、コンピュータ機器及びコンピュータプログラム
PCT/CN2018/092573 WO2019062226A1 (zh) 2017-09-26 2018-06-25 视频编码处理方法、计算机设备和存储介质
EP18863575.9A EP3606073B1 (en) 2017-09-26 2018-06-25 Video encoding method, computer device, and storage medium
KR1020197033417A KR102307771B1 (ko) 2017-09-26 2018-06-25 비디오 인코딩 방법, 컴퓨터 디바이스 및 저장 매체
US16/435,020 US10827182B2 (en) 2017-09-26 2019-06-07 Video encoding processing method, computer device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710880645.2A CN109561310B (zh) 2017-09-26 2017-09-26 视频编码处理方法、装置、设备和存储介质

Publications (2)

Publication Number Publication Date
CN109561310A true CN109561310A (zh) 2019-04-02
CN109561310B CN109561310B (zh) 2022-09-16

Family

ID=65862149

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710880645.2A Active CN109561310B (zh) 2017-09-26 2017-09-26 视频编码处理方法、装置、设备和存储介质

Country Status (6)

Country Link
US (1) US10827182B2 (zh)
EP (1) EP3606073B1 (zh)
JP (1) JP6899448B2 (zh)
KR (1) KR102307771B1 (zh)
CN (1) CN109561310B (zh)
WO (1) WO2019062226A1 (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110139113A (zh) * 2019-04-30 2019-08-16 腾讯科技(深圳)有限公司 视频资源的传输参数分发方法及装置
CN110708570A (zh) * 2019-10-21 2020-01-17 腾讯科技(深圳)有限公司 视频的编码码率确定方法、装置、设备及存储介质
CN110809127A (zh) * 2019-10-10 2020-02-18 北京邮电大学 一种基于深度模仿学习的视频通话方法及装置
CN111193924A (zh) * 2019-12-26 2020-05-22 腾讯科技(深圳)有限公司 视频码率的确定方法、装置、计算机设备及存储介质
CN112188310A (zh) * 2020-09-28 2021-01-05 北京金山云网络技术有限公司 测试序列构建方法、装置、电子设备及存储介质
CN112312231A (zh) * 2019-07-31 2021-02-02 北京金山云网络技术有限公司 一种视频图像编码方法、装置、电子设备及介质
WO2021047177A1 (zh) * 2019-09-09 2021-03-18 西安万像电子科技有限公司 数据编码方法及装置
CN113505439A (zh) * 2021-07-27 2021-10-15 北京微纳星空科技有限公司 一种测试方法、装置、设备和存储介质
CN113660491A (zh) * 2021-08-10 2021-11-16 杭州网易智企科技有限公司 编码方法、编码装置、存储介质及电子设备
CN114051139A (zh) * 2021-11-09 2022-02-15 京东科技信息技术有限公司 视频编码方法和装置
CN114615495A (zh) * 2020-12-09 2022-06-10 Oppo广东移动通信有限公司 模型量化方法、装置、终端及存储介质
CN114745590A (zh) * 2021-01-07 2022-07-12 阿里巴巴集团控股有限公司 视频帧编码方法、装置、电子设备及介质
WO2023279978A1 (zh) * 2021-07-09 2023-01-12 百果园技术(新加坡)有限公司 视频编码方法、装置、设备及存储介质
WO2023142665A1 (zh) * 2022-01-27 2023-08-03 腾讯科技(深圳)有限公司 图像处理方法、装置、计算机设备、存储介质及程序产品
CN116708934A (zh) * 2023-05-16 2023-09-05 深圳东方凤鸣科技有限公司 一种视频编码处理方法及装置
CN117880507A (zh) * 2024-03-12 2024-04-12 腾讯科技(深圳)有限公司 视频编码方法、装置、设备、存储介质和计算机程序产品

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7015183B2 (ja) * 2018-02-13 2022-02-02 キヤノン株式会社 画像符号化装置及びその制御方法及びプログラム
CN113298843B (zh) * 2020-02-24 2024-05-14 中科寒武纪科技股份有限公司 数据量化处理方法、装置、电子设备和存储介质
US11355139B2 (en) * 2020-09-22 2022-06-07 International Business Machines Corporation Real-time vs non-real time audio streaming
CN112969100B (zh) * 2021-03-24 2023-06-30 西安闻泰信息技术有限公司 视频播放控制方法、装置、设备和介质
CN114051140B (zh) * 2022-01-07 2022-04-08 腾讯科技(深圳)有限公司 视频编码方法、装置、计算机设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110122942A1 (en) * 2009-11-20 2011-05-26 Texas Instruments Incorporated Techniques for perceptual encoding of video frames
CN104869403A (zh) * 2015-05-18 2015-08-26 中国传媒大学 一种基于x264压缩视频的镜头分割方法
CN107027030A (zh) * 2017-03-07 2017-08-08 腾讯科技(深圳)有限公司 一种码率分配方法及其设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101172430B1 (ko) * 2007-08-17 2012-08-08 삼성전자주식회사 비트율 제어 방법 및 그 장치
US20090097546A1 (en) * 2007-10-10 2009-04-16 Chang-Hyun Lee System and method for enhanced video communication using real-time scene-change detection for control of moving-picture encoding data rate
JP5410720B2 (ja) * 2008-09-25 2014-02-05 日立コンシューマエレクトロニクス株式会社 ディジタル情報信号送受信装置、およびディジタル情報信号送受信方法
US8804820B2 (en) * 2011-04-21 2014-08-12 Dialogic Corporation Rate control with look-ahead for video transcoding
US20120281757A1 (en) * 2011-05-04 2012-11-08 Roncero Izquierdo Francisco J Scene change detection for video transmission system
JP2014090327A (ja) * 2012-10-30 2014-05-15 Mitsubishi Electric Corp 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
US9538190B2 (en) * 2013-04-08 2017-01-03 Qualcomm Incorporated Intra rate control for video encoding based on sum of absolute transformed difference
US9661329B2 (en) * 2014-04-30 2017-05-23 Intel Corporation Constant quality video coding
CN106851272B (zh) * 2017-01-20 2019-11-12 杭州当虹科技股份有限公司 一种hdr和sdr自适应码率控制的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110122942A1 (en) * 2009-11-20 2011-05-26 Texas Instruments Incorporated Techniques for perceptual encoding of video frames
CN104869403A (zh) * 2015-05-18 2015-08-26 中国传媒大学 一种基于x264压缩视频的镜头分割方法
CN107027030A (zh) * 2017-03-07 2017-08-08 腾讯科技(深圳)有限公司 一种码率分配方法及其设备

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110139113A (zh) * 2019-04-30 2019-08-16 腾讯科技(深圳)有限公司 视频资源的传输参数分发方法及装置
CN112312231A (zh) * 2019-07-31 2021-02-02 北京金山云网络技术有限公司 一种视频图像编码方法、装置、电子设备及介质
CN112312231B (zh) * 2019-07-31 2022-09-02 北京金山云网络技术有限公司 一种视频图像编码方法、装置、电子设备及介质
WO2021047177A1 (zh) * 2019-09-09 2021-03-18 西安万像电子科技有限公司 数据编码方法及装置
CN110809127A (zh) * 2019-10-10 2020-02-18 北京邮电大学 一种基于深度模仿学习的视频通话方法及装置
CN110708570B (zh) * 2019-10-21 2022-05-17 腾讯科技(深圳)有限公司 视频的编码码率确定方法、装置、设备及存储介质
CN110708570A (zh) * 2019-10-21 2020-01-17 腾讯科技(深圳)有限公司 视频的编码码率确定方法、装置、设备及存储介质
CN111193924A (zh) * 2019-12-26 2020-05-22 腾讯科技(深圳)有限公司 视频码率的确定方法、装置、计算机设备及存储介质
CN112188310A (zh) * 2020-09-28 2021-01-05 北京金山云网络技术有限公司 测试序列构建方法、装置、电子设备及存储介质
CN114615495A (zh) * 2020-12-09 2022-06-10 Oppo广东移动通信有限公司 模型量化方法、装置、终端及存储介质
CN114745590A (zh) * 2021-01-07 2022-07-12 阿里巴巴集团控股有限公司 视频帧编码方法、装置、电子设备及介质
WO2023279978A1 (zh) * 2021-07-09 2023-01-12 百果园技术(新加坡)有限公司 视频编码方法、装置、设备及存储介质
CN113505439A (zh) * 2021-07-27 2021-10-15 北京微纳星空科技有限公司 一种测试方法、装置、设备和存储介质
CN113660491B (zh) * 2021-08-10 2024-05-07 杭州网易智企科技有限公司 编码方法、编码装置、存储介质及电子设备
CN113660491A (zh) * 2021-08-10 2021-11-16 杭州网易智企科技有限公司 编码方法、编码装置、存储介质及电子设备
CN114051139A (zh) * 2021-11-09 2022-02-15 京东科技信息技术有限公司 视频编码方法和装置
CN114051139B (zh) * 2021-11-09 2024-02-02 京东科技信息技术有限公司 视频编码方法和装置
WO2023142665A1 (zh) * 2022-01-27 2023-08-03 腾讯科技(深圳)有限公司 图像处理方法、装置、计算机设备、存储介质及程序产品
CN116708934A (zh) * 2023-05-16 2023-09-05 深圳东方凤鸣科技有限公司 一种视频编码处理方法及装置
CN116708934B (zh) * 2023-05-16 2024-03-22 深圳东方凤鸣科技有限公司 一种视频编码处理方法及装置
CN117880507A (zh) * 2024-03-12 2024-04-12 腾讯科技(深圳)有限公司 视频编码方法、装置、设备、存储介质和计算机程序产品

Also Published As

Publication number Publication date
EP3606073B1 (en) 2023-05-10
US20190297327A1 (en) 2019-09-26
KR102307771B1 (ko) 2021-10-01
CN109561310B (zh) 2022-09-16
EP3606073A1 (en) 2020-02-05
JP6899448B2 (ja) 2021-07-07
JP2020517172A (ja) 2020-06-11
US10827182B2 (en) 2020-11-03
EP3606073A4 (en) 2020-04-22
WO2019062226A1 (zh) 2019-04-04
KR20190132696A (ko) 2019-11-28

Similar Documents

Publication Publication Date Title
CN109561310A (zh) 视频编码处理方法、装置、设备和存储介质
CN108769681A (zh) 视频编码、解码方法、装置、计算机设备和存储介质
CN108769682A (zh) 视频编码、解码方法、装置、计算机设备和存储介质
Paul et al. A long-term reference frame for hierarchical B-picture-based video coding
CN108848376A (zh) 视频编码、解码方法、装置和计算机设备
CN108848380A (zh) 视频编码和解码方法、装置、计算机设备及存储介质
CN106961603B (zh) 帧内编码帧码率分配方法和装置
CN108833918A (zh) 视频编码方法、解码方法、装置、计算机设备及存储介质
CN108833923A (zh) 视频编码、解码方法、装置、存储介质和计算机设备
CN108924553A (zh) 视频编码、解码方法、装置、计算机设备和存储介质
JP6758684B2 (ja) ビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て方法、及びコンピューター機器
CN102857746A (zh) 环路滤波编解码方法及装置
CN108833917A (zh) 视频编码、解码方法、装置、计算机设备和存储介质
CN108848377A (zh) 视频编码、解码方法、装置、计算机设备和存储介质
Shi et al. Adaptive direction search algorithms based on motion correlation for block motion estimation
CN112752106B (zh) 视频图像帧的编码控制方法、装置及计算机存储介质
Lin et al. Latitude-based flexible complexity allocation for 360-degree video coding
CN101179729A (zh) 一种基于帧间模式统计分类的h.264宏块模式选择方法
CN110708551A (zh) 视频编码方法、装置、计算机可读存储介质和计算机设备
CN110099274A (zh) 估计体验的视频质量
Tiwari et al. Competitive equilibrium bitrate allocation for multiple video streams
CN110557621B (zh) 参数获取方法、像素点对选择方法及相关设备
Esmaeeli et al. A content-based intra rate-distortion model for HEVC-SCC
Kim et al. Adaptive mode decision algorithm for inter layer coding in scalable video coding
Kim et al. Power-aware design with various low-power algorithms for an H. 264/AVC encoder

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