用于无线显示器的并行编码的制作方法

文档序号:11162256阅读:387来源:国知局
用于无线显示器的并行编码的制造方法与工艺

本申请要求提交于2014年9月19日且标题为“PARALLEL ENCODING FOR WIRELESS DISPLAYS(用于无线显示器的并行编码)”的美国临时申请第62/052,602号和提交于2014年12月12日且标题为“ARALLEL ENCODING FOR WIRELESS DISPLAYS(用于无线显示器的)”的美国专利申请第14/569,071号的权益。



背景技术:

视频编码器压缩视频信息,使得能够通过给定贷款发送更多信息。压缩的信号可以然后被传输到接收器,该接收器在显示之前对信号解码或解压缩。

用于以高分辨率(例如,每秒60帧的3840×2160)进行无线显示的视频的压缩通常需要强大的编码器。然而,低功率的片上系统(SoC)可能具有有限的始终速度(例如,以便减小功耗)。

附图说明

本文所述的材料在附图中以示例的方式示出而非以限制的方式示出。为了说明的简单和清楚起见,图中所示的元素不一定按比例绘制。例如,为了清楚起见,一些元素的尺寸可以相对于其它元素放大。另外,当认为合适时,在图中重复参考标记以指示对应或类似的元素。

图1是示例视频处理系统的说明图;

图2是示例视频译码系统的说明图;

图3A是示例视频处理方案的说明图;

图3B是示例视频处理方案的另一说明图;

图4是示出示例译码过程的流程图;

图5示出示例比特流;

图6是示出示例解码过程的流程图;

图7A提供操作中的示例视频译码系统和视频译码过程的说明图;

图7B提供操作中的示例视频译码系统和视频译码过程的另一说明图;

图8是示例视频译码系统的说明图;

图9是示例系统的说明图;以及

图10是全部根据本公开的至少一些实现配置的示例系统的说明图。

具体实现

尽管以下描述阐述了可以在例如片上系统(SoC)架构的架构中表现的各种实现,但是本文所描述的技术和/或配置的实现不限于特定架构和/或计算系统并且可以由用于类似目的的任何架构和/或计算系统来实现。例如,采用例如多个集成电路(IC)芯片和/或封装和/或各种计算设备和/或诸如机顶盒、智能电话等的消费电子(CE)设备的各种架构可以实施本文所描述的技术和/或配置。此外,尽管以下描述可以阐述诸如系统组件的逻辑实现、类型和相互关系,逻辑分区/集成选择等的许多具体细节,但是可以在没有这样的具体细节的情况下实现所要求保护的主题。在其它情况下,可能不详细地示出例如控制结构和完整软件指令序列的一些材料,以便不模糊本文所公开的材料。

本文公开的材料可以在硬件、固件、软件或它们的任何组合中实现。本文公开的材料还可以实现为存储在机器可读介质上的指令,该指令可由一个或多个处理器读取和执行。机器可读介质可以包括用于以机器(例如,计算设备)可读的形式存储或传输信息的任何介质和/或机制。例如,机器可读介质可以包括只读存储器(ROM);随机存取存储器(RAM);磁盘存储介质;光存储介质;闪存设备;电、光、声或其它形式的传播信号(例如,载波、红外信号、数字信号等)等。

在说明书中对“一个实现”、“实现”、“示例实现”等的引用指示所描述的实现可以包括特定特征、结构或特性,但每个实现可以不一定包括特定特征、结构或特性。此外,此类短语不一定指代相同的实现。此外,当结合实现描述特定特征、结构或特性时,认为结合其它实现来实现这样的特征、结构或特性是在本领域技术人员的知识范围内,无论是否是本文明确描述。

下面描述包括用于无线显示器的并行译码的操作的系统、装置、物品和方法。

如上所述,用于以高分辨率(例如,每秒60帧的3840×2160)进行无线显示的视频的压缩通常需要强大的编码器。然而,低功率片上系统(SoC)可以具有有限的时钟速度(例如,为了降低功耗)。

如下面将更详细地描述的,相反,本文描述的概念的一些实现可以使用两个压缩引擎并行地执行视频压缩。因此,本文所描述的概念的一些实现可以在使用低时钟频率硬件(HW)视频编码器的同时满足无线显示器的视频压缩性能要求。

图1是根据本公开的至少一些实施方式配置的示例视频处理系统100的说明图。在各种实现中,视频处理系统100可以包括几个系统级组件,诸如中央处理单元(CPU)102、图形处理单元(GPU)104、显示引擎106、视频编码器108/110、无线电设备112(例如,射频类型(RF)收发器)、视频解码器118/120(例如,这些解码器可以实现为视频编码器108/110内的解码器环路)、无线显示器121、显示端口/HDMI源122等和/或它们的组合。

在一些示例中,应当理解,视频处理系统100的许多组件可并入作为片上系统(SoC)设备的部分。此外,在一些示例中,视频处理系统100可以包括为了清楚起见未在图1中示出的附加项目。例如,视频处理系统100可以包括为了清楚起见未在图1中未示出的附加项目,诸如扬声器、麦克风、加速度计、存储器、路由器、网络接口逻辑等。

系统100可以以变化的物理样式或形状因子来体现,诸如小形状因子的设备。在各种实施例中,例如,系统100可以实现为具有无线能力的移动计算设备。移动计算设备可以指具有处理系统和移动电源或电源供应的任何设备,例如一个或多个电池。

处理器102可以实现为复杂指令集计算机(CISC)或精简指令集计算机(RISC)处理器、x86指令集兼容处理器、多核、片上系统(SoC)或任何其它微处理器或中央处理器单元(CPU)。在各种实现中,处理器102可以是双核处理器、双核移动处理器等。

图形处理单元(GPU)104可以执行诸如静止图像或视频的图像的处理以用于显示。模拟或数字接口可以用于通信地耦合图形处理单元(GPU)104和无线显示器121。例如,接口可以是无线高清晰度多媒体接口、无线显示端口、无线HDMI、无线HD兼容技术和/或类似物中的任一个。图形处理单元(GPU)104可以集成到处理器902或芯片组中。

无线电设备112可以包括能够使用各种合适的无线通信技术来发射和接收信号的一个或多个无线电设备。此类技术可以涉及跨一个或多个无线网络的通信。示例性无线网络包括(但不限于)无线局域网(WLAN)、无线个域网(WPAN)、无线城域网(WMAN)、蜂窝网络和卫星网络。在跨此类网络进行通信时,无线电设备918可以根据任何版本中的一个或多个适用的标准来操作。

在各种实现中,显示器120可以包括任何无线类型的监视器或显示器。显示器120可以包括例如计算机显示屏、触摸屏显示器、视频监视器、电视类设备和/或电视。显示器120可以是数字和/或模拟的。在各种实施方式中,显示器120可以是全息显示器。此外,显示器120可以是可以接收视觉投影的透明表面。此类投影可以传达各种形式的信息、图像和/或对象。例如,这样的投影可以是用于移动增强现实(MAR)应用的视觉覆盖。

