可变码率媒体流的流量控制方法、装置以及系统转让专利

申请号 : CN201410329057.6

文献号 : CN105245946B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陆忠孝

申请人 : 中兴通讯股份有限公司

摘要 :

本发明提供一种可变码率媒体流的流量控制方法、装置以及系统。所述可变码率媒体流的流量控制方法,应用于机顶盒的播放器播放来自流媒体服务器的可变码率媒体流的场景,所述方法包括:控制装置监测机顶盒缓存使用率的第一当前值;所述控制装置判断所述第一当前值是否大于或等于上溢阈值;当所述第一当前值大于或等于所述上溢阈值时,所述控制装置通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制,直到所述机顶盒缓存使用率的第二当前值小于所述上溢阈值。本发明能够解决码流码率变化导致的现有技术中流量控制失效的问题。

权利要求 :

1.一种可变码率媒体流的流量控制方法,应用于机顶盒的播放器播放来自流媒体服务器的可变码率媒体流的场景,其特征在于,所述方法包括:控制装置监测机顶盒缓存使用率的第一当前值;

所述控制装置判断所述第一当前值是否大于或等于上溢阈值;

当所述第一当前值大于或等于所述上溢阈值时,所述控制装置通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制,包括:所述控制装置向所述流媒体服务器发送第一暂停命令,并在收到所述流媒体服务器针对所述第一暂停命令的响应消息后不转发给所述播放器,使得所述流媒体服务器在不通知所述播放器的情况下直接切换到暂停发送状态;

直到所述机顶盒缓存使用率的第二当前值小于所述上溢阈值,第二当前值是缓存使用率的实时值。

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

所述控制装置通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制的步骤后,当所述机顶盒缓存使用率的第二当前值恢复到小于所述上溢阈值时,所述控制装置向所述流媒体服务器发送第一恢复命令,并在收到所述流媒体服务器针对所述第一恢复命令的响应消息后不转发给所述播放器,使得所述流媒体服务器在不通知所述播放器的情况下直接切换到发送状态。

3.根据权利要求1所述的方法,其特征在于,在所述控制装置通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制的步骤之后,且在所述控制装置向所述流媒体服务器发送第一恢复命令的步骤之前,所述方法还包括:当所述控制装置收到用户的第二暂停命令时,所述控制装置向所述机顶盒的播放器转发所述第二暂停命令,且通知所述机顶盒的播放器不向所述流媒体服务器转发所述第二暂停命令,使得所述播放器在不向所述流媒体服务器转发所述第二暂停命令的情况下直接切换到暂停播放状态;

当所述控制装置收到用户的第二恢复命令时,并且所述第二恢复命令的上一用户命令为暂停命令时,所述控制装置向所述机顶盒的播放器发送所述第二恢复命令,且通知所述播放器不向所述流媒体服务器转发所述第二恢复命令,使得所述播放器在不向所述流媒体服务器转发所述第二恢复命令的情况下直接切换到播放状态;

当所述控制装置收到用户的快进或快退命令时,则将所述快进或快退命令发送给所述流媒体服务器和所述播放器,使得所述流媒体服务器和所述播放器均切换为快进或快退状态。

4.根据权利要求1所述的方法,其特征在于,所述控制装置判断所述第一当前值是否大于或者等于上溢阈值的步骤之后,所述方法还包括:当所述第一当前值小于所述上溢阈值且大于下溢阈值时,所述控制装置向所述流媒体服务器发送请求快发或者慢发命令,所述上溢阈值大于所述下溢阈值;

当所述第一当前值小于所述下溢阈值时,所述控制装置向流媒体服务器发送请求快发命令。

5.一种可变码率媒体流的流量控制装置,应用于机顶盒的播放器播放来自流媒体服务器的可变码率媒体流的场景,其特征在于,所述装置包括:监测单元,监测机顶盒缓存使用率的第一当前值;

判断单元,判断所述第一当前值是否大于或等于上溢阈值;

控制单元,当所述第一当前值大于或等于所述上溢阈值时,通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制,直到所述机顶盒缓存使用率的第二当前值小于所述上溢阈值,第二当前值是缓存使用率的实时值;所述控制单元包括:发送子单元,向所述流媒体服务器发送第一暂停命令;

接收子单元,接收所述流媒体服务器针对所述第一暂停命令的响应消息,且不转发给所述播放器,使得所述流媒体服务器在不通知所述播放器的情况下直接切换到暂停发送状态。

