自适应视频解码方法、解码器以及音频/视频播放系统的制作方法

文档序号:7664691阅读:239来源:国知局
专利名称:自适应视频解码方法、解码器以及音频/视频播放系统的制作方法
技术领域
本发明有关于一种自适应视频解码(adaptively performing video decoding) 方法,尤其有关于一种自适应视频解码方法、复杂度自适应视频解码器(adaptive complexity video decoder)以及自适应音频/视频播放系统。
背景技术
当终端用户在家使用家庭影院系统观看视频节目时,视频节目的编码数据被解码以显示在家庭影院系统的显示屏上,且编码数据的解码结果可扩大或缩小以符合显示屏的尺寸和分辨率的要求。通常,不管对编码数据进行解码的算法多么复杂,也不管视频节目是否为高分辨率,家庭影院系统的解码装置可轻易地对编码数据进行解码。对于终端用户来说,拥有可在任何地方观看同样视频节目的便携式电子装置是非常方便的,该便携式电子装置可例如移动电话或者个人数字助理(Personal Digital Assistant,PDA)。然而,当制造商的研究与开发(Research and Development,R&D)团队在设计这种便携式电子装置时,可能出现一些问题。例如,在对编码数据进行解码的算法太复杂及/或视频节目的分辨率过高的情况下,便携式电子装置的解码能力有可能不足。又例如,当便携式电子装置内的一个或多个处理电路工作在最高可用工作频率时,功耗有可能过高。因此,需要高效率且价格可取的视频解码器,以使用具有有限计算能力的便携式电子装置播放具有可接受质量的视频。

发明内容
有鉴于此,本发明提供一种自适应视频解码方法、复杂度自适应视频解码器以及自适应音频/视频播放系统。本发明提供一种自适应视频解码方法,包括基于复杂度自适应视频解码器的输入比特流的比特流信息,执行解码复杂度管理,以决定是否降低复杂度自适应视频解码器内多个元件中至少一元件的解码复杂度;以及选择性降低复杂度自适应视频解码器内多个元件中一部分元件的解码复杂度。本发明另提供一种复杂度自适应视频解码器,包括多个元件,用于执行与视频解码相关的多个操作;以及解码复杂度管理器,用于基于输入比特流的比特流信息执行解码复杂度管理,以决定是否降低复杂度自适应视频解码器内至少一元件的解码复杂度;其中, 解码复杂度管理器选择性降低复杂度自适应视频解码器内多个元件中一部分元件的解码复杂度。本发明还提供一种自适应音频/视频播放系统,包括音频解码器,用于执行音频解码以产生音频信息;以及视频解码器,用于执行视频解码,其中,视频解码器包括解码管理器,解码管理器根据输入比特流的比特流信息延迟音频信息的音频播放。本发明所提供的自适应视频解码方法、复杂度自适应视频解码器以及自适应音频 /视频播放系统可自适应地降低解码复杂度,从而减少解码工作量和相应功耗,为实现数字视频播放系统提供了的极大灵活性。以下为根据多个图示对本发明的较佳实施例进行详细描述,所属领域的技术人员阅读后应可明确了解本发明的目的。


