Dsppa网络音频传输方法

文档序号:7765826阅读:642来源:国知局
专利名称:Dsppa网络音频传输方法
技术领域
本发明涉及流媒体应用技术领域,尤其是流媒体传输方法。
背景技术
在公共广播系统、远程会议系统等公共网络系统中,广泛存在传输实时流媒体数 据的需求。由于是公共网络,网络的稳定性波动很大,如果主机传输数据太快,终端因缓存 有限而丢失大量数据;反之,如果主机传输数据过慢,终端就会极大的受网络波动影响而出 现掉音、杂音甚至啸叫。另外,当网络覆盖面较大时,还会出现同步播放的协调控制、巨量终 端传输需求的管理等问题。因此流媒体传输中亟需一种能自动切换单播组播传输模式、自 动调节传输速率、智能管理终端数据的传输方法。

发明内容
为了解决上述问题,本发明的目的是提供一种基于实时传输协议和传输控制协 议的DSPPA网络音频传输方法。本发明所采用的技术方案是 DSPPA网络音频传输方法,包括以下步骤
A.终端向主机发送连接信号、注册信息,与主机建立连接关系;
B.主机向终端发送同步请求,计算同步协调值,实现与终端通信的同步协调;
C.主机和终端进行数据传输;
D.终端进行数据管理,终端接收数据分为实时控制数据和媒体播放数据;实时控制数 据通过TCP进行传输,并且终端会在收到后立刻响应;媒体播放数据通过UDP进行传输,采 用RTP协议,在终端缓存起来,等待数据处理线程来处理。进一步作为优选的实施方式,骤A所述的注册信息包含有能实现组播单播自动切 换的注册信息。步骤A还包括终端向主机发送心跳包表明在线身份。组播单播自动切换流程如下 终端判断当前能否建立组播连接;
根据判断结果,终端在注册信息中加入是否支持组播信息,并向主机发送注册信息; 主机根据终端注册信息确认数据传输模式,对于组播连接,向终端发送组播确认信息, 终端收到组播确认信息后向主机发送组播确认反馈,主机接收到组播确认反馈后与终端建 立组播连接;
主机通过单播或组播连接向终端发送数据。主机和终端进行同步协调包括
Bi.主机向终端发送同步请求并等待同步测试包,终端等待同步请求; B2.终端收到同步请求,判断收到同步包时间是否超过预定时间,若没有超过则向主机 发送同步测试包,否则返回Bl重新等待主机同步请求;
B3.主机收到同步测试包并计算同步协调值,如果有差值特别大的终端,则将其分出组播,进行单播传输,并提前发送数据;主机等待同步测试包超时则返回Bl重新向终端发送 同步请求。进一步作为优选的实施方式,步骤C包括终端根据缓存大小调节通信传输速度 Cl.主机发送多媒体传输数据,终端接收多媒体传输数据;
C2.当终端缓存达到预定值,终端向主机发送降低传输速度请求,当终端缓存低于约定 值,终端向主机发送提升传输速度请求;
C3.主机根据终端的传输速度请求相应提升或降低传输速度。步骤D终端对媒体播放数据的处理流程如下 Dl.终端等待RTP数据包;
D2.终端接收到RTP数据包,判断该数据包是否为可利用乱序包; D3.对于可利用乱序包,终端通过标签定位初寻址和缓存链表定位具体地址并插入数 据包;对于正常数据包,则缓存起来;对于无效包则放弃处理; D4.对于缓存的数据包判断是否需要做标签;
D5.对于需做标签数据包,将该数据包缓存地址放入标签并判断当前标签数组是否已 满,标签有两个数组,当其中一个使用完后,将当前标签放入第二个数组,并清空前一个数 组,同时缓存长度加1 ;若数据包不需加标签则直接将缓存长度加1。本发明的有益效果是本发明方法支持自动切换组播单播数据传输模式,自动依 据网络状态和终端缓存大小,提升或者降低数据传输速度,提供了终端同步机制,降低终端 之间播放的时差,提供了终端数据管理机制,从而保证了实时传输流媒体数据的稳定性、可 靠性。


