专利名称:细粒可分级性的最佳传输/流式顺序的制作方法
技术领域:
本发明涉及视频编码,更具体地说,涉及诸如因特网的可变带宽计算机网络中用于流式增强层剩余时间和质量信噪比(SNR)视频帧数据(streaming enhancement layer residual temporal and qualitysignal-to-noise-ratio)的方法。
背景技术:
可分级视频编码已经用于对通过诸如因特网的可变带宽的计算机网络发送的视频数据进行压缩。这样的一种视频编码方案是细粒可分级(嵌入式)视频编码。细粒可分级(FGSfine granular scalable)视频编码已被ISO MPEG-4标准采纳为MPEG-4流式视频档次(profile)的核心视频编码方法。
如图1所示,FGS视频编码方案包括运动补偿基本层10,由非可分级编解码器来编码,包括RBL比特率的I、P和B帧;以及增强层11,由诸如FGS的可分级编解码器编码,包括最大比特率为Rmax的质量信噪比(SNR)I、P、和B剩余帧。传输时,对应于比特率REL的增强层11的一部分从FGS编码比特流被“切”,使得可用带宽为R=RBL+REL。
例如,如果需要向客户提供100kbps至1Mbps范围比特率的增强层比特流,则将RBL设置为100kbps,而将Rmax设置为1Mbps。因此,始终发送以100kbps编码的基本层I、P和B帧。但是,如果更多的带宽可用,则也将发送至少一部分增强层剩余I、P和B帧。
图2A和2B示出上面提到的普通转让的同时待审的美国专利申请No.09/590825中描述的示例性FGS混合时间-SNR视频编码方案。在图2A的视频编码方案中,用非可分级编解码器对基本层12编码,包括I、P和B帧,而用诸如FGS的可分级编解码器对增强层13编码,包括也就是时间帧(当用FGS编码时的FGST帧)的剩余B帧和也就是质量信噪比(SNR)帧(当用FGS编码时的FGS帧)的质量信噪比剩余I和P帧。在图2B的视频编码方案中,用非可分级编解码器对基本层14进行编码,只包括I和P帧,也就是,基本层14中不对B帧进行编码。增强层15的编码方式类似于图2A中诸如FGS的可分级编解码器的编码方案,包括也就是FGST帧的剩余B帧和也就是FGS帧的SNR剩余I和P帧。
在服务器进行传输期间,基本层I、P和B帧(图2A的编码方案)或基本层I和P帧(图2B的编码方案)被编码至RBL,因此始终被发送。如果更多的带宽可用,当前用于传输图2A和2B的编码方案中的增强层13或15的方法是利用一种速率控制策略在FGS和FGST帧之间同样地分配增强层比特(REL)。
与非可分级编解码器相比,与FGS编解码器有关的缺点是它降低的编码效率。这是由于FGS得到不足的时间去相关(只在基本层利用时间相关),而不是由于增强层的嵌入编码所引起的。
通过改进基本层中的时间去相关,可减少增强层的时间相关。这可通过为基本层分配更大量的比特加以实现。但这是不可能的,因为RBL对应于保证多个客户始终可用的最小带宽。如果增加RBL,则有些客户在某些时间将不能对基本层解码,这就有违于MPEG-4标准。
发明内容
本发明针对可变带宽网络中流式(streaming)增强层视频帧数据,增强层视频帧数据具有可分级编码剩余时间(residual temporal)视频帧数据和可分级编码剩余质量信噪比(SNR)视频帧数据。本发明的一个方面包括一种方法,该方法包括以下步骤用非可分级编解码器对原始未编码视频数据进行编码,以生成基本层帧数据;从原始未编码视频数据和基本层帧数据生成剩余时间和SNR视频帧数据;用可分级编解码器对剩余时间和SNR视频帧数据进行编码,以生成具有可分级编码的剩余时间和SNR视频帧数据的增强层视频帧数据;确定可变带宽网络的可用带宽;当可用带宽是范围在被分配用于只发送基本层帧数据的最小比特率和低于网络最大比特率的预定比特率之间的第一带宽时,至少发送部分可分级编码剩余时间帧数据;当可用带宽是延伸在所述预定比特率和网络最大比特率之间的第二带宽时,还发送所述可分级编码剩余时间帧数据的其余部分以及至少部分可分级编码SNR帧数据。
本发明的另一个方面包括一种系统,所述系统包括用于用非可分级编解码器对原始未编码视频数据进行编码以生成基本层帧数据的装置;用于从原始未编码视频数据和基本层帧数据生成剩余时间和SNR视频帧数据的的装置;用于用可分级编解码器对剩余时间和SNR视频帧数据进行编码以生成具有可分级编码的剩余时间和SNR视频帧数据的增强层视频帧数据的装置;用于确定可变带宽网络的可用比特率的装置;用于当可用带宽是范围在被分配用于只发送基本层帧数据的最小比特率和低于网络最大比特率的预定比特率之间的第一带宽时至少发送部分可分级编码剩余时间帧数据的装置;用于当可用带宽是延伸在所述预定比特率和网络最大比特率之间的第二带宽时还发送所述可分级编码剩余时间帧数据的其余部分以及至少部分可分级编码SNR帧数据的装置。
本发明的另一个方面包括一种视频速率控制器,所述控制器包括用于确定可变带宽网络的可用带宽的装置;用于当可用带宽是范围在被分配用于只发送基本层帧数据的最小比特率和低于网络最大比特率的预定比特率之间的第一带宽时至少发送部分可分级编码剩余时间帧数据的装置;用于当可用带宽是延伸在所述预定比特率和网络最大比特率之间的第二带宽时还发送所述可分级编码剩余时间帧数据的其余部分以及至少部分可分级编码SNR帧数据的装置。
本发明的另一个方面包括一种存储介质,所述存储介质包括用于用非可分级编解码器对原始未编码视频数据进行编码以生成基本层帧数据的代码;用于从原始未编码视频数据和基本层帧数据生成剩余时间和SNR视频帧数据的的代码;用于用可分级编解码器对剩余时间和SNR视频帧数据进行编码以生成具有可分级编码的剩余时间和SNR视频帧数据的增强层视频帧数据的代码;用于确定可变带宽网络的可用带宽的代码;用于当可用带宽是范围在被分配用于只发送基本层帧数据的最小比特率和低于网络最大比特率的预定比特率之间的第一带宽时至少发送部分可分级编码剩余时间帧数据的代码;用于当可用带宽是延伸在所述预定比特率和网络最大比特率之间的第二带宽时还发送所述可分级编码剩余时间帧数据的其余部分以及至少部分可分级编码SNR帧数据的代码。
现将结合附图来讨论本发明的说明性实施例,使得本发明的优点、性质和其它特征将更加明显,附图中,同一标号表示同一单元,其中图1表示当前增强层视频编码方案;
图2A和2B示出用于本发明的示例性FGS混合时间-SNR视频编码方案;图3是描述按照本发明原理的方法之步骤的流程图;图4用图解的方式说明在图2B的结构中使用的方法;图5示出利用本发明的混合可分级编码方案的系统的示例性实施例;以及图6示出可用于本发明的另一个示例性FGS混合时间-SNR视频编码方案。
具体实施例方式现将说明根据本发明的原理的一种方法,所述方法用于诸如因特网的可变带宽计算机网络上的流式增强层剩余时间和质量信噪比(SNR)视频帧数据(FGS编码情况下的FGST和FGS帧数据)。该方法采用图2B中的混合时间-SNR可分级视频编码方案,使增强层中的时间相关得到显著改善。因此,通过引用将普通转让的同时待审的美国专利申请No.09/000000的整个公开结合在此。虽然图2B的视频编码方案只示出SNR之间的一个时间帧,但在本方法中也可以使用SNR帧之间具有两个或两个以上的时间帧的时间-SNR可分级视频编码方案。
图3是描述按照本发明原则的方法的步骤的流程图。步骤AA-DD是在美国专利申请No.09/000000中所描述的系统的编码器端执行,步骤EE-HH是在美国专利申请No.09/000000中所描述的系统的服务器端执行。
在步骤AA中,用非可分级编解码器对原始未编码视频数据编码,以生成只含有I和P帧的基本层14,如图2B所示。在基本层中不对B帧编码。使用图2B的视频编码方案利用了这样一个事实只有I和P帧显著地对时间去相关起作用。因此,在更多的RBL比特可用于I和P帧编码时,在基本层中不对B帧编码可提供较高质量的基本层I和P帧。较高质量的基本层I和P帧相应地改进了基本层中的时间去相关。
在步骤BB中,通过计算原始视频数据和参考I、P基本层帧之间的差来预测运动补偿或时间剩余B帧。两个时间相邻的基本层参考帧被用来预测每个时间剩余B帧。B帧受益于这种编码方案,因为可更精确地从改进质量的参考基本层I和P帧来对B帧进行预测。
在步骤CC中,通过计算原始视频数据和基本层帧参考帧之间的差来生成改进质量或信噪比(SNR)的剩余I和P帧。SNR剩余I和P帧受益于这种编码方案,因为以减少的时间相关对它们编码。当用可分级编解码器进一步编码时,这还将导致改善的性能。
在步骤DD中,用诸如FGS的适当编解码器对时间剩余帧和SNR剩余帧进行编码,以生成具有可分级编码的时间B帧和可分级编码的SNRI和P帧的增强层。在图2B所示的实施例中,剩余时间和SNR帧用FGS编码,因此生成由FGST帧表示的时间增强层B帧和由FGS帧表示的SNR增强层I和P帧。
在步骤EE中,对较高质量I和P基本层帧分配高达RBL的比特率,对增强层时间帧分配RBL和RBL+k之间的比特率,其中k小于等于RBL,在时间帧和SNR帧之间均匀分配RBL+k和Rmax之间的比特率。
在步骤FF中,始终以带宽RBL发送I和P基本层帧。
在步骤GG中,当可用带宽被确定为在RBL和RBL+k之间时,其中k小于等于RBL,发送至少部分增强层时间帧。这可以通过一次一个地逐步发送所述至少部分时间帧来完成。确定首先发送哪些时间帧部分的策略可以基于运动活动性(motion activity),由于该信息已在编码期间由编码器确定,其中首先发送具有最大运动活动性的时间帧部分。确定首先发送哪些时间帧部分的策略也可基于峰值信噪比或其它参数。
在步骤HH中,当可用带宽被确定在RBL+k和Rmax之间时,还发送增强层时间帧的其余部分以及至少部分增强层SNR帧。
图4用图解的方式说明了图2B的结构中所应用的方法。
如上所述,可利用前面提到的美国专利申请No.99/000000中描述的系统来执行所述方法,如图5所示。在编码器中,来自视频源20的未编码视频数据被输入到基本层编码器21和混合时间-SNR可分级视频编码器22中。基本层编码器21利用标准帧预测编码技术对一部分原始视频数据进行编码。基本层编码器21以预定比特率RBL对视频数据进行压缩。最好由计算单元23根据有关可变带宽网络24的当前带宽来确定RBL。计算单元23测定网络24的当前可用带宽(R)、最小比特率(Rmin)及最大比特率(Rmax)。然后计算单元23最好将RBL设置到Rmin,以保证即使在其最低带宽,网络24也能适应编码的视频数据。
来自视频源20的原始视频数据和由基本层编码器21提供的编码视频数据(即基本层)都被路由选择到混合编码器22中的剩余图像(RI)计算单元25和运动补偿剩余图像(MCRI)计算单元26中。RI计算单元25和MCRI计算单元26用原始视频数据和编码视频数据来生成剩余图像27和运动补偿(MC)剩余图像28。更具体地说,RI计算单元25接收来自基本层编码器21的编码视频数据,然后对该编码视频数据进行解码。此后,根据所述解码的视频数据中的像素和原始视频数据中的像素之间的差来生成剩余图像27。MCRI计算单元26接收来自基本层编码器21的编码视频数据,然后对所述编码视频数据进行解码。此后,根据运动补偿处理方法从解码视频数据中生成MC剩余图像28。再从对应的原始图中减去所述运动补偿图。
混合编码器22也包括MCRI增强层编码器28和剩余图像增强层编码器30,这两个编码器都使用诸如FGS的可分级编解码器。工作期间,MCRI增强层编码器29和剩余图像增强层编码器30分别利用可分级编解码器对MC剩余图像22和剩余图像12进行编码。
MCRI增强层编码器29生成压缩时间帧31的数据流,RI增强层编码器30生成SNR帧32的数据流。数据流31和32可被组合以生成单个增强层数据流或者可被保持为两个分开的数据流。无论哪种情况,结果流都可被实时存储或发送。
在服务器端,实时可分级视频速率控制器34接收时间和SNR帧数据流31、32(与由基本层编码器21生成的基本层帧数据流33一起)并实时执行前面所述的方法步骤EE-HH。速率控制器34通常包括与存储器(未示出)通信的处理器。处理器可以是执行方法步骤EE-HH的任何能专用或通用处理器。处理器中可以包含当被执行时完成方法步骤EE-HH的编码。所述编码可存于存储器中。
速率控制器34根据从计算单元23、FGS速率控制器35及任选用户输入36接收的输入R、RBL和Rmax来执行所述方法步骤EE-HH。由于对基本层I和P帧分配达RBL之多的比特率,并且始终发送基本层帧,根据这些输入,速率控制器34确定其余用于发送时间和SNR帧的可用带宽(R-RBL)。根据这个信息,速率控制器34按照所述方法的步骤EE在增强层数据流31和32之间分配比特率。
在帧数据流中分配比特率之后,速率控制器34就按照所述方法的步骤FF-HH在可变带宽网络24上发送作为基本层流和增强层流的数据流。
除较好的时间去相关之外,本发明附带的好处是总是用FGST对B帧编码并因此只有1个剩余(MC剩余)需要计算,由此导致复杂性降低并且效率更好,因为符号只需一次编码。而且,因为基本层只含有I和P帧,因此其复杂性仅为中等。只在增强层才引入有更多计算和存储通信量复杂的B帧。
本发明的方法也采用图6所示的混合时间-SNR可分级视频编码方案,其中包括用I和P帧编码的基本层40和两个增强层,也就是用时间B帧编码的时间层41和用SNR I和P帧编码的SNR层42。这种编码方案的细节也在上面提到的美国专利申请No.09/000000中深入讨论过。
尽管参考上述实施例描述了前述发明,然而在不脱离本发明精神的情况下可以进行各种修改和变化。因此,所有这样的修改和变化都被认为是在后附权利要求书的范围内。
权利要求
1.一种用于可变带宽网络中流式增强层视频帧数据的方法,所述增强层视频帧数据具有可分级编码剩余时间视频帧数据和可分级编码剩余质量信噪比(SNR)视频帧数据,所述方法包括以下步骤用非可分级编解码器对原始未编码视频数据进行编码以生成基本层帧数据;从所述原始未编码视频数据和所述基本层帧数据生成剩余时间和SNR视频帧数据;用可分级编解码器对所述剩余时间和SNR视频帧数据进行编码,以生成具有所述可分级编码剩余时间和SNR视频帧数据的所述增强层视频帧数据;确定所述可变带宽网络的可用带宽;在所述可用带宽是范围在分配用于只发送基本层帧数据的最小比特率和低于所述网络最大比特率的预定比特率之间的第一带宽时,发送至少部分所述可分级编码剩余时间帧数据。
2.如权利要求1所述的方法,其特征在于还包括以下步骤当所述可用带宽是延伸在所述预定比特率和所述网络的最大比特率之间的第二带宽时,还发送所述可分级编码剩余时间帧数据的其余部分以及至少部分所述可分级编码SNR帧数据。
3.如权利要求2所述的方法,其特征在于所述第二比特率延伸到所述可变带宽网络的最大可用带宽。
4.如权利要求1所述的方法,其特征在于所述基本层帧数据包含只用于I和P帧的数据。
5.如权利要求4所述的方法,其特征在于所述可分级编码剩余时间帧数据包含只用于B帧的数据。
6.如权利要求5所述的方法,其特征在于所述可分级编码SNR视频帧数据只包含用于I和P帧的数据。
7.如权利要求1所述的方法,其特征在于所述可分级编码的剩余时间帧数据包含只用于B帧的数据。
8.如权利要求1所述的方法,其特征在于所述可分级编码SNR视频帧数据只包含用于I和P帧的数据。
9.一种用于可变带宽网络中流式增强层视频帧数据的系统,所述增强层视频帧数据具有可分级编码剩余时间视频帧数据和可分级编码剩余质量信噪比(SNR)视频帧数据,所述系统包括用于用非可分级编解码器对原始未编码视频数据进行编码以生成基本层帧数据的装置;用于从所述原始未编码视频数据和所述基本层帧数据生成剩余时间和SNR视频帧数据的装置;用于用可分级编解码器对所述剩余时间和SNR视频帧数据进行编码以生成具有所述可分级编码剩余时间和SNR视频帧数据的所述增强层视频帧数据的装置;用于确定所述可变带宽网络的可用比特率的装置;用于在所述可用带宽是范围在分配用于只发送基本层帧数据的最小比特率和低于所述网络最大比特率的预定比特率之间的第一带宽时发送至少部分所述可分级编码剩余时间帧数据的装置。
10.如权利要求9所述的系统,其特征在于还包括用于在所述可用带宽是延伸在所述预定比特率和所述网络的最大比特率之间的第二带宽时还发送所述可分级编码剩余时间帧数据的其余部分以及至少部分所述可分级编码SNR帧数据的装置。
11.如权利要求10所述的系统,其特征在于所述第二比特率延伸到所述可变带宽网络的最大可用带宽。
12.一种视频速率控制器,包括用于确定所述可变带宽网络的可用带宽的装置;用于在所述可用带宽是范围在分配用于只发送基本层帧数据的最小比特率和低于所述网络最大比特率的预定比特率之间的第一带宽时发送至少部分所述可分级编码剩余时间帧数据的装置。
13.如权利要求12所述的控制器,其特征在于还包括用于在所述可用带宽是延伸在所述预定比特率和所述网络的最大比特率之间的第二带宽时还发送所述可分级编码剩余时间帧数据的其余部分以及至少部分所述可分级编码SNR帧数据的装置。
14.一种用于可变带宽网络中流式增强层视频帧数据的存储介质,所述增强层视频帧数据具有可分级编码剩余时间视频帧数据和可分级编码剩余质量信噪比(SNR)视频帧数据,所述存储介质包括用于用非可分级编解码器对原始未编码视频数据进行编码以生成基本层帧数据的代码;用于从所述原始未编码视频数据和所述基本层帧数据生成剩余时间和SNR视频帧数据的代码;用于用可分级编解码器对所述剩余时间和SNR视频帧数据进行编码以生成具有所述可分级编码剩余时间和SNR视频帧数据的所述增强层视频帧数据的代码;用于确定所述可变带宽网络的可用带宽的代码;用于在所述可用带宽是范围在分配用于只发送基本层帧数据的最小比特率和低于所述网络最大比特率的预定比特率之间的第一带宽时发送至少部分所述可分级编码剩余时间帧数据的代码。
15.如权利要求14所述的存储介质,其特征在于还包括用于在所述可用带宽是延伸在所述预定比特率和所述网络的最大比特率之间的第二带宽时还发送所述可分级编码剩余时间帧数据的其余部分以及至少部分所述可分级编码SNR帧数据的代码。
全文摘要
一种用于可变带宽网络中流式增强层视频帧数据的方法,所述方法包括以下步骤用非可分级编解码器对原始未编码视频数据进行编码,以生成I和P基本层帧;从原始未编码视频数据和基本层帧生成剩余时间B帧和SNRI和P帧;用可分级编解码器对时间和SNR帧进行编码;确定可变带宽网络的可用带宽;在可用带宽是范围在分配用于只发送基本层帧数据的最小比特率和低于网络最大比特率的预定比特率之间的第一带宽时,发送至少部分可分级编码剩余时间帧;并且在可用带宽是延伸在所述预定比特率和网络的最大比特率之间的第二带宽时,还发送可分级编码剩余时间帧数据的其余部分以及至少部分可分级编码SNR帧数据。
文档编号H04N7/24GK1436423SQ01803790
公开日2003年8月13日 申请日期2001年9月24日 优先权日2000年9月22日
发明者M·范德沙尔 申请人:皇家菲利浦电子有限公司