比特流解码方法与比特流解码电路转让专利

申请号 : CN201510970684.2

文献号 : CN106911932B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 林和源杨雅婷童怡新

申请人 : 联发科技股份有限公司

摘要 :

一种比特流解码方法与比特流解码电路,该比特流包含多个画面,该方法包括:藉由剖析该比特流中一目前画面的标头获得该目前画面的一播放顺序,其中该目前画面属于一群组;并且,根据该目前画面的该播放顺序,判断解码该目前画面或弃置该目前画面而不予解码。

权利要求 :

1.一种比特流解码方法,该比特流包含多个画面,该方法包含:藉由剖析该比特流中的一目前画面的标头获得该目前画面的一播放顺序,其中该目前画面属于一群组;以及根据该目前画面的该播放顺序,判断解码该目前画面或弃置该目前画面而不予解码;

其中根据该目前画面的该播放顺序,判断解码该目前画面或弃置该目前画面而不予解码的步骤包含:根据该目前画面的该播放顺序,判断该目前画面的播放顺序是否晚于该群组中各个先前画面的播放顺序;

根据该目前画面的播放顺序晚于该群组中各个先前画面的播放顺序的一判断结果,解码该目前画面。

2.如权利要求1所述的方法,其特征在于,更包含:藉由剖析该比特流中的一目前画面的标头获得该目前画面的一或多个参考画面;以及根据该目前画面的该一或多个参考画面,判断解码该目前画面或弃置该目前画面而不予解码。

3.如权利要求2所述的方法,其特征在于,根据该目前画面的该一或多个参考画面,判断解码该目前画面或弃置该目前画面而不予解码的步骤包含:根据该目前画面的该一或多个参考画面,判断该目前画面是否一并参考该群组中前一播放顺序的画面与后一播放顺序的画面。

4.如权利要求3所述的方法,其特征在于,更包含:根据该目前画面一并参考该群组中前一播放顺序的画面与后一播放顺序的画面的一判断结果,弃置该目前画面而不予解码。

5.如权利要求1所述的方法,其特征在于,根据该目前画面的该播放顺序,判断解码该目前画面或弃置该目前画面而不予解码的步骤包含:根据该目前画面的该播放顺序,判断该目前画面的播放顺序是否为一数值的整数倍。

6.如权利要求5所述的方法,其特征在于,更包含:根据该目前画面的播放顺序为该数值的整数倍的一判断结果,解码该目前画面。

7.如权利要求5所述的方法,其特征在于,更包含:根据该目前画面的播放顺序非为该数值的整数倍的一判断结果,弃置该目前画面而不予解码。

8.一种比特流解码电路,包含:

一解码器,可存取一比特流,该比特流包含多个画面;以及一控制单元,耦接该解码器,并执行下列步骤:

藉由剖析该比特流中的一目前画面的标头获得该目前画面的一播放顺序,其中该目前画面属于一群组;以及根据该目前画面的该播放顺序,判断解码该目前画面或弃置该目前画面而不予解码;

其中根据该目前画面的该播放顺序,判断解码该目前画面或弃置该目前画面而不予解码的步骤包含:根据该目前画面的该播放顺序,判断该目前画面的播放顺序是否晚于该群组中各个先前画面的播放顺序;

根据该目前画面的播放顺序晚于该群组中各个先前画面的播放顺序的一判断结果,控制该解码器解码该目前画面。

9.如权利要求8所述的比特流解码电路,其特征在于,该控制单元所执行的步骤更包含:藉由剖析该比特流中的一目前画面的标头获得该目前画面的一或多个参考画面;以及根据该目前画面的该一或多个参考画面,判断解码该目前画面或弃置该目前画面而不予解码。

10.如权利要求9所述的比特流解码电路,其特征在于,根据该目前画面的该一或多个参考画面,判断解码该目前画面或弃置该目前画面而不予解码的步骤包含:根据该目前画面的该一或多个参考画面,判断该目前画面是否一并参考该群组中前一播放顺序的画面与后一播放顺序的画面。

11.如权利要求10所述的比特流解码电路,其特征在于,该控制单元所执行的步骤更包含:根据该目前画面一并参考该群组中前一播放顺序的画面与后一播放顺序的画面的一判断结果,弃置该目前画面而不予解码。

12.如权利要求8所述的比特流解码电路,其特征在于,根据该目前画面的该播放顺序,判断解码该目前画面或弃置该目前画面而不予解码的步骤包含:根据该目前画面的该播放顺序,判断该目前画面的播放顺序是否为一数值的整数倍。