图IA为根据本发明第一实施例的复杂度自适应视频解码器的方块示意图。图IB为根据本发明第一实施例的复杂度自适应视频解码器的方块示意图。图IC为根据第一实施例的自适应音频/视频播放系统的方块示意图。图ID为根据本发明第二实施例的复杂度自适应视频解码器的方块示意图。图IE为根据第二实施例的自适应音频/视频播放系统的方块示意图。图2为根据本发明的一个实施例的自适应视频解码方法的流程图。图3为根据本发明一个实施例的解码复杂度管理器可触发的一些操作示意图。图4为根据本发明一个实施例的解码复杂度管理器可触发的一些操作/步骤的相关质量和处理速度的示意图。图5为根据本发明另一个实施例的解码复杂度管理器可触发的一些操作/步骤的相关质量和处理速度的示意图。图6为根据本发明另一个实施例的解码复杂度管理器在不同情况下可触发的一些操作/步骤的示意图。
具体实施例方式在说明书及权利要求当中使用了某些词汇来指称特定组件。所属技术领域的技术人员应可理解,制造商可能会用不同名词来称呼同一个组件。本说明书及权利要求并不以名称的差异作为区分组件的方式,而是以组件在功能上的差异作为区分准则。在通篇说明书及权利要求中所提及的“包含”为开放式用语,故应解释成“包含但不限定于”。“大致”为指在可接受的误差范围内,本领域技术人员能够在一定误差范围内解决所述技术问题,基本达到所述技术效果。此外,“耦接”一词在此包括任何直接及间接的电性连接手段。因此, 若文中描述一第一装置耦接于一第二装置,则代表该第一装置可直接电性连接于该第二装置,或通过其它装置或连接手段间接地电性连接至该第二装置。说明书后续描述为实施本发明的较佳实施方式,然该描述乃以说明本发明的一般原则为目的,并非用于限定本发明的范围。本发明的保护范围当视所附权利要求所界定者为准。参照图IA和图1B,图IA和图IB为根据本发明第一实施例的复杂度自适应视频解码器100的方块示意图。复杂度自适应视频解码器100包括快速变长解码(Variable Length Decoding, VLD)与反量化模块 110、反变换(inverse transform)单元 120、运动补偿(Motion Compensation, MC)模块130(在图IA中标记为“MC模块”)、计算单元140、 重建帧输出单元150及帧存储单元160,其中,反变换单元120可例如离散余弦反变换 (Inverse Discrete Cosine Transform, IDCT)单元;运动补偿模块130包括时间预测单元132以及空间预测单元134 ;计算单元140可例如加法器;重建帧输出单元150包括解块(de-blocking)滤波器,例如环路滤波器(in-loop filter) 152 ;以及帧存储单元160可例如帧缓冲器。特别地,前述的解块滤波器(例如环路滤波器15 为复杂度自适应解块滤波器。请注意,可将时间预测单元132和空间预测单元134分别称为帧间预测(inter prediction)单元与帧内预测(intra prediction)单元。如图IB所示,复杂度自适应视频解码器100进一步包括缩放器(resizer) 170、显示时间调整驱动器175、显示缓冲器180以及解码复杂度管理器100M。其中,解码复杂度管理器100M可采用硬件来实现,也可采用软件来实现。根据本发明的一种实施方式,解码复杂度管理器100M的内部结构可配置为硬件计算器/处理器,用于计算音频/视频播放系统所能允许的解码复杂度,并根据计算结果对复杂度自适应解码器100的解码复杂度进行调整。例如该计算器/处理器可选择性降低复杂度自适应视频解码器100内多个元件中至少一部分元件的解码复杂度。然而以上仅用于说明目的,解码复杂度管理器100M的实施方式并不以此为限。根据此实施例,快速变长解码与反量化模块110用于对输入比特流108执行快速 VLD与反量化以产生多个反量化结果118,而反变换单元120用于对多个反量化结果118执行反变换以产生多个反变换结果128。另外,运动补偿模块130用于根据输入比特流108执行运动补偿,并产生相应的多个预测输出结果138,其中,时间预测单元132用于执行时间预测,以及空间预测单元134用于执行空间预测。如图IA所示,计算单元140用于合计多个反变换结果1 和多个预测输出结果138以产生多个补偿输出结果148,而重建帧输出单元150用于产生多个重建帧158,其中空间预测单元134根据重建帧输出单元150输出的重建数据执行空间预测。另外,帧存储单元160用于临时存储多个重建帧158的至少一部分, 其中,时间预测单元132根据前述的多个重建帧158的至少一部分执行时间预测。参照图1B,缩放器170用于在有需要时执行图像缩放(例如放大或缩小图像)。 在执行图像缩放的情况下,多个图像帧178包括多个重建帧158的缩放版本。在不执行图像缩放的情况下,多个图像帧178包括多个重建帧158,即,缩放器170旁路(bypass)多个重建帧158。另外,显示缓冲器180用于临时存储多个图像帧178。在显示时间调整驱动器 175的控制下,输出临时存储在显示缓冲器180中的多个图像帧178作为多个输出帧188, 以显示在相应于音频信息的音频播放的适当时间点上。因此,通过使用显示时间调整驱动器175,复杂度自适应解码器100可同步音频/视频播放系统(图IA和图IB中未示)的音频和视频播放,以消除视频解码的延迟(若存在)。例如,当存在繁重的视频解码工作量时,可能会发生视频解码的延迟。另外,解码复杂度管理器100M可基于输入比特流108和来自显示缓冲器180的显示缓冲器状态执行解码复杂度管理。例如,解码复杂度管理器100M 可选择性降低复杂度自适应视频解码器100内多个元件中一部分元件的解码复杂度。更具体地,解码复杂度管理器100M可根据输入比特流108和前述的显示缓冲器状态,产生多个控制信号,例如控制信号C1、C2、C3、C5、C6和C7,以分别控制复杂度自适应视频解码器100 内相应元件的解码复杂度。例如,如图IA和图IB所示,快速变长解码与反量化模块110受控于控制信号Cl,反变换单元120受控于控制信号C2,运动补偿模块130受控于控制信号 C3,重建帧输出单元150受控于控制信号C5,前述的解块滤波器(例如环路滤波器152)受控于控制信号C6,以及显示时间调整驱动器175受控于控制信号C7。特别地,复杂度自适应视频解码器100的至少一部分,例如时间预测单元132、空间预测单元134、反变换单元120、重建帧输出单元150和/或快速VLD与反量化模块110, 可根据多个重建帧158的分辨率进行操作,而不是仅根据输入比特流108所代表的多个原始帧的分辨率进行操作,以降低解码操作的复杂度。可通过对帧下采样(down sampling)获取分辨率降低的帧,例如,通过选择特定像素以代表帧的每个区块,例如选择每个2X2像素区块的右下角像素。在一个实施例中,时间预测单元132可根据多个重建帧158的分辨率进行操作,而不是根据多个原始帧的分辨率进行操作,以降低时间预测的复杂度。例如, 时间预测单元132可进一步估计已省略的部分信息中可用于执行时间预测的至少一部分信息。另外,空间预测单元134可根据多个重建帧158的分辨率进行操作,而不是根据多个原始帧的分辨率进行操作,以降低空间预测的复杂度。例如,空间预测单元134可进一步估计已省略的部分信息中可用于执行空间预测的至少一部分信息。根据此实施例,反变换单元120可根据多个重建帧158的分辨率进行操作,而不是根据多个原始帧的分辨率进行操作,以降低反变换的复杂度。例如,反变换单元120可通过选择多个预定的用于反变换的反变换函数FIT中的一个以省略反变换的多个计算的一部分。另外,重建帧输出单元150可根据多个重建帧158的分辨率进行操作,而不是多个原始帧的分辨率进行操作,以降低产生多个重建帧的复杂度。基于是否满足一个或多个条件,环路滤波器152可相应于多个复杂度级别中的一个选择性执行环路滤波用于解块,其中,解块操作可例如,全部解块、部分解块以及跳过(skip)解块。另外,快速变长解码与反量化模块110可根据多个重建帧158 的分辨率进行操作,而不是根据多个原始帧的分辨率进行操作,以降低执行快速VLD与反量化的复杂度。更特别地,为降低复杂度,快速变长解码与反量化模块110可在解码期间使用包括主表和至少一子表(例如一个或多个子表)的查找表,其中,由于在复杂度自适应视频解码器100的设计阶段对查找表的预设安排,使用主表的概率大于使用至少一子表的概率。根据此实施例的一些变形,复杂度自适应视频解码器100的至少一部分元件可省略该至少一部分元件需处理的部分信息,以降低对输入比特流108进行解码的复杂度。简洁起见,有关此类变形的类似描述此处不再重复。图IC为根据第一实施例的自适应音频/视频播放系统50的方块示意图。自适应音频/视频播放系统50包括音频解码器52和复杂度自适应视频解码器100。音频解码器 52用于执行音频解码以产生音频信息58。另外,复杂度自适应视频解码器100可执行第一实施例中所揭示的视频解码。请注意,解码复杂度管理器100M用于在有需要时对输入比特流108执行解码复杂度管理,且解码复杂度管理器100M选择性降低复杂度自适应视频解码器100内多个元件中一部分元件的解码复杂度。例如,解码复杂度管理器100M降低复杂度自适应视频解码器100内一个或多个元件的解码复杂度。又例如,解码复杂度管理器100M 延迟音频信息58的音频播放,而不降低复杂度自适应视频解码器100内任何元件的解码复杂度。因此,在视频解码器不能及时地解码并输出与音频播放相匹配的多个帧的情况下,解码复杂度管理器100M可适当延迟自适应音频/视频播放系统50的音频播放,以保持自适应音频/视频播放系统50的视频播放和音频播放之间的音频/视频播放同步。如图IC所示,解码复杂度管理器100M产生至少一控制信号CO以控制是否延迟音频信息58的音频播放和/或音频信息58的音频播放的延迟量。实际上,解码复杂度管理器100M可根据输入比特流108的比特流信息、代表处理能力的参数及显示缓冲器状态的组合或其中之一,决定延迟音频信息58的音频播放。例如,根据输入比特流108的比特流信息、代表处理能力的参数及显示缓冲器状态的组合或其中之一,解码复杂度管理器100M决定是否延迟音频信息58的音频播放。又例如,根据输入比特流108的比特流信息、代表处理能力的参数及显示缓冲器状态的组合或其中之一,解码复杂度管理器100M决定音频信息58的音频播放的延迟量。简洁起见,有关此类变形的类似描述此处不再重复。图ID为根据本发明第二实施例的复杂度自适应视频解码器100-1的方块示意图。 此实施例为第一实施例的变形。如图ID所示,将前述的解块滤波器(例如环路滤波器152) 安置在此实施例的重建帧输出单元150之外,而不是安置在重建帧输出单元150之内。请注意,复杂度自适应视频解码器100-1内的其它元件(例如快速变长解码与反量化模块110、 反变换单元120、运动补偿模块130、计算单元140、帧存储单元160)的实施可与图IA所示的复杂度自适应视频解码器100内相应的元件相同。在此实施例中,图IB中多个元件也可与图ID耦接。简洁起见,有关此实施例的类似描述此处不再重复。根据此实施例的一些变形,复杂度自适应视频解码器100-1的至少一部分元件可省略该至少一部分需处理的部分信息,以降低解码输入比特流108的复杂度。简洁起见,有关此类变形的类似描述此处不再重复。图IE为根据第二实施例的自适应音频/视频播放系统60的方块示意图。自适应音频/视频播放系统60包括音频解码器62和复杂度自适应视频解码器100-1。音频解码器62用于执行音频解码以产生音频信息68。另外,复杂度自适应视频解码器100-1可执行第二实施例中所揭示的视频解码。请注意,解码复杂度管理器100M用于在有需要时对输入比特流108执行解码复杂度管理,且解码复杂度管理器100M选择性降低复杂度自适应视频解码器100-1内多个元件中一部分元件的解码复杂度。例如,解码复杂度管理器100M降低复杂度自适应视频解码器100-1内一个或多个元件的解码复杂度。又例如,解码复杂度管理器100M延迟音频信息68的音频播放,而不降低复杂度自适应视频解码器100-1内任何元件的解码复杂度。因此,解码复杂度管理器100M适当延迟自适应音频/视频播放系统 60的音频播放,以保持自适应音频/视频播放系统60的视频播放和音频播放之间的音频/ 视频播放同步,从而解决任何视频解码延迟问题。如图IE所示,解码复杂度管理器100M产生至少一控制信号,例如前述的至少一控制信号⑶,以控制是否延迟音频信息68的音频播放和/或音频信息68的音频播放的延迟量。实际上,解码复杂度管理器100M可根据例如图IC中所示的实施例中所述的输入比特流108的比特流信息、代表处理能力的参数及显示缓冲器状态的组合或其中之一,决定延迟音频信息68的音频播放。例如,根据输入比特流 108的比特流信息、代表处理能力的参数及显示缓冲器状态的组合或其中之一,解码复杂度管理器100M决定是否延迟音频信息68的音频播放。又例如,根据输入比特流108的比特流信息、代表处理能力的参数及显示缓冲器状态的组合或其中之一,解码复杂度管理器100M 决定音频信息68的音频播放的延迟量。简洁起见,有关此变形的类似描述此处不再重复。通过使用上述揭示的任何实施例/变形的架构,可调整各个元件的视频解码复杂度。例如,在解码复杂度管理器100M的控制下,第一实施例(或第一实施例的变形之一) 的复杂度自适应视频解码器100内或第二实施例(或第一实施例的变形之一)的复杂度自适应视频解码器100-1内的一个或多个元件可根据较低级别的视频解码复杂度进行操作。 又例如,在解码复杂度管理器100M的控制下,当决定不需要降低第一实施例(或第一实施例的变形之一)的复杂度自适应视频解码器100内或第二实施例(或第二实施例的变形之一)的复杂度自适应视频解码器100-1内任何元件的解码复杂度时,复杂度自适应视频解码器100或复杂度自适应视频解码器100-1内的所有元件可根据最高级别的视频解码复杂度进行操作。参照图2,更多的细节进一步描述如下。图2为根据本发明的一实施例的自适应视频解码方法910的流程图。自适应视频解码方法910可适用于图IA和图IB所示的复杂度自适应视频解码器100或图ID所示的复杂度自适应视频解码器100-1,更具体地,适用于上述任何实施例/变形所揭示的解码复杂度管理器100M。自适应视频解码方法910的描述如下。在步骤S912中,解码复杂度管理器100M基于考虑中的复杂度自适应视频解码器 (例如第一实施例的复杂度自适应视频解码器100或第二实施例的复杂度自适应视频解码器100-1)的输入比特流108执行解码复杂度管理,以决定是否降低上述复杂度自适应视频解码器内多个元件中至少一元件的解码复杂度。例如,该多个元件可包括快速VLD与反量化模块110、反变换单元120、运动补偿模块130、重建帧输出单元150、前述的解块滤波器 (例如环路滤波器15 以及显示时间调整驱动器175。在步骤S914中,解码复杂度管理器100M选择性降低步骤S912中所述的复杂度自适应视频解码器内多个元件中一部分元件的解码复杂度。例如,解码复杂度管理器100M 在特定时间点可选择性地降低快速VLD与反量化模块110、反变换单元120、运动补偿模块 130、重建帧输出单元150、前述的解块滤波器(例如环路滤波器15 及显示时间调整驱动器175中至少一部分(例如一部分或全部)的解码复杂度。又例如,解码复杂度管理器100M 在另一时间点不降低快速VLD与反量化模块110、反变换单元120、运动补偿模块130、重建帧输出单元150、前述的解块滤波器(例如环路滤波器15 及显示时间调整驱动器175中任何一个的解码复杂度。根据此实施例,解码复杂度管理器100M可通过参考显示缓冲器180的显示缓冲器状态、步骤S912中所述的复杂度自适应视频解码器的一个或多个代表处理能力的参数以及输入比特流108的比特流信息的组合或其中之一来执行解码复杂度管理,其中,比特流信息可包括比特率、分辨率和/或帧类型。比特流信息在其它一些实例中可包括多个运动向量、多个残差(residual)、多个IDCT系数、比特流长度或可获得的比特流信息,其中,多个残差可例如直流电流(Direct Current, DC)值,可获得的比特流信息可基于例如比较和 /或历史统计,由上述已知比特流的信息所获得。在一个实施例中,解码复杂度管理器100M 根据多个运动向量的变化调整解码复杂度。代表处理能力的参数可包括每个帧所需的解码时间的统计,例如,解码复杂度管理器100M可使用每个帧的平均解码时间以判断当前系统能力,从而适应性调整解码复杂度。特别地,解码复杂度管理器100M可基于前述的显示缓冲器180的显示缓冲器状态、前述的至少一参数以及输入比特流108的比特流信息的全部执行解码复杂度管理。图3为根据本发明一个实施例的解码复杂度管理器100M可触发的一些操作示意图,其中,这些操作关于如图2所示的自适应视频解码方法910的解码复杂度管理。例如, 解码复杂度管理器100M可触发的操作包括显示时间调整、丢弃帧、解块滤波器复杂度调整、运动补偿复杂度调整(在图3中标记为“MC复杂度调整”)、帧内预测复杂度调整、反变换复杂度调整以及VLD复杂度调整。基于前述的显示缓冲器180的显示缓冲器状态、代表处理能力的参数以及输入比特流108的比特流信息的组合或其中之一,解码复杂度管理器 100M执行解码复杂度管理,并选择性地触发这些操作中的一个或多个。图4为根据本发明一个实施例的解码复杂度管理器100M可触发的一些操作/步骤的相关质量和处理速度的示意图,其中,这些操作关于如图2所示的自适应视频解码方法910的解码复杂度管理。例如,这些操作/步骤可包括标准解码流程、自适应双向帧 (Bi-directional frame, B frame)(以下简称“B帧”)解块(即自适应执行全部或部分B 帧解块或跳过B帧解块,其中B帧解块指对多个B帧执行解块操作)、B帧简化运动补偿(在图4中标记为“B帧简化MC”)、快速B帧解码(例如在下采样域中解码B帧)、丢弃B帧、自适应预测帧(Predictive frame, P frame)(以下简称“P帧”)解块(例如,自适应执行全部或部分P帧解块或跳过P帧解块,其中P帧解块指对多个P帧执行解块操作)、P帧简化运动补偿(在图4中标记为“P帧简化MC”)、快速P帧解码、丢弃P帧、自适应帧内(Intra frame, I frame)(以下简称“I帧”)解块(例如,自适应执行全部或部分I帧解块或跳过I 帧解块,其中I帧解块指对多个I帧执行解块操作)以及快速I帧解码。所举的例子仅为说明所用,本发明并非以此为限。垂直轴上的“质量”标记可表示图像质量、流畅度、用户感知度、系统资源节约度或各种质量指标的综合评价。根据此实施例的一些变形,相应于这些操作/步骤的质量和处理速度在不同情况下可有所不同。例如,在图4所示的操作/步骤中,丢弃B帧的操作/步骤可插入在标准解码流程的操作/步骤和自适应B帧解块的操作 /步骤之间。又例如,在图4所示的操作/步骤中,自适应I帧解块的操作/步骤可插入在 P帧简化运动补偿的操作/步骤和快速P帧解码的操作/步骤之间。又例如,在图4所示的操作/步骤中,丢弃P帧的操作/步骤可邻近快速I帧解码的操作/步骤,因此,成为图 4所示的操作/步骤中最底层的一个操作/步骤。在此实施例中,基于第一策略-实现可得的最佳质量,当视频解码延迟问题不是症结所在时,解码复杂度管理器100M可触发标准解码流程的操作/步骤。然而,当确定会发生视频解码的延迟时(例如发现硬件资源不足和/或解码工作量大于预定的阈值),解码复杂度管理器100M可触发一个或多个操作/步骤,以防止严重的视频解码延迟,并实现当前情况下解码器可提供的最佳质量。例如,在图4所示的操作/步骤中,解码复杂度管理器 100M可触发下一个适当的操作/步骤(例如自适应B帧解块的操作/步骤,B帧简化运动补偿的操作/步骤等),以释放硬件资源和/或减少解码工作量,其中,当降低解码复杂度时, 相应于较高质量级别的操作/步骤拥有较高的执行优先权,而相应于较低质量级别的操作 /步骤会在最后执行。所举的例子仅为说明所用,本发明并非以此为限。根据此实施例的变形,解码复杂度管理器100M可基于第二策略-实现预定的质量级别进行操作,而不是基于实现最佳质量进行操作。根据此实施例的一些其它变形,解码复杂度管理器100M可基于实现最快处理速度或预定的处理速度的一些策略进行操作。图5为根据本发明另一个实施例的解码复杂度管理器100M可触发的一些操作/ 步骤的相关质量和处理速度的示意图,其中,这些操作关于如图2所示的自适应视频解码方法910的解码复杂度管理。具体地,此实施例中考虑的操作/步骤包括正常解块、简单解块以及禁用解块。请注意,解码复杂度管理器100M的控制机制可根据多个预定的阈值 (例如,图5所示的两个阈值Tl和T2)在这些操作/步骤之间进行切换,其中,预定的阈值 Tl和T2代表质量的相应级别。图6为根据本发明另一个实施例的解码复杂度管理器100M在不同情况下可触发的一些操作/步骤的示意图,这些操作关于如图2所示的自适应视频解码方法910的解码复杂度管理。具体地,此实施例中考虑的操作/步骤包括停止B帧解块、停止P帧解块、启动自适应P帧解块、启动自适应I帧解块以及停止解块。请注意,解码复杂度管理器100M 的控制机制可根据多个预定的阈值(例如,图6所示的三个阈值Tl、TP和TB)在这些操作 /步骤之间进行切换,其中,预定的阈值Tl、TP和TB代表显示缓冲器状态的相应级别。在此实施例中,预定的阈值Tl、TP和TB分别用于决定是否启动/停止B帧解块、P帧解块以及I帧解块。特别地,在显示缓冲器180为满或几乎为满的情况下,解码复杂度管理器100M 不停止I帧解块、P帧解块以及B帧解块的任何一个。相反地,在显示缓冲器180为空或几乎为空的情况下,解码复杂度管理器100M停止I帧解块、P帧解块以及B帧解块的每一个。
更具体地,在显示缓冲器180的缓冲器状态(更具体地,显示缓冲器180的缓冲级别)在预定的阈值TP和TB之间的情况下,解码复杂度管理器100M停止B帧解块,并触发启动自适应P帧解块的操作/步骤(即具有复杂度自适应的P帧解块)。另外,在显示缓冲器180的缓冲器状态(更具体地,显示缓冲器180的缓冲级别)在预定的阈值TI和TP之间的情况下,解码复杂度管理器100M停止P帧解块和B帧解块,并触发启动自适应I帧解块的操作/步骤(即具有复杂度自适应的I帧解块)。另外,在显示缓冲器180的缓冲器状态(更具体地,显示缓冲器180的缓冲级别)在预定的阈值TI和0之间的情况下,解码复杂度管理器100M停止I帧解块、P帧解块和B帧解块。 在此实施例中,关于复杂度自适应解块的控制机制,解码复杂度管理器100M可基于宏块(Macroblock,MB)为基础的解块方案进行操作。例如,解码复杂度管理器100M可根据缓冲器状态和输入比特流108的至少一部分(例如一部分或全部)的比特流长度,自适应启动/停止I帧解块、P帧解块和/或B帧解块。所举的例子仅为说明所用,本发明并非以此为限。根据此实施例的变形,关于复杂度自适应解块的控制机制,解码复杂度管理器 100M可基于帧为基础的解块方案进行操作。例如,解码复杂度管理器100M可根据缓冲器状态、输入比特流108的至少一部分(例如一部分或全部)的比特流长度、量化步长、MB类型和/或边缘强度来自适应地启动/停止I帧解块、P帧解块和/或B帧解块,其中,量化步长即所谓的量化参数(Quantization Parameter, QP)值。本发明的优势在于,上述揭示的每个实施例/变形的自适应视频解码方法、相关的复杂度自适应视频解码器及相应的自适应音频/视频播放系统可适用于各种数字视频应用,其中,复杂度自适应视频解码器内多个元件中至少一部分(例如一部分或全部)可以低级别的视频解码复杂度进行操作。由于可调整一个或多个元件的视频解码复杂度,解码工作量和相应功耗可自适应地减少。因此,与相关的技术相比,本发明为实现数字视频播放系统提供了的极大灵活性。上述的实施例仅用来列举本发明的实施方式,以及阐释本发明的技术特征,并非用来限制本发明的范畴。任何所属技术领域的技术人员根据本发明的精神而轻易完成的改变或均等性安排均属于本发明所主张的范围,本发明的权利范围应以权利要求为准。
权利要求
1.一种自适应视频解码方法,所述自适应视频解码方法包括基于复杂度自适应视频解码器的输入比特流的比特流信息,执行解码复杂度管理,以决定是否降低所述复杂度自适应视频解码器内多个元件中至少一元件的解码复杂度;以及选择性降低所述复杂度自适应视频解码器内该多个元件中一部分元件的解码复杂度。
2.如权利要求1所述的自适应视频解码方法,其特征在于,所述多个元件包括快速变长解码与反量化模块,用于对所述输入比特流执行快速变长解码与反量化,以产生多个反量化结果;反变换单元,用于对所述多个反量化结果执行反变换,以产生多个反变换结果; 运动补偿模块,用于根据所述输入比特流执行运动补偿并产生相应的多个预测输出结果,其中所述运动补偿模块包含时间预测单元以及空间预测单元,所述时间预测单元用于执行时间预测以产生所述多个预测输出结果的至少一部分;以及所述空间预测单元用于执行空间预测以产生所述多个预测输出结果的至少一部分;计算单元,用于合计所述多个反变换结果和所述多个预测输出结果以产生多个补偿输出结果;重建帧输出单元,用于根据所述多个补偿输出结果产生多个重建帧,其中,所述空间预测单元根据所述多个重建帧的当前重建帧执行空间预测;以及帧存储单元,用于临时存储所述多个重建帧的至少一部分,其中,所述时间预测单元根据所述多个重建帧的所述至少一部分执行时间预测。
3.如权利要求1所述的自适应视频解码方法,其特征在于,所述多个元件包括 显示缓冲器,用于临时存储多个图像帧;其中,所述执行解码复杂度管理的步骤包括 基于所述显示缓冲器的显示缓冲器状态,执行解码复杂度管理。
4.如权利要求1所述的自适应视频解码方法,其特征在于,所述执行解码复杂度管理的步骤包括产生至少一控制信号,以控制所述复杂度自适应视频解码器内所述多个元件中所述部分元件的解码复杂度。
5.如权利要求1所述的自适应视频解码方法,其特征在于,所述多个元件包括显示时间调整驱动器,其中,在所述显示时间调整驱动器的控制下,输出临时存储在显示缓冲器中的多个图像帧作为多个输出帧,所述多个输出帧用于分别在相应音频信息的音频播放的多个时间点上进行显示。
6.如权利要求2所述的自适应视频解码方法,其特征在于,所述时间预测单元根据所述多个重建帧的分辨率进行操作,以降低执行时间预测的复杂度。
7.如权利要求2所述的自适应视频解码方法,其特征在于,所述空间预测单元根据所述多个重建帧的分辨率进行操作,以降低执行空间预测的复杂度;以及所述空间预测单元进一步估计已省略的部分信息中可用于执行空间预测的至少一部分。
8.如权利要求2所述的自适应视频解码方法,其特征在于,所述反变换单元根据所述多个重建帧的分辨率进行操作,以降低执行所述反变换的复杂度;以及所述反变换单元省略所述反变换的多个计算的一部分。
9.如权利要求2所述的自适应视频解码方法,其特征在于,所述重建帧输出单元根据所述多个重建帧的分辨率进行操作,以降低产生所述多个重建帧的复杂度。
10.如权利要求2所述的自适应视频解码方法,其特征在于,所述快速变长解码与反量化模块根据所述多个重建帧的分辨率进行操作,以降低执行快速变长解码与反量化的复杂度;以及所述快速变长解码与反量化模块在解码期间使用包括主表和至少一子表的查找表,且所述主表的使用概率大于所述至少一子表的使用概率。
11.如权利要求1所述的自适应视频解码方法,其特征在于,所述执行解码复杂度管理的步骤包括基于代表所述复杂度自适应视频解码器的处理能力的至少一参数,执行解码复杂度管理。
12.如权利要求1所述的自适应视频解码方法,其特征在于,所述输入比特流的所述比特流信息包括比特率、分辨率以及帧类型的组合或其中一个。
13.如权利要求1所述的自适应视频解码方法,其特征在于,所述输入比特流的所述比特流信息包括多个运动向量、多个残差以及比特流长度的组合或其中一个。
14.一种复杂度自适应视频解码器,包括多个元件,用于执行与视频解码相关的多个操作;以及解码复杂度管理器,用于基于输入比特流的比特流信息执行解码复杂度管理,以决定是否降低所述复杂度自适应视频解码器内至少一元件的解码复杂度;其中,所述解码复杂度管理器选择性降低所述复杂度自适应视频解码器内所述多个元件中一部分元件的解码复杂度。
15.如权利要求14所述的复杂度自适应视频解码器,其特征在于,所述多个元件包括 快速变长解码与反量化模块,用于对所述输入比特流执行快速变长解码与反量化以产生多个反量化结果;反变换单元,用于对所述多个反量化结果执行反变换以产生多个反变换结果; 运动补偿模块,用于根据所述输入比特流执行运动补偿并产生相应的多个预测输出结果,其中所述运动补偿模块包括时间预测单元以及空间预测单元,所述时间预测单元用于执行时间预测以产生至少一部分的所述多个预测输出结果;以及所述空间预测单元用于执行空间预测以产生至少一部分的所述多个预测输出结果;计算单元,用于合计所述多个反变换结果和所述多个预测输出结果以产生多个补偿输出结果;重建帧输出单元,用于根据所述多个补偿输出结果产生多个重建帧,其中,所述空间预测单元根据所述多个重建帧的当前重建帧执行空间预测;以及帧存储单元,用于临时存储所述多个重建帧的至少一部分,其中,所述时间预测单元根据所述多个重建帧的所述至少一部分执行时间预测。
16.如权利要求14所述的复杂度自适应视频解码器,其特征在于,所述多个元件包括 其中,所述解码复杂度管理器基于所述显示缓冲器的显示缓冲器状态,执行解码复杂度管理。
17.如权利要求14所述的复杂度自适应视频解码器,其特征在于,所述解码复杂度管理器根据所述输入比特流的所述比特流信息产生至少一控制信号,以控制所述复杂度自适应视频解码器内所述多个元件中所述部分元件的解码复杂度,所述多个元件分别受控于所述至少一控制信号。
18.如权利要求14所述的复杂度自适应视频解码器,其特征在于,所述多个元件包括显示时间调整驱动器,其中,在所述显示时间调整驱动器的控制下,输出临时存储在显示缓冲器中的多个图像帧作为多个输出帧,所述多个输出帧用于分别在相应音频信息的音频播放的多个时间点上进行显示。
19.如权利要求15所述的复杂度自适应视频解码器,其特征在于,所述时间预测单元根据所述多个重建帧的分辨率进行操作,以降低执行时间预测的复杂度。
20.如权利要求15所述的复杂度自适应视频解码器,其特征在于,所述空间预测单元根据所述多个重建帧的分辨率进行操作,以降低执行空间预测的复杂度;以及所述空间预测单元进一步估计已省略的部分信息中可用于执行空间预测的至少一部分。
21.如权利要求15所述的复杂度自适应视频解码器,其特征在于,所述反变换单元根据所述多个重建帧的分辨率进行操作,以降低执行所述反变换的复杂度;以及所述反变换单元省略所述反变换的多个计算的一部分。
22.如权利要求15所述的复杂度自适应视频解码器,其特征在于,所述重建帧输出单元根据所述多个重建帧的分辨率进行操作,以降低产生所述多个重建帧的复杂度。
23.如权利要求15所述的复杂度自适应视频解码器,其特征在于,所述快速变长解码与反量化模块根据所述多个重建帧的分辨率进行操作,以降低执行快速变长解码与反量化的复杂度;以及所述快速变长解码与反量化模块在解码期间使用包括主表和至少一子表的查找表,且所述主表的使用概率大于所述至少一子表的使用概率。
24.如权利要求14所述的复杂度自适应视频解码器,其特征在于,所述解码复杂度管理器基于代表所述复杂度自适应视频解码器的处理能力的至少一参数,执行解码复杂度管理。
25.如权利要求14所述的复杂度自适应视频解码器,其特征在于,所述输入比特流的所述比特流信息包括比特率、分辨率以及帧类型的组合或其中一个。
26.如权利要求14所述的复杂度自适应视频解码器,其特征在于,所述输入比特流的所述比特流信息包括多个运动向量、多个残差以及比特流长度的组合或其中一个。
27.如权利要求14所述的复杂度自适应视频解码器,其特征在于,所述解码复杂度管理器延迟音频信息的音频播放。
28.一种自适应音频/视频播放系统,包括音频解码器,用于执行音频解码以产生音频信息;以及视频解码器,用于执行视频解码,其中,所述视频解码器包括解码管理器,所述解码管理器根据输入比特流的比特流信息延迟所述音频信息的音频播放。
29.如权利要求观所述的自适应音频/视频播放系统,其特征在于,所述视频解码器的所述解码管理器进一步根据代表处理能力的参数或显示缓冲器状态决定音频播放的延迟。
全文摘要
本发明提供一种自适应视频解码方法、解码器以及音频/视频播放系统,其中,复杂度自适应视频解码器包括多个元件,用于执行与视频解码有关的多个操作;以及解码复杂度管理器,用于基于输入比特流的比特流信息执行解码复杂度管理,以决定是否降低复杂度自适应视频解码器内至少一元件的解码复杂度。利用本发明的复杂度自适应视频解码器可自适应地降低解码复杂度,从而减少解码工作量和相应功耗,为实现数字视频播放系统提供了的极大灵活性。
文档编号H04N7/52GK102316319SQ20111012212
公开日2012年1月11日 申请日期2011年5月12日 优先权日2010年7月5日
发明者林建良, 谢芳易 申请人:联发科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1