在操作中,本文所描述的概念的一些实现可以使用两个压缩引擎并行地执行视频压缩。因此,本文所描述的概念的一些实现可以在使用低时钟频率硬件(HW)视频编码器的同时满足用于无线显示器的视频压缩性能要求。

在操作中,与常规解决方案相比,本文所描述的概念的一些实现可以是改进,因为可以减少所需的时钟频率。因此,本文所描述的概念的一些实现可以特别适用于具有低时钟频率的低功率设备。例如,本文所描述的概念可以特别适合于在低功率/高分辨率无线显示系统中实现。在一个示例中,本文描述的概念的一些实现可以支持使用低功率片上系统(SoC)的4K无线显示器,诸如可以在移动平台中使用。

如下面将更详细地讨论的,视频处理系统100可以用于执行下面结合图4和/或图7讨论的各种功能中的一些或全部。

图2是根据本公开的至少一些实现配置的示例视频译码系统200的说明图。在各种实现中,视频译码系统200可被配置成根据一个或多个高级视频编解码标准(例如,高效视频译码(HEVC)H.265视频压缩)、高级视频译码(MPEG-4AVC)等执行视频译码和/或实施视频编解码。此外,在各种实施例中,视频译码系统200可实施为图像处理器、视频处理器和/或媒体的一部分。

如本文所使用的,术语“译码器”可以指编码器和/或解码器。类似地,如本文所使用的,术语“译码”可以指经由编码器的编码和/或经由解码器的解码。例如,视频编码器和视频解码器都可以是能够译码的译码器的示例。

在一些示例中,视频译码系统200可包括为了清楚起见未在图2中示出的附加项目。例如,视频译码系统200可以包括处理器、射频类型(RF)收发器、显示器和/或天线。此外,视频译码系统200可以包括为了清楚起见未在图2中示出的附加项目,诸如扬声器、麦克风、加速度计、存储器、路由器、网络接口逻辑等。

