一种实时视频的传输方法及装置制造方法及图纸

技术编号:19242918 阅读:35 留言:0更新日期:2018-10-24 05:31
本发明专利技术实施例公开了一种实时视频的传输方法及装置。所述方法包括:将实时生成的视频编码帧进行分片处理,形成至少一个视频帧分片;将所述视频帧分片依次放入发送缓存区中;根据视频播放端针对不同视频帧分片返回的接收确认响应,将所述视频编码帧的视频帧分片按照设定发送策略通过视频服务器转发至所述视频播放端以进行实时视频播放。通过本发明专利技术的技术方案,能够降低视频传输延迟,提高视频传输的可靠性,提高用户体验。

【技术实现步骤摘要】
一种实时视频的传输方法及装置
本专利技术实施例涉及信息处理技术,尤其涉及一种实时视频的传输方法及装置。
技术介绍
随着互联网的不断普及和发展,移动互联网视频直播正处于如火如荼的井喷式发展当中。传统的直播大多是单向型的,比如电视台或者运营商直播,用户只需要打开终端收看即可,对于实时性并没有太大的要求。而移动互联网视频直播往往在功能上需要录制端和播放端有交互,这种交互不限于文字的互动,还包括视频的互动,因此,移动互联网视频直播实时性要求较高。目前,移动互联网视频直播中实时视频的数据交互方法为,录制端采集视频数据并按照X264格式进行视频编码,通过QoS(QualityofService,服务质量)算法将视频流数据基于TCP(TransmissionControlProtocol,传输控制协议)之上的RTMP(RealTimeMessagingProtocol,实时消息传输协议)推流到CDN(ContentDeliveryNetwork,内容分发网络)服务器进行分发,播放端从CDN服务器拉流解码来播放。现有技术中由于基于TCP的视频流数据报文过大,且数据交互结构复杂,视频传输的实时性极易受网络波动的影响,从而使得整个网络链路的视频传输延迟通常在1-3秒或者更差。
技术实现思路
本专利技术实施例提供一种实时视频的传输方法及装置,以实现降低视频传输延迟,提高视频传输的可靠性,提高用户体验。第一方面,本专利技术实施例提供了一种实时视频的传输方法,包括:将实时生成的视频编码帧进行分片处理,形成至少一个视频帧分片;将所述视频帧分片依次放入发送缓存区中;根据视频播放端针对不同视频帧分片返回的接收确认响应,将所述视频编码帧的视频帧分片按照设定发送策略通过视频服务器转发至所述视频播放端以进行实时视频播放。第二方面,本专利技术实施例还提供了一种实时视频的传输方法,包括:接收视频服务器转发的,由视频发送端发送的视频帧分片,并将所述视频帧分片放入接收缓存区中对应的帧序号内,同时更新已经连续接收到的视频帧分片的最大连续分片号以及丢包缓存表;根据所述最大连续分片号以及所述丢包缓存表,周期性生成对应的接收确认响应;将所述接收确认响应发送至所述视频服务器,以使所述视频服务器将所述接收确认响应转发至所述视频发送端;若所述接收缓存区中的帧序号内所有视频帧分片均成功接收,则合并所述帧序号内的所有视频帧分片,以进行实时视频播放。第三方面,本专利技术实施例还提供了一种实时视频的传输装置,配置于视频发送端,该装置包括:分片处理模块,用于将实时生成的视频编码帧进行分片处理,形成至少一个视频帧分片;发送缓冲模块,用于将所述视频帧分片依次放入发送缓存区中;分片发送模块,用于根据视频播放端针对不同视频帧分片返回的接收确认响应,将所述视频编码帧的视频帧分片按照设定发送策略通过视频服务器转发至所述视频播放端以进行实时视频播放。第四方面,本专利技术实施例还提供了一种实时视频的传输装置,配置于视频播放端,该装置包括:分片接收模块,用于接收视频服务器转发的,由视频发送端发送的视频帧分片,并将所述视频帧分片放入接收缓存区中对应的帧序号内,同时更新已经连续接收到的视频帧分片的最大连续分片号以及丢包缓存表;响应生成模块,用于根据所述最大连续分片号以及所述丢包缓存表,周期性生成对应的接收确认响应;响应发送模块,用于将所述接收确认响应发送至所述视频服务器,以使所述视频服务器将所述接收确认响应转发至所述视频发送端;分片合并模块,用于若所述接收缓存区中的帧序号内所有视频帧分片均成功接收,则合并所述帧序号内的所有视频帧分片,以进行实时视频播放。本专利技术实施例通过将视频编码帧分为至少一个视频帧分片,按照设定发送策略将视频帧分片通过视频服务器转发给视频播放端,以进行实时视频播放,解决了现有技术中因采用基于TCP的传输方式而导致的视频延迟大的问题,实现了降低视频传输延迟,提高视频传输的可靠性,提高用户体验的效果。附图说明图1是本专利技术实施例一提供的一种实时视频的传输方法的流程示意图;图2是本专利技术实施例二提供的一种实时视频的传输方法的流程示意图;图3是本专利技术实施例三提供的一种实时视频的传输方法的流程示意图;图4是本专利技术实施例四提供的一种实时视频的传输方法的流程示意图;图5是本专利技术实施例五提供的一种实时视频的传输装置的结构示意图;图6是本专利技术实施例六提供的一种实时视频的传输装置的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1为本专利技术实施例一提供的一种实时视频的传输方法的流程示意图。该方法可适用于实时视频传输的情况,该方法可以由实时视频的传输装置来执行,该装置可由硬件和/或软件组成,并一般可集成在视频发送端以及所有包含视频发送功能的智能终端中。具体包括如下:S110、将实时生成的视频编码帧进行分片处理,形成至少一个视频帧分片。可选的,通过摄像头等视频采集装置采集到实时视频数据后,可利用视频编码器对实时视频数据进行实时编码处理,形成视频编码帧,而对于高分辨率的视频编码帧,帧的大小往往高于基于UDP(UserDatagramProtocol,用户数据报协议)的传输方式中的网络最大传输单元,因此需要对实时生成的视频编码帧进行分片处理,形成至少一个小于预设大小的视频帧分片后,以视频帧分片为传输单元进行视频数据的发送,从而有效地解决了因传输单元过大而导致的视频延迟高的问题,降低了视频的传输延迟。优选的,实时生成的视频编码帧可以为编码器按照H264协议进行编码,并滤除B帧后,生成的编码帧。其中,B帧是双向预测帧,需要根据后向视频帧来预测编码。滤除B帧的好处在于,可以减小编码延迟,保证视频传输和播放的实时性。优选的,将实时生成的视频编码帧进行分片处理,形成至少一个视频帧分片,包括:若视频编码帧所包括的字节数小于预设单个分片字节数与预设字节数之和,则将视频编码帧划分为一个视频帧分片;若视频编码帧所包括的字节数为预设单个分片字节数的S倍,则将视频编码帧划分为S个视频帧分片,其中,S为大于0的整数;若视频编码帧所包括的字节数为预设单个分片字节数的S倍与超出字节数之和,且超出字节数大于零且小于预设字节数,则将视频编码帧划分为S个视频帧分片,且将超出字节数所对应的字节放入最后一个视频帧分片;若视频编码帧所包括的字节数为预设单个分片字节数的S倍与超出字节数之和,且超出字节数不小于预设字节数,则将视频编码帧划分为(S+1)个视频帧分片。示例性的,视频编码帧的最大分片数可设置为500,预设单个分片字节数可设置为800字节,预设字节数可设置为50。例如,当视频编码帧的帧字节数小于800+50=850个字节时,则只分为一个视频帧分片;当视频编码帧的帧字节数为800的整数倍S倍时,则分为S个视频帧分片;当视频编码帧的帧字节数为800的S倍还余N个字节时,若0<N<50,则将多余的N个字节放入S个视频帧分片的最后一个视频帧分片中,最终分为S个视频帧分片;若N≥50,则为多余的N个字节单独分配一个视频帧分片,最终分为(S+1)个视频本文档来自技高网...