13.如权利要求12所述的比特流解码电路,其特征在于,该控制单元所执行的步骤更包含:根据该目前画面的播放顺序为该数值的整数倍的一判断结果,控制该解码器解码该目前画面。

14.如权利要求12所述的比特流解码电路,其特征在于,该控制单元所执行的步骤更包含:根据该目前画面的播放顺序非为该数值的整数倍的一判断结果,弃置该目前画面而不予解码。

说明书 :

比特流解码方法与比特流解码电路

技术领域

[0001] 本发明是有关于一种比特流解码方法与相关比特流解码电路,且特别是有关于一种时域可适(temporal scalable)的视频比特流解码方法与相关比特流解码电路,可减轻解码负担,并流畅地播放视频。

背景技术

[0002] 视频可表达丰富生动的视觉信息,视频播放功能也成为现代电子产品的发展重点。视频是由一系列依序排列的画面(frame)所形成;为方便视频的储存及传输,视频中的诸画面会被编码至一比特流中。要实现视频播放功能,就要先由比特流中解码出各个画面才能予以播放。
[0003] 视频解码可由硬件或软件的解码器执行,而解码器的解码能力受限于其规格,若视频的画面更新率超过解码器的规格,则无法流畅地播放视频。举例而言,规格为60fps(frame per second)的解码器代表该解码器一秒最多只能解出60个画面,而画面更新率为120fps的视频对规格为60fps的解码器即为逾越规格的视频(over-spec);若用规格为
60fps的解码器解码画面更新率为120fps的视频,则无法流畅地播放视频。再者,即使某一视频并未逾越解码器的规格而得以被播放,若播放时有其它软件(如前景应用程序)或固件要求解码器释出或停用部份系统资源,则解码器的解码能力也会受影响,单位时间中可解码的画面会连带变少。

发明内容

[0004] 本发明可适当地在逾越规格的视频中选出哪些画面可被弃置而不予解码,使逾越规格的视频仍能被流畅地播放,实现时域可适性。本发明的目的之一系提供一种比特流解码方法,包括:藉由剖析(parsing)该比特流中的一目前画面的标头获得该目前画面的一播放顺序,其中该目前画面属于一群组;以及,根据该目前画面的该播放顺序,判断解码该目前画面或弃置(drop)该目前画面而不予解码。其中,根据该目前画面的该播放顺序并判断解码该目前画面或弃置该目前画面而不予解码的步骤包含:根据该目前画面的该播放顺序,判断该目前画面的播放顺序是否晚于该群组中各个先前画面的播放顺序;并且,根据该目前画面的播放顺序晚于该群组中各个先前画面的播放顺序的一判断结果,解码该目前画面。
[0005] 该方法可更包含:藉由剖析该比特流中的一目前画面的标头获得该目前画面的一或多个参考画面;根据该目前画面的该一或多个参考画面,判断解码该目前画面或弃置该目前画面而不予解码。其中,根据该目前画面的该一或多个参考画面判断解码该目前画面或弃置该目前画面而不予解码的步骤包含;根据该目前画面的该一或多个参考画面,判断该目前画面是否一并参考该群组中前一播放顺序的画面与后一播放顺序的画面;根据该目前画面一并参考该群组中前一播放顺序的画面与后一播放顺序的画面的一判断结果,弃置该目前画面而不予解码。根据该目前画面的该播放顺序判断解码该目前画面或弃置该目前画面而不予解码的步骤可更包含:根据该目前画面的该播放顺序,判断该目前画面的播放顺序是否为一数值的整数倍;根据该目前画面的播放顺序为该数值的整数倍的一判断结果,解码该目前画面;根据该目前画面的播放顺序非为该数值的整数倍的一判断结果,弃置该目前画面而不予解码。
[0006] 本发明的目的之一系提供一种比特流解码电路,包括一控制单元与一解码器,耦接于该控制单元。控制单元可控制解码器的运作,以实现本发明的方法。
[0007] 为了对本发明的上述及其它方面有更佳的了解,下文特举较佳范例,并配合所附图式,作详细说明如下:

附图说明