在一些示例中,视频译码系统200可执行流划分操作。例如,示出了两个单独的流(例如,第一编码器流201和第二编码器流201');然而,除了这里列出的两个之外,可以利用任何数量的编码器流。

例如,帧划分模块202可以执行将单独的视频帧划分为两个段,其中每个段被分配给两个编码器流(例如,第一流201和第二流201')中的一个。在这样的示例中,可以经由第一编码器流201处理第一帧划分,并且可以经由第二编码器流201'处理第二帧划分。与第一帧划分相关联的信息(例如,诸如预测模式、重构像素等)可用于第一编码器流201中的译码。类似地,与第二帧划分相关联的信息(例如,诸如预测模式、重构像素等)可以用于第二编码器流201'中的译码。

例如,在视频译码系统200在第一编码器流201上的操作期间,可以以视频数据帧的形式将当前视频信息提供给帧划分模块202。当前视频帧可由帧划分模块202划分为两个段。当前视频帧的单独划分帧段的第一半部分可在模块204处划分为最大译码单元(LCU),且接着传递到残差预测模块206。

残差预测模块206的输出可以通过变换和量化模块208经历已知的视频变换和量化处理。变换和量化模块208的输出可以被提供给熵译码模块209(其可以作为编码比特流211输出)和去量化和逆变换模块210。去量化和逆变换模块210可以实施由变换和量化模块208进行的操作的逆操作,以将残差预测模块206的输出提供给残差重构模块212。本领域技术人员可以认识到,如本文所描述的变换和量化模块以及去量化和逆变换模块可以采用缩放技术。残差重构模块212的输出可以反馈到残差预测模块206,并且还可以被提供给包括去块过滤器214、样本自适应偏移滤波器216、自适应环路滤波器218、缓冲器220、运动估计模块222、运动补偿模块224和帧内预测模块226等的环路。如图2所示,运动补偿模块224或帧内预测模块226的输出都与残差预测模块206的输出合并作为去块过滤器214的输入,并且与LCU分割模块204的输出的差作为到残差预测模块206的输入。

类似地,在视频译码系统200在第二编码器流201'上的操作期间,可将当前视频帧的单独划分帧段的第二半部分提供到LCU分割模块204'。当前划分帧段可以在模块204'处被分割为最大译码单元(LCU),然后被传递到变换和量化模块208'。

变换和量化模块208'可执行已知视频变换和量化过程。变换和量化模块208'的输出可以被提供给熵译码模块209'(其可以作为编码比特流211'输出)以及去量化和逆变换模块210'。去量化和逆变换模块210'可以实施由变换和量化模块208'进行的操作的逆操作,以将LCU模块204'的输出提供给残差重构模块212',并且还可以被提供给包括去块过滤器214'、样本自适应偏移滤波器216'、自适应环路滤波器218'、缓冲器220'、运动估计模块222'、运动补偿模块224'和帧内预测模块226'的环路。本领域技术人员可以认识到,如本文所描述的变换和量化模块以及去量化和逆变换模块可以采用缩放技术。残差重构模块212'的输出可以反馈到残差预测模块206',并且还可以被提供给包括去块过滤器214'、样本自适应偏移滤波器216'、自适应环路滤波器218'、缓冲器220'、运动估计模块222'、运动补偿模块224'和帧内预测模块226'等的环路。如图2所示,运动补偿模块224'或帧内预测模块226'的输出都与去量化和逆变换模块210'的输出合并作为去块过滤器214'的输入,并且与LCU分割模块204'的输出差作为到变换和量化模块208'的输入。

如下面将更详细地讨论的,视频译码系统200可以用于执行下面结合图4和/或图7讨论的各种功能中的一些或全部。

图3A是示出根据本发明的至少一些实现配置的示例视频处理方案300的图。方案300可以包括如操作302等中的一个或多个所示的一个或多个操作、功能或动作。

在发射器301侧,图形处理单元(GPU)302可产生高分辨率图像(例如,对于3840乘2160像素(4K))且存储在帧缓冲器303中。

然后,图像可以被分割成两部分304/305。例如,图像可以分割成两部分,其中存在左半部分和右半部分。这样的图像分割可以在硬件、固件和/或软件中实施。

接下来,可以并行地对图像的两个半部304/305中的每个进行编码。例如,可以经由并行运行的两个分开的视频编码器306/307并行地对图像的两个半部中的每个进行编码。

在这样的实现中,使用两个视频编码器可以允许降低的时钟频率,从而允许视频压缩过程的降低的功耗。这允许在支持无线显示的低功率SoC中实施本文公开的一个或多个示例性实施例。

两个编码器306/307可以产生两个分开的分组流308/309。

这两个分开的分组流308/309可以以从无线发射器MAC层310到无线接收器MAC层312的方式无线地发送到接收器322。

在接收器322处,可以使用分组复用器320,以便将两个分开的接收分组流318/319组合成单个流。例如,复用器322可以正确地对分组排序,以将两个分开的分组流318/319组合成单个流,以便以解码器期望的顺序呈现分组(例如,一次一片,从图像的顶部开始,直到图像底部的最后一片)。

应当理解,分组复用器320可以位于本文描述的通信的编码器306/307侧或解码器324侧。

修改的无线解码器324可以取得重新排序(复用)的分组并且执行视频解码过程。注意,在一些实现中,流ID/程序ID和/或first_mb_in_slice值可以不同于由单个视频编码器(例如,以两倍时钟频率运行的单个视频编码器)使用的值。因此,这种修改的解码器324可以适于支持这些改变,以便解码复用流。另外,修改的解码器324可以适于支持某种形式的数字内容保护(例如,高带宽数字内容保护(HDCP)等)解密(例如,通过使用用于屏幕的左半部分和右半部分的分开的密钥,或当从屏幕的左半部分转换到右半部分时支持跳过一些计数器值等)。

在操作中,可以有两个分开的编码数据流可以从编码器306/307传输到修改的解码器324,以用于在高分辨率显示器上显示解码帧326。类似地,本文所描述的概念可以特别适用于在低功率/高分辨率无线显示系统中的实现。例如,本文描述的概念可以支持一个较高分辨率显示器和/或两个低分辨率显示器。在硬件实现中,本文描述的概念可以包括例如片上系统(SoC)中的视频压缩引擎的两个实例。

另外,在本文所描述的概念的一些实现中,所得到的压缩视频流可能不符合现有视频译码器的假设参考解码器(HRD)。因此,在一些实现中,假设参考解码器(HRD)可以适于处理正被编码和解码为两个分开的流的数据。

通过采用并行运行的两个视频编码器并将图像分割成左半部分和右半部分(如图所示),与以两倍时钟频率运行单个视频编码器相比,可以不引入附加的端到端(编码器到解码器)延迟。这是因为对于每个宏块行,并行运行的两个编码器可以以与具有双倍时钟频率的单个编码器相同的速率产生压缩分组。这与使用第一编码器对偶数帧进行编码以及使用第二编码器对奇数帧进行编码的更简单的方法形成对比。在这种情况下,将花费两个视频帧(而不是一个视频帧)的时间,直到编码分组准备好(因为每个编码器需要两个视频帧的时间来编码单个视频帧)。这意味着与本文给出的方法相比,可能引入一个视频帧的附加延迟。这里介绍的方法特别适合无线显示,其中低的端到端延迟是关键。这是因为在交互式场景中使用无线显示器,例如,在用户界面中移动鼠标/点击按钮。在这些使用情况下,引入端到端延迟的另一个视频帧将可能严重降低用户体验。

关于视频质量,在一个目标实现中,其是使用WiGig WDE标准的无线显示,可以没有去块过滤器,并且每个宏块行可以被分割成8片(即,每个半宏块行的4片,以60FPS的3840×2160)。此外,通常使用非常高的质量-这可以瞄准视觉上无损的质量。因此,在实践中,图像在视觉上是无损的,并且用户在帧被分成两部分的地方检测到伪迹的风险很小。此外,可以使用软件来监视由编码器产生的每个半图像的质量,并且可以修改目标压缩比特率/压缩帧大小分配,以便确保来自两个编码器的质量相似。

如下面将更详细地讨论的,视频译码方案300可以用于执行下面结合图14和/或图7讨论的各种功能中的一些或全部。

关于方案300的附加和/或替代细节在下面在图3B中描述。

图3B是示出根据本发明的至少一些实现配置的示例视频处理方案300的图。方案300可以包括如操作302等中的一个或多个所示的一个或多个操作、功能或动作。

在发射器301侧,图形处理单元(GPU)302可产生高分辨率图像(例如,对于3840乘2160像素(4K))且存储在帧缓冲器303中。

然后,图像可以被分成两部分354/355。例如,图像可以分割成两部分,其中存在上半部分和下半部分。这样的图像分割可以在硬件、固件和/或软件中实现。

接下来,可以并行地对图像的两个半部354/355中的每个进行编码。例如,可以通过并行运行的两个分开的视频编码器306/307并行地对图像的两个半部中的每个进行编码。

在这样的实现中,使用两个视频编码器可以允许降低的时钟频率,从而允许视频压缩过程的降低的功耗。这允许在支持无线显示的低功率SoC中实施本文公开的一个或多个示例性实施例。

两个编码器306/307可以产生两个分开的分组流308/309。

这两个单独的分组流308/309可以以从无线发射器MAC层310到无线接收器MAC层312的方式无线地发送到接收器322。

在接收器322处,可以使用分组复用器320,以便将两个分开的接收分组流318/319组合成单个流。例如,复用器322可以正确地对分组排序,以将两个分开的分组流318/319组合成单个流,以便以解码器期望的顺序呈现分组(例如,一次一片,从图像的顶部开始,直到图像底部的最后一片)。

应当理解,分组复用器320可以位于本文描述的通信的编码器306/307侧或解码器324侧。

修改的无线解码器324可以取得重新排序(复用)的分组并且执行视频解码过程。注意,在一些实现中,流ID/程序ID和/或first_mb_in_slice值可以不同于由单个视频编码器(例如,以两倍时钟频率运行的单个视频编码器)使用的值。因此,这种修改的解码器324可以适于支持这些改变,以便解码复用流。另外,修改的解码器324可以适于支持某种形式的数字内容保护(例如,高带宽数字内容保护(HDCP)等)解密(例如,通过使用屏幕的用于左半部分和右半部分的分开的密钥,或当从屏幕的左半部分转换到右半部分时支持跳过一些计数器值等)。

在操作中,可以有两个单独的编码数据流可以从编码器306/307传输到修改的解码器324,以用于在高分辨率显示器上显示解码帧326。类似地,本文所描述的概念可以特别适合于在低功率/高分辨率无线显示系统中的实现。例如,本文描述的概念可以支持一个较高分辨率显示器和/或两个低分辨率显示器。在硬件实现中,本文描述的概念可以包括例如片上系统(SoC)中的视频压缩引擎的两个实例。

另外,在本文所描述的概念的一些实现中,所得到的压缩视频流可能不符合现有视频译码器的假设参考解码器(HRD)。因此,在一些实现中,假设参考解码器(HRD)可以适于处理正被编码和解码为两个分开的流的数据。

如下面将更详细地讨论的,视频译码方案300可以用于执行下面结合图 4和/或图7讨论的各种功能中的一些或全部。

图4是示出根据本公开的至少一些实施方式配置的示例译码过程400的流程图。过程400可以包括如操作402等中的一个或多个所示的一个或多个操作、功能或动作。

过程400可以开始于操作402“执行将视频帧的帧划分成段以形成第一帧段流和第二帧段流”,其中可以形成第一帧段流和第二帧段流。例如,视频帧可以被划分为段以形成第一帧段流和第二帧段流。

过程400可以在操作404“经由第一编码器编码第一帧段流和经由第二编码器编码第二帧段流”处继续,其中第一帧段流和第二帧段流可以被编码。例如,第一帧段流可以经由第一编码器编码,而第二帧段流可以经由第二编码器编码。

过程400可以提供用于视频译码,诸如视频编码、解码和/或比特流传输技术,其可以由如本文所讨论的译码器系统采用。

图5示出根据本公开的至少一些实现配置的示例性比特流500。在一些示例中,比特流500可对应于从译码器100输出的比特流(例如,图2中的编码的比特流211和/或211')和/或对应的到解码器的输入比特流。尽管为了清楚呈现起见未在图5中示出,在一些示例中,比特流500可包括头部分502和数据部分504。在各种示例中,比特流500可包括与编码如本文所讨论的视频帧相关联的数据、指示符、索引值、模式选择数据等。如所讨论的,比特流500可以由编码器产生和/或由解码器接收用于解码,使得解码的视频帧可以经由显示设备呈现。

图6是示出根据本发明的至少一些实现配置的示例解码过程600的流程图。过程600可以包括由操作602等中的一个或多个所示的一个或多个操作、功能或动作等。过程600可以形成视频译码过程的至少一部分。作为非限制性示例,过程600可以形成可以由图1的译码器系统100或者相同或相似设计的解码器系统(未示出)的内部解码器环路进行的视频解码过程的至少一部分。

过程600可以开始于操作602“接收编码比特流”,其中可以接收视频序列的比特流。例如,可以在视频解码器处接收如本文所讨论的编码的比特流。

过程600可以在操作603“执行第一编码分组流和第二编码分组流的分组复用”处继续,其中可以执行第一编码分组流和第二编码分组流的分组复用。例如,下面参照图3更详细地描述这种操作的一个示例。

过程600可以在操作604“解码熵编码的比特流以产生量化变换系数”处继续,其中比特流可以被解码以产生量化的变换系数。在一些示例中,解码的数据可包含对分区指示符、块大小数据、变换类型数据、量化器(Qp)、经量化变换系数等和/或它们的组合译码。

过程600可在操作606“将量化器(Qp)应用于量化系数以产生变换系数的去量化块”处继续,其中可将量化器(Qp)应用于量化的变换系数以产生变换系数的去量化块。

过程600可在操作608“对变换系数的去量化块执行逆变换”处继续,其中,可对变换系数的每个去量化块执行逆变换。例如,执行逆变换可以包括与用于本文所讨论的编码的任何正向变换的逆的逆变换类似或相同的逆变换过程。

过程600可以在操作610“至少部分地基于变换系数的去量化和逆块产生重构的分区”处继续,其中可以至少部分地基于变换系数的去量化和逆块来产生重构的预测分区。例如,可以将预测分区添加到由变换系数的给定去量化和逆块表示的解码预测误差数据分区,以产生重构的预测分区。

过程600可以在操作612“组装重构的分区以产生瓦片或超片段”处继续,其中重构的预测分区可以被组装以产生瓦片或超片段。例如,可以组合重构的预测分区以产生瓦片或超片段。

过程600可以在操作614“组装瓦片或超片段以产生完全解码的图片”处继续,其中可以组装(和/或进一步处理)图片的瓦片或超片段以产生完全解码的图片。例如,在任选的过滤(例如,去块滤波、质量恢复过滤和/或类似物等)之后,可以组合瓦片或超片段以产生完全解码图片,其可以经由解码的图片缓冲器(未示出)存储和/或在图片重组之后经由显示设备传输以用于呈现。

在操作中,去量化可以由图1的去量化和逆变换模块110执行,和/或通过具有对应于图1的译码器系统100的内部解码器环路的结构的解码器中的类似或相同模块执行。类似地,在一些实现中,过程600的逆变换可由图1的去量化和逆变换模块110执行,和/或通过具有对应于图1的译码器系统100的内部解码器环路的结构的解码器中的类似或相同模块执行。本领域技术人员可以认识到,通过缩放和由图6中的604输出的量化变换系数的饱和来实现去量化;作用于去量化数据的逆变换过程可以类似于操作中的108的正向变换,但是具有不同的变换矩阵。

与本文所讨论的过程400、600和其它过程相关的一些附加和/或替代细节可以在本文中(具体是下文结合图7)讨论的实现的一个或多个示例中示出。

图7A提供根据本公开的至少一些实现配置的示例视频译码系统800(更详细地参见图8)和操作中的视频译码过程700的说明图。在所示的实现中,过程700可以包括由动作710等中的一个或多个所示的一个或多个操作、功能或动作。

作为非限制性示例,本文将参考包括图1的译码器100的示例视频译码系统800来描述过程700,如下面关于图8进一步讨论的。在各种示例中,过程700可以由包括编码器和解码器的系统或由具有采用编码器(以及任选地地解码器)的一个系统和采用解码器(以及任选地编码器)的另一系统的独立系统来进行。还要注意,如上所述,编码器可以包括采用作为编码器系统的一部分的本地解码器的本地解码环路。

如图所示,视频译码系统800(更详细地参见例如图8)可以包括逻辑模块850。例如,逻辑模块850可以包括关于本文所描述的任何编码器系统或子系统所讨论的任何模块。例如,逻辑模块850可以包括并行译码逻辑模块860和/或类似物。

过程700可以开始于操作710“形成第一帧段流和第二帧段流”,其中可以形成第一帧段流和第二帧段流。例如,帧划分模块702可以执行将视频帧的帧划分成段以形成第一帧段流和第二帧段流。

过程700可以从操作710进行以在操作720“经由第一编码器编码第一帧段流和经由第二编码器编码第二帧段流”处继续,其中可以对第一帧段流和第二帧段流进行编码。例如,第一帧段流可以经由第一编码器704编码,而第二帧段流可以经由第二编码器705编码。

过程700可以从操作720进行以在操作730“执行第一编码分组流和第二编码分组流的分组复用”处继续,其中第一编码分组流和第二编码分组流可以被复用。例如,第一编码分组流和第二编码分组流可以经由适于处理分组流的复用器706复用,其中帧被分割成由分开的编码器处理的部分。

在一些实现中,复用器706可以被配置成以正确的顺序排列分组,使得它们可以被解码。例如,复用器706可以正确地对分组排序,以将两个分开的分组流组合成单个流,以便以解码器708期望的顺序呈现分组(例如,一次一片,从图像的顶部开始,直到图像底部的最后一片)。

过程700可以从操作730进行以在操作740“解码复用的第一编码分组流和第二编码分组流”处继续,其中可以解码复用的第一编码分组流和第二编码分组流。例如,复用的第一编码分组流和第二编码分组流可以经由解码器708解码。

下面关于图7B进一步讨论视频译码过程700的附加和/或替代操作。

图7B提供根据本发明的至少一些实现配置的示例视频译码系统800(更详细地参见图8)和操作中的视频译码过程700的另一说明图。在所示的实现中,过程700可以包括如由动作712等中的一个或多个所示的一个或多个操作、功能或动作。

作为非限制性示例,本文将参考包括图1的译码器100的示例视频译码系统800来描述过程700,如下面关于图8进一步讨论的。在各种示例中,过程700可以由包括编码器和解码器的系统或者通过具有采用编码器(以及任选地解码器)的一个系统和采用解码器(以及任选地编码器)的另一系统的单独系统来进行。还要注意,如上所述,编码器可以包括采用作为编码器系统的一部分的本地解码器的本地解码环路。

如图所示,视频译码系统800(更详细地参见例如图8)可以包括逻辑模块850。例如,逻辑模块850可以包括关于本文所描述的译码器系统或子系统中的任一个所讨论的任何模块。例如,逻辑模块850可以包括并行译码逻辑模块860和/或类似物。

过程700可以在操作710“形成第一帧段流和第二帧段流”处开始,其中可以形成第一帧段流和第二帧段流。例如,帧划分模块702可以执行将视频帧的帧划分成段以形成第一帧段流和第二帧段流。

过程700可以从操作710进行以在操作720继续,其中可以对第一帧段流和第二帧段流进行编码。例如,第一帧段流可以经由第一编码器704编码,而第二帧段流可以经由第二编码器705编码。

在一些实现中,可以基于视频帧的左/右划分来执行帧划分。另选地,可以基于视频帧的顶/底划分来执行帧划分。

操作720可以任选地包括操作722“将地址分配给第一帧段流和第二帧段流中的宏块如同整个帧的部分”,其中定址到第一帧段流中的宏块,如同可以分配第一帧段一样。例如,第一编码器可以将地址分配给第一帧段流中的宏块,如同第一帧段被编码为整个帧的一部分。类似地,第二编码器可以将地址分配给第二帧段流中的宏块,如同第二帧段被编码为相同整个帧的一部分。

操作720可以任选地包括操作724“用相应的第一密钥和第二密钥来加密第一帧段流和第二帧段流”,其中第一编码分组流和第二编码分组流可以用相应的第一密钥和第二密钥加密。例如,第一编码器可以至少部分地基于第一高带宽数字内容保护(HDCP)密钥来加密第一帧段流。类似地,第二编码器可以至少部分地基于第二高带宽数字内容保护(HDCP)密钥来加密第二帧段流。

操作720可以任选地包括操作726“调整第一帧段流和第二帧段流之间的相对质量”,其中第一编码分组流和第二编码分组流的相对质量可以相对于彼此被调整。例如,编码器704/705的速率控制器部分可以至少部分地基于与第一帧段流相关联的第一量化参数和与第二帧段流相关联的不同的第二量化参数来调整第一帧段流与第二帧段流之间的相对质量。

过程700可以从操作720进行以在操作730“执行第一编码分组流和第二编码分组流的分组复用”处继续,其中第一编码分组流和第二编码分组流可以被复用。例如,第一编码分组流和第二编码分组流可以经由适于处理分组流的复用器706复用,其中帧被分割成由分开的编码器处理的部分。

在一些实现中,复用器706可以至少部分地基于重写第一帧段流和第二帧段流中的分组头来实施第一分组流和第二分组流的分组复用,使得各宏块表现为形成单个复用流。例如,由复用器706完成的重写通常不在宏块级,而是在分组级。在一个示例中,在WDE中,可以存在分组序列号(其中分组通常包含几个宏块),并且来自两个流的序列号可能需要合并,使得将在复用器的输出处具有0、1、2、3、4、5(例如,代替第一编码器的0、1、2和第二编码器的2、3、4;注意两个序列号序列没有以任何方式连接)。

应当理解,复用器706可以位于本文描述的通信的编码器704/705侧或解码器708侧。

过程700可以从操作730进行以在操作740“解码复用的第一编码分组流和第二编码分组流”处继续,其中可以解码复用的第一编码分组流和第二编码分组流。例如,复用的第一编码分组流和第二编码分组流可以经由解码器708来解码。

在一些实现中,解码器708可以对来自复用的流的帧解密,其中第一帧段流可以至少部分地基于第一高带宽数字内容保护(HDCP)密钥来解密,并且第二帧段流可以至少部分地基于第二高带宽数字内容保护(HDCP)密钥来解密。

在一些实现中,解码器708可以忽略复用流中的帧划分的非必要数据伪迹,以便能够在第一帧段流和第二帧段流之间切换。例如,解码器708可以被修改为忽略帧划分的非必要数据伪迹,例如不同的分组序列号、不同的程序ID、不同的流ID、不同的HDCP加密密钥、图像中的不同宏块位置和/或它们的组合,以便能够在第一帧段流和第二帧段流之间切换,以将两个单独产生的半图像解码为一个图像(例如,通过在不同的分组序列号、不同的程序ID、不同的流ID、不同的HDCP加密密钥和/或图像中的不同宏块位置之间切换)。这将允许不对编码器进行改变(例如,每个编码器704/705可以对其自身的图像的一半进行编码,但是如果将这两个流放在一起,则不会获得与单个大编码图像的情况相同的输出)。相反,在这样的示例中,可以修改解码器708以便接受两个半图像并且将它们组合在解码器708内。

过程700可以从操作740进行以在操作742“经由显示器显示解码帧”处继续,其中可以显示解码帧。例如,可以经由显示器(未示出)显示解码的帧。

虽然本文中的示例过程的实现可以包括进行按照所示顺序示出的所有操作,但是本公开在这方面不受限制,并且在各种示例中,本文的示例过程的实现可以包括仅进行所示和/或以与所示的不同的顺序示出的操作的子集。另外,虽然一组特定的块或动作被示为与特定模块相关联,但是这些块或动作可以与这里所示的特定模块不同的模块相关联。

本文所描述的系统和/或过程的各种组件可以在软件、固件和/或硬件和/或它们的任何组合中实现。例如,本文所描述的系统和/或过程的各种组件可以至少部分地由计算片上系统(SoC)的硬件提供,该SoC为诸如可以在计算系统中找到,例如,智能电话。本领域技术人员可以认识到,本文描述的系统可以包括在相应的附图中未示出的附加组件。

如在本文描述的任何实现中使用的,术语“模块”可以指“组件”或“逻辑单元”,如这些术语在下面描述。因此,术语“模块”可以指被配置成提供本文描述的功能的软件逻辑、固件逻辑和/或硬件逻辑的任何组合。例如,本领域普通技术人员将理解,由硬件和/或固件执行的操作可以替代地经由软件组件来实现,软件组件可以被实现为软件包、代码和/或指令集,并且还理解逻辑单元还可以利用软件的一部分来实现其功能。

如在本文所描述的任何实现中所使用的,术语“组件”是指被配置成提供本文描述的功能的软件逻辑和/或固件逻辑的任何组合。软件逻辑可以实现为软件包、代码和/或指令集和/或存储由可编程电路执行的指令的固件。这些组件可以共同地或单独地实现为实现为更大系统的一部分,例如集成电路(IC)、片上系统(SoC)等。

如在本文描述的任何实现中使用的,术语“逻辑单元”是指被配置成提供本文描述的功能的固件逻辑和/或硬件逻辑的任何组合。如在本文中所描述的任何实现中使用的“硬件”可以包括例如单个或任何组合的硬连线电路、可编程电路、状态机电路和/或存储由可编程电路执行的指令的固件。逻辑单元可以共同地或单独地实现为形成较大系统(例如集成电路(IC)、片上系统(SoC)等)的一部分的电路。例如,逻辑单元可以在用于实现本文所讨论的系统的固件或硬件的逻辑电路中实现。此外,本领域普通技术人员将理解,由硬件和/或固件执行的操作还可以利用软件的一部分来实施逻辑单元的功能。

另外,可以响应于由一个或多个计算机程序产品提供的指令来进行本文所述的过程的任何一个或多个块。此类程序产品可以包括提供指令的信号承载介质,该指令当由例如处理器执行时可以提供本文描述的功能。计算机程序产品可以以任何形式的计算机可读介质提供。因此,例如,包括一个或多个处理器核心的处理器可以响应于通过计算机可读介质传送到处理器的指令,进行图4、图6和图7所示的框中的一个或多个。

图8是根据本发明的至少一些实现配置的实例视频译码系统800的说明图。在所示的实现中,虽然视频译码系统800被示出为具有视频编码器802和视频解码器804两者,但在各种实例中,视频译码系统800可仅包括视频编码器802或仅包括视频解码器804。视频译码系统800(其在各种示例中可仅包括视频编码器802或仅包括视频解码器804)可包括图像源801(例如,GPU型图像源)、天线803、一个或多个处理器806、一个或多个存储器808和/或显示设备810。如图所示,图像源801、天线803、视频编码器802、视频解码器804、处理器806、存储器808和/或显示设备810可以能够彼此通信。

在一些实现中,视频译码系统800可包含天线803。例如,天线803可被配置成发射或接收视频数据的编码比特流。处理器806可以是任何类型的处理器和/或处理单元。例如,处理器806可以包括不同的中央处理单元、不同的图形处理单元、集成片上系统(SoC)架构等和/或它们的组合。另外,存储器808可以是任何类型的存储器。例如,存储器808可以是易失性存储器(例如,静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)等)或非易失性存储器(例如闪存等)等。在非限制性示例中,存储器808可以由高速缓存存储器来实现。此外,在一些实施方案中,视频译码系统800可包括显示装置810。显示设备810可以被配置成呈现视频数据。

如图所示,在一些示例中,视频译码系统800可以包括逻辑模块850。虽然被示为与视频编码器802相关联,但是视频解码器804可以类似地与所示的逻辑模块850相同和/或相似的逻辑模块相关联。因此,视频解码器804可以包括逻辑模块850的全部或部分。例如,天线803、视频解码器804、处理器806、存储器808和/或显示器810可以能够彼此通信和/或与逻辑模块850的部分通信。类似地,视频编码器802可以包括与逻辑模块850相同和/或相似的逻辑模块。例如,图像源801和视频编码器802能够彼此通信和/或与与逻辑模块850相同和/或类似的逻辑模块的通信。

在一些实现中,逻辑模块850可以实现如关于本文所描述的任何系统或子系统所讨论的各种模块。在各种实施例中,逻辑模块850中的一些可以用硬件实施,而软件可以实施其它逻辑模块。例如,在一些实施例中,逻辑模块850中的一些可以由专用集成电路(ASIC)逻辑来实施,而其它逻辑模块可以由诸如处理器806的逻辑执行的软件指令来提供。然而,本公开不限于此,并且逻辑模块850中的一些可以由硬件、固件和/或软件的任何组合来实施。

图9是根据本公开的至少一些实施方式配置的示例系统900的示意图。在各种实现中,系统900可以是媒体系统,但系统900不限于该上下文。例如,系统900可以结合到个人计算机(PC)、膝上型计算机、超级本计算机、平板、触摸板、便携式计算机、手持计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视、智能设备(例如智能电话,智能平板电脑或智能电视)、移动互联网设备(MID)、消息传递设备,数据通信设备、照相机(例如即拍照相机、超变焦照相机、透镜反射(DSLR)相机))等中。