6.根据权利要求5所述的装置,其特征在于,还包括:

第一发送单元,进行所述流量控制后,当所述机顶盒缓存使用率的第二当前值恢复到小于所述上溢阈值时,向所述流媒体服务器发送第一恢复命令;

接收单元,接收到所述流媒体服务器针对所述第一恢复命令的响应消息,且不转发给所述播放器,使得所述流媒体服务器在不通知所述播放器的情况下直接切换到发送状态。

7.根据权利要求5所述的装置,其特征在于,还包括:

第二发送单元,当所述第一当前值小于所述上溢阈值且大于下溢阈值时,向所述流媒体服务器发送请求快发或者慢发命令;所述上溢阈值大于所述下溢阈值;

第三发送单元,当所述第一当前值小于所述下溢阈值时,向流媒体服务器发送请求快发命令。

8.一种可变码率媒体流的流量控制系统,应用于机顶盒的播放器播放来自流媒体服务器的可变码率媒体流的场景,其特征在于,包括:机顶盒、流媒体服务器以及控制装置;

所述控制装置,监测机顶盒缓存使用率的第一当前值;判断所述第一当前值是否大于或等于上溢阈值;当所述第一当前值大于或等于所述上溢阈值时,通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制,直到所述机顶盒缓存使用率的第二当前值小于所述上溢阈值,第二当前值是缓存使用率的实时值;

所述控制装置通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制,包括:所述控制装置向所述流媒体服务器发送第一暂停命令,并在收到所述流媒体服务器针对所述第一暂停命令的响应消息后不转发给所述播放器,使得所述流媒体服务器在不通知所述播放器的情况下直接切换到暂停发送状态。

说明书 :

可变码率媒体流的流量控制方法、装置以及系统

技术领域

[0001] 本发明涉及视频领域,特别是指一种可变码率媒体流的流量控制方法、装置以及系统。

背景技术

[0002] 目前,流媒体的传输技术主要有三种方式:点对点(Unicast)、多址广播(Multicast)和广播(Broadcast)。点对点一般称为单播,单播基于TCP(传输控制协议)和UDP(用户数据报协议)两种基础传输协议。TCP协议是可靠的传输协议,但效率比较低。UDP协议是不可靠的传输协议,传输质量由用户保证,但具有更高的传输效率。流媒体通常使用UDP传输。
[0003] UDP协议没有定义两个通讯结点之间传输速度的控制方法。在IPTV(网络电视)系统中,用户终端(通常为机顶盒)的用于保存数据的缓存有大小限制,因此UDP传输的流媒体需要有一种控制传输速度的方法,来保证不会出现传输速度过快导致机顶盒缓存溢出数据丢失的问题。目前,通常使用的电信标准的控制方法为,在RTSP(实时流传输协议)协议中添加控制字段,由于机顶盒发出给流媒体服务器用于调整发送速度。这种方法在传输CBR(固定码率)片源时一般都可以正常工作,但在传输VBR(可变码率)片源时存在缺陷。
[0004] VBR动态比特率,顾名思义,编码码率随时间动态变化,因此,在传输过程中传输码率也会动态变化。这就有可能出现流量失控的情况。例如,在某一段时间内传输的码率是低码率,紧接着是一段时间的高码率。低码率的码流比较容易传输到机顶盒中,并在缓存中积累,同时,低码率的码流在播放过程中消耗的速度也比较慢,紧接而来的高码率码流由于前面的缓存没有及时消耗,很快会导致机顶盒缓存空间不足而溢出,这种现象在传输高清码率的片源时更为明显。若使用电信标准的流量控制方法请求流媒体服务器慢发(指发流速率低于片源编码码率),则存在两个问题,一个问题是:慢发调整的速率与片源码率相比,调整的速率不会很低,导致流量不会很快降低,对VBR片源码流的调整作用不明显。另一个问题是:慢发调整过程是一个耗时的过程,在高清码率下很可能出现机顶盒缓存已经溢出,而传输码率未能下降到足够低的速率。

发明内容

