一种手机流媒体音视频的同步方法

文档序号:7688378阅读:118来源:国知局
专利名称:一种手机流媒体音视频的同步方法
技术领域
本发明涉及一种手机流媒体技术,尤其涉及的是一种手机流媒体音视 频的同步方法改进。
背景技术
近年来,随着计算机技术、压缩技术以及Intemet网络技术的发展,无 线网络中的流媒体业务也得到了飞速的发展和应用。所谓流媒体简单来说, 就是应用流技术在网络上传输的多媒体数据(音频、视频、动画或者其他 多媒体文件)。多媒体数据传输的一个尖锐的问题就是不可预料数据到达时 间。但是流媒体的传输是需要数据的适时的到达用以播放和回放,而流技 术就是把连续的影^像和声音信息经过压缩处理后上传网站服务器,让用户 一边下载一边观看、收听,并不需要等整个压缩文件下载到自己机器后才 可以观看的网络传输-:技术。随着移动传输技术的发展以及3G网络的成熟,流媒体技术越来越多的 运用到手机终端上。通过该技术,能够向用户提供信息、娱乐、通信、监 控和定位五大项的服务内容,包括例如移动游戏、移动视频点播和直播、 移动视频聊天和移动卡拉OK等多种具体的业务。流媒体技术运用流式传输方式将音视频等多媒体文件经过特殊的压缩 编码方式分成一个个数据包,由视频服务器向用户手机连续、实时的传送。 手机用户不必像非流式播放那样等到整个文件全部下载完毕后才能看到其 中的内容,而是只需要经过几秒或几十秒的启动延时即可在用户的手机上利用相应的播放器以及相应的硬件、软件对压缩的音视频等流式多媒体文 件解码后进行在线播放和观看,而多媒体文件的剩余部分将在后台的服务 器内继续下载。由于流媒体文件的音视频数据包在移动传输网络中是分开传输的,如何在手机终端上正确恢复音频和^L频原有的关系,即实现音^L频的同步播 放成为手机流媒体播放器的关键技术之一。但是,目前限于手机终端的技 术应用和所用解码芯片,无法操作解码后的数据流,加上音、视频数据流 在传输和解码过程中,由于设备所分别产生的时间偏差,也就很难对音视 频解码后的数据流提供同步播放方案。一般来说,理想的同步方案是在音视频数据完成相应的解码后,通过 比较音视频各帧的时间戳(Time Stamp )来分别决定音频送扬声器和视频 送LCD显示器的时间。这样可以将音、视频在分别传输和解码过程中由于 设备产生的时间偏差减到最小。但是,由于手机终端的某些技术限制,有 时使用的解码芯片无法提供对解码后数据的操作,也就无法实施对音视频 解码后数据的理想同步方案。因此,现有技术尚有待改进和发展。发明内容本发明的目的在于提供一种手机流媒体音视频的同步方法,使得现有 的技术条件下,手机终端流媒体播放器可以实现音视频的同步播放。 本发明的技术方案如下一种手机流媒体音视频的同步方法,其包括以下步骤A、 将所接收到的音、视频数据包注册到手机终端的緩沖区中,并进行 组帧和排序;B、 当解码器对音频数据包进行解码时记录音频数据包送解码器的系统 时间与所述音频数据包中音频帧的时间戳之间的差值作为参考时间偏差值;c、根据所述参考时间偏差值确定所述视频数据包的解码及发送显示时 间,以实现同步插^改。所述的同步方法,其中,所述步骤C具体还包括Cl、所述解码器对所述^L频数据包进行解码前,确定发送^L频解码的 系统时间为所述参考时间偏差值、完成相同长度音、视频数据所需的解码 时间延迟以及待解码3见频数据包中视频帧的时间戳之和;C2、比较所述发送视频解码的系统时间和当前手机系统时间,如果一 致则进行对应的^L频解码和发送显示。所述的同步方法,其中,所述步骤C2中还包括在所述发送^f见频解码 的系统时间未到当前手机系统时间时,则循环比较所述发送视频解码的系 统时间和当前手才几系统时间。所述的同步方法,其中,所述步骤C2中还包括在所述发送视频解码 的系统时间超过当前手机系统时间时,丟弃对应延迟的视频数据帧。所述的同步方法,其中,所述步骤A还包括Al、在所述緩沖区中分别创建音频流数据链表和视频流数据链表;A2、判断所收到数据包的类型是音频数据包还是—见频数据包;A3、如果是音频数据包则在所述音频流数据链表中注册;如果是视频 数据包则在所述视频数据链表中注册。所述的同步方法,其中,所述步骤A中的组帧和排序过程根据对应音、 视频数据包中的载荷类型、序列号和时间戳进行。所述的同步方法,其中,所述緩冲区的大小由所述音、视频数据包的码 流速率和需要緩冲的音、视频数据包数据长度决定。所述的同步方法,其中,所述步骤B还包括当所述緩冲区中的音频数据包达到预定阀值时,向所述解码器发送对应 数据包进行解码。所述的同步方法,其中,所述步骤B还包括 所述阀值大小依据緩沖区大小和所用解码芯片预先设定。 所述的同步方法,其中,所述步骤C中还对所述参考时间偏差值定期 更新。本发明所提供的一种手机流媒体音视频的同步方法,由于采用了音视 频解码前的同步方案,尤其是通过音视频解码时间补偿值修正参考时间偏 差值的手段,有效地解决了音、视频数据流在传输和解码前的过程中,因 设备所分别产生的时间偏差,突破了目前手机终端的某些技术和所用解码 器对解码后音视频数据流无法操作的限制,较好的实现了手机终端音视频 的同步播放。