在各种实现中,系统900包括耦合到显示器920的平台902。平台902可以从诸如内容服务设备930或内容传送设备940或其它类似内容源的内容设备接收内容。包括一个或多个导航特征的导航控制器950可以用于与例如平台902和/或显示器920交互。下面更详细地描述这些组件中的每个。

在各种实现中,平台902可以包括芯片组905、处理器910、存储器912、天线913、存储装置914、图形子系统915、应用916和/或无线电918的任何组合。芯片组905可以提供处理器910、存储器912、存储装置914、图形子系统915、应用916和/或无线电918之间的相互通信。例如,芯片组905可以包括能够提供与存储装置914的相互通信的存储适配器(未示出)。

处理器910可以被实施为复杂指令集计算机(CISC)或精简指令集计算机(RISC)处理器、x86指令集兼容处理器、多核或任何其它微处理器或中央处理单元(CPU)。在各种实现中,处理器910可以是双核处理器、双核移动处理器等。

存储器912可以实施为易失性存储器设备,诸如但不限于随机存取存储器(RAM)、动态随机存取存储器(DRAM)或静态RAM(SRAM)。

存储装置914可以被实施为非易失性存储设备,诸如但不限于磁盘驱动器、光盘驱动器、磁带驱动器、内部存储设备、附加存储设备、闪存、电池备份SDRAM(同步DRAM)和/或网络可访问存储设备。在各种实现中,例如,当包括多个硬盘驱动器时,存储装置914可以包括用于提高对有价值数字媒体的存储性能增强保护的技术。