[0005] 本发明要解决的技术问题是,提供一种可变码率媒体流的流量控制方法、装置以及系统,能够解决码流码率变化导致的现有技术中流量控制失效的问题。
[0006] 为解决上述技术问题,一方面,提供一种可变码率媒体流的流量控制方法,应用于机顶盒的播放器播放来自流媒体服务器的可变码率媒体流的场景,所述方法包括:
[0007] 控制装置监测机顶盒缓存使用率的第一当前值;
[0008] 所述控制装置判断所述第一当前值是否大于或等于上溢阈值;
[0009] 当所述第一当前值大于或等于所述上溢阈值时,所述控制装置通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制,直到所述机顶盒缓存使用率的第二当前值小于所述上溢阈值。
[0010] 所述控制装置通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制的步骤包括:
[0011] 所述控制装置向所述流媒体服务器发送第一暂停命令,并在收到所述流媒体服务器针对所述第一暂停命令的响应消息后不转发给所述播放器,使得所述流媒体服务器在不通知所述播放器的情况下直接切换到暂停发送状态。
[0012] 所述方法还包括:
[0013] 所述控制装置通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制的步骤后,当所述机顶盒缓存使用率的第二当前值恢复到小于所述上溢阈值时,所述控制装置向所述流媒体服务器发送第一恢复命令,并在收到所述流媒体服务器针对所述第一恢复命令的响应消息后不转发给所述播放器,使得所述流媒体服务器在不通知所述播放器的情况下直接切换到发送状态。
[0014] 在所述控制装置通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制的步骤之后,且在所述控制装置向所述流媒体服务器发送第一恢复命令的步骤之前,所述方法还包括:
[0015] 当所述控制装置收到用户的第二暂停命令时,所述控制装置向所述机顶盒的播放器转发所述第二暂停命令,且通知所述机顶盒的播放器不向所述流媒体服务器转发所述第二暂停命令,使得所述播放器在不向所述流媒体服务器转发所述第二暂停命令的情况下直接切换到暂停播放状态;
[0016] 当所述控制装置收到用户的第二恢复命令时,并且所述第二恢复命令的上一用户命令为暂停命令时,所述控制装置向所述机顶盒的播放器发送所述第二恢复命令,且通知所述播放器不向所述流媒体服务器转发所述第二恢复命令,使得所述播放器在不向所述流媒体服务器转发所述第二恢复命令的情况下直接切换到播放状态;
[0017] 当所述控制装置收到用户的快进或快退命令时,则将所述快进或快退命令发送给所述流媒体服务器和所述播放器,使得所述流媒体服务器和所述播放器均切换为快进或快退状态。
[0018] 所述控制装置判断所述第一当前值是否大于或者等于上溢阈值的步骤之后,所述方法还包括:
[0019] 当所述第一当前值小于所述上溢阈值且大于下溢阈值时,所述控制装置向所述流媒体服务器发送请求快发或者慢发命令;所述上溢阈值大于所述下溢阈值;
[0020] 当所述第一当前值小于所述下溢阈值时,所述控制装置向流媒体服务器发送请求快发命令。
[0021] 另一方面,提供一种可变码率媒体流的流量控制装置,应用于机顶盒的播放器播放来自流媒体服务器的可变码率媒体流的场景,其特征在于,所述装置包括:
[0022] 监测单元,监测机顶盒缓存使用率的第一当前值;
[0023] 判断单元,判断所述第一当前值是否大于或等于上溢阈值;
[0024] 控制单元,当所述第一当前值大于或等于所述上溢阈值时,通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制,直到所述机顶盒缓存使用率的第二当前值小于所述上溢阈值。
[0025] 所述控制单元包括:
[0026] 发送子单元,向所述流媒体服务器发送第一暂停命令;
[0027] 接收子单元,接收所述流媒体服务器针对所述第一暂停命令的响应消息,且不转发给所述播放器,使得所述流媒体服务器在不通知所述播放器的情况下直接切换到暂停发送状态。
[0028] 所述的装置,还包括:
[0029] 第一发送单元,进行所述流量控制后,当所述机顶盒缓存使用率的第二当前值恢复到小于所述上溢阈值时,向所述流媒体服务器发送第一恢复命令;
[0030] 接收单元,接收到所述流媒体服务器针对所述第一恢复命令的响应消息,且不转发给所述播放器,使得所述流媒体服务器在不通知所述播放器的情况下直接切换到发送状态。
[0031] 所述的装置,还包括:
[0032] 第二发送单元,当所述第一当前值小于所述上溢阈值且大于下溢阈值时,向所述流媒体服务器发送请求快发或者慢发命令;所述上溢阈值大于所述下溢阈值;
[0033] 第三发送单元,当所述第一当前值小于所述下溢阈值时,向流媒体服务器发送请求快发命令。
[0034] 另一方面,提供一种可变码率媒体流的流量控制系统,应用于机顶盒的播放器播放来自流媒体服务器的可变码率媒体流的场景,包括:机顶盒、流媒体服务器以及控制单元;
[0035] 所述控制装置,监测机顶盒缓存使用率的第一当前值;判断所述第一当前值是否大于或等于上溢阈值;当所述第一当前值大于或等于所述上溢阈值时,通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制,直到所述机顶盒缓存使用率的第二当前值小于所述上溢阈值。
[0036] 本发明的上述技术方案的有益效果如下:
[0037] 本发明中,利用播放器和流媒体状态分离,实现流量控制,无需关心传输码率的变化情况来频繁的动态调整快慢发,实现简单,解决了VBR码流码率变化导致传统流量控制失效的问题。

