对流数据进行缓冲的方法以及终端设备的制作方法

文档序号:7737175阅读:213来源:国知局
专利名称:对流数据进行缓冲的方法以及终端设备的制作方法
技术领域
本发明涉及音频/视频应用中对流数据(streaming data)进行缓冲的方法以及终端设备。
背景技术
缓冲是流使用情况中采用的常用技术,但是缓冲可能造成不良的用户体验。在以下情况中需要进行缓冲(1)流会话启动(包括从一个频道到另一个频道的频道转换),以及O)由终端用户发起的跳变/搜索(jump/seek)动作。包括针对实时数据的缓冲器的数据处理系统的示例在US 6,247, 072中获知,US 6,M7,072公开了用于匹配数据速率的装置和方法,这对于接收机通过媒介接收实时数据而言十分有用。实施方式的特征在于如下过程在接收机中建立缓冲器;从具有标称源数据速率的源接收源数据,接收到的源数据以输入数据速率到达,该输入数据速率相比于标称源数据速率时时发生变化;当以输入数据速率接收到源数据时,以源数据填充缓冲器,并且清空缓冲器,以便以消费数据速率来为实时消费提供数据;设定速率匹配因子M,该因子 M影响清空缓冲器的速率;以及跟踪缓冲器中的数据水平,并在缓冲器填充到目标范围以上时,重设M的值以增大清空缓冲器的速率,而在缓冲器清空到目标范围以下时,重设M的值以减小清空缓冲器的速率。对模拟媒体进行采样以将其数字化。该过程依据音频或视频,使用不同的采样速率。一方面,依据使用情况,通常在8kHz到48kHz的范围上对音频进行采样(对于语音内容,< 16kHz,对于音乐内容,> 16kHz)。另一方面,视频的采样速率可以为对于影片摄像机,24Hz ;对于欧洲TV标准PAL,25Hz ;对于美国TV标准NTSC,大约30fps。在流使用情况下,服务器和终端两者都以相同数据速率来发送/消费媒体;服务器数据速率和呈现数据速率相等并与实时时钟匹配。有线或地面数字电视具有恒定的数据吞吐量,例如服务器数据速率和接收数据速率相等。因此,终端将在恒定延迟(传输时间)之后接收到并呈现发送的数据。图1示出了现有技术的数据处理系统的示意表示图。服务器S负责经由网络N向终端T发送媒体。服务器S具有实时行为,例如,服务器S发送与服务器时钟关联的媒体数据。网络N负责承载从服务器S到终端T的数据。对网络N建模的常用方式是使用缓冲器 B。该缓冲器B包含从服务器接收到的、尚未发送给终端STT的数据RFS。在这种情况下,网络抖动对应于网络缓冲器持续时间BL。终端T (也称作“客户端”或“接收机”)负责从网络 N接收并呈现媒体。终端T具有媒体呈现器和缓冲器AL,缓冲器AL用于管理来自网络的接收速率变化以及来自媒体呈现器的消费速率。在有线和地面数字电视的情况下,服务器发送速率Cs和终端接收速率Cre。相等。 因此,网络N和终端缓冲器AL两者都是恒定的。此外,这两个缓冲器之和为大约k。因此, 已经将视频服务设计为最大化终端用户体验,从而最大化广播公司的收入。具有良好终端用户体验的主要终端用户洞察在于大量频道(不是本发明涉及的内容);在网络拥塞的情况下不能中断媒体呈现,必须提供快速启动时间( 从频道选择到第一幅图像显示);必须提供快速频道转换时间( 从切换命令到新的频道、 以及新频道上的第一幅图像显示);以及必须提供快速跳变/搜索时间( k)(从跳变/ 搜索命令到第一幅图像显示)。在移动网络中,数据吞吐量不是恒定的,例如服务器数据速率Cs和接收数据速率 Cre。不同。例如,当移动终端具有有限网络覆盖时,服务器数据速率Cs可能比接收数据速率 Cre。高。这触发了网络缓冲器B的增大以及终端缓冲器AL的减小(当消费速率恒定且等于服务器输出速率时)。因此,终端缓冲器AL不得不支持这种变化,以避免媒体呈现中断,例如终端缓冲器时间为零。为了避免媒体呈现终端,终端不得不缓冲大量数据。例如,终端暂停呈现(呈现数据速率Cren为零),并等待终端缓冲器时间增加。一旦终端缓冲器时间达到阈值,媒体呈现开始(呈现数据速率等于服务器数据速率)。因此,在该缓冲时间期间,回放暂停,并一旦完成了缓冲就再次开始回放。缓冲时间越长,可获得的对抗带宽变化的保护就越好。然而,当服务器实时发送数据时,缓存等待时间等于终端用户等待时间,例如,在接收到第一批媒体数据与第一幅图像显示之间流经的时间。这导致不良用户体验。在2. 5G网络中,常见的缓冲时间是大约8s。 在3G网络中,常见的缓冲时间是大约6s。这种较长的缓冲时间在以下两种主要使用情况下是值得注意的(1)在启动媒体频道上的流会话时(此外,在终端用户转换到另一频道时);以及( 在跳变/搜索时间。 不幸的是,由于还未达到上述主要终端用户洞察,目前的情况阻止了移动网络中终端用户采用大规模视频流。这种不良的流体验阻止了运营商销售和部署例如视频流服务等附加值服务,即使终端用户向其要求这种服务。因此,运营商一直在按照标准检查终端解决方案, 以选择具有最小终端缓冲时间的终端解决方案。

发明内容
本发明的目的是提供一种对流数据进行缓冲的方法以及一种终端设备,能够通过显著缩短缓冲时间来实现良好的终端用户体验。该目的由根据权利要求1的对流数据进行缓冲的方法以及根据权利要求6的终端设备来实现。因此,提供了一种对流数据进行缓冲的方法,该流数据以服务器数据速率来自服务器,经由网络,以终端接收数据速率到达至少一个终端。由终端向服务器请求流会话。以服务器数据速率从服务器向网络发送流数据,并以接收数据速率从网络向终端发送流数据。在终端缓冲器中,将从网络接收的数据缓冲至少第一时段。在第一时段之后,以第一呈现速率,发起对所缓冲的数据的呈现,第一呈现速率低于服务器数据速率或接收数据速率。 根据接收到的流数据对终端缓冲器的填充,来调整第一呈现数据速率,直到呈现数据速率对应于服务器数据速率为止。因此,相比于现有技术,可以更早地开始对接收到的流数据的呈现。呈现的初始部分可以比服务器数据速率快或慢。在第一时段之后,即,在终端缓冲器中缓冲特定量的数据速率之后,呈现数据速率只是会回到其正常值。呈现将是连续的,因此实现了改进的数据呈
4现。而根据现有技术这是不可能的,因为当终端缓冲器中没有足够的数据时,呈现会停止。根据本发明一方面,通过对终端缓冲器中缓冲的流数据进行重采样,来调整第一呈现数据速率。根据本发明另一方面,执行音频时间拉伸(stretching),对流数据进行重采样。根据本发明另一方面,随着终端缓冲器填充的减少,减小第一呈现数据速率。根据本发明另一方面,随着终端缓冲器填充的增多,增大第一呈现数据速率。本发明还涉及一种终端设备,用于经由网络从服务器接收流数据。该终端设备包括至少一个终端缓冲器,用于将从网络以接收数据速率接收到的数据缓冲至少第一时段。 该终端设备还包括呈现单元,用于呈现终端缓冲器中缓冲的流数据。该终端设备还包括 至少一个控制单元,用于向服务器请求流会话,用于发起第一时段之后由呈现单元以第一呈现速率来呈现所缓冲的数据,以及用于根据接收到的流数据对终端缓冲器的填充,来调整第一呈现数据速率,直到呈现数据速率对应于服务器数据速率为止。当发起流数据的呈现时,第一呈现数据速率低于服务器数据速率。例如,这可以通过如下来解决调谐呈现时钟,并拉伸音频回放以避免这种调谐的明显影响。本发明还涉及一种数据处理系统,具有服务器、至少一个终端设备、以及与服务器和终端设备耦接的网络。服务器经由网络向至少一个终端设备发送流数据。终端设备是如上所述实现的。本发明提出了减少缓冲等待时间(例如,减少到大约^),而无论网络类型如何。 本发明还提出了减小呈现数据速率(回放速度),然后平滑地恢复正常呈现数据速率(例如,恢复到与服务器数据速率相同的速率)。可以执行这种改变,使得不存在任何可见/可听的失真,换言之,使得可以避免终端用户可注意到的伪像。这是通过如下实现的改变视频采样持续时间(例如,将每一帧显示50ms而不是40ms),并使用音频时间拉伸算法来改变采样持续时间,而不影响音调(pitch)。音调表示感知到的声音的基本频率。音调是声音的三个主要听觉属性之一,其他两个是响度和音色。虽然可以通过物理测量来精确地确定实际的基本频率,但是由于声音中的泛音(或者也称作分音或谐音),实际的基本频率不同于感知到的音调。依据拉伸算法质量,可以实现+/-10%的消费速率调谐,而不会存在明显伪像,S卩,不会影到音频音调。特别地,根据本发明的方法可以包括执行正常缓冲(优选地,不超过k);开始以较低的呈现速率进行呈现;依据终端缓冲器,对呈现速率进行微调,以达到服务器速率和目标缓冲器持续时间呈现速率等于服务器速率,终端具有目标缓冲器保护。从属权利要求中限定了本发明的其他方面。参照


步骤。本发明的重要优点在于,运营商可以提供更好的终端用户体验,而不需要进行服务器或网络的任何基础设施的改变。

以下参照附图更详细地描述本发明的实施例和优点。图1示出了根据现有技术的数据处理系统的示意表示图;图2示出了根据第一实施例的数据处理系统的示意表示图3示出了根据第二实施例的数据处理系统的示意表示图;图4示出了根据第三实施例的流数据缓冲方法中重采样的示意表示图;图5示出了根据本发明的缓冲器填充与接收数据速率的图;以及图6示出了根据第四实施例的终端设备的框图。
具体实施例方式图2示出了根据第一实施例的数据处理系统的示意表示图。数据处理系统包括服务器S、至少一个终端T、以及网络N。流数据可以服务器数据速率Cs从服务器S经由网络 N传输,并以接收数据速率Cre。从网络N传输至终端T。终端包括用于缓冲流数据的缓冲器 AL。终端T可以呈现数据速率Cm呈现所缓冲的数据。网络N可以包括具有网络缓冲时间 BL的缓冲器B。缓冲器B容纳从服务器RFS接收到但是尚未发送给终端STT的数据。图2 中示出了一种缓冲流数据的方法,其中实现了在较短时隙期间的正常缓冲。第一步骤包括在一时隙内执行缓冲,该时隙包括针对正常终端缓冲的时隙的实质上1/3。第一步骤表示初始阶段;播放器或终端已经向服务S发送用于开始流会话的命令。如上方案所述,服务器S开始向网络N发送媒体数据,网络N将媒体数据传送给终端 T。依据网络拥塞,网络N可以用作缓冲器B或不用作缓冲器B( S卩,可以存在网络缓冲时间 BL)。在该阶段,终端T不消费数据,因此终端缓冲器AL具有的终端缓冲器时间ALT在增长, 最终达到阈值ALTl。在大多数移动平台上,一些媒体数据( 0. 5s)需要预取整个媒体呈现链(e. g., 避免低级平台中断)。此外,在视频编码算法基于例如MPEG-4或H. 263/H. 264等预测方案的情况下,一般需要额外的时间(秒)来吸收视频帧尺寸变化。因此,终端缓冲器时间阈值 ALTl 一般至少等于1. k。一旦达到了阈值ALTl,终端T就移至第二步骤。图3示出了根据第二实施例的数据处理系统的示意表示图。这里,数据处理系统包括服务器S、终端T、以及将数据从服务器S传输至终端T的网络N。网络可以包括具有网络缓冲器时间BL的缓冲器B。缓冲器B容纳从服务器RFS接收到但是尚未发送给终端STT 的数据。图3示出了如下情况开始以较低的呈现速率Cren呈现所缓冲的数据。第二步骤包括开始以较低的呈现速率进行呈现。在该阶段,终端T开始以较低呈现速率进行呈现。服务器S仍然以相同的数据速率Cs将其数据发送给网络,网络N将数据传送给终端T,终端T 以接收数据速率Cra接收数据。与步骤1的主要区别在于,终端以呈现速率Cm消费数据。 然而,该速率Cren低于服务器数据速率Cs (例如,在优选实施方式中,降低了 10 %,其他降低也是可能的),例如Cren = Csx90%使呈现数据速率Cm低于服务器数据速率Cs具有主要优点。这最小化呈现中断, 因为接收到的数据多于消费的数据。注意,如果在网络条件非常差时出现了 Cra < Cm,则仍然可能发生中断。在这种情况下,根据本发明的方法会减少中断发生,其继续填充终端缓冲器(见第三步骤)。图4示出了根据第三实施例的流数据缓冲方法中重采样的示意表示图。将原始呈现数据速率ORDR重采样为较低的呈现数据速率LRDR。降低呈现数据速率要求将数字内容重采样至更低速率。媒体重采样是公知技术,将参照图4进行说明。可以通过增加两个视频帧之间的重叠时间(laps time)(例如,从40ms移至44. 4ms,速率降低10% ),来执行视频重采样(降低)。由于偏移十分有限,所以不需要任何复杂的插值。此外,该处理不会产生可见伪像。然而,应该注意,该相同技术不能用于音频,因为它将导致令人不快的效果(例如,加速/减速音频带回放)。基本的重采样改变了采样频率和音频音调,这产生了明显的伪像。为了避免这种伪像,提出的方案使用音频时间拉伸算法。该算法允许在不改变音频流的音调或采样频率的情况下对音频流进行重采样。依据音频时间拉伸质量,可以实现+/-10%的呈现速率调谐,而不会影响音频音调。在这种情况下,不是显示每秒15帧的流(帧之间66毫秒),而是速率降低了 10%,为每秒13. 5帧(帧之间73毫秒),并且不存在任何明显的音频伪像。注意,该步骤是过渡步骤,终端不保持在该步骤,而是移至第三步骤。下面,描述根据本发明的方法中的第三步骤。第三步骤涉及依据终端缓冲器来微调呈现速率,以达到标称呈现速率和目标缓冲器持续时间。根据本发明,呈现速率加速必须尽可能平滑,以避免呈现速率突然改变情况下的伪像。根据优选实施例,例如针对步骤2中10%的速率降低,如果使用的线性步长,则步骤3将以的子步长平滑地从10% (步骤2)移至0% (步骤4)。图5示出了该时间上的缓冲器填充。图5所示图示出了呈现数据速率RDRR相对于归一化缓冲器填充BF的关系。因此,根据终端缓冲器填充,可以调谐适当的接收数据速率,以匹配目标终端填充。步骤3是花费一些时间来执行的,但是步骤3对终端用户体验没有影响,这是因为媒体呈现在步骤2已经开始了。这种超前时间主要依据两个准则。第一准则包括步骤的数目 (以及步长值)以及从低速率(例如,10% )移至0%的规则。这是实施方式选择,其主要依据音频时间拉伸器质量。注意,对于较高的步骤数目或者非常有限的步骤数目,可以使用若干规则(线性的或对数的)。第二准则包括接收数据速率Cre。。该值是动态的,依据网络负载。该值的变化会影响缓冲器填充,因此终端必须根据缓冲器填充来增大或减小呈现数据速率。一旦已经达到了目标终端缓冲器时间ALT2,呈现数据速率比为0% (例如,Cm = Cs),该阶段就结束(移至步骤4)。下面,描述根据本发明方法的第四步骤。第四步骤涉及如下情况呈现速率等于服务器速率,并且终端具有目标缓冲器保护。在该步骤,终端已经达到了目标缓冲器保护ALT2。呈现数据速率等于服务器数据速率(CM = CS),因此终端处于最优流状况。注意,步骤3方法可以用在整个呈现体验期间。由于接收数据速率不是恒定的,所以终端缓冲器不稳定,因此使用步骤3允许在呈现体验期间最小化媒体流中断。图6示出了根据第四实施例的终端设备的框图。终端设备包括用于缓冲输入的流数据的终端缓冲器AL、控制单元CU、以及用于呈现终端缓冲器AL中缓冲的流数据的呈现单元Ru。控制单元CU适于请求来自服务器S的流会话。此外,当已开始流会话并且在终端缓冲器中将流数据缓冲第一时段时,控制器CU适于发起第一时段之后以第一呈现速率对所缓冲的数据进行呈现。第一呈现数据速率低于服务器数据速率。此外,控制单元CU适于根据接收到的流数据对终端缓冲器的填充,来调整第一呈现数据速率。
应该注意,根据第四实施例的终端设备适于执行上述根据第一、第二或第三实施例的缓冲流数据的方法。本发明针对以可变的接收数据速率执行网络上的媒体流的任何终端。本发明主要针对移动终端,但是也可以针对具有空中网络(Wifi,WiMax,2. 5G,3G,LTE等)的PC。注意,本发明的保护范围不限于本文描述的实施例。本发明的保护范围也不受权利要求中附图标记的限制。用语“包括”不排除除权利要求中提及的部件之外的其他部件。 元素之前的用语“一”不安排多个元素。形成本发明一部分的装置可以实现为专用硬件的形式或者编程的通用处理器的形式。本发明体现在每个新特征或特征组合中。
权利要求
1.一种对流数据进行缓冲的方法,该流数据以服务器数据速率(Cs)来自服务器(S), 经由网络(N),以终端接收数据速率(Crec)到达至少一个终端设备(T),所述方法包括步骤由终端设备(T)向服务器( 请求流会话;以服务器数据速率(Cs)从服务器(S)向网络(N)发送流数据,并以接收数据速率 (Crec)从网络(N)向终端设备(T)发送流数据;在终端设备(T)的终端缓冲器(AL)中,将从网络(N)接收的数据缓冲至少第一时段; 在第一时段之后,以第一呈现速率(Cren),发起对所缓冲的数据的呈现,其中第一呈现速率(Cren)低于服务器数据速率(Cs)或接收数据速率(Crec);根据接收到的流数据对终端缓冲器(AL)的填充,来调整第一呈现数据速率(Cren),直到呈现数据速率(Cren)对应于服务器数据速率(Cs)为止。
2.根据权利要求2所述的方法,其中,通过对终端缓冲器(AL)中缓冲的流数据进行重采样,来调整第一呈现数据速率(Cren)。
3..根据权利要求1或2所述的方法,其中,执行音频时间拉伸,来对流数据进行重采样。
4.根据权利要求1、2或3所述的方法,其中,随着终端缓冲器(AL)填充的增多,增大第一呈现数据速率(Cren)。
5.根据权利要求1到4之一所述的方法,其中,随着终端缓冲器(AL)填充的减少,减小第一呈现数据速率(Cren)。
6.一种终端设备(T),用于经由网络(N)从服务器( 接收流数据,该终端设备包括 至少一个终端缓冲器(AL),用于将从网络(N)以接收数据速率(Crec)接收到的数据缓冲至少第一时段;呈现单元(RU),用于呈现终端缓冲器(AL)中缓冲的流数据;以及至少一个控制单元(CU),用于向服务器( 请求流会话,用于在已将数据缓冲了第一时段之后,发起由呈现单元(RU)以第一呈现速率(Cren)来呈现所缓冲的数据,其中第一呈现数据速率(Cren)低于服务器数据速率(Cs)或接收数据速率(Crec),以及用于根据接收到的流数据对终端缓冲器的填充,来调整第一呈现数据速率(Cren),直到呈现数据速率 (Cren)对应于服务器数据速率(Cs)为止。
7.一种数据处理系统,包括 服务器(S),用于发送流数据,网络(N),用于接收来自服务器⑶的数据,以及至少一个根据权利要求6所述的终端设备。
全文摘要
提供了一种对流数据进行缓冲的方法,该流数据以服务器数据速率(Cs)来自服务器(S),经由网络(N),以终端接收数据速率(Crec)到达至少一个终端设备。由终端设备(T)向服务器(S)请求流会话。以服务器数据速率(Cs)从服务器(S)向网络(N)发送流数据,并以接收数据速率(Crec)从网络(N)向终端设备(T)发送流数据。在终端设备(T)的终端缓冲器(AL)中,将从网络(N)接收的数据缓冲至少第一时段。在第一时段之后,以第一呈现速率(Cren),发起对所缓冲的数据的呈现,其中第一呈现速率(Cren)低于服务器数据速率(Cs)或接收数据速率(Crec)。根据接收到的流数据对终端缓冲器(AL)的填充,来调整第一呈现数据速率(Cren),直到呈现数据速率(Cren)对应于服务器数据速率(Cs)为止。
文档编号H04N7/173GK102197656SQ200980142740
公开日2011年9月21日 申请日期2009年10月26日 优先权日2008年10月28日
发明者尼古拉斯·德莱海叶 申请人:Nxp股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1