下面结合附图和实施例对本发明作进一步说明 图1是本发明主机和终端建立连接关系的流程;
图2是本发明主机和终端控制数据传输速率的流程; 图3是本发明主机和终端进行同步协调的流程; 图4是本发明终端进行数据管理的流程; 图5是本发明组播单播自动切换的流程; 图6是本发明一个实施例的网络结构图。
具体实施例方式为了便于理解,先做如下词汇约定
主机系统的一个服务器,提供广播数据和信号,我们称其为主机,是整个网络系统的 核心。拥有一个约定的默认访问IP地址和端口。终端拥有播放设备,可直接播放流媒体节目。或者可以控制其下一级子设备进行 流媒体节目播放。负责数据的接收和反馈。公共网络该网络中不仅仅有本协议所在系统进行数据传输,还包括其他不可知 系统进行各种数据传输。单播进行点对点的数据传输。
组播进行基于组播协议的数据传输。心跳包每个一个时间片,由终端发向主机,表明自己仍然在线。RTP协议该RTP协议是基于UDP进行数据传输的实现。去掉了 TCP控制部分。即 收发两端不会互发TCP数据报。DSPPA网络音频传输方法,包括以下步骤
A.终端向主机发送连接请求、注册信息,与主机建立连接关系;
B.主机向终端发送同步请求,计算同步协调值,实现与终端通信的同步协调;
C.主机和终端进行数据传输;
D.终端进行数据管理,终端接收数据分为实时控制数据和多媒体播放数据;实时控制 数据通过TCP进行传输,并且终端会在收到后立刻响应;媒体播放数据通过UDP进行传输, 采用RTP协议,在终端缓存起来,等待数据处理线程来处理。进一步作为优选的实施方式,步骤A所述的注册信息包含有能实现组播单播自动 切换的注册信息。进一步作为优选的实施方式,步骤A还包括终端向主机发送心跳包表明在线身 份。进一步作为优选的实施方式,步骤C包括终端根据缓存大小调节通信传输速度。结合图1,主机和终端建立连接的具体流程如下 Al.主机和终端系统初始化;
A2.终端先向主机发送连接信号并等待注册邀请,主机等待连接信号; A3.主机接收到连接信号后向终端发送注册邀请并等待注册信息; A4.终端接收注册邀请后向主机发送注册信息并等待注册反馈,若等待注册邀请超时 则返回A2重新向主机发送连接信号;
A5.主机接收到注册信息后向终端发送包含分配数据端口的反馈信息,若等待注册信 息超时则返回A2重新等待连接信号;
A6.终端接收反馈信息后与主机建立连接,若等待反馈信息超时则重新向主机发送连 接信号。主机和终端建立连接后,终端向主机发送心跳包表明在线身份,终端在线状态循 环查询的流程如下终端向主机发送心跳包并等待心跳反馈,主机等待心跳包;主机接收 到心跳包后知晓终端在线并向终端发送心跳反馈,若等待心跳包超时则与终端失去连接并 重新等待终端连接信号;终端接收到心跳反馈知晓主机在线,若终端等待心跳反馈超时则 与主机失去连接并重新向主机发送连接信号。主机和终端建立连接关系后,主机通知目标终端即将开始数据传输,进行同步协 调。结合图3,主机和终端进行同步协调的流程如下
Bi.主机向终端发送同步请求并等待同步测试包,终端等待同步请求; B2.终端收到同步请求,判断收到同步包时间是否超过预定时间,若没有超过则向主机 发送同步测试包,否则返回Bl重新等待主机同步请求;
B3.主机收到同步测试包并计算同步协调值,如果有差值特别大的终端,则将其分出组 播,进行单播传输,并提前发送数据;主机等待同步测试包超时则返回Bl重新向终端发送 同步请求。
主机和终端数据传输中的传输控制流程如下
Cl.主机发送多媒体传输数据,终端接收多媒体传输数据;
C2.当终端缓存达到预定值,终端向主机发送降低传输速度请求,当终端缓存低于约定 值,终端向主机发送提升传输速度请求;
C3.主机根据终端的传输速度请求相应提升或降低传输速度。当终端收到主机的数据后,会依据数据的来源,按照相应的流程进行处理。对于 实时控制数据,终端会在收到后立刻响应;对于多媒体播放数据,终端处理流程结合图4如 下
Dl.终端等待RTP数据包;
D2.终端接收到RTP数据包,判断该数据包是否为可利用乱序包; D3.对于可利用乱序包,终端通过标签定位初寻址和缓存链表定位具体地址插入数据 包;对于正常数据包,则缓存起来;对于无效包则放弃处理; D4.对于缓存的数据包判断是否需要做标签;
D5.对于需做标签数据包,将该数据包缓存地址放入标签并判断当前标签数组是否已 满,标签有两个数组,当其中一个使用完后,将当前标签转入第二个数组,并清空前一个数 组,同时缓存产度加1 ;若数据包不需加标签则直接将缓存长度加1。缓存起来的数据,等待数据处理线程来处理。结合图5组播单播自动切换的流程如下 终端判断当前能否建立组播连接;
根据判断结果,终端在注册信息中加入是否支持组播信息,并向主机发送注册信息; 主机根据终端注册信息确认数据传输模式,对于组播连接,向终端发送组播确认信息, 终端收到组播确认信息后向主机发送组播确认反馈,主机接收到组播确认反馈后与终端建 立组播连接;
主机通过单播或组播连接向终端发送数据。结合图6,一个流媒体传输网络结构图,主机、终端、公共网络、其他链接网络系统 通过网线连接起来。主机包含节目控制播放界面、协议中主机部分程序。以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施 例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替 换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
权利要求
1.DSPPA网络音频传输方法,其特征在于包括以下步骤A.终端向主机发送连接信号、注册信息,与主机建立连接关系;B.主机向终端发送同步请求,计算同步协调值,实现与终端通信的同步协调;C.主机和终端进行数据传输;D.终端进行数据管理,终端接收数据分为实时控制数据和媒体播放数据;实时控制数 据通过TCP进行传输,并且终端会在收到后立刻响应;媒体播放数据通过UDP进行传输,采 用RTP协议,在终端缓存起来,等待数据处理线程来处理。
2.根据权利要求1所述的DSPPA网络音频传输方法,其特征在于步骤A所述的注册 信息包含有能实现组播单播自动切换的注册信息。
3.根据权利要求2所述的DSPPA网络音频传输方法,其特征在于组播单播自动切换 流程如下终端判断当前能否建立组播连接;根据判断结果,终端在注册信息中加入是否支持组播信息,并向主机发送注册信息; 主机根据终端注册信息确认数据传输模式,对于组播连接,向终端发送组播确认信息, 终端收到组播确认信息后向主机发送组播确认反馈,主机接收到组播确认反馈后与终端建 立组播连接;主机通过单播或组播连接向终端发送数据。
4.根据权利要求1或2所述的DSPPA网络音频传输方法,其特征在于步骤A还包括 终端向主机发送心跳包表明在线身份。
5.根据权利要求1所述的DSPPA网络音频传输方法,其特征在于步骤B包括 Bi.主机向终端发送同步请求并等待同步测试包,终端等待同步请求;B2.终端收到同步请求,判断收到同步包时间是否超过预定时间,若没有超过则向主机 发送同步测试包,否则返回Bl重新等待主机同步请求;B3.主机收到同步测试包并计算同步协调值,如果有差值特别大的终端,则将其分出组 播,进行单播传输,并提前发送数据;主机等待同步测试包超时则返回Bl重新向终端发送 同步请求。
6.根据权利要求1所述的DSPPA网络音频传输方法,其特征在于步骤C包括终端根 据缓存大小调节通信传输速度Cl.主机发送多媒体传输数据,终端接收多媒体传输数据;C2.当终端缓存达到预定值,终端向主机发送降低传输速度请求,当终端缓存低于约定 值,终端向主机发送提升传输速度请求;C3.主机根据终端的传输速度请求相应提升或降低传输速度。
7.根据权利要求1所述的DSPPA网络音频传输方法,其特征在于步骤D终端对媒体 播放数据的处理流程如下Dl.终端等待RTP数据包;D2.终端接收到RTP数据包,判断该数据包是否为可利用乱序包; D3.对于可利用乱序包,终端通过标签定位初寻址和缓存链表定位具体地址并插入数 据包;对于正常数据包,则缓存起来;对于无效包则放弃处理; D4.对于缓存的数据包判断是否需要做标签;D5.对于需做标签数据包,将该数据包缓存地址放入标签并判断当前标签数组是否已 满,标签有两个数组,当其中一个使用完后,将当前标签放入第二个数组,并清空前一个数 组,同时缓存长度加1 ;若数据包不需做标签则直接将缓存长度加1。
全文摘要
本发明公开了一种DSPPA网络音频传输方法,包括终端向主机发送连接信号、注册信息,与主机建立连接关系;主机向终端发送同步请求,计算同步协调值,实现与终端通信的同步协调;主机和终端进行数据传输;终端进行数据管理,对于实时控制数据,终端会在收到后立刻响应,对于多媒体播放数据,终端会缓存起来等待数据处理线程来处理。本发明支持自动切换组播单播数据传输模式,自动依据网络状态和终端缓存大小,提升或者降低数据传输速度,提供了终端同步机制,降低终端之间播放的时差,提供了终端数据管理机制,从而保证了实时传输流媒体数据的稳定性、可靠性。可广泛应用在公共网络的流媒体传输领域。
文档编号H04L29/06GK102075514SQ20101055120
公开日2011年5月25日 申请日期2010年11月19日 优先权日2010年11月19日
发明者周威, 王齐祥 申请人:王恒
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1