【技术保护点】
1.一种实时视频的传输方法,其特征在于,包括:将实时生成的视频编码帧进行分片处理,形成至少一个视频帧分片;将所述视频帧分片依次放入发送缓存区中;根据视频播放端针对不同视频帧分片返回的接收确认响应,将所述视频编码帧的视频帧分片按照设定发送策略通过视频服务器转发至所述视频播放端以进行实时视频播放。

【技术特征摘要】
1.一种实时视频的传输方法,其特征在于,包括:将实时生成的视频编码帧进行分片处理,形成至少一个视频帧分片;将所述视频帧分片依次放入发送缓存区中;根据视频播放端针对不同视频帧分片返回的接收确认响应,将所述视频编码帧的视频帧分片按照设定发送策略通过视频服务器转发至所述视频播放端以进行实时视频播放。2.根据权利要求1所述的方法,其特征在于,所述将实时生成的视频编码帧进行分片处理,形成至少一个视频帧分片,包括:若视频编码帧所包括的字节数小于预设单个分片字节数与预设字节数之和,则将所述视频编码帧划分为一个视频帧分片;若视频编码帧所包括的字节数为预设单个分片字节数的S倍,则将所述视频编码帧划分为S个视频帧分片,其中,S为大于0的整数;若视频编码帧所包括的字节数为预设单个分片字节数的S倍与超出字节数之和,且所述超出字节数大于零且小于所述预设字节数,则将所述视频编码帧划分为S个视频帧分片,且将所述超出字节数所对应的字节放入最后一个视频帧分片;若视频编码帧所包括的字节数为预设单个分片字节数的S倍与超出字节数之和,且所述超出字节数不小于所述预设字节数,则将所述视频编码帧划分为(S+1)个视频帧分片。3.根据权利要求1所述的方法,其特征在于,在将所述视频帧分片依次放入发送缓存区中之后,还包括:周期性检查所述发送缓存区中是否包括存在时间超过预设时间阈值的过期视频帧分片;若是,则将与所述视频帧分片关联的过期视频编码帧组对应的全部视频帧分片从所述发送缓存区中移除,并根据位于所述过期视频编码帧组之后的下一视频编码帧组生成丢弃同步信息,其中,所述视频编码帧组中包括至少一个视频编码帧;将所述丢弃同步信息通过所述视频服务器转发至所述至少一个视频播放端,以指示所述视频播放端放弃接收与所述过期视频编码帧组对应的视频帧分片,并丢弃已经接收的与所述过期视频编码帧组对应的视频帧分片。4.根据权利要求3所述的方法,其特征在于,所述丢弃同步信息包括所述下一视频编码帧组中关键视频编码帧所对应的帧序号以及所述关键视频编码帧中视频帧分片的最小分片号。5.根据权利要求3所述的方法,其特征在于,在将与所述视频帧分片关联的过期视频编码帧组对应的全部视频帧分片从所述发送缓存区中移除之后,还包括:更新对所述过期视频编码帧组的丢弃次数,如果在预设时间区间内的所述丢弃次数超过丢弃门限阈值,则降低所述数据传输参数的取值;其中,所述数据传输参数包括:视频编码器的分辨率,和/或数据传输码率。6.根据权利要求1-5任一项所述的方法,其特征在于,所述实时生成的视频编码帧为编码器按照H264协议进行编码,并滤除B帧后,生成的编码帧。7.根据权利要求1所述的方法,其特征在于,所述根据视频播放端针对不同视频帧分片返回的接收确认响应,将所述视频编码帧的视频帧分片按照设定发送策略通过视频服务器转发至所述视频播放端以进行实时视频播放,包括:发送设定数量的待确认视频帧分片至所述视频服务器,并将所述待确认视频帧分片存储于发送缓存区的发送窗口中;接收所述视频服务器转发的由所述视频播放端发送的视频帧分片接收确认响应;如果所述接收确认响应包括所述视频播放端连续接收到的视频帧分片的最大连续分片号,则滑动所述发送窗口,将已确认的视频帧分片从所述发送窗口中删除,生成空闲发送窗口;如果所述接收确认响应包括所述视频播放端的丢包分片号,则获取与所述丢包分片号对应的视频帧分片,并重新通过所述视频服务器转发至所述视频播放端;继续发送与所述空闲发送窗口的数量相匹配的待确认视频帧分片至所述视频服务器,并将继续发送的待确认视频帧分片存储于所述空闲发送窗口中;返回执行接收所述视频服务器转发的由所述视频播放端发送的视频帧分片接收确认响应的操作,直至完成对全部视频帧分片的确认发送。8.一种实时视频的传输方法,其特征在于,包括:接收视频服务器转发的,由视频发送端发送的视频帧分片,并将所述视频帧分片放入接收缓存区中对应的帧序号内,同时更新已经连续接收到的视频帧分片的最大连续分片号以及丢包缓存表;根据所述最大连续分片号以及所述丢包缓存表,周期性生成对应的接收确认响应;将所述接收确认响应发送至所述视频服务器,以使所述视频服务器将所述接收确认响应转发至所述视频发送端;若所述接收缓存区中的帧序号内所有视频帧分片均成功接收,则合并所述帧序号内的所有视频帧分...

【专利技术属性】
技术研发人员:袁荣喜周巍巍张凯磊
申请(专利权)人:上海谦问万答吧云计算科技有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1