附图说明

[0038] 图1为本发明所述的可变码率媒体流的流量控制方法的流程示意图;
[0039] 图2是本发明所述的可变码率媒体流的流量控制装置的连接示意图;
[0040] 图3是本发明所述的可变码率媒体流的流量控制系统的连接示意图;
[0041] 图4是本发明所述的可变码率媒体流的流量控制方法的应用场景的系统架构示意图;
[0042] 图5本发明应用场景中缓存空间的划分示意图;
[0043] 图6是本发明应用场景中流量控制方法的示意图;
[0044] 图7是本发明应用场景中播放器与流媒体的状态分离与恢复同步的流程示意图。

具体实施方式

[0045] 为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
[0046] 如图1所示,为本发明提供一种可变码率媒体流的流量控制方法,应用于机顶盒的播放器播放来自流媒体服务器的可变码率媒体流的场景,所述方法包括:
[0047] 步骤11,控制装置监测机顶盒缓存使用率的第一当前值;
[0048] 步骤12,所述控制装置判断所述第一当前值是否大于或等于上溢阈值;上溢阈值可以根据情况预先设定。
[0049] 步骤13,当所述第一当前值大于或等于所述上溢阈值时,所述控制装置通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制,直到所述机顶盒缓存使用率的第二当前值小于所述上溢阈值。也就是说,该步骤中,实时监测机顶盒缓存使用率的值,直到缓存使用率的实时值小于所述上溢阈值,则停止流量控制。所述控制装置进行流量控制的步骤具体为:所述控制装置向所述流媒体服务器发送第一暂停命令,并在收到所述流媒体服务器针对所述第一暂停命令的响应消息后不转发给所述播放器,使得所述流媒体服务器在不通知所述播放器的情况下直接切换到暂停发送状态。也就是说,所述流媒体服务器对所述响应消息进行了截留。
[0050] 步骤14,当所述第一当前值小于所述上溢阈值且大于下溢阈值时,所述控制装置向所述流媒体服务器发送请求快发或者慢发命令;所述上溢阈值大于所述下溢阈值;其中,发送请求快发或者慢发命令可根据实际使用场景做调整,例如,为尽可能提高缓存使用率,只要所述第一当前值未达到上溢阀值都请求快发,而所述第一当前值接近上溢阀值时请求慢发。控制装置对所述流媒体服务器的响应消息进行了截留,使得响应消息不影响播放器的状态。
[0051] 步骤15,当所述第一当前值小于所述下溢阈值时,所述控制装置向流媒体服务器发送请求快发命令。
[0052] 所述方法还包括:
[0053] 步骤16,所述进行流量控制的步骤后,当所述机顶盒缓存使用率的第二当前值恢复到小于所述上溢阈值时,所述控制装置向所述流媒体服务器发送第一恢复命令,并在收到所述流媒体服务器针对所述第一恢复命令的响应消息后不转发给所述播放器,使得所述流媒体服务器在不通知所述播放器的情况下直接切换到发送状态。也就是说,控制装置对所述流媒体服务器的响应消息进行了截留,使得响应消息不影响播放器的状态。
[0054] 在步骤13之后,步骤16之前,所述方法还包括:
[0055] 步骤13A,当所述控制装置收到用户的第二暂停命令时,所述控制装置向所述机顶盒的播放器转发所述第二暂停命令,且通知所述机顶盒的播放器不向所述流媒体服务器转发所述第二暂停命令,使得所述播放器在不向所述流媒体服务器转发所述第二暂停命令的情况下直接切换到暂停播放状态;
[0056] 步骤13b,当所述控制装置收到用户的第二恢复命令时,并且所述第二恢复命令的上一用户命令为暂停命令时,所述控制装置向所述机顶盒的播放器发送所述第二恢复命令,且通知所述播放器不向所述流媒体服务器转发所述第二恢复命令,使得所述播放器在不向所述流媒体服务器转发所述第二恢复命令的情况下直接切换到播放状态;
[0057] 步骤13c,当所述控制装置收到用户的快进或快退命令时,则将所述快进或快退命令发送给所述流媒体服务器和所述播放器,使得所述流媒体服务器和所述播放器均切换为快进或快退状态。其中,所述控制装置可以通过机顶盒给所述流媒体服务器发送快进或快退命令,也可以直接给所述流媒体服务器发送快进或快退命令。
[0058] 上述场景描述了进行流量控制之后,取消流量控制处理之前,收到用户的指令的处理流程。
[0059] 如图2所示,为本发明所述的一种可变码率媒体流的流量控制装置,应用于机顶盒的播放器播放来自流媒体服务器的可变码率媒体流的场景,所述装置包括:
[0060] 监测单元21,监测机顶盒缓存使用率的第一当前值;
[0061] 判断单元22,判断所述第一当前值是否大于或等于上溢阈值;
[0062] 控制单元23,当所述第一当前值大于或等于所述上溢阈值时,通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制,直到所述机顶盒缓存使用率的第二当前值小于所述上溢阈值。
[0063] 所述控制单元23包括:
[0064] 发送子单元,向所述流媒体服务器发送第一暂停命令;
[0065] 接收子单元,接收所述流媒体服务器针对所述第一暂停命令的响应消息,且不转发给所述播放器,使得所述流媒体服务器在不通知所述播放器的情况下直接切换到暂停发送状态。
[0066] 所述的装置,还包括:
[0067] 第一发送单元24,进行所述流量控制后,当所述机顶盒缓存使用率的第二当前值恢复到小于所述上溢阈值时,向所述流媒体服务器发送第一恢复命令;
[0068] 接收单元25,接收到所述流媒体服务器针对所述第一恢复命令的响应消息,且不转发给所述播放器,使得所述流媒体服务器在不通知所述播放器的情况下直接切换到发送状态。
[0069] 所述的装置,还包括:
[0070] 第二发送单元26,当所述第一当前值小于所述上溢阈值且大于下溢阈值时,向所述流媒体服务器发送请求快发或者慢发命令;所述上溢阈值大于所述下溢阈值;
[0071] 第三发送单元27,当所述第一当前值小于所述下溢阈值时,向流媒体服务器发送请求快发命令。
[0072] 如图3所示,为本发明所述的一种可变码率媒体流的流量控制系统,应用于机顶盒的播放器播放来自流媒体服务器的可变码率媒体流的场景,包括:机顶盒31、流媒体服务器32以及控制装置33;
[0073] 所述控制装置33,监测机顶盒31的缓存使用率的第一当前值;判断所述第一当前值是否大于或等于上溢阈值;当所述第一当前值大于或等于所述上溢阈值时,通过分离所述播放器和所述流媒体服务器之间的状态进行流量控制,直到所述机顶盒缓存使用率的第二当前值小于所述上溢阈值。
[0074] 以下描述本发明的第一应用场景。
[0075] 本应用场景为一种改进IPTV网络互动电视传输VBR可变码率媒体流的传输流量控制方法。
[0076] 装置架构:本发明可以应用在IPTV系统(参见图4)中的机顶盒侧,仅需要在IPTV系统中的机顶盒侧做修改,不需要修改现有IPTV架构,对系统中的其它装置无影响。IPTV播放过程中使用RTSP(实时流传输协议)与流媒体服务器交互进行播放控制。
[0077] 包括以下步骤:
[0078] 步骤1,将机顶盒缓存使用率使用两个阀值(下溢阀值、上溢阀值)划分为三个区间:下溢区间、正常区间、上溢区间。
[0079] 其中,下溢阀值是指:缓存使用率低于该值时均归于下溢区间;上溢阀值是指:缓存使用率高于该值时均归于上溢区间;缓存使用率在上溢阀值和下溢阀值之间均归于正常区间。
[0080] 步骤2,对处于不同区间的缓存使用率进行处理。在处理流程上一般有下面四种情况:
[0081] (1)处于下溢区间时,机顶盒通过流量控制方式请求快发(指发流速度大于片源编码码率);
[0082] (2)处于正常区间时,机顶盒根据需要通过流量控制方式请求快发或者恢复正常发流、或者慢发;
[0083] (3)处于上溢区间时,机顶盒通过RTSP协议发出PAUSE暂停命令,使流媒体服务器暂停发流。
[0084] (4)处于上溢区间并在发出PAUSE命令后,等待缓存使用率恢复到正常区间或者下溢区间,随后通过RTSP协议发出PLAY命令。
[0085] 步骤3,允许播放器和流媒体状态不同步。若机顶盒缓存使用率处于上溢区间,在机顶盒发出RTSP PAUSE命令后,分离流媒体状态和播放器状态,即:播放器保持播放状态不变,流媒体处于暂停状态。
[0086] 步骤4,在缓存使用率从上溢区间恢复到正常或者下溢区间后,播放器状态和流媒体状态恢复同步。
[0087] 至此流量控制完成。
[0088] 以下描述本发明的第二应用场景。
[0089] 首先,结合图5,将机顶盒盒缓存使用率划分为三个区间,供图6的流程判断使用。
[0090] 结合图6,具体步骤如下:
[0091] 步骤1,机顶盒开始播放单播节目;
[0092] 步骤2,请求服务器快发;
[0093] 步骤3,检测机顶盒当前缓存使用率(以下缓存判断都为判断机顶盒缓存使用率);
[0094] 步骤4,判断缓存使用率是否处于下溢区间。是,进入步骤5。否,进入步骤8;
[0095] 步骤5,判断是否在步骤9向流媒体服务器发出RTSP PAUSE命令的步骤之后。是,进入步骤7,否,进入步骤6;
[0096] 步骤6,请求服务器快发码流,返回步骤3;
[0097] 步骤7,通过RTSP协议向流媒体服务器发出PLAY命令。请求服务器快发码流,播放器与流媒体状态恢复同步,返回步骤3;
[0098] 步骤8,判断缓存使用率是否在正常区间。是,根据需求无动作或者进入步骤6。否,进入步骤9。
[0099] 步骤9,判断缓存使用率是否在上溢区间。是,通过RTSP协议向流媒体服务器发出PAUSE命令,进入步骤10;
[0100] 步骤10,分离播放器与流媒体状态,使播放器继续保持播放状态,流媒体处于暂停状态。返回步骤3。
[0101] 图7为播放器与流媒体的状态分离与恢复的示意图。包括以下步骤:
[0102] 进入流量控制,PAUSE暂停后便开始分离播放器与流媒体状态,具体需要拦截流媒体的PAUSE响应,使播放器无法感知,这时播放器处于播放状态,流媒体处于暂停状态,两者状态不同步。
[0103] 播放器与流媒体状态失步时,如果机顶盒收到用户的播放控制命令需要区分处理:(1)如果是PAUSE命令,则拦截使流媒体无法感知,同时向播放器输出PAUSE,直接进入暂停。(2)如果用户在PAUSE之后发出RESUME命令,同样拦截使流媒体无法感知,并向播放器输出RESUME直接恢复播放。(3)如果是其它用户命令,如快进、快退等,则将其发给流媒体,播放器与流媒体状态恢复同步。
[0104] 播放器与流媒体状态失步时,如果需要取消流量控制暂停,则向流媒体发送PLAY命令,同时拦截响应使播放器无法感知,这时流媒体恢复播放状态,与播放器恢复同步。
[0105] 至此,在播放结束前的整个播放过程中,完成流量控制。
[0106] 本发明具有以下有益效果:
[0107] 本发明所述的IPTV系统终端对基于UDP协议的媒体流的流量控制方法,利用RTSP命令和播放器、流媒体状态分离,实现了流量控制,可以应对各种导致机顶盒缓存溢出的极端情况,不仅限于传输VBR码流。此外,无需关心传输码率的变化情况来频繁的动态调整快慢发,实现也简单,具有很好的应用价值。本发明的改进IPTV传输VBR码流的流量控制方法,解决了VBR码流码率变化导致传统流量控制失效的问题。
[0108] 以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。