CN105872594A - 实时码率调节方法、装置及服务端设备 - Google Patents
实时码率调节方法、装置及服务端设备 Download PDFInfo
- Publication number
- CN105872594A CN105872594A CN201610195615.3A CN201610195615A CN105872594A CN 105872594 A CN105872594 A CN 105872594A CN 201610195615 A CN201610195615 A CN 201610195615A CN 105872594 A CN105872594 A CN 105872594A
- Authority
- CN
- China
- Prior art keywords
- parameter
- bit rate
- frame synchronization
- code check
- currency
- 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 55
- 230000008569 process Effects 0.000 claims abstract description 22
- 230000007704 transition Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000004590 computer program Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000001276 controlling effect Effects 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 241000196324 Embryophyta Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234363—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the spatial resolution, e.g. for clients with a lower screen resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management 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/266—Channel 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/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4305—Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种实时码率调节方法、装置及服务端设备,该方法包括:根据码率调节指令,进行多线程的帧同步;完成帧同步后,获取码率控制逻辑中决定码率大小的参数;计算每一参数在当前码率下的数值作为当前值;根据当前码率与对应码率调节指令的目标码率间的比例关系、及每一参数的当前值,计算对应参数在目标码率下的目标值;修改每一参数的数值等于对应的目标值;根据每一参数的修改后的数值,进行帧同步后的编码处理。本发明码率调节是在编码过程中根据码率调节指令实时进行,进而实现了码率调节的平滑过渡。
Description
技术领域
本发明涉及音、视频编码技术领域,更具体地,涉及一种实时码率调节方法、一种能够实现该种实时码率调节方法的实时码率调节装置、及一种能够实现该种实时码率调节方法的服务端设备。
背景技术
码率也被称之为比特率,指经过编码(压缩)后的音、视频数据每秒需要用多少个比特来表示,即将每秒显示的图像进行压缩后的数据量,一般采用的单位是kbps或者mbps。
目前有恒定码率编码(Constant BitRate,CBR)和可变码率编码(Variable BitRate,VBR)两种编码方式,前者是指码率设定后,文件每秒钟的信息流量即基本固定不变;后者是指文件每秒钟的信息流量是可以变化的,系统可以根据图像数据量改变的大小决定用多大的码率编码,以有效利用空间。
对于CBR和VBR编码方式,均存在根据接收到的码率调节指令进行码率调节的问题,目前在进行码率调节时基本采用停止编码、设置新的码率、以新的码率重新开始编码的方式。该种调节方式对于视频的呈现会出现卡顿现象,无法实现平滑过渡。
发明内容
本发明实施例的一个目的是提供一种码率调节的新的技术方案,以实现不同码率间的平滑过渡。
根据本发明的第一方面,提供了一种实时码率调节方法,其包括:
根据码率调节指令,进行多线程的帧同步;
完成所述帧同步后,获取码率控制逻辑中决定码率大小的参数;
计算每一所述参数在当前码率下的数值作为当前值;
根据所述当前码率与对应所述码率调节指令的目标码率间的比例关系、及每一所述参数的当前值,计算对应参数在目标码率下的目标值;
修改每一所述参数的数值等于对应的目标值;
根据每一所述参数的修改后的数值,进行所述帧同步后的编码处理。
优选的是,所述根据所述当前码率与对应所述码率调节指令的目标码率之间的码率比例关系、及每一所述参数的当前值,计算对应参数在目标码率下的目标值进一步为:
确定每一所述参数的当前值与对应参数的目标值间的比值等于所述目标码率与所述当前码率间的比值。
优选的是,所述参数包括关注时间内的内容复杂度的平均值、及关注时间内处理的比特数。
优选的是,所述码率控制逻辑为基于H264的码率控制逻辑。
优选的是,所述进行多线程的帧同步具体为:
控制每一线程完成当前处理帧的当前逻辑操作。
根据本发明的第二方面,提供了一种实时码率调节装置,其包括:
帧同步模块,用于根据码率调节指令,进行多线程的帧同步;
当前值计算模块,用于在完成所述帧同步后,获取码率控制逻辑中决定码率大小的参数,并计算每一所述参数在当前码率下的数值作为当前值;
目标值计算模块,用于根据所述当前码率与对应所述码率调节指令的目标码率间的比例关系,及每一所述参数的当前值,计算对应参数在目标码率下的目标值;
修改模块,用于修改每一所述参数的数值等于对应的目标值;以及,
编码模块,用于根据每一所述参数的修改后的数值,进行所述帧同步后的编码处理。
优选的是,所述目标值计算模块具体用于确定每一所述参数的当前值与对应参数的目标值间的比值等于所述目标码率与所述当前码率间的比值。
优选的是,所述帧同步模块具体用于控制每一线程完成当前处理帧的当前逻辑操作。
根据本发明的第三方面,提供了一种服务端设备,其包括根据本发明第二方面所述的装置。
根据本发明的第四方面,提供了一种服务端设备,包括存储器和处理器,所述存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行根据本发明第一方面所述的方法。
本发明的发明人发现,在现有技术中,存在进行码率调节需要先停止当前码率下的编码、再以调节后的码率重新编码,进而导致视频呈现出现卡顿的问题。而在本发明中,码率调节是在编码过程中根据码率调节指令实时进行,进而实现了码率调节的平滑过渡。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。
图1是根据本发明实时码率调节方法的一种实施方式的流程图;
图2是根据本发明实时码率调节装置的一种实施结构的方框原理图;
图3是根据本发明服务器设备的一种实施结构的方框原理图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本发明为了解决现有码率调节方法存在的卡顿问题,提供了一种码率调节的新的技术方案,以实现码率调节的平滑过渡。
图1是根据本发明的实时码率调节方法的一种实施方式的流程图。
根据图1所示,本发明方法包括如下步骤:
步骤S101:根据码率调节指令,进行多线程的帧同步。
该码率调节指令可以由视频源提供方、视频平台提供方触发,以使码率与信道容量相匹配,进而获得流畅的视频呈现。
由于编码操作基本是基于多线程的,即在编码时通常同时进行多个帧的逻辑操作处理,例如,第一帧占用第一线程进行预处理操作、第二帧占用第二线程进行决策处理、第三帧占用第三线程进行压缩处理等,因此,在接收到码率调节指令后,需要进行多线程的帧同步,以保证各帧对于码率调节的同步性。
上述进行多线程的帧同步,可以是控制各线程完成当前处理帧的同一逻辑操作,与上述举例说明相对应,即为使得第一帧、第二帧和第三帧均完成压缩处理。
上述进行多线程的帧同步,优选是控制每一线程完成当前处理帧的当前逻辑操作,与上述举例说明相对应,即为第一线程完成第一帧的预处理操作,第二线程完成第二帧的决策处理,第三线程完成第三帧的压缩处理等,这样,在完成码率调节后,便可同步开始各帧的后续编码处理。该种帧同步方式有利于提高码率调节的实时性。
完成上述帧同步后,进行如下的码率调节处理,及进行如下步骤S102至步骤S105。
步骤S102:获取码率控制(Rate control,RC)逻辑中决定码率大小的参数。
不同的码率控制逻辑,被设置为决定码率大小的参数可能会有所不同,特别是决定码率大小的所占权重较大的关键参数。对于大多数码率控制逻辑,基本会有以下两个参数参与码率的确定,即关注时间内的内容复杂度的平均值及关注时间内处理的比特数,特别是基于H264的码率控制逻辑,此两个参数将作为上述关键参数起作用。因此,在本发明的一个具体实施例中,采用基于H264的码率控制逻辑进行码率调节,并将关注时间内的内容复杂度的平均值、及关注时间内处理的比特数设定为是决定码率大小的参数。
上述关注时间取决于采用的码率控制逻辑,具体地,码率控制逻辑会设定关注时间,以在进行当前码率控制时关注当前时间以前的设定时间段的编码信息。例如,对于全局关注设定,该关注时间即为从开始编码至开始调节码率的全局时间段;对于1s关注设定,该关注时间即为开始调节码率前1s的时间段。
步骤S103:计算每一参数在当前码率下的数值作为当前值。
步骤S104:根据当前码率与对应码率调节指令的目标码率间的比例关系、及每一参数的当前值,计算对应参数在目标码率下的目标值。
该步骤是根据以目标码率进行之前的编码处理与以当前码率进行之前的编码处理间的差异,进行每一参数的目标值的预测,该步骤可进一步包括:
步骤S1041:根据当前码率与目标码率间的比值,映射每一参数的当前值与对应参数的目标值间的比值。
上述映射关系可以是,每一参数的当前值与对应参数的目标值间的比值均等于当前码率与目标码率间的比值,即:
CA/TA=R/R′,其中,CA为参数A的当前值,TA为参数A的目标值,R为当前码率,R′为目标码率。
以将码率从3mbps调节为1.5mbps的应用为例,TA=1/2CA。
上述映射关系也可以是,每一参数的当前值与对应参数的目标值间的比值,等于对应参数的权重系数乘以目标码率与当前码率间的比值,即:
CA/TA=αAR/R′,其中,αA为参数A的权重系数,取值为大于0,小于等于1,参数A对码率大小的影响越大,权重系数αA越大。
步骤S1042:根据每一参数的当前值与对应参数的目标值间的比值、及对应参数的当前值,计算对应参数的目标值。
步骤S105:修改每一所述参数的数值等于对应的目标值,完成实时码率调节。
步骤S106:完成实时码率调节后,根据每一参数的修改后的数值,进行所述帧同步后的编码处理。
由于该目标值是根据以目标码率进行之前的编码处理得到的预测值,因此,在根据每一参数的修改后的数值进行帧同步后的编码处理时,码率将快速收敛至目标码率,进而实现了在编码过程中进行码率平滑过渡调节的目的。
本发明还提供了一种实时码率调节装置,图2示出了该装置的一种实施结构的方框原理图。
根据图2所示,该装置200包括帧同步模块201、当前值计算模块202、目标值计算模块203、修改模块204和编码模块205。
上述帧同步模块201用于根据码率调节指令,进行多线程的帧同步。
上述当前值计算模块202用于在完成所述帧同步后,获取码率控制逻辑中决定码率大小的参数,并计算每一所述参数在当前码率下的数值作为当前值。
上述目标值计算模块203用于根据所述当前码率与对应所述码率调节指令的目标码率间的比例关系、及每一所述参数的当前值,计算对应参数在目标码率下的目标值。
上述修改模块204用于修改每一所述参数的数值等于对应的目标值。
上述编码模块205用于根据每一所述参数的修改后的数值,进行所述帧同步后的编码处理。
上述目标值计算模块203可具体用于确定每一所述参数的当前值与对应参数的目标值间的比值等于所述目标码率与所述当前码率间的比值。
上述帧同步模块201可具体用于控制每一线程完成当前处理帧的当前逻辑操作。
上述当前值计算模块202可具体用于获取至少以下两个参数,即关注时间内的内容复杂度的平均值、及关注时间内处理的比特数。进一步地,上述当前值计算模块202对应的码率控制逻辑具体可为基于H264的码率控制逻辑。
本发明还提供了一种服务端设备,在一方面,该服务器设备包括上述的实时码率调节装置200。
图3是根据本发明另一方面的服务端设备的一种实施结构的方框原理图。
根据图3所示,该服务端设备包括存储器301和处理器302,该存储器301用于存储指令,该指令用于控制处理器302进行操作以执行上述实时码率调节方法。
除此之外,根据图3所示,该服务端设备还可以包括接口装置303、输入装置304、显示装置305、通信装置306等等。尽管在图3中示出了多个装置,但是,本发明可以仅涉及其中的部分装置,例如,处理器301和存储器302等。
上述通信装置306例如能够进行有有线或无线通信。
上述接口装置303例如包括USB接口、RS232接口、RS485接口等。
上述输入装置304例如可以包括触摸屏、按键等。
上述显示装置305例如是液晶显示屏、触摸显示屏等。
上述各实施例主要重点描述与其他实施例的不同之处,但本领域技术人员应当清楚的是,上述各实施例可以根据需要单独使用或者相互结合使用。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分相互参见即可,每个实施例重点说明的都是与其他实施例的不同之处,但本领域技术人员应当清楚的是,上述各实施例可以根据需要单独使用或者相互结合使用。另外,对于装置实施例而言,由于其是与方法实施例相对应,所以描述得比较简单,相关之处参见方法实施例的对应部分的说明即可。以上所描述的系统实施例仅仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是物理上分开的。
本发明可以是装置、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是--但不限于--电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言-诸如Smalltalk、C++等,以及常规的过程式编程语言-诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络-包括局域网(LAN)或广域网(WAN)-连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。
Claims (10)
1.一种实时码率调节方法,其特征在于,包括:
根据码率调节指令,进行多线程的帧同步;
完成所述帧同步后,获取码率控制逻辑中决定码率大小的参数;
计算每一所述参数在当前码率下的数值作为当前值;
根据所述当前码率与对应所述码率调节指令的目标码率间的比例关系、及每一所述参数的当前值,计算对应参数在目标码率下的目标值;
修改每一所述参数的数值等于对应的目标值;
根据每一所述参数的修改后的数值,进行所述帧同步后的编码处理。
2.根据权利要求1所述的方法,其特征在于,所述根据所述当前码率与对应所述码率调节指令的目标码率之间的码率比例关系、及每一所述参数的当前值,计算对应参数在目标码率下的目标值进一步为:
确定每一所述参数的当前值与对应参数的目标值间的比值等于所述当前码率与所述目标码率间的比值。
3.根据权利要求1所述的方法,其特征在于,所述参数包括关注时间内的内容复杂度的平均值、及关注时间内处理的比特数。
4.根据权利要求3所述的方法,其特征在于,所述码率控制逻辑为基于H264的码率控制逻辑。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述进行多线程的帧同步具体为:
控制每一线程完成当前处理帧的当前逻辑操作。
6.一种实时码率调节装置,其特征在于,包括:
帧同步模块,用于根据码率调节指令,进行多线程的帧同步;
当前值计算模块,用于在完成所述帧同步后,获取码率控制逻辑中决定码率大小的参数,并计算每一所述参数在当前码率下的数值作为当前值;
目标值计算模块,用于根据所述当前码率与对应所述码率调节指令的目标码率间的比例关系、及每一所述参数的当前值,计算对应参数在目标码率下的目标值;
修改模块,用于修改每一所述参数的数值等于对应的目标值;以及,
编码模块,用于根据每一所述参数的修改后的数值,进行所述帧同步后的编码处理。
7.根据权利要求6所述的装置,其特征在于,所述目标值计算模块具体用于确定每一所述参数的当前值与对应参数的目标值间的比值等于所述目标码率与所述当前码率间的比值。
8.根据权利要求6或7所述的装置,其特征在于,所述帧同步模块具体用于控制每一线程完成当前处理帧的当前逻辑操作。
9.一种服务端设备,其特征在于,包括权利要求6、7或8所述的装置。
10.一种服务端设备,包括存储器和处理器,其特征在于,所述存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行根据权利要求1至5中任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610195615.3A CN105872594A (zh) | 2016-03-30 | 2016-03-30 | 实时码率调节方法、装置及服务端设备 |
PCT/CN2016/088948 WO2017166487A1 (zh) | 2016-03-30 | 2016-07-06 | 实时码率调节方法、装置及服务端设备 |
US15/246,294 US20170289550A1 (en) | 2016-03-30 | 2016-08-24 | Method and apparatus adjusting a bitrate in real time, and server device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610195615.3A CN105872594A (zh) | 2016-03-30 | 2016-03-30 | 实时码率调节方法、装置及服务端设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105872594A true CN105872594A (zh) | 2016-08-17 |
Family
ID=56626638
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610195615.3A Pending CN105872594A (zh) | 2016-03-30 | 2016-03-30 | 实时码率调节方法、装置及服务端设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105872594A (zh) |
WO (1) | WO2017166487A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106254875A (zh) * | 2016-09-30 | 2016-12-21 | 邦彦技术股份有限公司 | 一种编码器及控制方法 |
CN108401159A (zh) * | 2017-02-07 | 2018-08-14 | 腾讯科技(深圳)有限公司 | 一种目标码率控制的方法以及电子设备 |
WO2019007149A1 (zh) * | 2017-07-06 | 2019-01-10 | 腾讯科技(深圳)有限公司 | 一种数据编码方法、装置、终端设备及计算机可读存储介质 |
CN115002513A (zh) * | 2022-05-25 | 2022-09-02 | 咪咕文化科技有限公司 | 音视频调度方法、装置、电子设备及计算机可读存储介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113747202B (zh) * | 2021-08-05 | 2023-09-15 | 杭州网易智企科技有限公司 | 一种通过带宽估计发送数据的方法、装置、设备及介质 |
CN116016924A (zh) * | 2022-12-29 | 2023-04-25 | 杭州海康威视数字技术股份有限公司 | 一种视频数据的编码方法、装置及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101510998A (zh) * | 2009-02-24 | 2009-08-19 | 山东大学 | 用于无线视频监控系统数据传输的自适应流量控制方法 |
US20100005186A1 (en) * | 2008-07-04 | 2010-01-07 | Kddi Corporation | Adaptive control of layer count of layered media stream |
CN102067610A (zh) * | 2008-06-16 | 2011-05-18 | 杜比实验室特许公司 | 基于视频编码的切片依赖性的码率控制模型适配 |
CN104902275A (zh) * | 2015-05-29 | 2015-09-09 | 宁波菊风系统软件有限公司 | 一种控制视频通信质量甜点的方法 |
CN105379261A (zh) * | 2013-04-23 | 2016-03-02 | 古如罗技微系统公司 | 服务器节点装置与方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6330286B1 (en) * | 1999-06-09 | 2001-12-11 | Sarnoff Corporation | Flow control, latency control, and bitrate conversions in a timing correction and frame synchronization apparatus |
US7869503B2 (en) * | 2004-02-06 | 2011-01-11 | Apple Inc. | Rate and quality controller for H.264/AVC video coder and scene analyzer therefor |
CN102036062B (zh) * | 2009-09-29 | 2012-12-19 | 华为技术有限公司 | 视频编码方法、装置及电子设备 |
CN102752598A (zh) * | 2012-07-09 | 2012-10-24 | 北京博雅华录视听技术研究院有限公司 | 快速自适应码率控制方法 |
CN102932641B (zh) * | 2012-11-13 | 2016-04-06 | 北京大学 | 一种恒定质量码率控制方法 |
CN103686221B (zh) * | 2013-12-31 | 2017-02-01 | 北京大洋润博科技有限公司 | 一种适应公用无线网络实现音视频流畅播出的方法 |
CN105263066A (zh) * | 2014-06-13 | 2016-01-20 | 珠海全志科技股份有限公司 | 移动设备视频流传输控制方法及系统 |
-
2016
- 2016-03-30 CN CN201610195615.3A patent/CN105872594A/zh active Pending
- 2016-07-06 WO PCT/CN2016/088948 patent/WO2017166487A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102067610A (zh) * | 2008-06-16 | 2011-05-18 | 杜比实验室特许公司 | 基于视频编码的切片依赖性的码率控制模型适配 |
US20100005186A1 (en) * | 2008-07-04 | 2010-01-07 | Kddi Corporation | Adaptive control of layer count of layered media stream |
CN101510998A (zh) * | 2009-02-24 | 2009-08-19 | 山东大学 | 用于无线视频监控系统数据传输的自适应流量控制方法 |
CN105379261A (zh) * | 2013-04-23 | 2016-03-02 | 古如罗技微系统公司 | 服务器节点装置与方法 |
CN104902275A (zh) * | 2015-05-29 | 2015-09-09 | 宁波菊风系统软件有限公司 | 一种控制视频通信质量甜点的方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106254875A (zh) * | 2016-09-30 | 2016-12-21 | 邦彦技术股份有限公司 | 一种编码器及控制方法 |
CN108401159A (zh) * | 2017-02-07 | 2018-08-14 | 腾讯科技(深圳)有限公司 | 一种目标码率控制的方法以及电子设备 |
CN108401159B (zh) * | 2017-02-07 | 2022-07-08 | 腾讯科技(深圳)有限公司 | 一种目标码率控制的方法以及电子设备 |
WO2019007149A1 (zh) * | 2017-07-06 | 2019-01-10 | 腾讯科技(深圳)有限公司 | 一种数据编码方法、装置、终端设备及计算机可读存储介质 |
US11363263B2 (en) | 2017-07-06 | 2022-06-14 | Tencent Technology (Shenzhen) Company Limited | Data coding method and apparatus, terminal device, and computer-readable storage medium |
CN115002513A (zh) * | 2022-05-25 | 2022-09-02 | 咪咕文化科技有限公司 | 音视频调度方法、装置、电子设备及计算机可读存储介质 |
CN115002513B (zh) * | 2022-05-25 | 2023-10-20 | 咪咕文化科技有限公司 | 音视频调度方法、装置、电子设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2017166487A1 (zh) | 2017-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105872594A (zh) | 实时码率调节方法、装置及服务端设备 | |
CN105872595A (zh) | 转码任务分配方法及装置 | |
CN107302694B (zh) | 通过虚拟现实设备呈现场景的方法、设备及虚拟现实设备 | |
US10321179B2 (en) | System and monitoring of video quality adaptation | |
US11094220B2 (en) | Intelligent augmented reality for technical support engineers | |
CN108260018A (zh) | 网页视频的全屏设置方法、设备及移动设备 | |
CN105760066B (zh) | 一种页面更新方法及装置 | |
CN105938429A (zh) | 用于快速认知移动应用评论的方法和系统 | |
CN106782260A (zh) | 用于虚拟现实运动场景的显示方法及装置 | |
CN106982249A (zh) | 多线程分段下载方法、设备、客户端设备及电子设备 | |
CN110377340A (zh) | 运算方法、装置及相关产品 | |
JP2017507626A5 (zh) | ||
US10205791B2 (en) | Method and system for speed and directional control of responsive frame or asset | |
CN110442316A (zh) | 图像显示方法、装置以及计算机可读存储介质 | |
CN109032339A (zh) | 一种实时智能体感同步的方法及系统 | |
CN107728986A (zh) | 一种双显示屏的显示方法以及显示装置 | |
CN106814993A (zh) | 确定任务调度时间的方法、确定任务执行时间的方法和设备 | |
CN107479692A (zh) | 虚拟现实场景的控制方法、设备及虚拟现实设备 | |
CN108734774B (zh) | 虚拟肢体构建方法及装置、人机交互方法 | |
CN106028139A (zh) | 降帧率的实时转码方法和装置 | |
CN105955686A (zh) | 一种安卓设备的分辨率切换方法及安卓设备 | |
US11195498B2 (en) | Compensating for latency in a streaming virtual reality environment | |
CN108345844A (zh) | 控制无人机拍摄的方法及装置、虚拟现实设备及系统 | |
CN106385577A (zh) | 一种在恢复模式下的分屏显示方法、装置及虚拟现实设备 | |
CN107506126A (zh) | 动态数据显示方法和装置、计算设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160817 |
|
WD01 | Invention patent application deemed withdrawn after publication |