一种网络实时播放多媒体数据的方法

文档序号:7955057阅读:286来源:国知局
专利名称:一种网络实时播放多媒体数据的方法
技术领域
本发明涉及图像通信,尤其是涉及一种网络实时播放多媒体数据的方法。
背景技术
在传统的实时流媒体应用中,使用最为广泛的为MMS(MicrosoftMedia Server)和RTSP(Real Time Streaming Protocol)流媒体协议,如果想在同一应用系统中使用这两种协议来做流媒体服务,那么就必须分别处理MMS和RTSP,在接收端需要分别打开Media Player播放器和Real Player播放器,当作为服务端的播放格式发生转变(由ASF格式转变为RMVB格式),接收端不能做到使用同一播放器播放,且对播放的实时多媒体源的限制比较多。针对不同种类多媒体源的发布要求,以及考虑到统一多种不同格式文件的实时播放和接收端的兼容性、习惯性,传统的实时流媒体有以下缺点(1)多媒体源的单一性,很难引入其它外部的源。(2)多媒体源的相互兼容性差,ASF和RM格式相互切换对接收端处理不灵活。(3)协议的扩展性不够强,很难添加用户需要的协议。

发明内容
本发明所要解决的技术问题是弥补现有技术的缺陷,提出一种能解决多种多媒体源的兼容性问题以及传统的MMS和RTSP播放的兼容性问题的网络实时播放多媒体数据的发送与接收方法。
本发明的技术问题通过以下技术方案予以解决一种网络实时播放多媒体数据的发送方法,包括如下步骤步骤一将包括不同格式的本地多媒体文件、本地视频采集的多媒体文件、外部多媒体源的URL地址引入的多媒体文件作为多媒体源文件的发布源,步骤二通过多媒体数据发送装置Source Filter1将所述发布源的多媒体文件打包成多媒体包头、多媒体音频包、和多媒体视频包,通过网络发送。
所述网络实时播放多媒体数据的发送方法,是以播放的形式分离出媒体数据流中的音视频数据流,再打包为多媒体音频包和多媒体视频包。
所述打包的媒体音频包和媒体视频包包括包的类型、当前时间戳、依次递加的包序号、以及流的时间戳和流的属性。
所述的网络发送是采用SOCKET服务侦听,当侦听到有多媒体接收装置连接成功后,首先发送指定的多媒体包头,然后依次发送从当前开始的多媒体音频包、多媒体视频包。
一种网络实时播放多媒体数据的接收方法,包括如下步骤步骤一通过一个注册有接收多媒体数据发送装置连接协议的多媒体数据接收装置Source Filter2接收所述多媒体发送装置发送的数据包;步骤二当接收到多媒体包头后,按照装置指定的协议分为多媒体数据包头、多媒体数据音频包、多媒体数据视频包;步骤三根据多媒体包头信息,建立Source Filter2的播放链路,同时,按不同的多媒体头类型,选择音频流或视频流,作为参考来同步音频和视频,当没有音频或视频时,以单独的视频流或音频流同步参考;步骤四对同步的音视频流进行播放。
所述注册有接收多媒体数据发送装置连接协议是指直接指定多媒体发送装置的地址和端口,或生成URL的形式(请仔细审查这里的表达方式)。
所述步骤二还包括将拆分为音频包和视频包的多媒体数据分别推到音频数据缓冲区和视频数据缓冲区,对接收缓冲区中的数据包按照包的序号进行排序的步骤。
所述同步音视频参考包括如下步骤步骤五在同步音视频时,设定一个接收音视频数据的缓冲区;步骤六从第一个音频包的到来开始播放音频,同时记录第一个音频包的时间戳,并记住当前系统中的媒体时间;步骤七开启视频播放,且视频包的流时间戳不小于第一个音频包的流时间戳,否则要丢弃之前的视频包;步骤八计算出当前系统的媒体时间与第一个音频包的时间间隔,以后顺序到来的每一个音视频包都需要通过当前包的流时间加上间隔时间来调整流的时间戳后才送入播放。
采用上述技术方案,本发明有益的技术效果是由于将各种多媒体文件都打包成多媒体包头、多媒体音频包、和多媒体视频包,进行发送和接收,所以可以兼容多种多媒体源,能够支持本地视频采集、本地多媒体文件播放、外部URL地址的引入,多媒体源的相互兼容性增强。由于数据包完全以自定义的协议传输,所以ASF和RM格式数据相互切换对接收端处理没有影响,具有很强的扩展性。设置数据缓冲区可以使播放连续。视频播放时视频包的流时间戳小于第一个音频包的流时间戳,则要丢弃之前的视频包,保证了视频和音频的同步。整个过程中,接收端对实时流的播放统一使用Media Player,兼容了传统的习惯,对不同格式的本地媒体文件播放的实时传输,直接使用原始文件的压缩后的流数据,不需要附加其它的编解码操作,大大的提高了系统的效率。


