管理用于并行转码的编码器参数的制作方法

文档序号:7776774阅读:228来源:国知局
管理用于并行转码的编码器参数的制作方法
【专利摘要】本发明涉及管理用于并行转码的编码器参数,其中,公开了针对对比特流进行并行转码的各种实施方式。比特流可被分割成多个段,其中,多个转码器并行地对段中的至少一部分进行编码。如果使用可变的比特率(BR)编码进行编码,各个编码器可对段进行编码并且改变用于该段的BR。将测量的平均BR与目标平均BR进行比较以确定是否调整视频质量水平(VQL)或者任何其他的编码器参数。使用可变的BR编码可保持相对恒定的主观质量,同时实现目标平均BR。当使用恒定的BR编码时,编码器使用VQL或者其他编码器参数来实现相对恒定的主观质量。例如,可在相邻编码段之间实现相对连续的量化参数。
【专利说明】管理用于并行转码的编码器参数
【技术领域】
[0001]本申请是发明申请,其要求于2012年11月19日提交的序列编号为61/727,919的题为“管理用于并行转码的编码器参数”的联合未决的美国临时专利申请的优先权,该美国临时专利申请不失其完整性地通过弓I用并入本文。
【背景技术】
[0002]诸如电影、电视秀、音乐等媒体项目可以各种文件格式数字储存为媒体文件。回放这些媒体文件的媒体设备可能受到由媒体设备支持的文件格式组的限制。例如,媒体设备可能不支持诸如高清晰度、高帧速率、各种压缩格式等特定的格式。为成功地在这样的设备中回放媒体文件,可能需要对媒体文件进行转码。转码是一种涉及将文件从一种格式转换成另一种格式的过程。转码可包括将媒体文件的各个图片或者音频帧完全解码成原格式、通过执行若干具体操作来处理原格式、并且将原格式编码成目标格式。媒体设备可具有有限的储存容量,并且希望将媒体文件转码成具有更小文件大小的格式。通过对媒体文件进行转码,媒体文件可从不被支持的文件格式转换成被支持的文件格式。媒体文件可从较大的文件大小转换成较小的文件大小,或者可以其他方式经过另一类型的转换。

【发明内容】

[0003]根据本发明的一个方面,提出了一种系统,包括:存储器,用于存储媒体文件;多个转码器,多个转码器被配置为通过执行相应的转码处理来并行地对媒体文件的至少一部分进行转码,相应的转码处理包括根据相应的量化参数(QP)对媒体文件的部分进行编码;转码管理器,被配置为将媒体文件分割成多个段,并且将所分割的多个段的相应段发送给多个转码器中的相应转码器,从而产生对应的输出段,转码管理器进一步被配置为指示接收所分割的多个段的相应转码器使相应的QP近似收敛至预定的最终QP,预定的最终QP包括预定的QP范围或者预定的QP值。
[0004]根据本发明的该方面的一个实施方式,其中,转码管理器进一步被配置为初始化用于对应转码器处理的相应QP。
[0005]根据本发明的该方面的一个实施方式,其中,多个段包括第一段和第二段,在呈现顺序中第二段紧随第一段之后,其中,转码管理器进一步被配置为至少基于用于第二段的初始化QP来确定用于第一段的预定的最终QP。
[0006]根据本发明的该方面的一个实施方式,其中,多个转码器被配置为将相应的QP报
告给转码管理器。
[0007]根据本发明的该方面的一个实施方式,其中,转码管理器进一步被配置为对预定的最终QP进行调整。
[0008]根据本发明的另一方面,提出了一种方法,包括:将比特流分割成多个段;将多个段分配给多个转码器,多个转码器被配置为并行地对多个段中的至少一部分进行编码,多个转码器被配置为对相应的段进行编码并且确定用于相应段的相应比特率;对多个段中的至少一部分的平均比特率进行确定;并且将平均比特率与目标平均比特率进行比较,以确定是否调整与编码多个段相关联的视频质量水平。
[0009]根据本发明的该另一方面的一个实施方式,其中,多个编码器被配置为通过确定用于相应段的QP来对相应的段进行编码。
[0010]根据本发明的该另一方面的一个实施方式,其中,多个编码器进一步被配置为根据视频质量水平来调整用于相应段的QP。
[0011]根据本发明的该另一方面的一个实施方式,其中,视频质量水平至少基于额定的QP值。
[0012]根据本发明的该另一方面的一个实施方式,其中,确定多个段中的至少一部分的平均比特率包括根据平均窗口来确定平均比特率。
[0013]根据本发明的该另一方面的一个实施方式,其中,多个转码器进一步被配置为将相应段的相应比特率报告给转码管理器。
[0014]根据本发明的又一方面,提出了一种系统,包括:转码管理器,被配置为:将媒体文件进行分段以产生第一段和第二段;启动第一编码器来处理第一段;启动第二编码器来处理第二段以并行地与第一段进行编码;向第一段和第二段分配视频质量水平,从而在第一段与第二段之间保持相对恒定的视频质量水平。
[0015]根据本发明的又一方面的一个实施方式,其中,转码管理器进一步被配置为:将媒体文件进行分段以产生第三段,在呈现顺序中第三段紧随第二段之后;开始对第三段进行编码;以及调整用于第三段的视频质量水平,从而在第二段与第三段之间保持相对恒定的视频质量水平。
[0016]根据本发明的又一方面的一个实施方式,其中,转码管理器进一步被配置为:至少基于媒体文件的一部分来确定平均比特率,媒体文件的部分包括第一段和第二段;将平均比特率与目标平均比特率进行比较,以确定是否调整用于第三段的视频质量水平。
[0017]根据本发明的又一方面的一个实施方式,其中,确定平均比特率包括确定短期平均比特率,其中,转码管理器进一步被配置为确定长期平均比特率,以确定是否调整用于第三段的视频质量水平。
[0018]根据本发明的又一方面的一个实施方式,其中,调整视频质量水平包括调整用于第三段的量化参数(QP)值、QP范围、或者额定QP值中的至少一项。
[0019]根据本发明的又一方面的一个实施方式,其中,转码管理器包括控制回路以确定是否调整用于第三段的视频质量水平。
[0020]根据本发明的又一方面的一个实施方式,其中,分配视频质量水平包括为第一段和第二段分配QP值、QP范围、或者额定QP值中的至少一项。
[0021]根据本发明的又一方面的一个实施方式,其中,第一编码器和第二编码器被配置为执行可变的比特率编码。
[0022]根据本发明的又一方面的一个实施方式,其中,第一编码器和第二编码器被配置为执行恒定的比特率编码。
【专利附图】

