流视频的传输和播放方法及其实现装置的制作方法

文档序号:7768652阅读:157来源:国知局
专利名称:流视频的传输和播放方法及其实现装置的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及一种流视频的传输和播放方法及其实现装置。
背景技术
流视频在网络上的传输一般有两种方式,一种是采用可靠的TCP (Transmission Control Protocol,传输控制协议)传输,另一种采用不可靠的UDP (User Datagram I^otocol,用户数据包协议)传输。其中,TCP传输过程中,当网络负载加大,TCP出现数据丢包时,会进行重发,这会进一步加大网络的负载,丢包频率会更加频繁,重发量加大,形成恶性循环。UDP输出,由于该协议不可靠,因此意味着视频流会被网络丢包,在网速较低的环境下传输视频流,接收端会因为视频流丢包而发生图像停顿、马赛克甚至黑屏等现象。目前解决UDP丢包问题的方法是调节编码器图像分辨率和帧发送频率,该方法存在的缺陷是当上述参数已经调到极限值,而网速还在降低时,仍然会出现丢包问题,接收端仍然会出现图像停顿、马赛克甚至黑屏等现象。

发明内容
为此,本发明所要解决的技术问题是提供一种流视频的传输和播放方法及其实现装置,有效解决了接收端出现图像停顿、马赛克甚至黑屏等问题。于是,本发明提供了一种流视频的传输和播放方法,该方法包括
检测流视频数据的丢包率和包时延,当其超出预置值时,通知发送端和接收端,并启动 I帧刷新检测模块;
发送端采用TCP协议传输流视频数据中的I帧数据,接收端采用TCP协议接收视频数据中的I帧数据,并播放。上述方法还包括
当I帧刷新检测模块发现其没有最新I帧数据时,通知发送端; 发送端减少帧发送周期,并放弃重传不成功I帧数据,继续传输流视频数据中的I帧数据,以保证最新1个I帧数据发送出去。其中,在检测到流视频数据丢包率和包延时率超出预置值之前,还包括 发送端采用UDP协议传输流视频数据,接收端采用UDP协议接收流视频数据。其中,接收端采用UDP协议接收流视频数据后还包括对所述接收的流视频数据中的I帧数据进行备份。其中,所述接收端采用TCP协议接收视频数据中的I帧数据,并播放包括 接收端采用TCP协议接收视频数据中的I帧数据后先备份;
从备份的I帧数据中提取流视频数据,并播放。
本发明还提供了一种实现流视频传输和播放的装置,该装置包括 图像帧发送模块,用于发送流视频数据;
图像帧接收模块,用于接收图像帧发送模块发送的流视频数据; I帧备份模块,用于将图像帧接收模块接收的流视频数据中的I帧进行备份,并仅保存 I帧数据;
视频播放模块,用于播放视频帧数据;
网速检测模块,用于对图像帧接收模块接收到的流视频数据进行检测,若其丢包率和包时延超出预置值时,通知图像帧发送模块、图像帧接收模块、和视频播放模块;
当图像帧发送模块、图像帧接收模块和视频播放模块接收到网速检测模块发送的信息时,图像帧发送模块采用TCP协议传输流视频数据中的I帧数据,图像帧接收模块采用TCP 协议接收视频数据中的I帧数据,视频播放模块从I帧备份模块中提取I帧数据进行播放。上述装置还可以包括1帧刷新检测模块,用于监测I帧备份模块中是否有最新I 帧数据,若没有,则通知图像帧发送模块减少帧发送周期,并放弃重传不成功I帧数据,继续传输流视频数据中的I帧数据,以保证最新1个I帧数据发送出去。本发明所述流视频的传输和播放方法及其实现装置,在低速网络环境中,通过采用TCP协议,并仅传输流视频中的I帧数据的方式,保证了流视频的有效传输,解决了接收端出现图像停顿、马赛克甚至黑屏等问题。进一步,当网络环境继续变差时,通过减少发送端帧发送周期,并放弃重传不成功 I帧数据,保证最新1个I帧数据发送出去的方法,保证了流视频的有效传输。