图1为本发明手机流媒体音视频的同步方法流程图。
具体实施方式
以下将结合附图所示,对手机流媒体音视频的同步方法加以进一步的 详细说明。本发明手机流媒体音视频的同步方法,主要改进在,音视频数据流解 码前的同步过程,至于移动传输网络内流媒体如何发送和接受,手机终端 硬件如何制作以及其播放器软件的编写过程为现有技术所熟知,在此不再.赘述。本发明手机流媒体音视频的同步方法,在手机终端播放器的驱动程序 和软件设计时,设置出一緩冲区,用于接收和处理音视频的数据包,所述 緩冲区的大小由所传输流媒体片源(即所述音、视频数据包)的码流速率和所 需要緩冲音、视频数据包的数据长度决定,其中分别创建音频和视频流的 数据链表。调整手机的设置开通socket端口,使该端口能接受到来自移动传输网络的音L频RTP ( Real-time Transport Protocol实时传输协议)数据包, 按照所述RTP数据包的载荷类型(Payload Type字^:)、序列号(S叫uence Number字段)以及时间戳(Time Stamp字段)的不同,判断所收到数据包 的类型是音频数据包还是视频数据包,将所述音、视频数据包注册到所述 手机终端播放器的緩沖区内各自的音频和视频流的数据链表中,并进行相 应的组帧和排序工作。如图1所示,如果载荷类型符合音频数据包,就将该 数据包注册到所述緩冲区内音频流的数据链表中,并根据该类音频数据包 的序列号和时间戳完成组帧和排序。同理,-现频凝:据包的处理过程亦然。当所述緩沖区中的音频数据达到 一定阀值时,则开始向音频解码器发 送音频数据包进行解码,所述阀值大小可依据緩冲区大小和所用解码芯片 预先设定。此时计算并记录当前手机系统时间与所送音频帧时间戳的偏差 值,即参考时间偏差值;然后送音频解码器解码和送扬声器播放。所述偏 差值将成为视频送解码时间的参考标准之一,而且定期更新该数值,其具 体公式是参考时间偏差值=音频送解码的系统时间一所送音频帧的时间戳 如图1所示,当所述緩冲区中的视频数据也达到一定阀值时,则开始向 视频解码器发送视频数据包进行解码,此时计算并记录视频送解码的系统 时间,等于所述参考时间偏差值、音视频解码时间补偿值与所送视频帧的 时间戳的和值。由于音频解码器完成解码和送扬声器都需要一定时间;同 样道理,视频解码器完成解码和送LCD显示器也都需要一定时间,所以需 要运用音视频解码时间补偿值对音频设定的参考时间偏差值进行修正。所 述音视频解码时间补偿值,指的是完成相同长度的音频或视频数据所需地 解码时间延迟。根据所采用解码方案的解码特性, 一般来说,同一解码方 案中音频格式和采样率的不同,所需的解码时间会不同;相应地同一方案 中的视频所需的解码时间也会随视频格式和帧率的不同而变化,例如,完 成一帧音、视频数据所需的解码时间延迟。所述视频送解码的系统时间的具体公式是视频送解码的系统时间=参考时间偏差值+音视频解码时间补偿值+所 送视频帧的时间戳接下来将获得的视频送解码的系统时间与当前手机系统时间进行比 较,即计算当前手机系统时间和视频送解码的系统时间的差值,具体公式 如下△=当前手才几系统时间一^L频送解码的系统时间如果所述^L频送解码的系统时间大于所述当前手^L系统时间,即所述 发送视频解码的系统时间未到当前手机系统时间,说明该视频数据帧不能 送视频解码器解码,还需要等待,则循环比较所述发送视频解码的系统时 间和当前手机系统时间,此处的大于是指,A值大于了某个所设定的阀值;如果所述视频送解码的系统时间等于或略小于所述当前手机系统时 间,即所述发送视频解码的系统时间和当前手机系统时间一致,说明该视 频数据帧可以送视频解码器解码,则进行对应的视频解码和发送显示,此 处的等于或略小于是指,A值等于或略小于某个所设定的阀值;如果所述视频送解码的系统时间小于所述当前手机系统时间太多,即 所述发送视频解码的系统时间超过当前手机系统时间,说明该视频数据帧 到达太迟,则丟弃该视频数据帧,此处的小于太多是指,A值小于某个所 设定的阀值太多,以至于达到另一个预定阀值。本发明具体实施方式
所描述手机流媒体音视频的同步方法,根据实际 应用还可以采用现有各种可能的方案,其基本手段为本领域技术人员所熟 知,在此不再赘述。本发明手机流媒体音视频的同步方法,以音频流的时间作为视频流同 步的参考基准,解决了目前手机终端受某些技术的限制,降低了所用解码 器对数据的使用要求,更好的是,采用音视频解码时间补偿值来修正参考 时间偏差值的手段,将音、视频数据流在传输和解码前的过程中,因设备所分别产生的时间偏差减到最小,实现了手机终端上解码前流媒体音视频 的同步。应当理解的是,对本领域普通技术人员来说,可以根据上述方案的说 明加以改进或变换,例如以视频流的时间作为音频流同步的参考基准等, 而所有这些改进和变换都本应属于本发明所附权利要求的保护范围。
权利要求
1. 一种手机流媒体音视频的同步方法,其包括以下步骤A、将所接收到的音、视频数据包注册到手机终端的缓冲区中,并进行组帧和排序;B、当解码器对音频数据包进行解码时记录音频数据包送解码器的系统时间与所述音频数据包中音频帧的时间戳之间的差值作为参考时间偏差值;C、根据所述参考时间偏差值确定所述视频数据包的解码及发送显示时间,以实现同步播放。
2、 根据权利要求1所述的同步方法,其特征在于,所述步骤C具体还 包括Cl、所述解码器对所述视频数据包进行解码前,确定发送视频解码的 系统时间为所述参考时间偏差值、完成相同长度音、视频数据所 需的解码时间延迟以及待解码视频数据包中视频帧的时间戳之 和;C2、比较所述发送视频解码的系统时间和当前手机系统时间,如果一 致则进^f亍对应的一见频解码和发送显示。
3、 根据权利要求2所述的同步方法,其特征在于,所述步骤C2中还 包括在所述发送一见频解码的系统时间未到当前手机系统时间时,则循环 比较所述发送视频解码的系统时间和当前手机系统时间。
4、 根据权利要求2所述的同步方法,其特征在于,所述步骤C2中还 包括在所述发送视频解码的系统时间超过当前手机系统时间时,丟弃对 应延迟的-见频数据帧。
5、 根据权利要求1至4任一所述的同步方法,其特征在于,所述步骤 A还包括Al 、在所述緩冲区中分别创建音频流数据链表和视频流数据链表; A2 、判断所收到数据包的类型是音频数据包还是视频数据包; A3、如果是音频数据包则在所述音频流数据链表中注册;如果是视频 数据包则在所述视频数据链表中注册。
6、 根据权利要求5所述的同步方法,其特征在于,所述步骤A中的组 帧和排序过程根据对应音、视频数据包中的载荷类型、序列号和时间戳进 行。
7、 根据权利要求1所述的同步方法,其特征在于,所述緩冲区的大小 由所述音、视频数据包的码流速率和需要緩冲的音、视频数据包数据长度 决定。
8、 根据权利要求1所述的同步方法,其特征在于,所述步骤B还包括 当所述緩冲区中的音频数据包达到预定阀值时,向所述解码器发送对应数据包进行解码。
9、 根据权利要求8所述的同步方法,其特征在于,所述步骤B还包括 所述阀值大小依据緩冲区大小和所用解码芯片预先设定。
10、 根据权利要求1所述的同步方法,其特征在于,所述步骤C中还 对所述参考时间偏差值定期更新。
全文摘要
本发明公开了一种手机流媒体音视频的同步方法,其包括以下步骤将所接收到的音、视频数据包注册到手机终端的缓冲区中,进行组帧和排序;当解码器对音频数据包进行解码时,记录音频数据包送解码器的系统时间与音频数据包中音频帧的时间戳之间的差值作为参考时间偏差值;根据参考时间偏差值确定视频数据包的解码及发送显示时间,以实现同步播放。由于采用了音视频解码前的同步方案,尤其是通过音视频解码时间补偿值修正参考时间偏差值的手段,有效地解决了音、视频数据流在传输和解码前的过程中,因设备所产生的时间偏差,突破了目前手机终端的某些技术和所用解码器对解码后音视频数据流无法操作的限制,较好的实现了手机终端音视频的同步播放。
文档编号H04M1/72GK101271720SQ200810066900
公开日2008年9月24日 申请日期2008年4月22日 优先权日2008年4月22日
发明者辉 刘, 林 叶, 专 殷, 王胜娟 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1