图形子系统915可以执行诸如静止图像或视频的图像的处理以用于显示。图形子系统915可以是例如图形处理单元(GPU)或视觉处理单元(VPU)。模拟或数字接口可以用于通信地耦合图形子系统915和显示器920。例如,接口可以是高清晰度多媒体接口、显示端口、无线HDMI、WiGig无线显示扩展(WDE)和/或无线HD兼容技术中的任一个。图形子系统915可以集成到处理器910或芯片组905中。在一些实现中,图形子系统915可以是通信地耦合到芯片组905的独立设备。

本文所描述的图形和/或视频处理技术可以在各种硬件架构中实现。例如,图形和/或视频功能可以集成在芯片组内。另选地,可以使用离散的图形和/或视频处理器。作为又一实现,图形和/或视频功能可以由包括多核处理器的通用处理器提供。在另外的实施例中,所述功能可以在消费电子设备中实现。

无线电设备918可以包括能够使用各种合适的无线通信技术来传输和接收信号的一个或多个无线电设备。此类技术可以涉及跨一个或多个无线网络的通信。示例性无线网络包括(但不限于)无线局域网(WLAN)、无线个域网(WPAN)、无线城域网(WMAN)、蜂窝网络和卫星网络。在跨这些网络进行通信时,无线电设备918可以根据任何版本中的一个或多个适用的标准来操作。