【附图说明】
[0023]参照下列附图将能够更好地理解本公开的许多方面。附图中的部件不一定按比例绘制,而是强调清晰地示出本公开的基本原理。而且,在附图中,类似参考标号表示贯穿几幅示图中的对应部分。
[0024]图1是根据本公开的各种实施方式的转码系统的示例的附图。
[0025]图2是根据各种实施方式的图1中转码系统内输入媒体文件的示例的图示。
[0026]图3是根据各种实施方式的图1中转码系统内输入媒体文件的示例的图示。
[0027]图4是根据本公开的各种实施方式的在图1中的转码系统内实施的转码管理器的操作的示例的图示。
[0028]图5是根据本公开的各种实施方式的图1中转码系统的操作的示例的图示。
[0029]图6是根据本公开的各种实施方式的图1中转码系统的操作的示例的图表。
[0030]图7是根据本公开的各种实施方式的被实施为图1中转码管理器的一部分的功能的示例的流程图。
[0031]图8是示出了根据本公开的各种实施方式的实施为图1中转码管理器的另一部分的功能的示例的流程图。
[0032]图9A和图9B是根据本公开的各种实施方式的图1中转码系统的操作的示例的图
/Jn ο
[0033]图10是示出了根据本公开的各种实施方式的实施为图1中转码管理器的另一部分的功能的示例的流程图。
【具体实施方式】
[0034]本公开涉及对媒体文件的转码以产生转码的媒体文件。诸如视频、图像、图片、图表、电视秀、电影、歌曲、音频内容、音频书等媒体项目可以各种格式或者组合格式储存为数字文件。例如,可根据具体标准、文件格式、帧速率、媒体质量、或者用于储存数字媒体文件的任何其他格式来编码媒体文件。以原始格式储存的媒体文件可能不适合在特定的媒体设备中呈现,或者原始格式的媒体文件可能太大以至于不能储存在特定的媒体设备中,或者出于某种原因,可能希望减小媒体文件的大小。因此,需要格式转换来修改媒体文件,从而在目标媒体设备中可呈现媒体文件,或者减小媒体文件的大小,从而使得媒体文件适合储存在或者传输给目标媒体设备。转码可用于将文件从一种格式转换成另一种格式。在其他实施方式中,转码包括将媒体文件完全解码成原格式、通过执行若干具体操作来处理原格式、并且将原格式编码成目标格式。可选地,可使用无需将媒体文件完全解码的转码。
[0035]本公开的各种实施方式旨在采用一组并行转码的设备以对媒体文件进行转码。媒体文件可被格式化为被分割成多个段的比特流格式。每段均可被分配给可用的转码设备以产生对应的输出段。将输出段进行编码,然后接合在一起,从而产生作为转码版本的媒体文件的输出文件。本公开的各种实施方式旨在管理诸如量化参数(QP)等编码器参数,以使各个并行转码器产生在质量方面统一的输出文件。如果输出段的边界对应于相对不连续的QP,则输出媒体文件可具有相对较低的主观质量。即,如果QP在相差较大的变化值之间跳跃,则回放输出媒体文件的观察者可观察到视觉伪像。本公开旨在管理QP以在并行转码处理中实现相对较高的主观质量。可在恒定的比特率系统内,或者可选地,在可变的比特率系统内管理QP。恒定的比特率系统是一种可使用以恒定的速率从比特率缓冲器中输出比特的编码处理的系统。在这方面,每单位时间的比特数是恒定值。在可变的比特率系统中,以可变的速率从比特率缓冲器中输出比特。
[0036]在使用恒定的比特率系统或者可变的比特率系统的一些实施方式中,各个转码器设备的QP被配置为大约收敛至一特定的QP范围或者值,从而实现在相邻的段之间的相对连续的QP。可基于呈现顺序中后续段的初始QP来确定特定QP范围。可选地,可基于特定QP范围来确定呈现顺序中后续段的初始QP。因此,QP的不连续程度可被降低或者最小化。
[0037]在又一种使用恒定的比特率系统或者可变的比特率系统的其他实施方式中,通过利用一视频质量水平初始化各个编码处理可在输出段的边界处维持具有相对恒定的主观视频质量。根据该视频质量水平,各个编码器可选择一个合适的QP或者任何其他的编码器参数来实现该视频质量水平。在这方面,各个编码器可独立于其他编码器的QP地改变其相应的QP。此外,为了维持目标平均比特率(BR),可以调整该视频质量水平。例如,指定一个编码器来增加视频质量水平可使得该编码器降低其QP。因此,视频质量水平可基于至少一个QP值。
[0038]在使用可变比特率系统的实施方式中,可在管理用于各个转码处理的QP的同时维持平均比特率(BR)。在这种情况下,视频质量水平可用于在缓慢地改变QP的同时实现目标平均BR。通过缓慢地改变QP,可在相邻的段之间产生相对连续的QP,同时维持目标平均BR。
[0039]转向图1,图1是根据本公开的各种实施方式的转码系统100的示例的附图。转码系统100可实施为被配置成处理媒体文件的机顶盒(STB)、媒体服务器、电视或者另一计算设备中的至少一部分。转码系统100包括源记忆储存器112、目的记忆储存器118、转码管理器123、多个转码器设备134a-n、以及多路复用器(mux) 143。
[0040]源记忆储存器112的非限制性示例是磁带、软磁盘、磁性硬驱动、记忆卡、固态驱动、USB闪存驱动、光盘、或者随机存取存储器(RAM),其中随机存取存储器(RAM)包括,例如,静态随机存取存储器(SRAM)和动态随机存取存储器(DRAM)、或者磁性随机存取存储器(MRAM)。此外,源记忆储存器112可以是只读存储器(ROM)、可编程的只读存储器(PROM)、可擦除可编程只读存储器(EPR0M)、电可擦除可编程只读存储器(EEPROM)或者其他类型的存储器设备。
[0041]源记忆储存器112被配置为储存输入媒体文件115。输入媒体文件115可表现为音频和/或视频节目,例如,电视秀、电影、歌曲、音频书等。源记忆储存器112可实施为用于储存广播媒体的STB的一部分。因此,输入媒体文件115可以是经由网络输送给STB的节目。
[0042]目的记忆储存器118可包括例如磁带、软磁盘、磁性硬驱动、记忆卡、固态驱动、USB闪存驱动、光盘、或者随机存取存储器(RAM),其中随机存取存储器(RAM)包括例如静态随机存取存储器(SRAM)和动态随机存取存储器(DRAM)、或者磁性随机存取存储器(MRAM)。此外,目的记忆储存器118可以是只读存储器(ROM)、可编程的只读存储器(PR0M)、可擦除可编程只读存储器(EPR0M)、电可擦除可编程只读存储器(EEPROM)或者其他类型的存储器设备。
[0043]目的记忆储存器118被配置为储存可包括输入媒体文件115的转码版本的输出媒体文件121。因此,输出媒体文件121表达与输入媒体文件115大致相同的内容。输出媒体文件121可表达输入媒体文件115的子集内容。然而,输出媒体文件121以不同于输入媒体文件115的格式的格式进行编码。虽然具有不同比特率或者文件大小,但不同格式的输出媒体文件121可符合与输入媒体文件115相同的标准。目的记忆储存器118可在与包括源记忆储存器112的媒体设备分离的媒体设备中实施。例如,源记忆储存器112可实施为STB的一部分,并且目的记忆储存器118可以是诸如被配置为将输出媒体文件121呈现给用户的计算设备等远程媒体设备。例如,媒体设备可以是膝上型计算机、桌上型计算机、记事本、笔记本、超薄本、写字板、蜂窝式电话、个人数字助理(PDA)、STB、数字摄像机、便携式媒体播放器、或者被配置为回放媒体文件的任何其他计算设备。可选地,目的记忆储存器118可在与包括源记忆储存器112的媒体设备相同的媒体设备中实施。
[0044]转码管理器123被配置为管理输入媒体文件115的转码。在各种实施方式中,转码管理器123实施为微处理器的至少一部分。转码管理器123可包括一个或者多个电路、一个或者多个微处理器、或者其任何组合。在又一实施方式中,转码管理器123可包括在一个或者多个处理电路中执行的一个或者多个软件模块。转码管理器123可进一步包括计算机可读介质。计算机可读介质可储存指令和/或代码,从而致使转码管理器123管理转码系统100中的转码操作。
[0045]转码管理器123可检索输入媒体文件115并且准备用于转码的输入媒体文件115。例如,转码管理器123处理作为数字比特流的输入媒体文件115并且将该比特流的若干段分配给各种转码器设备134a-n。例如,转码管理器123在不指定该流中的段长度或者末端点的情况下可将作为流的一个段发送给转码器设备134a-n。当转码器设备134a_n接近完成转码处理或者已经完成转码处理时,转码器设备134a-n可指示转码管理器123停止馈给输入段流。可选地,转码管理器123可分配作为流的输入段,同时指定默认或者额定的长度/末端点。转码管理器123还被配置为通过管理一个或者多个转码器参数来监控各个转码器设备134a_n。
[0046]转码管理器123可被配置为启动用于对输入媒体文件115进行转码的一个或者多个转码器过程。各个转码器过程可同时执行以并行处理输入媒体文件115的若干部分。转码管理器123可被配置为通过利用一种或者多个转码器设备134a-n来启动一个或者多个转码处理。此外,转码管理器123可操作用于对转码器设备134a-n的输出进行排序的mux 143,以产生输出媒体文件121。
[0047]muxl43被配置为处理各个转码器设备134a_n的输出。muxl43还可组合各个输出以产生输出媒体文件。输出媒体文件121然后被写入目的记忆储存器118。在各种实施方式中,muX143通信耦接到存储缓冲器以将转码器设备输出储存在队列中。
[0048]转码系统100包括多个转码器设备134a_n。各个转码器设备134a_n均被配置为处理输入媒体文件115的若干部分以执行并行转码。转码器设备134a-n执行一个或者多个转码器处理。在这方面,转码器设备134a-n可被配置为并行执行多个转码器处理以同时转码各个输入。各个转码器设备134a-n可以是视频转码器或者音频转码器。在各种实施方式中,各个转码器设备134a-n实施为微处理器的至少一部分。各个转码器设备134a_n可包括一个或者多个电路、一个或者多个微处理器、或者其任何组合。因此,通过一个电路和/或微处理器或者通过多个电路和/或微处理器可实施各种转码器设备134a-n,从而使得转码器设备134a-n的功能分布在一个或者多个电路和/或一个或者多个微处理器。在又一实施方式中,各个转码器设备134a-n可包括在一个或者多个处理电路中可执行的一个或多个软件模块。各个转码器设备134a-n可进一步包括计算机可读介质。计算机可读介质可储存指令和/或代码,从而使转码器设备134a-n对输入媒体文件115的若干部分进行转码。
[0049]各个转码器设备134a_n被配置为接收输入媒体文件115的一个段并且产生对应的输出段。因此,输出段是输入段的一种转码形式。各个转码器设备134a-n包括相应控制器149、相应解码器153、相应处理器156、以及相应编码器158。
[0050]用于各个转码器设备134a_n的控制器149提供转码器设备134a_n与转码管理器123之间的接口。例如,控制器149可支持启用或者禁用转码器设备134a-n。控制器149可将转码器设备134a-n的转码处理指示给转码管理器123。控制器149还可保持指示被调度为由转码器设备134a-n执行的工作量的转码器设备134a_n的工作负荷队列。例如,转码处理可指示转码器是否繁忙。
[0051]各个转码器设备134a_n的解码器153被配置为将接收的输入解码和/或解压成原格式。例如,视频转码器设备134a-n的解码器153部分可将输入媒体文件段转换成原像素数据。
[0052]每个转码器134a_n的处理器156被配置为处理解码器153的原始输出。对于视频转码器设备134a-n,处理器156是可执行像素处理功能的像素处理器。像素处理的非限制性示例是图片尺寸调节、隔行(interlace) /去隔行(de-1nterlace)、色彩空间转换、降噪和图像增强。像素处理可包括改变格式。例如,格式变化可以使向或从高清晰度(HD)和不同的清晰度的转换、向或从标准清晰度(SD)和不同的清晰度的转换、从3D到2D的转换、去隔行等。在处理器156接收解码的输入媒体文件段并且处理输入媒体文件段之后,处理器156将作为输出段的处理后的输入媒体文件段发送给编码器158。
[0053]用于各个转码器设备134a_n的编码器158被配置为通过将已处理的输入媒体文件段编码成目标格式来编码已处理的输入媒体文件段。对于视频转码器134a-n,编码器158根据可被配置为可变的量化参数(QP) 159和比特率(BR) 162来编码各个输出段。编码器158可包括诸如用于累加编码位的先进先出(FIFO)缓冲器等缓冲器。缓冲器的输出是特征在于BR162和QP159的比特流。BR可被定义为将从缓冲器传输的比特的速率并且可表示为每单位时间的比特。在媒体文件的编码过程中,一个或者多个图片中的内容和/或视频的完整性动态地影响合适的BR162。编码器158可改变BR162以确保缓冲器并不达到下溢和/或上溢的状态。编码器158还可改变BR162以确保比特流符合特定的视频标准,实现特定的平均BR,视频质量或者其任何组合最大化。编码器158还可改变QP159,从而控制在编码器158的输出中表不的质量程度。
[0054]尽管各个转码器设备134a_n的编码器158可动态地调整QP159,然而,转码管理器123还可控制用于各个编码器158的QP159。在各种实施方式中,转码管理器123将各个QP159初始化为初始值,以控制从一个段到下一段的各个QP159的统一性。各个段中QP159的初始值可能不同。转码管理器123可强制或者另外指示各个编码器158的QP159收敛到预定的QP范围。施加到一个段中的预定QP范围可基于呈现顺序中后续段的初始QP值。在这方面,指示编码器158使与一个段的末端相关联的QP159近似落在预定QP范围内。
[0055]在其他实施方式中,转码管理器123指向QP159,同时维持转码器设备134a_n上的目标平均BR。在这种情况下,转码管理器123将一额定的QP值分配给一个或者多个编码器158,从而在输出媒体文件121的段边界处实现相对连续的QP159。如此分配的额定QP值可在段之间不同。额定QP值可作为基准值。只要在该段末端编码器158试图返回到额定QP,编码器158可偏离额定的QP。由转码管理器123分配的额定QP值的变化率可能受到预定最大速率的限制。通过缓慢改变额定的QP,可维持相邻输出段之间相对连续的QP159。转码管理器123可响应于给定平均函数的平均BR与目标平均BR进行的比较,将一额定QP分配给一个或者多个转码器设备134a-n。可选地,通过测量输出文件的比特率、或者用于确定比特流的一部分的BR任何其他函数,可使用递归滤波器来确定平均BR。转码管理器123可确定用于一组后续输出段的平均BR,其中,输出段在呈现顺序中是连续的。然后,转码管理器123可根据平均窗口确定平均BR,其中,平均窗口表示为覆盖该组输出段的时间长度。转码管理器123可确定较长期的平均BR,例如,5分钟之内的平均,并且可确定较短期的平均BR,例如,30秒内的平均,并且使用两种测量来控制并行转码系统中比特的产生速率。如果平均BR不同于目标平均BR,则转码管理器123可调整用于一个或者多个转码器设备134a-n的额定QP,从而使得平均BR指向目标平均BR。由此,转码管理器123将BR指向目标平均BR,同时缓慢地改变QP159,从而在输出段的边界处实现相对连续的QP。
[0056]在其他实施方式中,转码管理器123指定用于各个编码器158的视频质量水平,从而在整个并行编码过程中的输出段之间实现相对恒定的主观视频质量。在这种情况下,只要编码器158大致实现指定的视频质量水平,各编码器158可根据任一 QP159来编码相应的输出段。如果转码管理器123确定应当对比特流的平均BR进行调整以满足目标平均BR,则转码管理器123可调整视频质量水平。转码管理器123可命令编码器158中的至少一部分符合已调整的视频质量水平。响应于该指令,编码器158可调整QP159或者调整任何其他的编码器参数,以计算修改后的目标视频质量水平。由此,转码管理器123对比特流的平均BR进行监控并且调整视频质量参数,以确保用于该比特流的平均BR落在目标平均BR的可接受范围内。
[0057]然后,图2中示出了根据各种实施方式的图1中转码系统100内输入媒体文件115的示例的图表。图2描述了以最后根据呈现顺序进行排序的一系列图片表示的输入媒体文件115。比特流中图片的顺序可能不同于即将呈现的用于特定视频压缩标准情况下图片的顺序。输入媒体文件115还可以表示成比特流。在这方面,一系列的比特构成每张图片。
[0058]输入媒体文件115包括多张图片201a-n、204a-n、207a_n。输入媒体文件115还包括随机存取点(RAP) 231a-231c。各个RAP231a_c均是具有能够从RAP231a_c开始解码的特征的一张图片。RAP列表231对存在于输入媒体文件115的输入比特流中的RAP进行识别。
[0059]在各种实施方式中,由于流被接收和存储在输入媒体文件115中,所以可从指示该流中RAP231a-c的位置的处理中获得RAP列表231。在可选的实施方式中,可通过处理输入媒体文件115的转码系统100 (图1)获得RAP列表231。例如,转码管理器123 (图1)可被配置为对输入媒体文件115的比特流进行解析并且对一组RAP231a-c进行识别。无论是如何确定RAP列表231的,转码管理器123都可使用RAP列表231将输入媒体文件115分割成若干个段,以便于并行编码。
[0060]在各种实施方式中,RAP231a_c是一张1-图片(内编码图片)。1-图片是一张并不需要其他图片以进行解码的完全指定的图片。即,1-图片是独立图片。参照图2,第一组图片201a-n以第一 RAP231a开始,第二组图片204a_n以第二 RAP231b开始,并且第三组图片207a-n以第三RAP231c开始。RAP可以是具有能够从该张图片开始解码的特征的任一张图片。
[0061]在各种实施方式中,各组图片201a-n、204a-n、207a_n均可包括相应的最后一张图片201n、204n、207n,其中,相应的最后一张图片是P-图片(预测图片)或者B-图片(双预测图片)。P-图片和B-图片是要求其他图片以进行解码的部分指定图片。
[0062]转向图3,图3是示出了根据各种实施方式的图1中转码系统内输入媒体文件115的示例的图表。图3描述了以根据呈现进行排序的图片序列表示的输入媒体文件115。输入媒体文件115包括多个RAP231a-f。输入媒体文件还包括第一组图片312a_n、第二组图片315a-n、第三组图片318a_n、第四组图片321a_n、和/或任何其他后续组的图片。此外,图3提供一种将输入媒体文件115分割成多个输入段333a-c的非限制性示例。
[0063]转码管理器123 (图1)可对输入媒体文件115进行分析并且确定用于输入媒体文件115的RAP列表231 (图2)。转码管理器123可基于RAP231a_f的位置对用于各个输入段的起始点进行识别。各个输入段333a-c以RAP231a、231d、231f开始。例如,输入媒体文件115的第一 RAP231a可向转码管理器123指示用于第一输入段333a的起始点的生成。
[0064]转码管理器123可被配置为根据最佳长度产生各个输入段333a_c。输入段333a_c的长度可表示为图片数量、时间量、比特数、由输入段333a-c包括的RAP数等。尽管各个输入段333a-c在长度上不一定完全等于其他输入段333a-c,然而,各个输入段333a_c在长度上可接近于其他的输入段333a-c。
[0065]转码管理器123将输入媒体文件115分割成输入段,以对输入媒体文件115执行并行处理。当输入段333a_c过长时,实现并行处理的优势的起始成本较高。例如,如果输入媒体文件115被分割成四个输入段333c,其中各个段在长度上接近四分之一,则对于第一四分之一的转码处理,不能实现并行处理的优势。
[0066]当输入段过短时,由于超支成本而降低了并行转码系统的效率。短段的使用还可提高输出流中某些音频/视觉伪像/异常的能见度或者能听度。例如,通过将输入媒体文件115分割成短的段,并且将短的转码段接合到一起,接合处的数量增加,从而增加转码输出中一些参数的不连续值的发生率。
[0067]在各种实施方式中,输入段长度接近10秒。根据该目标长度,转码管理器123可找到用于各个输入段333a-c的端图片318b、324b。例如,转码管理器123可对超过用于各个输入段333a-c的相应起始图片312a、318a、324a的10秒的最近RAP231d、231f进行识另O。转码管理器123可基于最近的RAP231d、231f添加超过最近RAP231d、231f的预定长度,从而确定用于各个输入段333a-c的末端图片。例如,如下面进一步所详细描述的,输入段A333a的末端图片可包括超过输入段B333b的起始图片的若干张其他图片318a_b,以通过处理器156 (图1)提供在处理过程中使用的交迭。
[0068]在其他实施方式中,当转码器设备134a_n已经完成或者接近完成转码处理时,转码器设备134a-n (图1)被配置为指示转码管理器123停止馈给输入段333a_c。而且,转码器设备134a-n可丢弃超过被馈送给转码器设备134a_n的末端图片的其他数据。由此,转码器设备134a-n可确定输入段333a_c的末端图片。
[0069]在图3的非限制性示例中,转码管理器123对用于第一输入段333a的起始图片312a进行识别。转码管理器123对在呈现时间内起始图片312a之后接近10秒的后续RAP231d进行识别。转码管理器123和/或转码器设备134a_n添加后续RAP231d之外的预定长度,从而对用于第一输入段333a的末端图片318b进行识别。在非限制性示例中,预定长度为四张图片。因此,第一输入段333a包括除后续RAP231d以外的多个RAP231b、231c。
[0070]为了对下一输入段333b进行识别,转码管理器123将下一输入段333b的起始图片设置为上一输入段333a的最后的RAP231d。这就导致各个输入段333a_d之间的交迭。交迭程度等于预定长度。预定长度可表示为图片数、时间、比特数等。
[0071]通过将末端图片318b、324b延伸至超过相应的后续RAP231d、231f预定长度来产生交迭量,对输入段333a-d进行转码的转码器设备134a-n (图1)具有额外的信息,以对输入段333a-c中的最后几张图片进行充分地解码。例如,当对目标图片进行解码时,可能需要比特流中的延伸超过目标图片的多张图片。例如,参照图3的非限制性示例,对输入段B333b的目标图片321η进行解码可能需要后续图片324a_b的至少一部分。通过包括作为输入段B333b —部分的后续图片324a-c,可确保对目标图片321η进行充分地解码。
[0072]在各种实施方式中,转码管理器123可至少基于由转码器设备134a_n执行的处理函数(function)来选择预定长度。例如,去隔行操作可能需要使用大于图像增强操作的预定长度。
[0073]参照图4,图4示出了根据本公开的各种实施方式的在图1中的转码系统100内实施的转码管理器123的操作的示例。图4提供了一种将多个输入段333a-f分配给各个转码器处理的转码管理器123的非限制性示例。可同时操作转码器处理以对输入段333a-f进行并行转码。例如,转码管理器123可在三个转码器设备134a-c内将输入段333a_f分配给转码器处理。各个转码器设备134a-c被配置为对接收的输入段333a-f进行转码并且产生对应的输出段405a-f。
[0074]输入段333a_f可以呈现顺序布置。即,回放媒体文件的用户观察到按照呈现顺序的以时间序列布置的输入段333a-f。在由转码器设备134a-c并行转码输入段333a_f时,可产生转码顺序,从而使得可能需要对转码器设备134a_c的输出进行重新排序以保持呈现的原始顺序。在这方面,转码顺序可根据呈现顺序而改变。
[0075]在图4的转码系统100中,各个转码器设备134a_c的特征在于改变转码速度。例如,第一转码器设备134a可以是固有地慢于第二转码器设备134b的转码器设备。在这种情况下,各个转码器设备134a-c的物理实现可影响转码速度并且改变用于各个转码器设备134a-c的转码处理资源。
[0076]此外,各个输入段333a_f可在各个输入段的图片数量或者各个输入段中图片的复杂性方面改变。例如,输入段A333a可包括大于输入段C333c的大量图片。因此,转码输入段A333a可需要比转码输入段C333c足够多的时间。又例如,输入段A333a可包括一系列特征在于合成色彩图案、运动、和/或移动的图片。输入段C333c可包括一系列具有极少或者没有动感或者运动的单色图片。因此,转码输入段A333a可需要比转码输入段C333c足够多的时间。
[0077]当将输入段333a_f分配给转码器设备134a_c时,转码管理器123可通过对各个转码器设备134a_c的工作负荷队列进行分析来确定分配。在各种实施方式中,各个转码器设备134a_c跟踪被调度用于转码的输入段333a_f的数量。各个转码器设备134a_c可保持计数器对工作队列中的所调度的输入段333a-f的数量进行计数。在另一示例中,各个转码器设备134a-c在其完成对各个转入段的转码时提供指示。在其他实施方式中,各个转码器设备134a_c对于转码器设备134a_c的工作负荷有关的进度状态进行量化。例如,各个转码器设备134a-c可提供完成工作队列中所安排的工作的预估时间。转码管理器123可跟踪各个转码器设备134a-c的工作进度并且相应地分配后续的输入段333a-f。
[0078]在图4的非限制性示例中,转码管理器123将输入段A333a发送给第一转码器设备134a,将输入段B333b发送给第二转码器设备134b,并且将输入段C333c发送给第三转码器设备134c。此时,各个转码器设备134a-c正在对相应的输入段333a_c进行转码,从而使得用于各个转码器设备134a_c的工作队列大量增加。而且,各个转码器设备134a_c对相应的输入段333a_c进行转码以相应地产生对应的输出段405a_c。
[0079]下一连续的输入段,即输入段D333d由转码管理器123分配。在各种实施方式中,转码管理器123均考虑到各个转码器设备134a-c的转码处理。转码管理器123可将输入段D333d分配给可以在最早的时间点开始处理输入段D333d的转码器设备134a_c。假定第一转码器设备134a和第二转码器设备134b完成的估测时间比第三转码器设备134c更迟,转码管理器123可将输入段D333d分配给第三转码器设备134c。
[0080]转码管理器123可基于各个转码器设备的进度状态继续分配输入段333a_f。各个转码器设备134a产生对应的输出段405a-f。可能是这样一种情况,即,以不同于输入段333a-f的呈现顺序的一种顺序产生输入段405a-f。
[0081]在各种实施方式中,转码管理器123被配置为授权其他转码系统100 (图1)访问一个或者多个转码器设备134a_c。例如,第一转码系统100可与另一转码系统100共享一个或者多个转码器设备134a-c。各个转码系统100可实施为相应STB的一部分或者另一计算设备。在这方面,STB网络可被配置为与其他STB共享其转码器设备134a-c。可选地,一个STB可被配置为在多个输入文件或者流上同时执行多个转码操作。转码管理器123可支持或者拒绝访问由转码管理器123管理的转码器设备134a-c。同样,转码管理器123可请求使用另一转码系统100的一个或者多个转码器设备134a-c。在这种情况下,一组转码系统100可连接网络以便于相应转码器设备134a-c的资源共享。
[0082]转向图5,图5示出了根据本公开的各种实施方式的图1中转码系统100的操作的图表。图5提供一种有序的输入段333a-d及对应的以呈现顺序布置的输出段405a-d的非限制性不例。在各种实施方式中,输出段405a_d被配置为形成一系列连续的输出段,以使得各个输出段405a_d不与该系列输出段中的相邻输出段405a_d交迭。
[0083]输入段333a_d表示输入媒体文件115 (图1)的有序的交迭的时间范围。因此,各个输入段333a-d的特征在于呈现时间的起始时间和停止时间。即,各个输入段333a覆盖由输入媒体文件115表示的媒体项目的时间范围或者窗口。例如,假定媒体项目是电影,输入段A333a覆盖该电影的O秒至10.5秒,并且输入段B覆盖该电影的10.4秒至20.2秒。
[0084]各个输入段333a_d被发送给相应的转码器设备134a_n(图1)。接收输入段333a_d的转码器设备134a-n对接收的输入段333a-d进行转码并且产生对应的输出段405a-d。各个输出段405a-d的特征还在于具有起始时间和停止时间的呈现时间范围。例如,在上一段落的示例之后,输入段A333a的转码形式的输出段A405a覆盖转码电影的O秒至10.5秒。作为输入段B333b的转码后的版本的输出段B405b覆盖转码电影的10.5秒至20.2秒。[0085]从图5中的非限制性示例可以看出,对应输入段333a_d的输出段405a_d有序、连续和不交迭。例如,输出段A405a的最后一张图片紧接在输出段B405b的第一张图片之前。在这方面,输出段405a-d形成可被组合的连续系列段以产生转码输出媒体文件121(图1)。
[0086]各个输出段405a_d覆盖对应输入段333a_d的同一时间范围或者覆盖对应输入段333a-d的时间范围的一个子集。例如,用于输出段A405a的时间范围是O秒至10.5秒,其为输入段A333a的同一时间范围。然而,用于输出段B405b的时间范围是10.5秒至20.2秒,其为输入段B333b的时间范围(10.4秒至20.2秒)的一个子集。因此,转码器设备134a_d的处理器156 (图1)接收呈现时间的特定窗口的解码输入段,并且产生与输入段的呈现时间的窗口的一个子集相关联的对应输出段。从而使得处理器156在实现串行转码的优势的同时实际上执行并行转码。
[0087]例如,处理器156可进行去隔行操作以产生与呈现时间的特定窗口相关联的输出段。为产生输出段,输入的去隔行操作应与对于去隔行操作来说足够大的输入窗口相关联,以产生与呈现时间的特定窗口相关联的输出段。在图5的非限制性示例中,输出段B405b与10.5秒至20.2秒的窗口相关联。用于产生输出段B405b的去隔行操作可需要与跨越至少10.4秒至20.2秒的范围的窗口相关联的输入段。此外,为了对与10.5秒至20.2秒的范围相关联的解码图片去隔行,去隔行操作可能需要利用10.5秒之前的解码图片。
[0088]在各种实施方式中,输入媒体文件115的第一输入段333a覆盖与对应输出段405a相同的时间范围。在第一输出段405a之后,后续的输出段与作为对应输入段时间范围的子集的相应时间范围相关联。
[0089]现转向图6,图6示出了根据本公开的各种实施方式的图1中转码系统100的操作的示例。图6提供一种使用并行转码器设备134a-n (图1)来转码四个输入段333a_d的非限制性示例,其中,转码管理器123 (图1)将各个输入段333a-d分配给相应的转码器设备134a_n0
[0090]各个输入段333a_d沿着呈现顺序的y轴布置。首先出现的是输入段A333a,紧接着下一个是输入段B333b,输入段C333c紧随输入段B333b之后,并且输入段D333d紧随输入段C333c之后。沿着y轴的输入段333a-d被描述的越低,输入段333a_d就出现的越早。
[0091]各个输入段333a_d还沿着转码顺序的x轴布置。越接近x轴上左侧的输入段333a-d显示在越早的时间点被转码的输入段333a-d。因此,输入段A333a是被转码的第一输入段,紧接着是输入段D333d,紧接着是输入段B333b,紧接着是输入段C333c。从在时间变化点处理输入段333a-d的并行转码器设备134a-n可产生交错的转码顺序。从图6的示例可推断出,被指定转码输入段A333a的转码器设备134a-n不是被指定转码输入段D333d的同一转码器设备134a-n。该推论基于输入段A333a和输入段D333d具有交迭转码时间的事实,以及基于转码器设备134a-n可一次处理一个输入段333a_d的假定。然而,可以推断出,被指定转码输入段A333a的转码器设备134a-n还可能是被指定转码输入段B333b或者输入段C333c的同一转码器设备134a-n。这是由于输入段A333a的转码时间既不与输入段B333b交迭也不与输入段C333c交迭的事实。然而,转码器设备134a_n可能能够同时处理一个以上的输入段333a-d。通过转码器编码的输入段333a-c的该组图片可被称之为输出段。编码后版本的该同一组图片也可被称之为输出段。
[0092]图6还提供一种在对应转码器设备134a_n内实施的各个编码器158 (图1)的QP159a-d的动态调整的非限制性示例。例如,通过由负责对输入段A333a进行转码的转码器设备134a-n实施的编码处理可动态地调整与输入段A333a的编码相关联的QP159a。因此,各个输入段333a-d的编码包括通过编码过程可被调整的对应QP159a-d。当对特定的输入段333a-d进行编码时,QP159a-d可被初始化为初始的QP值502a_d。此外,如下面进一步所详细讨论的,转码管理器123可指示各个转码处理以使其相应的QP159a-d收敛到预定的QP范围505a-d的方式来处理该相应的QP159a-d。
[0093]在各种实施方式中,转码管理器123被配置为在转码器设备134a_n处理各个序列的输入段333a-d时来管理用于各个转码器过程的QP159a-d。转码器设备134a_n的编码器158在其执行编码处理时可调整QP159a-d。因此,各个输入段333a_d与输出段405a_d相关联。各个输出段405a-d与初始QP502a-d和最后QP相关联,其中,各个转码器处理使用QP来产生对应的编码输出段405a-d。当特定输出段405a-d的最后QP与即将出现的下一输出段405a-d的初始QP502a-d大幅度地不同时,发生脱节的QP转换。脱节的QP转换可在对应于转码输入段333a-d的输出段405a-d之间产生视觉伪像。因此,转码管理器123可被配置为对编码的各个输出段405a-d的QP159a-d产生影响,从而在一系列的有序的输出段405a-d上产生相对连续的QP159,因此,在QP159中,从一个编码输出段到下一编码输出段之间存在相对较小的差异。
[0094]在众多之中的一个实施方式中,转码管理器123获得完整编码输出段405a_d的最后QP值,并且使用该最后QP值来设置呈现顺序中下一输出段405a-d的初始QP502a-d。例如,输出段A405a的最后QP可用于对输出段B405b的初始QP502进行初始化。在这种情况下,负责处理输入段A333a的转码器设备134a-n将与输出段A405a相关联的最后QP传达或者另行报告给转码管理器123。然后,转码管理器123可通过设置初始QP502b来控制负责处理输入段B333b的转码器设备134a-n。
[0095]然而,可能是这样一种情况,与即将出现的下一输入段333c—起同时对输入段333b进行转码。例如,在输入段B333b完成转码处理时,输入段C333c已经开始转码处理。为此,各种实施方式均涉及指示QP159b大约收敛到预定QP范围505b内。例如,在转码管理器123对与输入段B333b相关联的输出段B405B的编码进行监控时,转码管理器123可设置一预定的QP范围505b,从而命令或者另行指示QP159b收敛到预定QP范围505b内。然后,转码管理器123可通过至少基于输出段B405b的预定QP范围505b来设置输出段C405c的初始QP502来初始化输出段C405c的QP159c。在另一实施方式中,转码管理器123确定输出段405b的QP159b的初始值和输出段405c的QP159c的初始值。转码管理器123基于输出段405c的QP159c的初始值来确定预定的QP范围505b,并且命令或者另行指示QP159b整体收敛到预定的QP范围505b内。这就降低了输出段B405b与输出段C405c之间脱节的QP的风险。从而产生输出文件(流)的高视觉质量。
[0096]在各种实施方式中,至少部分基于施加到输出段405a_d的编码处理可动态地调整预定的QP范围505a-d。例如,在编码处理期间,可由编码器158将QP159a_d报告给转码管理器123,并且转码管理器123可基于该QP159a-d动态地调整用于被安排进行编码的输出段405a-d的预定QP范围505a-d。在可选的实施方式中,预定QP范围505a_d可不取决于由编码器158利用的QP值159a-d。在这方面,各个编码器具有同一预定的QP范围505a-d。在另一可选的实施方式中,用于对输出段405a-d进行编码的所有编码器的预定QP范围505a-d大约相等,并且预定的QP范围505a-d可随着时间而改变。可选地,转码管理器123可独立确定用于各个输出段405a-d和用于各个编码器的QP或者QP范围。这些QP或者QP范围在段之间和编码器之间不同。转码管理器123可至少部分基于由编码器产生的测量或者实际BR以及目标平均比特率确定QP或者QP范围。可选地,转码管理器123可至少部分基于输入流的属性来确定QP或者QP范围。输入流的属性的非限制性示例包括表示若干图片或者几组图片、QP值、场景变化、运动矢量、或者图片特征的若干个比特。
[0097]还可能是这样一种情况,即,在与早期呈现时间相关联的输入段333b、333c之前,对与后期呈现时间相关联的输入段333d进行编码。例如,输入段D333d在编码输入段B和输入段C,333b、333c之前开始编码处理。本公开的各种实施方式旨在获得当前正被编码的输出段405a-d的即时QP159a-d,并且使用即时QP159a_d对另一输出段405a_d的初始QP502a-d进行初始化。例如,转码管理器123可获得输出段A405a的即时QP,同时对当前的输出段A进行编码并且使用于输出段D405d的初始QP502d基于即时QP。因此,转码系统100可使得转码管理器123从转码器设备134a-d读取QP159a_d。
[0098]参照下面的图7,图7是示出了根据本公开的各种实施方式的实施为图1中的转码管理器123的部分的功能的示例的流程图。应当理解的是,图7中的流程图仅提供一种可用于实施在此描述的转码管理器123的操作的多种不同类型的功能布置的示例。可选地,图7中的流程图可被视为描述了在根据一种或者多种实施方式的转码管理器123内实施的方法步骤的示例。
[0099]开始后,在参考标号703,转码管理器123访问输入媒体文件115 (图1)。转码管理器123被配置为从源记忆储存器112 (图1)读取输入媒体文件。可读取作为表示一系列图片的比特流的输入媒体文件115。在参考标号706,转码管理器123对随机访问点(RAP)231a-c (图2)进行识别。基于RAP列表231 (图2)可对RAP进行识别。RAP列表231可以是与输入媒体文件115相关联的元数据的一部分。还可由转码管理器123计算RAP列表231。在这种情况下,转码管理器123对输入媒体文件115进行分析并且对RAP的位置进行识别。
[0100]在参考标号709,转码管理器123产生一个或者多个输入段333a-C(图3)。至少基于RAP231a-f的位置(图3)产生输入段333a_c。各个输入段333a_c可包括一个起始点和一个末端点。用于各个输入段333a-c的起始点可以是RAP列表231中的相应RAP231a_f。此外,各个输入段333a-c可包括若干个RAP231a-f。在各种实施方式中,末端点是超过特定输入段333a-c的最后RAP231a-f之外的预定数量的图片。后续的输入段333a_c可具有上一输入段333a-c的最后的RAP231a-f的一个起始点。在这方面,输入段序列333a_c是有序、连续并且交迭的。
[0101]在参考标号712,转码管理器123选择一个或多个转码器设备134a_n (图1)来产生对应的输出段405a-f (图4)。各个转码器设备134a-n被配置为接收输入段333a_f (图4)、对输入段333a-n进行转码、并且产生对应的输出段405a_f(图4)。在各种实施方式中,可以根据呈现顺序对从转码器设备134a-f的输出获得的输出段405a-f进行排序。当排序之后,输出段405a-f不交迭并且连续。转码管理器123可使用muxl43 (图1)和/或缓冲存储器对输出段405a-f进行排序。在参考标号715,转码管理器123将输出段405a_f储存在存储器中。例如,可以对输出段405a-f进行排序,并且将输出段405a-f接合在一起并作为输出媒体文件121 (图1)储存在目的记忆储存器118内(图1)。接合可包括连接呈现顺序中各个输出段405a-f。
[0102]参照下面的图8,图8是示出了根据本公开的各种实施方式的实施为图1中的转码管理器123的部分功能的示例的流程图。应当理解的是,图8中的流程图仅提供一种可被用于实施在此描述的转码管理器123的操作的多种不同类型的功能布置的示例。可选地,图8中的流程图可被视为描述了在根据一种或者多种实施方式的转码管理器123内实施的方法步骤的示例。而且,图8提供一种在恒定BR系统或者可变BR系统内实施的功能的非限制性示例。
[0103]开始后,在参考标号805,转码管理器123将输入媒体文件115 (图1)分割成输入段333a-c (图3)。至少基于RAP231a_f的位置(图3)可产生输入段333a_c。各个输入段333a-c可包括一个起始点和一个末端点。用于各个输入段333a-c的起始点可以是RAP列表231内的相应RAP231a-f。而且,各个输入段333a_c可包括若干个RAP231a_f。在各种实施方式中,末端点是超过特定输入段333a-c的最后RAP231a-f之外的预定数量的图片。后续的输入段333a-c可具有上一输入段333a-c的最后RAP231a_f的起始点。在这方面,输入段序列333a-c是有序、连续并且交迭的。
[0104]在各种实施方式中,转码管理器123被配置为将作为包括起始图片的流的输入段提供给转码器设备134a-n (图1)。在这方面,转码管理器123可初始指定一个额定值作为输入段333a-c内的末端图片,或者可选地,不指定末端图片。在非限制性示例中,转码管理器123 —旦从转码器设备134接收指令就停止馈送输入段流,从而停止馈送输入段333a-c。
[0105]在参考标号808,转码管理器123对第一编码器158 (图1)的QP159 (图1)进行初始化。转码管理器123可与转码器的控制器149 (图1)接口连接,从而设置转码器的编码器158的初始QP502a-d(图6)。在各种实施方式中,转码管理器123可将初始QP502a_d设置为默认值。在参考标号811,转码管理器123对用于第二编码器158的QP159进行初始化。第二编码器被安排对第二输出段405a-d进行编码。
[0106]在参考标号814,转码管理器123基于初始QP值502a_d确定预定的QP范围505a-d。转码管理器命令或者指示第一编码器158的QP159收敛到预定的QP范围505a_d内。例如,转码管理器123可使用转码器的控制器149来设置编码器的预定QP范围505a-d。通过设置预定的QP范围505a-d,被安排对第一输出段405a-d进行编码的编码器158可命令QP159近似收敛到预定QP范围505a-d内的最终QP。预定QP范围505a_d可以是对于所有转码处理来说是全局变量的固定范围或者由转码管理器123动态地计算出的范围。通过使与第一编码器158相关联的QP159收敛到预定QP范围505a_d,其中,预定的QP范围505a-d基于第二输出段405a-d的初始QP502a_d,希望第一输出段405a_d的末端QP159大约匹配于第二输出段405a-d的初始QP502a-d。因此,转码管理器123被配置为降低在输出段405a-d (图4)的接合处发生脱节的QP159的可能性。
[0107]在参考标号817,转码管理器123管理第一输出段405a_d和第二输出段405a_d的编码,其中,分别由第一编码器158和第二编码器158并行执行第一输出段405a-d和第二输出段405a-d的编码。
[0108]现转向图9A,图9A是示出了根据本公开的各种实施方式的图1中转码系统100的操作的示例。图9A提供一种使用并行转码器设备134 (图1)对四个输出段405a-d进行编码的非限制性示例。图9A描述了一种使用视频质量水平906来保持用于恒定BR系统和可变BR系统的相对恒定的主观质量的非限制性示例。此外,图9A描述了一种使用视频质量水平906来实现用于可变BR系统的目标平均BR的非限制性示例。
[0109]各个输出段405a_d沿着呈现顺序的y轴布置。首先出现的是输出段A405a,紧接着下一个是输出段B405b,输出段C405c紧随输出段B405b之后,并且输出段D405d在呈现顺序中紧随输出段C405c之后。
[0110]各个输出段405a-d还沿着转码顺序的X轴布置。由对应的编码器158 (图1)大概同时对输出段A405a、输出段B405b、以及输出段C405c进行编码。在对输出段A405a、输出段B405b、以及输出段C405c的并行编码之后对输出段D405d进行编码。
[0111]对于各个输出段405a-d,图9A描述了对应的视频质量水平(VQL)906a_d。如图9A中的非限制性示例所示,对输出段A405a、输出段B405b、以及输出段C405进行并行编码并且输出段A405a、输出段B405b、以及输出段C405具有相同的视频质量水平906a_c。在更迟的时间点编码输出段D405d,并且输出段D405d具有低于其他段的视频质量水平906a_c的视频质量水平906d。
[0112]视频质量水平906可以是一个至少基于额定的QP、QP、QP范围、任一编码器参数、或者其任何组合的值。根据各种实施方式,转码管理器123可指定用于处理输出段405a-d的各个编码器158的视频质量水平906,以在相邻输出段405a-d的边界处实现相对连续的主观视频质量。各个编码器158可根据指定的视频质量水平906自动调整其相应的QP值。在这方面,各个编码器158可根据视频质量水平906改变QP159。此外,在这方面,各个编码器158可根据被编码的视频质量改变QP159,例如预估的视频量化的主观效果。由用于管理从一个段到下一段的主观质量的连续性的转码管理器123来分配视频质量水平。如下面进一步所详细讨论的,转码管理器123将视频质量水平906分配给一个或者多个编码器158,以保持输出段405a-d上相对恒定的主观质量。
[0113]在可变的比特率系统中,各个编码器158可根据指定的视频质量水平906自动调整其相应的QP值,并且自动调整相应的BR以根据指定的视频质量水平906来保持所需的比特率缓冲器的性能。如下面进一步所讨论的,转码管理器123将视频质量水平906分配给一个或多个编码器158,以在保持目标平均BR的同时保持输出段405a-d上相对恒定的主
观质量。
[0114]例如,在可变的BR系统中,转码管理器123可获得用户规定的目标平均BR。目标平均BR可表示为特定时间间隔内所需的平均BR。如非限制性示例,目标平均BR在五分钟的时间窗口内可以是4Mbit/s。又如非限制性的示例,目标平均BR在整个文件内可以是4Mbit/s。产生输出段405a-d的各个转码器设备134a_n可报告由对应编码器158使用的相应BR162。可选地,转码管理器123可通过对转码的比特流进行分析来确定BR。转码管理器123可基于所确定的BR162确定根据平均窗口的所测量的平均BR。例如,转码管理器123可对用于落在五分钟呈现时间的平均窗口内的一组输出段405a-d的相应BR162进行识另O。因此,图9A中的各个输出段405a-d可影响所测量的平均BR。
[0115]在各种实施方式中,视频质量水平906包括额定的QP。在恒定的BR和可变的BR系统中,各个编码器158可基于额定的QP改变QP159。编码器158可根据额定的QP通过逐渐偏离该额定的QP来调整QP159。然后,编码器158可尝试返回到额定的QP。转码管理器123可指定QP的最大变化速率,以使编码器158从额定的QP缓慢地改变QP159。最后,通过将额定的QP分配给输出段序列405a-c,转码管理器123可降低相邻输出段405a_d之间发生脱节QP159的可能性。
[0116]就可变的BR系统而言,转码管理器123可将在时间窗口内测量的平均BR与目标平均BR进行比较,从而确定时间窗口内的平均BR是否有落在目标平均BR之外的危险。转码管理器123可基于多种因素确定是否对用于一个或者多个编码器158的视频质量水平906进行调整。这些因素的非限制性示例包括测量的平均BR与目标平均BR之间的差异、测量的平均BR的变化速率、短期平均BR、长期平均BR、从流开始的平均BR、或者其任何组合。例如,如果转码管理器123确定测量的平均BR有超过目标平均BR的趋势,转码管理器123可对用于处理输出段405a-d的一个或者多个编码器158的视频质量水平906进行调整。
[0117]在恒定的BR和可变的BR系统中,转码管理器123可被配置为确保在输出段405a-d的边界处保持相对恒定的QP。如图9A所示,为实现输出段C405c与输出段D405d之间的相对连续的QP159,转码管理器123可在调整点912调整视频质量水平906。在调整点912,转码管理器123命令一个或者多个编码器158来调整视频质量水平,以在输出段C405C与输出段D405d之间实现相对连续的主观质量。例如,转码管理器123和一个或者多个编码器158通过利用相邻段之间边界处的相对连续的QP159可在相邻段之间实现相对连续的主观质量。
[0118]在可变的比特率系统中,转码管理器123可被配置为确保实现目标平均BR。转码管理器123可调整视频质量水平906以使得平均BR趋向于目标平均BR。如图9A所示,转码管理器123在调整点912调整视频质量水平906。对视频质量水平906的调整可能影响编码器使其以调整BR162的方式来编码各段。因此,转码管理器123可在实现相对连续的主观质量的同时保持目标平均BR。例如,为使时间窗口内的实际平均BR增加,转码管理器123可提高视频质量水平。因此,一个或者多个编码器可降低其受由转码管理器123指定的视频质量水平的约束的相应的QP。因此,转码管理器123被配置为在调整点912调整视频质量水平、QP范围、额定QP、或者任何其他编码器参数以影响实际的平均BR。
[0119]参照图9B,图9B是示出了根据本公开的各种实施方式的图1中转码系统100的操作的示例。具体地,图9B进一步阐述了在可变的BR系统情况下图9A中的非限制性示例。图9B示出了在时间窗口内的测量平均BR926。测量的平均BR926可以是由转码管理器123(图1)根据平均窗口确定的一个移动平均。转码管理器123将测量的平均BR926与目标平均BR进行比较。例如,转码管理器123可包括用于管理各个段的BR以实现目标平均BR的线性控制回路。线性控制回路可接收作为输入的测量平均BR926。为控制实际平均BR,转码管理器123可对视频质量水平906 (图9啊)进行调整。如图9B所示,转码管理器123在调整点912调整视频质量水平906。响应于调整视频质量水平906,最终降低测量的平均BR926。
[0120]在调整点912之前测量的平均BR926至少部分地基于输出段A405a、输出段B405b、和/或输出段C405c的实际BR。在调整点之后测量的平均BR926至少部分地基于输出段D405d。
[0121]参照下面的图10,图10是示出了根据本公开的各种实施方式的实施为图1中转码管理器123的部分的功能的示例的流程图。应当理解的是,图10中的流程图仅提供一种可用于实施在此描述的转码管理器123的操作的多种不同类型的功能布置的示例。可选地,图10中的流程图可被视为描述了在根据一种或者多种实施方式的转码管理器123内实施的方法步骤的示例。图10提供一种控制一组编码器158 (图1)以对比特流的段进行并行编码的非限制性示例。各个编码器158对该比特流的组成段(例如,输出段405 (图4)等)进行编码。而且,图10描述了被配置为管理比特流的并行编码的转码管理器123,该转码管理器123可确保编码段上相对连续的主观视频质量,同时在可变的BR系统中实现目标平均BR。
[0122]开始后,在参考标号1001,转码管理器123跟踪用于比特流的测量的平均BR。比特流可被分割成一组段,其中,由对应的编码器158对各个段进行编码。各个编码器158对相应的段进行编码,并且转码管理器跟踪转码流的测量的平均BR。例如,使用沿着呈现时间轴的移动平均窗口可确定测量的平均BR。因此,在编码各个段时可不断地更新用于比特流的测量平均BR。在一些实施方式中,编码器158在对该段进行编码时报告用于各个段的BR。在其他实施方式中,转码管理器123对编码器158的输出进行分析以确定测量的平均BR。
[0123]如参考标号1004所示,转码管理器123继续跟踪用于比特流的测量平均BR,直至完成对该比特流的编码。在参考标号1007,转码管理器123根据阈值或者容差来确定测量的平均BR是否不同于目标平均BR。例如,转码管理器123可使用控制回路来实施线性控制回路,从而管理各个段的BR以满足所需的长期平均比特率。控制回路可包括例如比例、积分和差动控制器。
[0124]在各种实施方式中,控制回路确定测量的短期平均BR、测量的长期平均BT、自比特流或者文件开始时的总测量平均BR、或者其任何组合。例如,短期平均可以基于具有一个或者几个段长度的平均窗口。例如,长期平均可以基于具有5分钟长度、充分长的任何其他时间段的平均窗口。控制回路可确定目标平均BR与多个不同测量的平均BR中每一个之间的差异,以确定是否调整视频质量水平。在这方面,短期测量的平均BR与目标平均BR之间的差是第一差值。长期测量的平均BR与目标平均BR之间的差是第二差值。并且总平均BR与目标平均BR之间的差是第三差值。根据相关系数对各个差值进行加权并且进行组合,从而确定是否调整编码器设置以影响该比特流的BR。
[0125]如果测量的平均BR没有严重偏离目标平均BR范围的危险,则转码管理器123在不调整视频质量水平906(图9A)的情况下继续跟踪用于该比特流的平均BR。然而,如果测量的平均BR有严重偏离目标平均BR范围的危险,则转码管理器123转向参考标号1009。
[0126]在参考标号1009,转码管理器123调整用于一个或者多个编码器158的视频质量水平906。根据各种实施方式,视频质量水平906是表示主观视频质量的量化参数。在可选的实施方式中,视频质量水平是QP参数的倒数。在可选的实施方式中,视频质量水平是QP参数。视频质量水平906可与比特流的BR正相关。通过调整视频质量水平906,转码管理器可命令同时编码和/或被安排对段进行编码的编码器158。响应于调整视频质量水平,编码器158可调整其相应的QP、额定QP、或者任何其他的编码器参数,以计算修改的视频质量水平906。在完成参考标号1009之后,转码管理器123返回到参考标号1001,从而跟踪该比特流的所测量的平均比特率。
[0127]根据各种实施方式,由转码管理器123调整视频质量水平可包括命令一个或者多个编码器158使得相应段的QP趋向于特定的QP范围或者额定的QP值。
[0128]图7、图8以及图10中的流程图示出了转码管理器123(图1)的部分的执行操作的功能。如果包含在软件中,描述为块的各个参考标号可表示一个模块、程序段、或者包括实施具体逻辑功能的程序指令的部分代码。程序指令可包括源代码形式或者机器代码形式,源代码包括以编程语言编写的人类可读的语句,机器代码包括由诸如计算机系统或者其他系统中的转码管理器123等合适的执行系统识别的数字指令。程序指令可以储存在存储器内。机器代码可以从源代码等转换。如果实施为硬件,各个块可表示一个电路或者若干个相互连接的电路,从而实施具体的逻辑功能。
[0129]尽管图7、图8、以及图10中的流程图示出了具体的执行顺序,然而,应当理解的是,执行顺序可能不同于所描述的顺序。例如,两个或者多个块的执行顺序可能相对于所示顺序而打乱。此外,图7、图8、以及图10中相继示出的两个或者多个块可同时或者部分同时进行。此外,在一些实施方式中,可跳过或者省去图7、图8、以及图10中所示的一个或者多个块。此外,出于增强实用性、计算、性能测量或者提供故障帮助的目的,可将任何数目的计数器、状态变量、警示旗语、或者消息添加到此处所描述的逻辑流程中。应当理解的是,所有的这些变量均处于本公开的范围内。
[0130]此外,本公开中所描述的任何逻辑或者应用均包括软件或者代码,例如,执行部分转码管理器123的代码或者指令,软件或者代码可包括在由诸如计算机系统或者其他系统内的转码管理器123等指令执行系统使用或者与指令执行系统结合使用的任一非易失性计算机可读介质内。就这种意义而言,逻辑可包括例如包括能够从计算机可读介质获取并且由指令执行系统执行的指令和声明的语句。在本公开的上下文中,“计算机可读介质”可以是能够包含、储存、或者维持由指令执行系统使用或者与指令执行系统结合使用的此处所描述的逻辑或者应用的任一介质。
[0131]计算机可读介质能够包括诸如磁性、光学或者半导体介质等多种物理介质中的任一种。合适计算机可读介质的更具体的示例包括,但不限于磁带、软磁盘、硬磁盘、记忆卡、固态驱动、USB闪存驱动、或者光盘。此外,计算机可读介质可以是包括例如静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、或者磁性随机存取存储器(MRAM)的随机存取存储器(RAM)。此外,计算机可读介质可以是只读存储器(ROM)、可编程的只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPR0M)、或者其他类型的存储设备。
[0132]应当强调的是,本公开的上述实施方式仅是为清晰地理解本公开的基本原理的实施方式的可能示例。在基本上不背离本公开的实质和基本原理的情况下,可对上述实施方式做出多种变形和改造。所有这种改造和变形均旨在包括在本公开的范围内并且受所附权利要求的保护。
【权利要求】
1.一种系统,包括: 存储器,用于存储媒体文件; 多个转码器,所述多个转码器被配置为通过执行相应的转码处理来并行地对所述媒体文件的至少一部分进行转码,所述相应的转码处理包括根据相应的量化参数QP对所述媒体文件的部分进行编码; 转码管理器,被配置为将所述媒体文件分割成多个段,并且将所分割的多个段的相应段发送给所述多个转码器中的相应转码器,从而产生对应的输出段,所述转码管理器进一步被配置为指示接收所分割的多个段的所述相应转码器使所述相应的QP收敛至近似为预定的最终QP,所述预定的最终QP包括预定的QP范围或者预定的QP值。
2.根据权利要求1所述的系统,其中,所述转码管理器进一步被配置为初始化用于对应的转码器处理的所述相应QP。
3.根据权利要求1所述的系统,其中,所述多个段包括第一段和第二段,在呈现顺序中所述第二段紧随所述第一段之后,其中,所述转码管理器进一步被配置为至少基于用于所述第二段的初始化QP来确定用于所述第一段的所述预定的最终QP。
4.根据权利要求1所述的系统,其中,所述多个转码器被配置为将所述相应的QP报告给所述转码管理器。
5.一种方法,包括: 将比特流分割成多个段; 将所述多个段分配给多个转码器,所述多个转码器被配置为并行地对所述多个段中的至少一部分进行编码,所述多个转码器被配置为对相应的段进行编码并且确定用于所述相应段的相应比特率; 确定所述多个段中的至少一部分的平均比特率;并且 将所述平均比特率与目标平均比特率进行比较,以确定是否调整与编码所述多个段相关联的视频质量水平。
6.根据权利要求5所述的方法,其中,多个编码器被配置为通过确定用于所述相应的段的QP来对所述相应的段进行编码。
7.根据权利要求5所述的方法,其中,所述视频质量水平至少基于额定的QP值。
8.根据权利要求5所述的方法,其中,确定所述多个段中的至少一部分的所述平均比特率包括根据平均窗口来确定所述平均比特率。
9.一种系统,包括: 转码管理器,被配置为: 将媒体文件进行分段以产生第一段和第二段; 启动第一编码器来处理所述第一段; 启动第二编码器来处理所述第二段以与所述第一段并行地进行编码; 向所述第一段和所述第二段分配视频质量水平,从而在所述第一段与所述第二段之间保持相对恒定的视频质量水平。
10.根据权利要求9所述的系统,其中,所述转码管理器进一步被配置为: 将所述媒体文件进行分段以产生第三段,在呈现顺序中所述第三段紧随所述第二段之后;开始对所述第三段进行编码;以及 调整用于所述第三段的所述视频质量水平,从而在所述第二段与所述第三段之间保持相对恒定的视频质量水平。·
【文档编号】H04N21/4402GK103826124SQ201310577253
【公开日】2014年5月28日 申请日期:2013年11月18日 优先权日:2012年11月19日
【发明者】亚历山大·G·麦金尼斯, 朱洪涛, 詹森·赫里克, 布赖恩·舍纳, 李军林 申请人:美国博通公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1