图1为本发明实施例所述流视频的传输和播放方法流程示意图; 图2为本发明实施例所述实现流视频传输和播放装置的结构示意图。
具体实施例方式下面,结合附图对本发明进行详细描述。如图1,本实施例提供了一种流视频的传输和播放方法,该方法分在正常网速环境下、低速环境下和极低速环境下三个阶段来描述,包括
在正常网速环境下
步骤1,发送端的图像帧发送模块采用UDP协议传输流视频数据,接收端的图像帧接收模块采用UDP接收流视频数据;
步骤2,接收端的视频播放模块播放图像帧接收模块接收的各类图像帧,包括I帧、P帧和B帧;
这里,MPEG (Moving Pictures Experts Group,动态图像专家组)编码将图像画面(即帧)分为I帧、P帧、B帧三种,其中I帧是一个完整的画面,没有I帧,P帧和B帧就无法解码。步骤3,接收端的I帧备份模块备份最新的流视频数据中的I帧数据; 步骤4,接收端的网速检测模块统计丢包率和包时延。在低速环境下步骤5,当网速检测模块监测到丢包率和包时延超出预置值时,执行步骤6. 1到步骤
6. 4 ;
步骤6. 1,网速检测模块通知图像帧接收模块,使其改用TCP协议接收数据; 步骤6. 2,网速检测模块通知图像帧发送模块,使其改用TCP协议发送数据; 步骤6. 3,网速检测模块通知视频播放模块,使其从I帧备份模块提取流视频数据进行播放;
步骤6. 4,网速检测模块通知I帧刷新检测模块,使其启动; 这里,步骤6. 1到步骤6. 4没有时间顺序,可以认为是同时进行。步骤7,发送端的图像帧发送模块使用TCP协议传输流视频数据给到发送端; 步骤8,接收端的图像帧接收流视频数据,并在I帧备份模块中备份最新的I帧数据; 步骤9,接收端的视频播放模块从I帧备份模块证提取I帧数据进行播放。
在极低速环境下
步骤10,I帧刷新检测模块定时或者实时检测I帧数据是否是最新,若不是最新I帧数据,则执行步骤11 ;
步骤11,I帧刷新检测模块通知发送端图像帧发送模块;
步骤12,图像帧发送模块减少帧发送周期,并放弃重传不成功I帧数据,继续传输流视频数据中的I帧数据,以保证最新1个I帧数据发送出去。可见,在低速网络环境中,通过采用改变传输协议,使用TCP协议传输流视频数据,并仅传输流视频中的I帧数据的方式,保证了流视频的有效传输,解决了接收端出现图像停顿、马赛克甚至黑屏等问题。如图2所示,使用上述流视频传输方法,本实施例还提供了一种实现流视频传输和播放的装置,该装置包括
图像帧发送模块11,用于发送流视频数据; 图像帧接收模块21,用于接收图像帧发送模块发送的流视频数据; I帧备份模块M,用于将图像帧接收模块接收的流视频数据中的I帧进行备份,并仅保存I帧数据;
视频播放模块22,用于播放视频帧数据;
网速检测模块23,用于对图像帧接收模块接收到的流视频数据进行检测,若其丢包率和包时延超出预置值时,通知图像帧发送模块、图像帧接收模块、I帧刷新检测模块和视频播放模块;
当图像帧发送模块11、图像帧接收模块21和视频播放模块22接收到网速检测模块23 发送的信息时,图像帧发送模块23采用TCP协议传输流视频数据中的I帧数据,图像帧接收模块21采用TCP协议接收视频数据中的I帧数据,视频播放模块22从I帧帧备份模块 24中提取I帧数据进行播放。本实施例当网速降低,其丢包率和包时延超出预置值时,采用发送端仅传输流视频中的I帧数据,播放端也仅播放流视频中I帧数据的方式,虽然牺牲了视频流畅性,但是却提高了视频画面的清晰度。为了监测网速变化情况,本实施例所述装置还可以包括一 I帧刷新检测模块25,
5用于监测I帧备份模块M中是否有最新I帧数据,若没有,则通知图像帧发送模块11减少帧发送周期,并放弃重传不成功I帧数据,继续传输流视频数据中的I帧数据,以保证最新 1个I帧数据发送出去。综上所述,本实施例所述流视频的传输和播放方法及其实现装置,在低速网络环境中,通过采用TCP协议,并仅传输流视频中的I帧数据的方式,保证了流视频的有效传输, 解决了接收端出现图像停顿、马赛克甚至黑屏等问题。进一步,当网络环境继续变差时,通过减少发送端帧发送周期,并放弃重传不成功 I帧数据,保证最新1个I帧数据发送出去的方法,保证了流视频的有效传输。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种流视频的传输和播放方法,其特征在于,包括检测流视频数据的丢包率和包时延,当其超出预置值时,通知发送端和接收端,并启动 I帧刷新检测模块;发送端采用TCP协议传输流视频数据中的I帧数据,接收端采用TCP协议接收视频数据中的I帧数据,并播放。
2.根据权利要求1所述的传输方法,其特征在于,还包括当I帧刷新检测模块发现其没有最新I帧数据时,通知发送端;发送端减少帧发送周期,并放弃重传不成功I帧数据,继续传输流视频数据中的I帧数据,以保证最新1个I帧数据发送出去。
3.根据权利要求1所述的传输方法,其特征在于,在检测到流视频数据丢包率和包延时率超出预置值之前,还包括发送端采用UDP协议传输流视频数据,接收端采用UDP协议接收流视频数据。
4.根据权利要求3所述的传输方法,其特征在于,接收端采用UDP协议接收流视频数据后,还包括对所述接收的流视频数据中的I帧数据进行备份。
5.根据权利要求1所述的传输方法,其特征在于,所述接收端采用TCP协议接收视频数据中的I帧数据,并播放包括接收端采用TCP协议接收视频数据中的I帧数据后先备份;从备份的I帧数据中提取流视频数据,并播放。
6.一种实现流视频传输和播放的装置,其特征在于,包括图像帧发送模块,用于发送流视频数据;图像帧接收模块,用于接收图像帧发送模块发送的流视频数据;I帧备份模块,用于将图像帧接收模块接收的流视频数据中的I帧进行备份,并仅保存 I帧数据;视频播放模块,用于播放视频帧数据;网速检测模块,用于对图像帧接收模块接收到的流视频数据进行检测,若其丢包率和包时延超出预置值时,通知图像帧发送模块、图像帧接收模块、和视频播放模块;当图像帧发送模块、图像帧接收模块和视频播放模块接收到网速检测模块发送的信息时,图像帧发送模块采用TCP协议传输流视频数据中的I帧数据,图像帧接收模块采用TCP 协议接收视频数据中的I帧数据,视频播放模块从I帧备份模块中提取I帧数据进行播放。
7.根据权利要求6所述的装置,其特征在于,还包括1帧刷新检测模块,用于监测I 帧备份模块中是否有最新I帧数据,若没有,则通知图像帧发送模块减少帧发送周期,并放弃重传不成功I帧数据,继续传输流视频数据中的I帧数据,以保证最新1个I帧数据发送出去。
全文摘要
本发明提供了一种流视频的传输和播放方法及其实现装置,所述方法包括检测流视频数据的丢包率和包时延,当其超出预置值时,通知发送端和接收端,并启动I帧刷新检测模块;发送端采用TCP协议传输流视频数据中的I帧数据,接收端采用TCP协议接收视频数据中的I帧数据,并播放。所述装置包括图像帧发送模块、图像帧接收模块、I帧备份模块、视频播放模块和网速检测模块。本发明所述流视频的传输和播放方法及其实现装置,在低速网络环境中,通过采用TCP协议,并仅传输流视频中的I帧数据的方式,保证了流视频的有效传输,解决了接收端出现图像停顿、马赛克甚至黑屏等问题。
文档编号H04N21/462GK102547411SQ20101058694
公开日2012年7月4日 申请日期2010年12月14日 优先权日2010年12月14日
发明者冉大为 申请人:康佳集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1