在各种实现中,显示器920可以包括任何电视型监视器或显示器。显示器920可以包括例如计算机显示屏、触摸屏显示器、视频监视器、电视类设备和/或电视。显示器920可以是数字和/或模拟的。在各种实现中,显示器920可以是全息显示器。此外,显示器920可以是可以接收视觉投影的透明表面。此类投影可以传达各种形式的信息、图像和/或对象。例如,此类投影可以是用于移动增强现实(MAR)应用的视觉覆盖。在一个或多个软件应用916的控制下,平台902可以在显示器920上显示用户界面922。

在各种实现中,内容服务设备930可以由任何国家、国际和/或独立服务托管,并且因此例如经由因特网可访问到平台902。内容服务设备930可以耦合到平台902和/或显示器920。平台902和/或内容服务设备930可以耦合到网络960以向和从网络960传输(例如,发送和/或接收)媒体信息。内容传送设备940还可以耦合到平台902和/或显示器920。

在各种实现中,内容服务设备930可以包括能够传送数字信息和/或内容的有线电视盒、个人计算机、网络、电话、启用因特网的设备或电器,以及能够经由网络960或直接在内容提供商和平台902和/显示器920之间单向或双向地传输内容的任何其它类似的设备。应当理解,内容可以经由网络960单向和/或双向地向和从系统900中的组件中的任一个和内容提供商传输。内容的示例可以包括任何媒体信息,包括例如视频、音乐、医疗和游戏信息等。