[0008] 图1示意一视频与其群组。
[0009] 图2至图8示意各种相互参考结构的范例,可用以将图1视频编码为比特流。
[0010] 图9示意的是依据本发明一范例的比特流解码电路。
[0011] 图10示意的是依据本发明一范例的流程。
[0012] 图11示意的是图10中相关步骤的运作。
[0013] 符号说明
[0014] v0:视频
[0015] p1-p2、0-119、pg1-pg2:画面
[0016] g1-g2:群组
[0017] b2-b9:比特流
[0018] s2a-s2c、s3a-s3c、s4a-s4b、s5a-s5c、s6a-s6c、s7a-s7b:结构
[0019] 500:电视控制芯片
[0020] 510:比特流解码电路
[0021] 512:控制单元
[0022] 514:解码器
[0023] 520:比特流缓存器
[0024] 530:后续电路
[0025] 1000:流程
[0026] 1010-1050、1110-1150:步骤

具体实施方式

[0027] 本发明可适当地在逾越规格的视频中选出哪些画面可被弃置而不予解码,使逾越规格的视频仍能被流畅地播放,实现时域可适性。请参考图1,图1示意一视频v0,其可由一系列画面依序排列所形成,例如画面p1、p2、pg1与pg2等。要播放视频v0时也是依相同顺序显示各画面;换言之,视频v0中的各画面会对应一播放顺序。在视频v0中的画面可形成一或多个群组,如群组g1与g2;各个群组可包括一或多个播放顺序连续的画面。举来来说,群组g1包含多个播放顺序连续的画面,其中画面pg1为群组g1中播放顺序最早的画面,群组g2包含多个播放顺序连续的画面,其中画面pg2为群组g2中播放顺序最早的画面。
[0028] 视频v0可依照画面间的交互参考结构而被编码为比特流。在现代的视频编解码标准(如MPEG4、H.264及/或H.265等)中,在编码一画面时可以不参考其它画面、可以只参考一个播放顺序在前的画面、或者同时参考一个播放顺序在前的画面与一个播放顺序在后的画面。画面间相互参考的关系会影响各画面在比特流中的顺序。
[0029] 延续图1,请参考图2至图7;图2至图7举例示意各种参考结构。为方便说明,以下会以“画面i”代表“播放顺序为i的画面”;各群组中播放顺序最早的画面为画面0,播放顺序紧接在后的画面为画面1,以此类推。各画面的播放顺序可由播放顺序计数值(POC,picture order count)得知。在实务上,对播放顺序紧邻的前后两画面而言,两者的播放顺序计数值可以是递增1或递增2,但为方便说明,此两画面的播放顺序会被视为以1递增。
[0030] 如图2所示,群组g1系依据“二画面为一单位”的规律结构(如结构s2a、s2b与s2c)而被编码为一比特流b2。在结构s2a中,画面1有两个箭头分别指向画面0与2,代表画面1为双向预测画面(B画面),其被编码时会同时参考画面0与2。另一方面,画面2有一个箭头指向画面0,代表画面2为单向预测画面(P画面),其被编码时只参考画面0。因应结构s2a的相互参考关系,在比特流b2中,编码后的画面0与2会排列在画面1之前;当解码器解码比特流b2时,便可依序先解码出画面0,再参考画面0解码出2,再参考画面0与2解码出画面1。在结构s2b中,画面3参考画面2与4,故画面4会在比特流b2中排列在画面3之前。在结构s2c中,画面5参考画面4与6,故画面6会在比特流b2中排列在画面5之前。
[0031] 编码后画面在比特流中的顺序可称为解码顺序。由图2可知,解码顺序不会等于播放顺序。
[0032] 在图2的例子中,结构s2a、s2b与s2c为相同的结构,因为其交互参考关系均符合相同的参考态样,即:“画面(2i)参考画面(2i-2),画面(2i-1)参考画面(2i-2)与画面(2i)”。
[0033] 图3中,群组g1中的画面系依据“三画面为一单位”的规律结构(如结构s3a、s3b与s3c)而被编码为比特流b3;结构s3a、s3b与s3c为相同的结构,因为其交互参考关系均符合相同的参考态样,即:“画面(3i)参考画面(3i-3),画面(3i-2)参考画面(3i-3)与画面(3i),画面(3i-1)参考画面(3i-3)与画面(3i)”。
[0034] 类似图2与图3,在图4中,群组g1中的画面系依据“四画面为一单位”的规律结构(如结构s4a与s4b)而被编码为比特流b4。
[0035] 在图5中,群组g1中的画面系依据“四画面为一单位”的四双元(dyadic)规律结构(如结构s5a、s5b与s5c)而被编码至比特流b5。结构s5a、s5b与s5c是相同的,具有共通的参考态样:画面(4i)参考画面(4i-4)、画面(4i-2)参考画面(4i)与画面(4i-4)、画面(4i-3)参考画面(4i-4)与画面(4i-2)、画面(4i-1)参考画面(4i-2)与画面(4i)。
[0036] 在图6中,群组g1中的画面系依据“八画面为单位”的八双元规律结构(如结构s6a、s6b与s6b)而被编码至比特流b6。
[0037] 在图7中,群组g1中的画面系依据“十六画面为一单位”的十六双元规律结构(如结构s7a与s7b)而被编码至比特流b7。
[0038] 同一群组的画面可依据重复的同一种结构(如图2至图7的例子)而被编码至比特流中,也可以有部份画面是以不同结构被编码至比特流中。请参考图8,其系举例说明混合不同结构的编码。在图8例子中,群组g1有画面0至画面119,画面0至112是重复以八画面为一单位的八双元结构s6a、s6b等至s6c被编码至比特流b8中;画面112至116以四画面为一单位的四双元结构(如结构s5a)被编码至比特流b8中;画面116至118以两画面为一单位的结构(如结构s2a)被编码至比特流b8中;画面119可自成一结构。
[0039] 请参考图9,图9示意的是依据本发明一范例的比特流解码电路510。比特流解码电路510可包括一控制单元512与一解码器514;控制单元512耦接于解码器514。举例而言,比特流解码电路510可被包含于一电视控制芯片500中。控制单元512可为一逻辑运算与执行单元,可执行软件或固件,据以控制解码器514。解码器514可为一硬件电路;在控制单元512的控制下,解码器514可自电视控制芯片500中的一比特流缓存器520存取一比特流中的画面,并解码出比特流中的画面以供电视控制芯片500中的后续电路530进行后续处理(post processing)后,输出至屏幕(未绘示)以进行播放,其中后续处理可以包括:对画面进行时域滤波、加入特效、合成、剪辑、缩放、调整速度(例如插补画面以改为慢动作视频)等等。其中,比特流例如可以包括图1至图8的比特流b2、b3、b4、b5、b6、b7或/及b8。当比特流的画面更新率逾越解码器514的解码规格,以及/或者,当解码器514需释出或停用系统资源而影响其解码能力时,控制单元512可执行如图10所示的流程1000,以适当地弃置比特流中某些画面而不予解码,使比特流中的视频仍可被播放。流程1000将详述如下。
[0040] 步骤1010:剖析一比特流中的一画面的标头以获得其播放顺序与其参考画面。以图6为例,假设一比特流包括比特流b6,一范例中,控制单元512可自电视控制芯片500中的比特流缓存器520存取画面0的标头,并剖析画面0的标头以获得画面0的播放顺序为0与其未参考任何画面;另一范例中,控制单元512可自电视控制芯片500中的比特流缓存器520存取画面8,并剖析画面8的标头以获得画面8的播放顺序为8,以及画面8的参考画面为画面0;另一范例中,控制单元512可自电视控制芯片500中的比特流缓存器520存取画面4,并剖析画面4的标头以获得画面4的播放顺序为4,以及画面4的参考画面为画面0与画面8,以此类推。
[0041] 步骤1020:根据该画面的播放顺序判断其为一主画面。在一范例中,若目前画面的播放顺序晚于前一主画面的播放顺序,则判断目前画面为一主画面。以图6为例,假设比特流包括比特流b6,控制单元512会依照解码顺序(画面0、8、4、2、1、3、…)分别判断比特流中的各画面是否为一主画面。首先,控制单元512会判断画面0为一第一主画面,由于画面0没有前一主画面可供比较;接下来,控制单元512判断画面8为一第二主画面,因为画面8的播放顺序晚于前一主画面0的播放顺序;接下来,控制单元512不会判断画面4为一主画面,因画面4的播放顺序并未晚于前一主画面8的播放顺序。同理,后续画面2、1、3、6、5、7都不会被判断为主画面,因画面其播放顺序均未晚于前一主画面8的播放顺序;接着,控制单元512会判断画面16为一第三主画面,因为画面16的播放顺序晚于前一主画面8的播放顺序。总结来说,在比特流b6中,画面0、8、16会被分别判断为第一主画面、第二主画面及第三主画面。
[0042] 步骤1030:在该画面被判断为一主画面后,根据该画面的播放顺序判断该比特流处于一稳定状态。在一范例中,若第三主画面与第二主画面间的播放顺序差异,相等于第二主画面与其第一主画面间的播放顺序差异,则判断该比特流处于一稳定状态。承上例,在画面16被判断为一第三主画面后,由于第三主画面16与第二主画面8间的播放顺序差异8(16-8),相等于第二主画面8与第一主画面间0的播放顺序差异8(8-0),因此控制单元512会判断比特流处于一稳定状态。
[0043] 步骤1040:在该比特流被判断处于稳定状态后,预测该比特流适用的可弃模式。在一范例中,若第二主画面与第三主画面间的画面(不包含第二主画面与第三主画面)中,播放顺序为一数値K的倍数的画面均未参考播放顺序不为数値K的倍数的画面中任一画面,则预测该比特流适用1/K可弃模式,1/K可弃模式代表每K个画面中可以只解码其中之一,其它则不予解码。承上例,并以数値K=2为例,比特流被判断处于稳定状态后,第二主画面8与第三主画面间16的画面1~7中,播放顺序为2的倍数的画面有画面2、4、6,播放顺序不为2的倍数的画面有画面1、3、5、7,由于画面2的参考画面为画面0、4,画面4的参考画面为画面0、8,画面6的参考画面为画面4、8,换句话说,播放顺序为2的倍数的画面2、4、6均未参考播放顺序不为2的倍数的画面1、3、5、7中任一画面,因此控制单元512可预测该比特流适用1/2可弃模式,换句话说,即使解码器514仅解码该比特流中一半的画面,而不解码另一半的画面,亦不会使得视频无法播放。
[0044] 须注意的是,在控制单元512预测出比特流适用的可弃模式前,控制单元512会对比特流中的所有画面进行解码。承上例,在控制单元512根据画面16预测出比特流适用的可弃模式前,控制单元512会控制解码器514对画面0~8与画面16进行解码。
[0045] 步骤1050:在预测的可弃模式下,判断解码或弃置该比特流中的另一画面。在一范例中,请参阅图11,若一目前画面被判断为一主画面(步骤1110),则解码该画面(步骤1120);承上例,控制单元512根据画面0、8、4、…、16预测比特流可适用于1/2可弃模式后,在比特流接下来的画面12、10、9、…、24中,由于画面24的播放顺序晚于前一主画面16的播放顺序,因此控制单元512会判断画面24为一主画面,进而控制解码器514对画面24进行解码。
[0046] 若一画面未被判断为一主画面(步骤1110),且一并参考其前一播放顺序与后一播放顺序的画面(步骤1130),则弃置该画面而不予解码(步骤1140);承上例,控制单元512根据画面0、8、4、…、16预测比特流可适用于1/2可弃模式后,比特流接下来的画面12、10、9、…、24中,画面9、11、13、15的播放顺序均未晚于前一主画面16的播放顺序,因此控制单元
512不会判断画面9、11、13、15为主画面,又画面9的参考画面为画面8与画面10,画面11的参考画面为画面10与画面12,画面13的参考画面为画面12与画面14,画面15的参考画面为画面14与画面16,换句话说,画面9、11、13、15均一并参考其前一播放顺序与后一播放顺序的画面,因此控制单元512会控制解码器514弃置画面9、11、13、15而不予解码。
[0047] 若一画面未被判断为一主画面(步骤1110),未一并参考其前一播放顺序与后一播放顺序的画面(步骤1130),且其播放顺序为数値K的整数倍(步骤1150),则解码该画面(步骤1120);承上例,控制单元512根据画面0、8、4、…、16预测比特流可适用于1/2可弃模式后,比特流接下来的画面12、10、9、…、24中,画面10、12、14的播放顺序均未晚于前一主画面16的播放顺序,因此控制单元512不会判断画面10、12、14为主画面,又画面10的参考画面为画面8与画面12(非画面9与画面11),画面12的参考画面为画面8与画面16(非画面11与画面13),画面14的参考画面为画面12与画面16(非画面13与画面15),换句话说,画面10、12、14均未一并参考其前一播放顺序与后一播放顺序的画面,因此控制单元512会控制解码器514对画面24进行解码。
[0048] 综上所述,控制单元512根据画面0、8、4、…、16预测比特流可适用于1/2可弃模式后,比特流接下来的画面12、10、9、…、24经过如图11所示的流程1100后,控制单元512会控制解码器514对画面10、12、14、24解码,并弃置画面9、11、13、15而不予解码。由图6可知,画面10、12、14、24均未参考画面9、11、13、15,因此即使弃置了画面9、11、13、15而不予解码,亦不会造成画面10、12、14、24无法解码。如此一来,解码器514可解码其画面更新率为解码器514的规格两倍的视频,例如,规格为60fps的解码514便可解码画面更新率为120fps的视频,使画面更新率为120fps的视频仍可被播放,实现了时域可适性。
[0049] 综上所述,虽然本发明已以较佳范例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视后附的权利要求所界定者为准。