图1是网络播放多媒体方法的整体框图。
图2是多媒体发送装置的示意图。
图3是发送装置的Source Filter对数据处理的示意图。
图4是接收装置的Source Filter示意图。
图5是接收装置的Source Filter对数据处理的示意图。
具体实施例方式
下面通过具体的实施例并结合附图对本发明作进一步详细的描述。
实施例一种网络实时播放多媒体数据的方法,如图2、图3所示,包括如下步骤将包括不同格式的本地多媒体文件、本地视频采集的多媒体文件、外部多媒体源的URL地址引入的多媒体文件作为多媒体源文件的发布源,通过多媒体数据发送装置Source Filter1将所述发布源的多媒体文件打包成多媒体包头、多媒体音频包、和多媒体视频包,通过网络发送。
发送方法,是以播放的形式分离出媒体数据流中的音视频数据流,再打包为多媒体音频包和多媒体视频包。打包的媒体音频包和媒体视频包包括包的类型、当前时间戳、依次递加的包序号、以及流的时间戳和流的属性。
服务器采用SOCKET侦听,当侦听到有多媒体接收装置连接成功后,首先发送指定的多媒体包头,然后依次发送从当前开始的多媒体音频包、多媒体视频包。
一种网络实时播放多媒体数据的接收方法,如图4、图5所示包括如下步骤通过一个注册有接收多媒体数据发送装置连接协议的多媒体数据接收装置Source Filter2接收所述多媒体发送装置发送的数据包;当接收到多媒体包头后,按照装置指定的协议分为多媒体数据包头、多媒体数据音频包、多媒体数据视频包;根据多媒体包头信息,建立Source Filter2的播放链路,同时,按不同的多媒体头类型,选择音频流或视频流,作为参考来同步音频和视频,当没有音频或视频时,以单独的视频流或音频流同步参考;对同步的音视频流进行播放。
注册有接收多媒体数据发送装置连接协议是指直接指定多媒体发送装置的地址和端口,或生成URL的形式。如VNET:\\127.0.0.1:9000\ABC,其中“VNET”这个标志是多媒体接收装置注册时指定的,可以是其它任何的标志;“ABC”是任意指定的,也可以是其它标志。
建立Source Filter2的播放链路时还包括将拆分为音频包和视频包的多媒体数据分别推到音频数据缓冲区和视频数据缓冲区,对接收缓冲区中的数据包按照包的序号进行排序的步骤。
同步音视频参考包括如下步骤在同步音视频时,设定一个接收音视频数据的缓冲区;当收到音视频包后,分别拆分,同时利用缓冲队列缓冲30s的数据之后,选择音频流,作为参考来同步音视频,当缓冲队列中的数据少于10s,则暂停播放,开始接收缓冲,直到缓冲的数据不少于30s。从第一个音频包的到来开始播放音频,同时记录第一个音频包的时间戳,并记住当前系统中的媒体时间;开启视频播放,且视频包的流时间戳不小于第一个音频包的流时间戳,否则要丢弃之前的视频包;同步音视频的时候,如果当前包的包序号是连续,但是时间戳跳动大于10帧(相当于0.5s左右),则进行跳帧处理;如果当前包的包序号不连续则进行丢帧处理;如果属性中有断点,且流的时间戳跳动大于10帧(相当于0.5s左右),则可以重新置位参考时间,清除缓冲数据,重新接收。对于正常的有序流则打上标准的流时间、流属性进行播放处理。
计算出当前系统的媒体时间与第一个音频包的时间间隔,以后顺序到来的每一个音视频包都需要通过当前包的流时间加上间隔时间来调整流的时间戳后才送入播放。用户统一使用Media Player播放器就是收看,不用切换播放器。
权利要求
1.一种网络实时播放多媒体数据的发送方法,包括如下步骤步骤一将包括不同格式的本地多媒体文件、本地视频采集的多媒体文件、外部多媒体源的URL地址引入的多媒体文件作为多媒体源文件的发布源,步骤二通过多媒体数据发送装置Source Filter1将所述发布源的多媒体文件打包成多媒体包头、多媒体音频包、和多媒体视频包,通过网络发送。
2.根据权利要求1所述的网络实时播放多媒体数据的发送方法,其特征在于是以播放的形式分离出媒体数据流中的音视频数据流,再打包为多媒体音频包和多媒体视频包。
3.根据权利要求1或2所述的网络实时播放多媒体数据的发送方法,其特征在于所述打包的媒体音频包和媒体视频包包括包的类型、当前时间戳、依次递加的包序号、以及流的时间戳和流的属性。
4.根据权利要求3所述的网络实时播放多媒体数据的发送方法,其特征在于所述的网络发送是采用SOCKET服务侦听,当侦听到有多媒体接收装置连接成功后,首先发送指定的多媒体包头,然后依次发送从当前开始的多媒体音频包、多媒体视频包。
5.一种网络实时播放多媒体数据的接收方法,包括如下步骤步骤一通过一个注册有接收多媒体数据发送装置连接协议的多媒体数据接收装置Source Filter2接收所述多媒体发送装置发送的数据包;步骤二当接收到多媒体包头后,按照装置指定的协议分为多媒体数据包头、多媒体数据音频包、多媒体数据视频包;步骤三根据多媒体包头信息,建立Source Filter2的播放链路,同时,按不同的多媒体头类型,选择音频流或视频流,作为参考来同步音频和视频,当没有音频或视频时,以单独的视频流或音频流同步参考;步骤四对同步的音视频流进行播放。
6.根据权利要求5所述的网络实时播放多媒体数据的接收方法,其特征在于所述注册有接收多媒体数据发送装置连接协议是指直接指定多媒体发送装置的地址和端口,或生成URL的形式。
7.根据权利要求5所述的网络实时播放多媒体数据的接收方法,其特征在于所述步骤二还包括将拆分为音频包和视频包的多媒体数据分别推到音频数据缓冲区和视频数据缓冲区,对接收缓冲区中的数据包按照包的序号进行排序的步骤。
8.根据权利要求5所述的网络实时播放多媒体数据的接收方法,其特征在于所述同步音视频参考包括如下步骤步骤五在同步音视频时,设定一个接收音视频数据的缓冲区;步骤六从第一个音频包的到来开始播放音频,同时记录第一个音频包的时间戳,并记住当前系统中的媒体时间;步骤七开启视频播放,且视频包的流时间戳不小于第一个音频包的流时间戳,否则要丢弃之前的视频包;步骤八计算出当前系统的媒体时间与第一个音频包的时间间隔,以后顺序到来的每一个音视频包都需要通过当前包的流时间加上间隔时间来调整流的时间戳后才送入播放。
全文摘要
本发明涉及一种网络实时播放多媒体数据的发送与接收方法,其发送方法包括如下步骤步骤一将包括不同格式的本地多媒体文件、本地视频采集的多媒体文件、外部多媒体源的URL地址引入的多媒体文件作为多媒体源文件的发布源,步骤二通过多媒体数据发送装置Source Filter1将所述发布源的多媒体文件打包成多媒体包头、多媒体音频包、和多媒体视频包,通过网络发送。本发明还公开了对上述发送数据的接收方式。采用本发明解决了多种多媒体源的兼容性问题,以及传统的MMS和RTSP播放的兼容性问题,接收端对实时流的播放统一使用Media Player,兼容了传统的习惯。
文档编号H04N7/24GK101064669SQ200610035380
公开日2007年10月31日 申请日期2006年4月29日 优先权日2006年4月29日
发明者朱常涛, 王素云 申请人:互联天下科技发展(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1