内容服务设备930可以接收诸如包括媒体信息、数字信息和/或其它内容的有线电视节目的内容。内容提供商的示例可以包括任何有线或卫星电视或无线电或因特网内容提供商。所提供的示例并不意味着以任何方式限制根据本公开的实现。

在各种实现中,平台902可以从具有一个或多个导航特征的导航控制器950接收控制信号。例如,控制器950的导航特征可以用于与用户界面922交互。在各种实施例中,导航控制器950可以是定点设备,其可以是允许用户将空间(例如,连续和多维)数据输入到计算机中的计算机硬件组件(具体地,人机接口设备)。诸如图形用户界面(GUI)以及电视和监视器的许多系统允许用户使用物理手势来控制并向计算机或电视机提供数据。

控制器950的导航特征的移动可通过显示器上显示的指针、光标、聚焦环或其它视觉指示器的移动而在显示器(例如,显示器920)上复制。例如,在软件应用916的控制下,位于导航控制器950上的导航特征可以被映射到在用户界面922上显示的虚拟导航特征。在各种实施例中,控制器950可以不是分开的组件,而是可以集成到平台902和/或显示器920中。然而,本公开不限于本文所示或所描述的元件或上下文。

在各种实现中,驱动器(未示出)可以包括使得用户能够在例如启用时在初始引导之后利用按钮的触摸来像电视机一样立即打开和关闭平台902的技术。即使当平台被“关闭”时,程序逻辑可允许平台902将内容流式传输到媒体适配器或其它内容服务设备930或内容传送设备940。此外,芯片组905可以包括例如用于(5.1)环绕声音频和/或高清晰度(7.1)环绕声音频的硬件和/或软件支持。驱动器可以包括用于集成图形平台的图形驱动器。在各种实施例中,图形驱动器可以包括外围组件互连(PCI)快速图形卡。

在各种实现中,可以集成系统900中所示的组件中的任何一个或多个。例如,可以集成平台902和内容服务设备930,或者可以集成平台902和内容传送设备940,或者可以集成平台902、内容服务设备930和内容传送设备940。在各种实现中,平台902和显示器920可以是集成单元。例如,可以集成显示器920和内容服务设备930,或者可以集成显示器920和内容传送设备940。这些示例不意味着限制本公开。

在各种实施例中,系统900可以实施为无线系统、有线系统或两者的组合。当实现为无线系统时,系统900可以包括适用于通过无线共享介质(诸如一个或多个天线、发射器、接收器、收发器、放大器、滤波器、控制逻辑等)进行通信的组件和接口。无线共享介质的示例可以包括无线频谱的部分,诸如RF频谱等。当被实施为有线系统时,系统900可以包括适用于通过有线通信介质进行通信的组件和接口,诸如输入/输出(I/O)适配器、将IO适配器与相应的有线通信介质连接的物理连接器、网络接口卡(NIC)、盘控制器、视频控制器、音频控制器等。有线通信介质的示例可以包括线、电缆、金属引线、印刷电路板(PCB)、背板、交换结构、半导体材料、双绞线、同轴电缆、光纤等等。

平台902可以建立一个或多个逻辑或物理信道以传输信息。该信息可以包括媒体信息和控制信息。媒体信息可以指代表用于用户的内容的任何数据。内容的示例可以包括例如来自语音对话、视频会议、流视频、电子邮件(“电子邮件”)消息、语音邮件消息、字母数字符号、图形、图像、视频、文本等的数据。来自语音会话的数据可以是例如语音信息、静默时段、背景噪声、舒适噪声、音调等。控制信息可以指代表用于自动化系统的命令、指令或控制字的任何数据。例如,控制信息可以用于通过系统路由媒体信息,或者指示节点以预定方式处理媒体信息。然而,实施例不限于图9中示出或描述的元素或上下文。

如上所述,系统900可以以变化的物理样式或形式因素来实现。图10示出其中可以实现系统1000的小形状因子设备1000的实现。在各种实施例中,例如,设备1000可以实施为具有无线能力的移动计算设备。移动计算设备可以指具有处理系统和移动电源或电源供应(诸如一个或多个电池)的任何设备。

如上所述,移动计算设备的示例可以包括个人计算机(PC)、膝上型计算机、超级本计算机、平板、触摸板、便携式计算机、手持计算机、掌上计算机、个人数字助理蜂窝电话/PDA、电视、智能设备(例如,智能电话、智能平板或智能电视)、移动互联网设备(MID)、消息传递设备、数据通信设备、照相机、数字单镜头反射(DSLR)相机)等。

移动计算设备的示例还可以包括被配置为由人佩戴的计算机,诸如腕部计算机、手指计算机、环形计算机、眼镜计算机、皮带夹计算机、臂带计算机、鞋计算机、服装计算机、和其它可穿戴计算机。在各种实施例中,例如,移动计算设备可以被实施为能够执行计算机应用以及语音通信和/或数据通信的智能电话。尽管通过示例的方式用被实施为智能电话的移动计算设备来描述一些实施例,但是可以理解,也可以使用其它无线移动计算设备来实施其它实施例。实施例不限于该上下文。

如图10所示,设备1000可以包括外壳1002、可以包括用户接口1010的显示器1004、输入/输出(I/O)设备1006和天线1008。设备1000还可以包括导航特征1012。显示器1004可包括用于显示适合于移动计算设备的信息的任何合适的显示单元。I/O设备1006可以包括用于将信息输入到移动计算设备中的任何合适的I/O设备。用于I/O设备1006的示例可以包括字母数字键盘、数字键盘、触摸板、输入键、按钮、开关、摇杆开关、麦克风、扬声器、语音识别设备和软件、图像传感器等。信息也可以通过麦克风(未示出)输入到设备1000中。这样的信息可以由语音识别装置(未示出)数字化。实施例不限于该上下文。

可以使用硬件元件、软件元件或两者的组合来实施各种实施例。硬件元件的示例可以包括处理器、微处理器、电路、电路元件(例如,晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、逻辑门、寄存器、半导体器件、芯片、微芯片、芯片组等。软件的示例可以包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或它们的任何组合。确定实施例是否使用硬件元件和/或软件元件来实现可以根据任何数量的因素而变化,诸如期望的计算速率、功率水平、热容限、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度和其它设计或性能限制。

另外,本文所讨论的操作中的任何一个或多个可以响应于由一个或多个计算机程序产品提供的指令来进行。此类程序产品可以包括提供指令的信号承载介质,该指令当由例如处理器执行时可以提供本文描述的功能。计算机程序产品可以以任何形式的一个或多个机器可读介质提供。因此,例如,包括一个或多个处理器核心的处理器可以响应于由一个或多个机器传送到处理器的程序代码和/或指令或指令集来承担本文中的示例过程的操作中的一个或多个。通常,机器可读介质可以以程序代码和/或指令或指令集的形式传送软件,所述程序代码和/或指令或指令集可以使本文所述的设备和/或系统中的任一个实施如本文所讨论的系统的至少部分。

虽然已经参考各种实施方式描述了本文所阐述的某些特征,但本说明书并不旨在以限制的意义来解释。因此,对于本公开所属领域的技术人员显而易见的对本文所描述的实现的各种修改以及其它实现被认为落入本公开的精神和范围内。

以下实施例涉及另外的实施例。

在一个示例中,一种用于无线显示器的并行译码的计算机实施的方法可以包括:经由帧划分模块,执行将视频帧的帧划分成段以形成第一帧段流和第二帧段流;和/或经由第一编码器和第二编码器编码,经由第一编码器对第一帧段流编码并且经由第二编码器对第二帧段流编码。

在另一示例中,一种用于无线显示器的并行编码的计算机实施的方法还可以包括:基于视频帧的左/右划分或者基于视频帧的顶/底划分来执行帧划分。速率控制器可以至少部分地基于与第一帧段流相关联的第一量化参数和与第二帧段流相关联的不同的第二量化参数来调整第一帧段流和第二帧段流之间的相对质量。第一编码器可以将地址分配给第一帧段流中的宏块,如同第一帧段正被编码为整个帧的一部分;并且第二编码器可以将地址分配给第二帧段流中的宏块,如同第二帧段被编码为相同的整个帧的一部分。第一编码器可以至少部分地基于第一高带宽数字内容保护(HDCP)密钥来加密第一帧段流;并且第二编码器可以至少部分地基于第二高带宽数字内容保护(HDCP)密钥来加密第二帧段流。复用器可以至少部分地基于重写第一帧段流和第二帧段流中的分组头来执行第一分组流和第二分组流的分组复用,使得各宏块表现为形成单个复用流。解码器可以忽略复用流中的帧划分的非必要数据伪迹,以便能够在第一帧段流和第二帧段流之间切换。解码器可以解密来自复用流的帧,其中第一帧段流至少部分地基于第一高带宽数字内容保护(HDCP)密钥被解密,并且第二帧段流至少部分地基于第二高带宽数字内容保护(HDCP)密钥。显示器可以显示解码的帧。

在其它实例中,一种用于无线显示器的并行译码的系统可包括:无线发射器,其被配置成发射经译码的视频数据;通信地耦合到无线发射器的一个或多个处理器;通信地耦合到一个或多个处理器的一个或多个存储器;视频编码器的帧划分模块,其通信地耦合到一个或多个处理器,并且被配置成执行将视频帧的帧划分为段以形成第一帧段流和第二帧段流;和/或视频编码器的第一编码器和第二编码器,该第一编码器和第二编码器通信地耦合到一个或多个处理器并且被配置成经由第一编码器对第一帧段流编码和经由第二编码器对第二帧段流编码。

在另一示例中,用于无线显示器的并行译码的系统还可以包括基于视频帧的左/右划分或者基于视频帧的顶/底划分来执行帧划分。视频编码器的速率控制器可以通信地耦合到一个或多个处理器,并且被配置成至少部分地基于与第一帧段流相关联的第一量化参数和与第二帧段流相关联的不同的第二量化参数来调整第一帧段流与第二帧段流之间的相对质量。第一编码器还可以被配置成将地址分配给第一帧段流中的宏块,如同第一帧段被编码为整个帧的一部分;且第二编码器可进一步被配置成将地址分配给第二帧段流中的宏块,如同第二帧段被编码为相同整体帧的一部分。第一编码器还可以被配置成至少部分地基于第一高带宽数字内容保护(HDCP)密钥来加密第一帧段流;并且第二编码器还可以被配置成至少部分地基于第二高带宽数字内容保护(HDCP)密钥来加密第二帧段流。视频编码器的复用器通信地耦合到一个或多个处理器,并且被配置成至少部分地基于重写第一帧段流和第二帧段流中的分组头来执行第一分组流和第二分组流的分组复用,使得各宏块表现为形成单个复用流。

在另一示例中,一种用于无线显示器的并行解码的系统可以包括:显示设备,被配置成呈现解码的视频数据;通信地耦合到显示设备的一个或多个处理器;通信地耦合到一个或多个处理器的一个或多个存储器;和/或解码器,其通信地耦合到一个或多个处理器,并且被配置成:接收视频帧的帧被划分成段以形成第一帧段流和第二帧段流的输出;并且被配置成忽略第一帧段流和第二帧段流的复用流中的帧划分的非必要数据伪迹,以便能够在第一帧段流和第二帧段流之间切换。

在又一示例中,用于无线显示器的并行解码的系统还可以包括基于视频帧的左/右划分或基于视频帧的顶/底划分的帧划分。视频解码器的复用器通信地耦合到一个或多个处理器,且被配置成至少部分地基于重写第一帧段流和第二帧段流中的分组头来执行第一分组流和第二分组流的分组复用,使得各宏块表现为形成单个复用流。解码器还可以被配置成对来自复用流的帧进行解密,其中第一帧段流至少部分地基于第一高带宽数字内容保护(HDCP)密钥被解密,并且第二帧段流至少部分地基于第二高带宽数字内容保护(HDCP)密钥被解密。显示器可以通信地耦合到一个或多个处理器并且被配置成显示解码的帧。

在另一示例中,至少一个机器可读介质可以包括响应于在计算设备上执行而使计算设备执行根据上述示例中的任一个的方法的多个指令。

在又一示例中,一种装置可以包括用于执行根据上述示例中的任一个的方法的单元。

上述示例可以包括特征的特定组合。然而,此类上述示例在这方面不受限制,并且在各种实现中,上述示例可以包括仅承担这些特征的子集、承担这些特征的不同顺序、承担这些特征的不同组合和/或承担与那些明确列出的特征不同的附加特征。例如,关于示例性方法描述的所有特征可以关于示例性装置、示例性系统和/或示例性文章来实施,反之亦然。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1