CN108696772A - 一种实时视频的传输方法及装置 - Google Patents
一种实时视频的传输方法及装置 Download PDFInfo
- Publication number
- CN108696772A CN108696772A CN201710233377.5A CN201710233377A CN108696772A CN 108696772 A CN108696772 A CN 108696772A CN 201710233377 A CN201710233377 A CN 201710233377A CN 108696772 A CN108696772 A CN 108696772A
- Authority
- CN
- China
- Prior art keywords
- video
- sending end
- server
- time
- real
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 254
- 238000000034 method Methods 0.000 title claims abstract description 52
- 239000012634 fragment Substances 0.000 claims abstract description 114
- 238000012790 confirmation Methods 0.000 claims abstract description 82
- 230000004913 activation Effects 0.000 claims abstract description 11
- 238000012937 correction Methods 0.000 claims description 39
- 230000004044 response Effects 0.000 claims description 15
- 238000010586 diagram Methods 0.000 description 14
- 230000000694 effects Effects 0.000 description 7
- 230000003993 interaction Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000003321 amplification Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000005577 local transmission Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2385—Channel allocation; Bandwidth allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/643—Communication protocols
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明实施例公开了一种实时视频的传输方法及装置。所述方法包括:视频发送端向视频服务器发送连接请求,并接收所述视频服务器返回的连接确认信息,以与所述视频服务器建立连接;其中,所述连接请求包括所述视频发送端的身份标识信息;所述视频服务器在接收到所述连接请求后,根据所述身份标识信息激活关联的至少一个视频播放端打开与所述视频发送端对应的传输通道;所述视频发送端根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至所述视频服务器,以使所述视频服务器将所述视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放。通过本发明实施例的技术方案,能够降低视频传输延迟,提高用户体验。
Description
技术领域
本发明实施例涉及计算机技术,尤其涉及一种实时视频的传输方法及装置。
背景技术
随着互联网的不断普及和发展,移动互联网视频直播正处于如火如荼的井喷式发展当中。传统的直播大多是单向型的,比如电视台或者运营商直播,用户只需要打开终端收看即可,对于实时性并没有太大的要求。而移动互联网视频直播往往在功能上需要录制端和播放端有交互,这种交互不限于文字的互动,还包括视频的互动,因此,移动互联网视频直播实时性要求较高。
目前,移动互联网视频直播中实时视频的传输方法为,录制端采集视频数据并按照X264格式进行视频编码,通过QoS(Quality of Service,服务质量)算法将视频流数据基于TCP(Transmission Control Protocol,传输控制协议)之上的RTMP(Real TimeMessaging Protocol,实时消息传输协议)推流到CDN(Content Delivery Network,内容分发网络)服务器进行分发,播放端从CDN服务器拉流解码来播放。
现有技术的实时视频直播延时表现在将视频流数据基于RTMP推流到CDN和从CDN基于RTMP拉流缓存播放,且基于TCP的数据传输过程过于复杂,从而使得整个网络链路的视频传输延迟通常在1-3秒或者更差。
发明内容
本发明实施例提供一种实时视频的传输方法及装置,以实现降低视频传输延迟,提高用户体验。
第一方面,本发明实施例提供了一种实时视频的传输方法,包括:
视频发送端向视频服务器发送连接请求,并接收所述视频服务器返回的连接确认信息,以与所述视频服务器建立连接;
其中,所述连接请求包括所述视频发送端的身份标识信息;所述视频服务器在接收到所述连接请求后,根据所述身份标识信息激活关联的至少一个视频播放端打开与所述视频发送端对应的传输通道;
所述视频发送端根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至所述视频服务器,以使所述视频服务器将所述视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放。
第二方面,本发明实施例还提供了一种实时视频的传输方法,包括:
视频服务器根据所述视频发送端发送的连接请求,向所述视频发送端返回对应的连接确认信息,以与所述视频发送端建立连接,其中,所述连接请求包括所述视频发送端的身份标识信息;
所述视频服务器将所述身份标识信息发送至关联的至少一个视频播放端,以激活所述视频播放端打开与所述视频发送端对应的传输通道;
所述视频服务器接收所述视频发送端根据设定数据传输参数发送的,实时生成的视频编码帧的视频帧分片,并将所述视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放。
第三方面,本发明实施例还提供了一种实时视频的传输方法,该方法包括:
视频播放端接收视频服务器发送的视频发送端的身份标识信息;
所述视频播放端根据所述身份标识信息,查询传输通道列表,确定并打开与所述视频发送端对应的传输通道,其中,所述传输通道列表中记录有身份标识信息与传输通道之间的对应关系;
所述视频播放器通过所述传输通道接收所述视频服务器转发的所述视频发送端根据设定数据传输参数发送的实时生成的视频编码帧的视频帧分片;
所述视频播放端根据接收到的所述视频帧分片,进行实时视频播放。
第四方面,本发明实施例还提供了一种实时视频的传输装置,配置于视频发送端,该装置包括:
连接请求发送模块,用于向视频服务器发送连接请求,并接收所述视频服务器返回的连接确认信息,以与所述视频服务器建立连接;
其中,所述连接请求包括所述视频发送端的身份标识信息;所述视频服务器在接收到所述连接请求后,根据所述身份标识信息激活关联的至少一个视频播放端打开与所述视频发送端对应的传输通道;
视频分片发送模块,用于所述视频发送端根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至所述视频服务器,以使所述视频服务器将所述视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放。
第五方面,本发明实施例还提供了一种实时视频的传输装置,配置于视频服务器,该装置包括:
连接确认返回模块,用于根据所述视频发送端发送的连接请求,向所述视频发送端返回对应的连接确认信息,以与所述视频发送端建立连接,其中,所述连接请求包括所述视频发送端的身份标识信息;
标识信息发送模块,用于将所述身份标识信息发送至关联的至少一个视频播放端,以激活所述视频播放端打开与所述视频发送端对应的传输通道;
视频分片转发模块,用于接收所述视频发送端根据设定数据传输参数发送的,实时生成的视频编码帧的视频帧分片,并将所述视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放。
第六方面,本发明实施例还提供了一种实时视频的传输装置,配置于视频播放端,该装置包括:
标识信息接收模块,用于接收视频服务器发送的视频发送端的身份标识信息;
传输通道打开模块,用于根据所述身份标识信息,查询传输通道列表,确定并打开与所述视频发送端对应的传输通道,其中,所述传输通道列表中记录有身份标识信息与传输通道之间的对应关系;
视频分片接收模块,用于通过所述传输通道接收所述视频服务器转发的所述视频发送端根据设定数据传输参数发送的实时生成的视频编码帧的视频帧分片;
实时视频播放模块,用于所述视频播放端根据接收到的所述视频帧分片,进行实时视频播放。
本发明实施例通过视频发送端向视频服务器发送连接请求,以与视频服务器建立连接后,视频发送端根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至视频服务器,进而由视频服务器转发给视频播放端进行实时视频播放。由于只发送一次请求即建立连接,并在连接建立后将视频编码帧分为若干个视频帧分片进行发送,解决了现有技术中因基于TCP进行连接之前需要经过三次握手的复杂过程,且采用直接基于视频数据流进行传输和播放的方法,而导致视频传输延迟高的问题,实现了降低视频传输延迟,提高用户体验的效果。
附图说明
图1是本发明实施例一提供的一种实时视频的传输方法的流程示意图;
图2是本发明实施例二提供的一种实时视频的传输方法的流程示意图;
图3是本发明实施例三提供的一种实时视频的传输方法的流程示意图;
图4是本发明实施例四提供的一种实时视频的传输方法的流程示意图;
图5是本发明实施例五提供的一种实时视频的传输装置的结构示意图;
图6是本发明实施例六提供的一种实时视频的传输装置的结构示意图;
图7是本发明实施例七提供的一种实时视频的传输装置的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种实时视频的传输方法的流程示意图。该方法可适用于实时视频的传输情况,该方法可以由实时视频的传输装置来执行,该装置可由硬件和/或软件组成,并一般可集成在视频发送端以及所有包含视频发送功能的智能终端中。具体包括如下:
S110、视频发送端向视频服务器发送连接请求,并接收视频服务器返回的连接确认信息,以与视频服务器建立连接。
其中,视频发送端例如可以是群视频发起者,也可以是群视频新加入者。示例性的,当一个客户端向视频服务器新发起一个群视频会话,则相对于其他参与群视频的客户端而言,该客户端是视频发送端;当一个客户端需要新加入一个群视频时,则相对于其他已参与群视频的客户端而言,该客户端是视频发送端。
可选的,连接请求可以包括视频发送端的UID(User Identification,用户身份标识),还可以包括视频发送端的IP(Internet Protocol,网络之间互联的协议)地址。
相对于面向连接的TCP所采用的三次握手的连接方式,本发明实施例采用的连接方式降低了连接过程的复杂度,缩短了连接建立时间,而对于面向无连接的UDP(UserDatagram Protocol,用户数据报协议)的传输方式,本发明实施例采用的基于连接的传输方式提供了可靠的传输机制,使得后续数据传输过程更加可靠。因此,通过视频发送端向视频服务器发送连接请求以与视频服务器建立连接的好处在于,可以在降低延迟的同时提高后续数据传输的可靠性。
S120、其中,连接请求包括视频发送端的身份标识信息;视频服务器在接收到连接请求后,根据身份标识信息激活关联的至少一个视频播放端打开与视频发送端对应的传输通道。
其中,身份标识信息可以为视频发送端的UID。示例性的,视频服务器连接有多个视频播放端,当有视频发送端连接视频服务器时,视频服务器需要将该视频发送端的身份标识信息发送给与视频服务器相连的所有视频播放端,以使视频播放端打开与该视频发送端对应的传输通道。其中,传输通道具体可以为网络端口。打开与视频发送端对应的传输通道的目的在于,为后续步骤中视频帧分片的传输提供与该视频发送端对应专用的数据传输通道,以使当存在多个视频发送端同时向同一个视频播放端传输数据时能够互不影响。
S130、视频发送端根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至视频服务器,以使视频服务器将视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放。
可选的,设定数据传输参数可以包括设定视频编码器的分辨率,和/或设定数据传输码率。优选的,视频编码帧可以由视频编码器按照预设的分辨率并采用h264的形式对实时采集到的视频数据进行编码得到。
其中,视频帧分片可以由视频编码帧经分片处理后得到。示例性的,当视频编码器编码出一帧完整的h264视频编码帧时,视频发送端需要对该视频编码帧进行发送,而对于高分辨率的视频编码帧,帧的大小往往高于基于UDP的传输方式中的网络最大传输单元,因此需要视频发送端对视频编码帧进行分片处理再发送,每次以视频帧分片为单位进行视频数据的发送,从而有效地解决了因传输单元过大而导致的视频延迟高的问题,降低了视频的传输延迟。
优选的,在视频发送端根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至视频服务器之后,还包括:视频发送端发送断开请求至视频服务器,并接收视频服务器返回的断开确认信息,以与视频服务器断开连接;其中,视频服务器在接收到断开请求后,控制关联的至少一个视频播放端关闭与视频发送端对应的传输通道。
示例性的,当群视频中有客户端需要退出群视频时,相对于其他参与群视频的客户端而言,需要退出群视频的客户端可被视为视频发送端,而其他参与群视频的客户端可被视为视频播放端,此时视频发送端可通过发送断开请求以断开与视频服务器之间的连接,进而释放相关连接资源,视频服务器也需要在收到断开请求后,通知所有视频播放端关闭与该视频发送端对应的传输通道,以节约通道资源。
本实施例的技术方案,通过视频发送端向视频服务器发送连接请求,以与视频服务器建立连接后,视频发送端根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至视频服务器,进而由视频服务器转发给视频播放端进行实时视频播放。由于只发送一次请求即建立连接,并在连接建立后将视频编码帧分为若干个视频帧分片进行发送,解决了现有技术中因基于TCP进行连接之前需要经过三次握手的复杂过程,且采用直接基于视频数据流进行传输和播放的方法,而导致视频传输延迟高的问题,实现了降低视频传输延迟,提高用户体验的效果。
实施例二
图2为本发明实施例二提供的一种实时视频的传输方法的流程示意图。本实施例以上述实施例为基础进行优化,提供了优选的实时视频的传输方法,具体是,在视频发送端向视频服务器发送连接请求,并接收视频服务器返回的连接确认信息之后进行了进一步优化。具体包括如下:
S210、视频发送端向视频服务器发送连接请求,并接收视频服务器返回的连接确认信息,以与视频服务器建立连接。
S220、其中,连接请求包括视频发送端的身份标识信息;视频服务器在接收到连接请求后,根据身份标识信息激活关联的至少一个视频播放端打开与视频发送端对应的传输通道。
S230、视频发送端根据视频服务器发送的视频同步请求,向视频服务器返回对应的视频同步确认信息。
其中,视频同步确认信息包括:起始视频帧分片的序列号,以及当前发送视频帧分片的序列号;视频服务器在确认有目标视频播放端打开与视频发送端对应的传输通道时,向视频发送端发送视频同步请求,以使目标视频播放端获取实时视频的播放进度。
可选的,同步确认信息可通过握手信号发送给视频服务器,并由视频服务器通过握手信号转发给视频发送端。其中,起始视频帧分片可以是视频画面组中的关键帧(I帧)对应的第一个视频帧分片。提供起始视频帧分片的序列号的目的在于,使视频播放端可从该起始视频帧分片所在的关键帧进行播放,从而避免播放时出现花屏现象。提供当前发送视频帧分片的序列号的目的在于,使视频播放端能够根据当前发送视频帧分片的序列号更新当前播放进度。由此可见,视频发送端向视频服务器返回对应的视频同步确认信息的好处在于,可以及时使目标视频播放端获取实时视频的播放进度,以降低视频延迟。
可选的,S220与S230的执行顺序可以调换,也可以同时进行。
S240、视频发送端根据当前发送视频帧分片的时间和最后收到接收确认响应的时间计算网络延迟时间。
由于网络具有不可预测性,可能会出现抖动、拥塞或者大量丢包的情况,如果按照固定的码率和参数来发送视频帧分片,可能会导致视频发送端与视频播放端之间的传输通道更拥塞,从而使播放端的播放延迟更高或者出现大量马赛克。所以需要通过在视频发送端实时估算当前带宽来探测当前网络情况,以便实时根据当前网络情况来调整视频编码器的帧率或者码率。可选的,可在视频发送端设置一个定时器,每隔预定时间做一次带宽统计。
优选的,可根据公式delay_ts_delta=cur_ts-acked_ts计算网络延迟时间,其中,delay_ts_delta表示网络延迟时间;cur_ts表示当前发送视频帧分片的时间;acked_ts表示最后收到接收确认响应的时间。示例性的,当前发送视频帧分片的时间,即当前正发送的视频帧分片的时间为t1,最后收到接收确认响应的时间,即最近一次收到接收确认响应的时间为t2,则当前的网络延迟时间为t1-t2。
S250、视频发送端根据当前单位时间内收到接收确认响应的带宽以及上一阶段的带宽抖动修正值确定当前带宽抖动修正值。
示例性的,根据当前单位时间内收到接收确认响应的情况可估计出相应的带宽值,即当前单位时间内收到接收确认响应的带宽。其中,上一阶段的带宽抖动修正值是指上一次带宽测量时计算得到的带宽抖动修正值。
优选的,所述视频发送端根据当前单位时间内收到接收确认响应的带宽以及上一阶段的带宽抖动修正值计算当前带宽抖动修正值,包括:视频发送端根据公式计算当前带宽抖动修正值;其中,acked_bw为当前带宽抖动修正值,acked_bw0为上一阶段的带宽抖动修正值,bw为当前单位时间内收到接收确认响应的带宽。另外,由acked_bw的计算公式可知,acked_bw的值为整数值。当首次计算acked_bw时,acked_bw0的取值为0。
S260、视频发送端根据网络延迟时间和当前带宽抖动修正值更新数据传输参数。
优选的,每10秒统计一次带宽,进而更新一次数据传输参数。周期性更新数据传输参数的好处在于,可以根据当前网络情况实时调整数据传输参数,进而最大限度的提高传输效率,降低视频延迟,提高用户体验。
优选的,根据网络延迟时间和当前带宽抖动修正值更新数据传输参数,包括:若当前存在重发的视频帧分片且网络延迟时间大于预设阈值,则将期望带宽值设置为当前带宽抖动修正值,并根据期望带宽值降低数据传输参数的取值,其中,数据传输参数包括:视频编码器的分辨率,和/或数据传输码率;若当前不存在重发的视频帧分片且当前带宽抖动修正值大于0,则将期望带宽值设置为当前带宽抖动修正值的预设倍数,并根据期望带宽值提高数据传输参数的取值;若当前带宽抖动修正值等于0,则保持数据传输参数的取值。
示例性的,若delay_ts_delta大于8×MAX(rtt+rtt_var,100),则dst_bw=acked_bw,进而根据更新后的dst_bw的值降低视频编码器的分辨率、帧率和/或数据传输码率来保证播放的实时性和流畅性;若acked_bw大于0,则dst_bw=acked_bw*9/8,进而根据更新后的dst_bw的值提高视频编码器的分辨率、帧率和/或数据传输码率,来恢复清晰度和提高用户播放体验;若acked_bw等于0,则不更新dst_bw的值,即保持当前的视频编码器的分辨率、帧率和/或数据传输码率不变。其中,delay_ts_delta表示网络延迟时间;rtt表示当前视频帧分片的往返传输时间;rtt的修正值为rtt_var,rtt_var可根据现有的rtt修正算法得到;dst_bw表示期望带宽值;acked_bw为当前带宽抖动修正值。
S270、视频发送端根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至视频服务器,以使视频服务器将视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放。
可选的,本实施例中的S240至S260可与S270同时执行。
本实施例的技术方案,通过视频发送端向视频服务器发送视频同步确认信息,以最终使目标视频播放端进行同步确认,另外,根据计算得到的网络延迟时间和当前带宽抖动修正值来更新数据传输参数,进而根据该数据传输参数发送视频帧分片,从而降低了视频传输和播放延迟,提升了用户播放体验。
实施例三
图3为本发明实施例三提供的一种实时视频的传输方法的流程示意图。该方法可适用于实时视频的传输情况,该方法可以由实时视频的传输装置来执行,该装置可由硬件和/或软件组成,并一般可集成在视频服务器以及所有包含视频传输功能的智能终端中。具体包括如下:
S310、视频服务器根据视频发送端发送的连接请求,向视频发送端返回对应的连接确认信息,以与视频发送端建立连接,其中,连接请求包括视频发送端的身份标识信息。
示例性的,视频服务器收到由视频发送端发送的连接请求后,向视频发送端返回相应的连接确认信息,通过返回的连接确认信息与视频发送端建立连接。
其中,身份标识信息可以为视频发送端的UID。优选的,连接请求可以包括视频发送端的UID以及视频发送端的IP地址。为了统一管理各个客户端的连接信息,可在视频服务器上设置相应的信息存储表格,以存储各个客户端的UID以及IP地址,以使视频发送端发送的视频信息或视频数据能够通过该信息存储表格所对应存储的IP地址得到转发。
S320、视频服务器将身份标识信息发送至关联的至少一个视频播放端,以激活视频播放端打开与视频发送端对应的传输通道。
可选的,与视频服务器关联的至少一个视频播放端可以是与视频服务器建立连接的至少一个视频播放端。
示例性的,当群视频中新加入了客户端时,或当参与群视频的客户端的IP地址发生改变时,则视频服务器需要将该客户端的UID发送至参与群视频的其他客户端,以使其他客户端记录该客户端的UID,并分配和打开与该UID对应的传输通道。
优选的,在视频服务器将身份标识信息发送至关联的至少一个视频播放端之后,还包括:视频服务器在确认有目标视频播放端打开与视频发送端对应的传输通道时,向视频发送端发送视频同步请求;视频服务器接收视频发送端返回的视频同步确认信息,其中,视频同步确认信息包括:起始视频帧分片的序列号,以及当前发送视频帧分片的序列号;将视频同步确认信息转发至目标视频播放端,以使目标视频播放端获取实时视频的播放进度。
可选的,当有目标视频播放端打开与视频发送端对应的传输通道时,会通过握手确认信息告知视频服务器传输通道已打开,视频服务器收到该握手确认信息后即可确认有目标视频播放端打开与视频发送端对应的传输通道。向视频发送端发送视频同步请求的目的在于,获取并转发视频同步确认信息,以使视频发送端的数据发送情况与视频播放端的数据接收情况一致,从而减小视频传输延迟。
S330、视频服务器接收视频发送端根据设定数据传输参数发送的,实时生成的视频编码帧的视频帧分片,并将视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放。
可选的,视频服务器作为中转,将视频发送端发送的视频帧分片转发给关联的视频播放端。示例性的,群视频中与视频服务器相连的每个客户端相较于其他客户端而言均可以看做是视频发送端,当某个客户端将实时采集并编码生成的视频编码帧的视频帧分片发送给视频服务器时,视频服务器会将该视频帧分片发送给其他客户端以在其他客户端上进行实时视频播放。
优选的,在视频服务器接收视频发送端根据设定数据传输参数发送的,实时生成的视频编码帧的视频帧分片之后,还包括:视频服务器根据接收的视频帧分片,实时更新生成设定时间区间内的视频编码帧组,其中,视频编码帧组包括至少一个关键帧;将视频同步确认信息转发至目标视频播放端,进一步包括:将所述视频同步确认信息以及所述视频编码帧组转发至所述目标视频播放端,以使所述视频播放端对所述视频编码帧组进行即收即放显示。
可选的,设定时间区间内的视频编码帧组具体可以包括至少一个完整GOP(Groupof Pictures,画面组)。其中,关键帧具体可以为I帧。在视频服务器中实时缓存设定时间区间内的视频编码帧组,并将该视频编码帧组作为首屏画面与视频同步确认信息一起转发至视频播放端进行即收即放的好处在于,可以使视频播放端首次进行数据同步的同时能够及时播放第一个视频画面组,降低实时视频的播放延迟,提高播放体验。
优选的,在视频服务器接收视频发送端根据设定数据传输参数发送的,实时生成的视频编码帧的视频帧分片,并将视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放之后,还包括:视频服务器接收视频发送端发送的断开请求;视频服务器根据断开请求,控制关联的至少一个视频播放端关闭与视频发送端对应的传输通道;视频服务器向视频发送端返回对应的断开确认信息,以与视频发送端断开连接。
示例性的,群视频中若视频服务器接收到某个客户端发来的断开请求,则视频服务器会将包含该客户端UID的视频断开请求发送给群视频中的其他客户端,以使其他客户端关闭与该客户端对应的传输通道,并发送断开确认信息给该客户端,确认完成断开连接。
本实施例的技术方案,通过视频服务器响应视频发送端的连接请求建立可靠连接,并将视频发送端的身份识别信息发送至视频播放端,以使视频播放端打开相应的传输通道,最后配合视频发送端将实时生成的视频编码帧的视频帧分片转发至关联的视频播放端,以使视频播放端进行实时视频播放,从而降低了视频传输延迟,提高了视频传输的可靠性,提高了用户体验。
实施例四
图4为本发明实施例四提供的一种实时视频的传输方法的流程示意图。该方法可适用于实时视频的传输情况,该方法可以由实时视频的传输装置来执行,该装置可由硬件和/或软件组成,并一般可集成在视频播放端以及所有包含视频接收和播放功能的智能终端中。具体包括如下:
S410、视频播放端接收视频服务器发送的视频发送端的身份标识信息。
其中,视频发送端的身份标识信息可以是视频发送端的UID。
示例性的,每当接收到视频服务器发送的视频发送端的UID,即可确定该视频发送端已加入群视频,因此需要分配和打开相应的传输通道,以进行视频数据的传输。
S420、视频播放端根据身份标识信息,查询传输通道列表,确定并打开与视频发送端对应的传输通道,其中,传输通道列表中记录有身份标识信息与传输通道之间的对应关系。
示例性的,对于新加入群视频的客户端而言,已参与群视频的其他客户端为视频播放端,而新加入群视频的客户端为视频发送端。若存储于群视频中其他客户端上的传输通道列表中不包含新加入群视频的客户端的UID以及该UID所对应的传输通道号,则将该客户端的UID以及分配给该UID的传输通道号添加至各传输通道列表中,当下次该UID对应的客户端再次加入群视频时,只需各客户端查询各自传输通道列表中找到相应的UID后,打开相应记录的传输通道号的传输通道即可。
优选的,在视频播放端根据身份标识信息,查询传输通道列表,确定并打开与视频发送端对应的传输通道之后,还包括:视频播放端向视频服务器发送传输通道开启确认信息,以使视频服务器向视频发送端发送视频同步请求;视频播放端接收视频服务器转发的视频同步确认信息,以获取实时视频的播放进度;其中,视频同步确认信息包括:起始视频帧分片的序列号,以及当前发送视频帧分片的序列号;视频同步确认信息为视频发送端根据视频同步请求返回的信息。
优选的,在视频播放端接收视频服务器转发的视频同步确认信息的同时,还包括:视频播放端接收视频服务器发送的与视频发送端对应的视频编码帧组,并对视频编码帧组进行即收即放显示;其中,视频服务器根据接收的视频帧分片,实时更新生成设定时间区间内的视频编码帧组,其中,视频编码帧组包括至少一个关键帧。
可选的,设定时间区间内的视频编码帧组可以为至少一个GOP。对视频编码帧组进行即收即放显示的好处在于,可以减小播放等待时间,进而降低视频的播放延迟。
S430、视频播放器通过传输通道接收视频服务器转发的视频发送端根据设定数据传输参数发送的实时生成的视频编码帧的视频帧分片。
示例性的,根据存储于本地的传输通道列表中各视频发送端的UID与传输通道之间的关系,视频播放器可通过不同的传输通道接收视频服务器转发的不同的视频发送端所发送的视频帧分片,以实现视频数据之间互不干扰的传输方式,提高数据传输效率,降低视频传输延迟。
S440、视频播放端根据接收到的视频帧分片,进行实时视频播放。
可选的,视频播放端根据接收到的视频帧分片,将不同视频编码帧对应的视频帧分片进行合并处理后,按帧进行实时视频播放。
优选的,在视频播放端根据接收到的视频帧分片,进行实时视频播放之后,还包括:视频播放端接收视频服务器发送的断开指令,其中,断开指令中包括视频发送端的身份标识信息;视频播放端根据断开指令中的身份标识信息,关闭与视频发送端对应的传输通道。
示例性的,当群视频中客户端收到视频服务器发送的有关其他客户端UID的断开指令时,关闭传输通道列表中与该客户端UID对应的传输通道,以释放该通道资源。
本实施例的技术方案,通过视频播放端配合视频发送端与视频服务器进行的相关操作,实现了降低视频传输延迟,提高用户体验的效果。
实施例五
图5为本发明实施例五提供的一种实时视频的传输装置的结构示意图。该装置可适用于对实时视频进行传输的情况,该装置可由硬件和/或软件组成,并一般可集成在视频发送端以及所有包含视频发送功能的智能终端中。参考图5,实时视频的传输装置包括:连接请求发送模块510以及视频分片发送模块520,下面对各模块进行具体说明。
连接请求发送模块510,用于向视频服务器发送连接请求,并接收所述视频服务器返回的连接确认信息,以与所述视频服务器建立连接;
其中,所述连接请求包括所述视频发送端的身份标识信息;所述视频服务器在接收到所述连接请求后,根据所述身份标识信息激活关联的至少一个视频播放端打开与所述视频发送端对应的传输通道;
视频分片发送模块520,用于根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至所述视频服务器,以使所述视频服务器将所述视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放。
本实施例提供的实时视频的传输装置,通过视频发送端向视频服务器发送连接请求,以与视频服务器建立连接后,视频发送端根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至视频服务器,进而由视频服务器转发给视频播放端进行实时视频播放。由于只发送一次请求即建立连接,并在连接建立后将视频编码帧分为若干个视频帧分片进行发送,解决了现有技术中因基于TCP进行连接之前需要经过三次握手的复杂过程,且采用直接基于视频数据流进行传输和播放的方法,而导致视频传输延迟高的问题,实现了降低视频传输延迟,提高用户体验的效果。
在上述各实施例的基础上,还可以包括:
同步确认返回模块,用于在向视频服务器发送连接请求,并接收所述视频服务器返回的连接确认信息之后,根据所述视频服务器发送的视频同步请求,向所述视频服务器返回对应的视频同步确认信息;
其中,所述视频同步确认信息包括:起始视频帧分片的序列号,以及当前发送视频帧分片的序列号;所述视频服务器在确认有目标视频播放端打开与所述视频发送端对应的传输通道时,向所述视频发送端发送所述视频同步请求,以使所述目标视频播放端获取实时视频的播放进度。
在上述各实施例的基础上,还可以包括:
网络延迟计算模块,用于在根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至所述视频服务器的同时,根据当前发送视频帧分片的时间和最后收到接收确认响应的时间计算网络延迟时间;
带宽抖动修正模块,用于根据当前单位时间内收到接收确认响应的带宽以及上一阶段的带宽抖动修正值确定当前带宽抖动修正值;
传输参数更新模块,用于根据所述网络延迟时间和所述当前带宽抖动修正值更新所述数据传输参数。
在上述各实施例的基础上,所述带宽抖动修正模块,具体可以用于:
所述视频发送端根据公式计算当前带宽抖动修正值;
其中,acked_bw为当前带宽抖动修正值,acked_bw0为上一阶段的带宽抖动修正值,bw为当前单位时间内收到接收确认响应的带宽。
在上述各实施例的基础上,所述传输参数更新模块,具体可以用于:
若当前存在重发的视频帧分片且所述网络延迟时间大于预设阈值,则将期望带宽值设置为所述当前带宽抖动修正值,并根据所述期望带宽值降低所述数据传输参数的取值,其中,所述数据传输参数包括:视频编码器的分辨率,和/或数据传输码率;
若当前不存在重发的视频帧分片且所述当前带宽抖动修正值大于0,则将期望带宽值设置为所述当前带宽抖动修正值的预设倍数,并根据所述期望带宽值提高所述数据传输参数的取值;
若所述当前带宽抖动修正值等于0,则保持所述数据传输参数的取值。
在上述各实施例的基础上,还可以包括:
服务器连接断开模块,用于在根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至所述视频服务器之后,发送断开请求至所述视频服务器,并接收所述视频服务器返回的断开确认信息,以与所述视频服务器断开连接;
其中,所述视频服务器在接收到所述断开请求后,控制所述关联的至少一个视频播放端关闭与所述视频发送端对应的传输通道。
上述产品可执行本发明任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。
实施例六
图6为本发明实施例六提供的一种实时视频的传输装置的结构示意图。该装置可适用于对实时视频进行传输的情况,该装置可由硬件和/或软件组成,并一般可集成在视频服务器以及所有包含视频传输功能的智能终端中。参考图6,实时视频的传输装置包括:连接确认返回模块610、标识信息发送模块620以及视频分片转发模块630,下面对各模块进行具体说明。
连接确认返回模块610,用于根据所述视频发送端发送的连接请求,向所述视频发送端返回对应的连接确认信息,以与所述视频发送端建立连接,其中,所述连接请求包括所述视频发送端的身份标识信息;
标识信息发送模块620,用于将所述身份标识信息发送至关联的至少一个视频播放端,以激活所述视频播放端打开与所述视频发送端对应的传输通道;
视频分片转发模块630,用于接收所述视频发送端根据设定数据传输参数发送的,实时生成的视频编码帧的视频帧分片,并将所述视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放。
本实施例提供的实时视频的传输装置,通过视频服务器响应视频发送端的连接请求建立可靠连接,并将视频发送端的身份识别信息发送至视频播放端,以使视频播放端打开相应的传输通道,最后配合视频发送端将实时生成的视频编码帧的视频帧分片转发至关联的视频播放端,以使视频播放端进行实时视频播放,从而降低了视频传输延迟,提高了视频传输的可靠性,提高了用户体验。
在上述各实施例的基础上,还可以包括:
同步请求发送模块,用于在将所述身份标识信息发送至关联的至少一个视频播放端之后,在确认有目标视频播放端打开与所述视频发送端对应的传输通道时,向所述视频发送端发送所述视频同步请求;
同步确认接收模块,用于接收所述视频发送端返回的视频同步确认信息,其中,所述视频同步确认信息包括:起始视频帧分片的序列号,以及当前发送视频帧分片的序列号;
同步确认转发模块,用于将所述视频同步确认信息转发至目标视频播放端,以使所述目标视频播放端获取实时视频的播放进度。
在上述各实施例的基础上,还可以包括:
编码帧组生成模块,用于在接收所述视频发送端根据设定数据传输参数发送的,实时生成的视频编码帧的视频帧分片之后,根据接收的所述视频帧分片,实时更新生成设定时间区间内的视频编码帧组,其中,所述视频编码帧组包括至少一个关键帧;
所述同步确认转发模块,进一步用于:将所述视频同步确认信息以及所述视频编码帧组转发至所述目标视频播放端,以使所述视频播放端对所述视频编码帧组进行即收即放显示。
在上述各实施例的基础上,还可以包括:
断开请求接收模块,用于在接收所述视频发送端根据设定数据传输参数发送的,实时生成的视频编码帧的视频帧分片,并将所述视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放之后,接收所述视频发送端发送的断开请求;
传输通道关闭模块,用于根据所述断开请求,控制所述关联的至少一个视频播放端关闭与所述视频发送端对应的传输通道;
断开确认返回模块,用于向所述视频发送端返回对应的断开确认信息,以与所述视频发送端断开连接。
上述产品可执行本发明任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。
实施例七
图7为本发明实施例七提供的一种实时视频的传输装置的结构示意图。该装置可适用于对实时视频进行传输的情况,该装置可由硬件和/或软件组成,并一般可集成在视频播放端以及所有包含视频接收和播放功能的智能终端中。参考图7,实时视频的传输装置包括:标识信息接收模块710、传输通道打开模块720、视频分片接收模块730以及实时视频播放模块740,下面对各模块进行具体说明。
标识信息接收模块710,用于接收视频服务器发送的视频发送端的身份标识信息;
传输通道打开模块720,用于根据所述身份标识信息,查询传输通道列表,确定并打开与所述视频发送端对应的传输通道,其中,所述传输通道列表中记录有身份标识信息与传输通道之间的对应关系;
视频分片接收模块730,用于通过所述传输通道接收所述视频服务器转发的所述视频发送端根据设定数据传输参数发送的实时生成的视频编码帧的视频帧分片;
实时视频播放模块740,用于根据接收到的所述视频帧分片,进行实时视频播放。
本实施例提供的实时视频的传输装置,通过视频播放端配合视频发送端与视频服务器进行的相关操作,实现了降低视频传输延迟,提高用户体验的效果。
在上述各实施例的基础上,还可以包括:
通道开启确认模块,用于在根据所述身份标识信息,查询传输通道列表,确定并打开与所述视频发送端对应的传输通道之后,向所述视频服务器发送传输通道开启确认信息,以使所述视频服务器向所述视频发送端发送所述视频同步请求;
同步确认接收模块,用于接收所述视频服务器转发的视频同步确认信息,以获取实时视频的播放进度;
其中,所述视频同步确认信息包括:起始视频帧分片的序列号,以及当前发送视频帧分片的序列号;所述视频同步确认信息为所述视频发送端根据所述视频同步请求返回的信息。
在上述各实施例的基础上,还可以包括:
即收即放显示模块,用于在接收所述视频服务器转发的视频同步确认信息的同时,所述视频播放端接收所述视频服务器发送的与所述视频发送端对应的视频编码帧组,并对所述视频编码帧组进行即收即放显示;
其中,所述视频服务器根据接收的所述视频帧分片,实时更新生成设定时间区间内的所述视频编码帧组,其中,所述视频编码帧组包括至少一个关键帧。
在上述各实施例的基础上,还可以包括:
断开指令接收模块,用于在根据接收到的所述视频帧分片,进行实时视频播放之后,接收所述视频服务器发送的断开指令,其中,所述断开指令中包括所述视频发送端的身份标识信息;
传输通道关闭模块,用于根据所述断开指令中的所述身份标识信息,关闭与所述视频发送端对应的传输通道。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (17)
1.一种实时视频的传输方法,其特征在于,包括:
视频发送端向视频服务器发送连接请求,并接收所述视频服务器返回的连接确认信息,以与所述视频服务器建立连接;
其中,所述连接请求包括所述视频发送端的身份标识信息;所述视频服务器在接收到所述连接请求后,根据所述身份标识信息激活关联的至少一个视频播放端打开与所述视频发送端对应的传输通道;
所述视频发送端根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至所述视频服务器,以使所述视频服务器将所述视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放。
2.根据权利要求1所述的方法,其特征在于,在视频发送端向视频服务器发送连接请求,并接收所述视频服务器返回的连接确认信息之后,还包括:
所述视频发送端根据所述视频服务器发送的视频同步请求,向所述视频服务器返回对应的视频同步确认信息;
其中,所述视频同步确认信息包括:起始视频帧分片的序列号,以及当前发送视频帧分片的序列号;所述视频服务器在确认有目标视频播放端打开与所述视频发送端对应的传输通道时,向所述视频发送端发送所述视频同步请求,以使所述目标视频播放端获取实时视频的播放进度。
3.根据权利要求1或2所述的方法,其特征在于,在所述视频发送端根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至所述视频服务器的同时,还包括:
所述视频发送端根据当前发送视频帧分片的时间和最后收到接收确认响应的时间计算网络延迟时间;
所述视频发送端根据当前单位时间内收到接收确认响应的带宽以及上一阶段的带宽抖动修正值确定当前带宽抖动修正值;
所述视频发送端根据所述网络延迟时间和所述当前带宽抖动修正值更新所述数据传输参数。
4.根据权利要求3所述的方法,其特征在于,所述视频发送端根据当前单位时间内收到接收确认响应的带宽以及上一阶段的带宽抖动修正值计算当前带宽抖动修正值,包括:
所述视频发送端根据公式计算当前带宽抖动修正值;
其中,acked_bw为当前带宽抖动修正值,acked_bw0为上一阶段的带宽抖动修正值,bw为当前单位时间内收到接收确认响应的带宽。
5.根据权利要求4所述的方法,其特征在于,所述根据所述网络延迟时间和所述当前带宽抖动修正值更新所述数据传输参数,包括:
若当前存在重发的视频帧分片且所述网络延迟时间大于预设阈值,则将期望带宽值设置为所述当前带宽抖动修正值,并根据所述期望带宽值降低所述数据传输参数的取值,其中,所述数据传输参数包括:视频编码器的分辨率,和/或数据传输码率;
若当前不存在重发的视频帧分片且所述当前带宽抖动修正值大于0,则将期望带宽值设置为所述当前带宽抖动修正值的预设倍数,并根据所述期望带宽值提高所述数据传输参数的取值;
若所述当前带宽抖动修正值等于0,则保持所述数据传输参数的取值。
6.根据权利要求1所述的方法,其特征在于,在所述视频发送端根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至所述视频服务器之后,还包括:
所述视频发送端发送断开请求至所述视频服务器,并接收所述视频服务器返回的断开确认信息,以与所述视频服务器断开连接;
其中,所述视频服务器在接收到所述断开请求后,控制所述关联的至少一个视频播放端关闭与所述视频发送端对应的传输通道。
7.一种实时视频的传输方法,其特征在于,包括:
视频服务器根据所述视频发送端发送的连接请求,向所述视频发送端返回对应的连接确认信息,以与所述视频发送端建立连接,其中,所述连接请求包括所述视频发送端的身份标识信息;
所述视频服务器将所述身份标识信息发送至关联的至少一个视频播放端,以激活所述视频播放端打开与所述视频发送端对应的传输通道;
所述视频服务器接收所述视频发送端根据设定数据传输参数发送的,实时生成的视频编码帧的视频帧分片,并将所述视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放。
8.根据权利要求7所述的方法,其特征在于,在所述视频服务器将所述身份标识信息发送至关联的至少一个视频播放端之后,还包括:
所述视频服务器在确认有目标视频播放端打开与所述视频发送端对应的传输通道时,向所述视频发送端发送所述视频同步请求;
所述视频服务器接收所述视频发送端返回的视频同步确认信息,其中,所述视频同步确认信息包括:起始视频帧分片的序列号,以及当前发送视频帧分片的序列号;
将所述视频同步确认信息转发至目标视频播放端,以使所述目标视频播放端获取实时视频的播放进度。
9.根据权利要求8所述的方法,其特征在于,在所述视频服务器接收所述视频发送端根据设定数据传输参数发送的,实时生成的视频编码帧的视频帧分片之后,还包括:
所述视频服务器根据接收的所述视频帧分片,实时更新生成设定时间区间内的视频编码帧组,其中,所述视频编码帧组包括至少一个关键帧;
将所述视频同步确认信息转发至目标视频播放端,进一步包括:将所述视频同步确认信息以及所述视频编码帧组转发至所述目标视频播放端,以使所述视频播放端对所述视频编码帧组进行即收即放显示。
10.根据权利要求7所述的方法,其特征在于,在所述视频服务器接收所述视频发送端根据设定数据传输参数发送的,实时生成的视频编码帧的视频帧分片,并将所述视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放之后,还包括:
所述视频服务器接收所述视频发送端发送的断开请求;
所述视频服务器根据所述断开请求,控制所述关联的至少一个视频播放端关闭与所述视频发送端对应的传输通道;
所述视频服务器向所述视频发送端返回对应的断开确认信息,以与所述视频发送端断开连接。
11.一种实时视频的传输方法,其特征在于,包括:
视频播放端接收视频服务器发送的视频发送端的身份标识信息;
所述视频播放端根据所述身份标识信息,查询传输通道列表,确定并打开与所述视频发送端对应的传输通道,其中,所述传输通道列表中记录有身份标识信息与传输通道之间的对应关系;
所述视频播放器通过所述传输通道接收所述视频服务器转发的所述视频发送端根据设定数据传输参数发送的实时生成的视频编码帧的视频帧分片;
所述视频播放端根据接收到的所述视频帧分片,进行实时视频播放。
12.根据权利要求11所述的方法,其特征在于,在所述视频播放端根据所述身份标识信息,查询传输通道列表,确定并打开与所述视频发送端对应的传输通道之后,还包括:
所述视频播放端向所述视频服务器发送传输通道开启确认信息,以使所述视频服务器向所述视频发送端发送所述视频同步请求;
所述视频播放端接收所述视频服务器转发的视频同步确认信息,以获取实时视频的播放进度;
其中,所述视频同步确认信息包括:起始视频帧分片的序列号,以及当前发送视频帧分片的序列号;所述视频同步确认信息为所述视频发送端根据所述视频同步请求返回的信息。
13.根据权利要求12所述的方法,其特征在于,在所述视频播放端接收所述视频服务器转发的视频同步确认信息的同时,还包括:
所述视频播放端接收所述视频服务器发送的与所述视频发送端对应的视频编码帧组,并对所述视频编码帧组进行即收即放显示;
其中,所述视频服务器根据接收的所述视频帧分片,实时更新生成设定时间区间内的所述视频编码帧组,其中,所述视频编码帧组包括至少一个关键帧。
14.根据权利要求11所述的方法,其特征在于,在所述视频播放端根据接收到的所述视频帧分片,进行实时视频播放之后,还包括:
所述视频播放端接收所述视频服务器发送的断开指令,其中,所述断开指令中包括所述视频发送端的身份标识信息;
所述视频播放端根据所述断开指令中的所述身份标识信息,关闭与所述视频发送端对应的传输通道。
15.一种实时视频的传输装置,配置于视频发送端,其特征在于,包括:
连接请求发送模块,用于向视频服务器发送连接请求,并接收所述视频服务器返回的连接确认信息,以与所述视频服务器建立连接;
其中,所述连接请求包括所述视频发送端的身份标识信息;所述视频服务器在接收到所述连接请求后,根据所述身份标识信息激活关联的至少一个视频播放端打开与所述视频发送端对应的传输通道;
视频分片发送模块,用于根据设定数据传输参数将实时生成的视频编码帧的视频帧分片发送至所述视频服务器,以使所述视频服务器将所述视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放。
16.一种实时视频的传输装置,配置于视频服务器,其特征在于,包括:
连接确认返回模块,用于根据所述视频发送端发送的连接请求,向所述视频发送端返回对应的连接确认信息,以与所述视频发送端建立连接,其中,所述连接请求包括所述视频发送端的身份标识信息;
标识信息发送模块,用于将所述身份标识信息发送至关联的至少一个视频播放端,以激活所述视频播放端打开与所述视频发送端对应的传输通道;
视频分片转发模块,用于接收所述视频发送端根据设定数据传输参数发送的,实时生成的视频编码帧的视频帧分片,并将所述视频帧分片转发至打开对应传输通道的视频播放端进行实时视频播放。
17.一种实时视频的传输装置,配置于视频播放端,其特征在于,包括:
标识信息接收模块,用于接收视频服务器发送的视频发送端的身份标识信息;
传输通道打开模块,用于根据所述身份标识信息,查询传输通道列表,确定并打开与所述视频发送端对应的传输通道,其中,所述传输通道列表中记录有身份标识信息与传输通道之间的对应关系;
视频分片接收模块,用于通过所述传输通道接收所述视频服务器转发的所述视频发送端根据设定数据传输参数发送的实时生成的视频编码帧的视频帧分片;
实时视频播放模块,用于根据接收到的所述视频帧分片,进行实时视频播放。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710233377.5A CN108696772B (zh) | 2017-04-11 | 2017-04-11 | 一种实时视频的传输方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710233377.5A CN108696772B (zh) | 2017-04-11 | 2017-04-11 | 一种实时视频的传输方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108696772A true CN108696772A (zh) | 2018-10-23 |
CN108696772B CN108696772B (zh) | 2021-07-16 |
Family
ID=63843354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710233377.5A Expired - Fee Related CN108696772B (zh) | 2017-04-11 | 2017-04-11 | 一种实时视频的传输方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108696772B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110830823A (zh) * | 2019-11-27 | 2020-02-21 | 北京奇艺世纪科技有限公司 | 播放进度修正方法、装置、电子设备及可读存储介质 |
CN110996164A (zh) * | 2020-01-02 | 2020-04-10 | 北京字节跳动网络技术有限公司 | 视频发布方法、装置、电子设备及计算机可读介质 |
CN111835682A (zh) * | 2019-04-19 | 2020-10-27 | 上海哔哩哔哩科技有限公司 | 连接控制方法、***、设备及计算机可读存储介质 |
CN112383791A (zh) * | 2020-11-12 | 2021-02-19 | 咪咕视讯科技有限公司 | 一种媒体数据处理方法、装置、电子设备和存储介质 |
CN112804579A (zh) * | 2019-11-14 | 2021-05-14 | 上海哔哩哔哩科技有限公司 | 视频播放方法、装置、计算机设备和可读存储介质 |
CN113438520A (zh) * | 2021-06-29 | 2021-09-24 | 北京奇艺世纪科技有限公司 | 数据处理方法、装置及*** |
CN114070647A (zh) * | 2021-11-29 | 2022-02-18 | 中国银行股份有限公司 | 一种视频传输***及视频传输方法 |
CN114501049A (zh) * | 2022-01-18 | 2022-05-13 | 上海哔哩哔哩科技有限公司 | 直播连接的建立方法、装置及*** |
CN114640893A (zh) * | 2022-03-10 | 2022-06-17 | 京东科技信息技术有限公司 | 实时音视频通信***的服务端对接方法以及装置 |
CN114979793A (zh) * | 2022-05-11 | 2022-08-30 | 北京字节跳动网络技术有限公司 | 一种直播数据传输方法、装置、***、设备和介质 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1312643A (zh) * | 2000-03-08 | 2001-09-12 | Lg电子株式会社 | 产生合成关键帧的方法和使用该方法的视频浏览*** |
CN1545294A (zh) * | 2003-11-19 | 2004-11-10 | 北京邮电大学 | 一种用于媒体流传输和网络测量的实时数据传输控制方法 |
CN101102212A (zh) * | 2007-07-31 | 2008-01-09 | 中国网络通信集团公司 | 端到端信息传输方法及*** |
CN101540881A (zh) * | 2008-03-19 | 2009-09-23 | 华为技术有限公司 | 实现流媒体定位播放的方法、装置及*** |
CN102137302A (zh) * | 2010-12-09 | 2011-07-27 | 华为技术有限公司 | 流媒体视频内容的播放方法和装置 |
US20110310995A1 (en) * | 2009-12-31 | 2011-12-22 | Broadcom Corporation | Transcoding multiple media elements for independent wireless delivery |
CN103024561A (zh) * | 2011-09-28 | 2013-04-03 | 深圳市快播科技有限公司 | 一种拖拽进度条的显示方法及装置 |
CN103259945A (zh) * | 2013-05-20 | 2013-08-21 | 苏州洲际传书信息科技有限公司 | 在voip通话中根据网络状况实现语音编码动态切换的方法 |
CN104683884A (zh) * | 2015-02-09 | 2015-06-03 | 网宿科技股份有限公司 | 一种流媒体直播方法及*** |
CN104821909A (zh) * | 2015-04-22 | 2015-08-05 | 北京云艾科技有限公司 | 端对端的数据传输方法和*** |
CN105263066A (zh) * | 2014-06-13 | 2016-01-20 | 珠海全志科技股份有限公司 | 移动设备视频流传输控制方法及*** |
CN105635734A (zh) * | 2014-11-03 | 2016-06-01 | 掌赢信息科技(上海)有限公司 | 基于视频通话场景的自适应视频编码方法及装置 |
CN106231353A (zh) * | 2016-07-22 | 2016-12-14 | 北京小米移动软件有限公司 | VoIP通信方法及装置 |
CN106341738A (zh) * | 2015-07-08 | 2017-01-18 | 杭州海康威视数字技术股份有限公司 | 流媒体网络传输的带宽计算方法、服务器端和*** |
-
2017
- 2017-04-11 CN CN201710233377.5A patent/CN108696772B/zh not_active Expired - Fee Related
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1312643A (zh) * | 2000-03-08 | 2001-09-12 | Lg电子株式会社 | 产生合成关键帧的方法和使用该方法的视频浏览*** |
CN1545294A (zh) * | 2003-11-19 | 2004-11-10 | 北京邮电大学 | 一种用于媒体流传输和网络测量的实时数据传输控制方法 |
CN101102212A (zh) * | 2007-07-31 | 2008-01-09 | 中国网络通信集团公司 | 端到端信息传输方法及*** |
CN101540881A (zh) * | 2008-03-19 | 2009-09-23 | 华为技术有限公司 | 实现流媒体定位播放的方法、装置及*** |
US20110310995A1 (en) * | 2009-12-31 | 2011-12-22 | Broadcom Corporation | Transcoding multiple media elements for independent wireless delivery |
CN102137302A (zh) * | 2010-12-09 | 2011-07-27 | 华为技术有限公司 | 流媒体视频内容的播放方法和装置 |
CN103024561A (zh) * | 2011-09-28 | 2013-04-03 | 深圳市快播科技有限公司 | 一种拖拽进度条的显示方法及装置 |
CN103259945A (zh) * | 2013-05-20 | 2013-08-21 | 苏州洲际传书信息科技有限公司 | 在voip通话中根据网络状况实现语音编码动态切换的方法 |
CN105263066A (zh) * | 2014-06-13 | 2016-01-20 | 珠海全志科技股份有限公司 | 移动设备视频流传输控制方法及*** |
CN105635734A (zh) * | 2014-11-03 | 2016-06-01 | 掌赢信息科技(上海)有限公司 | 基于视频通话场景的自适应视频编码方法及装置 |
CN104683884A (zh) * | 2015-02-09 | 2015-06-03 | 网宿科技股份有限公司 | 一种流媒体直播方法及*** |
CN104821909A (zh) * | 2015-04-22 | 2015-08-05 | 北京云艾科技有限公司 | 端对端的数据传输方法和*** |
CN106341738A (zh) * | 2015-07-08 | 2017-01-18 | 杭州海康威视数字技术股份有限公司 | 流媒体网络传输的带宽计算方法、服务器端和*** |
CN106231353A (zh) * | 2016-07-22 | 2016-12-14 | 北京小米移动软件有限公司 | VoIP通信方法及装置 |
Non-Patent Citations (1)
Title |
---|
何润岸: "基于UDP进行大规模数据传输的可靠传输***的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111835682A (zh) * | 2019-04-19 | 2020-10-27 | 上海哔哩哔哩科技有限公司 | 连接控制方法、***、设备及计算机可读存储介质 |
CN112804579A (zh) * | 2019-11-14 | 2021-05-14 | 上海哔哩哔哩科技有限公司 | 视频播放方法、装置、计算机设备和可读存储介质 |
CN110830823B (zh) * | 2019-11-27 | 2022-02-08 | 北京奇艺世纪科技有限公司 | 播放进度修正方法、装置、电子设备及可读存储介质 |
CN110830823A (zh) * | 2019-11-27 | 2020-02-21 | 北京奇艺世纪科技有限公司 | 播放进度修正方法、装置、电子设备及可读存储介质 |
CN110996164A (zh) * | 2020-01-02 | 2020-04-10 | 北京字节跳动网络技术有限公司 | 视频发布方法、装置、电子设备及计算机可读介质 |
CN112383791A (zh) * | 2020-11-12 | 2021-02-19 | 咪咕视讯科技有限公司 | 一种媒体数据处理方法、装置、电子设备和存储介质 |
CN112383791B (zh) * | 2020-11-12 | 2023-07-21 | 咪咕视讯科技有限公司 | 一种媒体数据处理方法、装置、电子设备和存储介质 |
CN113438520A (zh) * | 2021-06-29 | 2021-09-24 | 北京奇艺世纪科技有限公司 | 数据处理方法、装置及*** |
CN114070647A (zh) * | 2021-11-29 | 2022-02-18 | 中国银行股份有限公司 | 一种视频传输***及视频传输方法 |
CN114501049A (zh) * | 2022-01-18 | 2022-05-13 | 上海哔哩哔哩科技有限公司 | 直播连接的建立方法、装置及*** |
CN114501049B (zh) * | 2022-01-18 | 2023-10-27 | 上海哔哩哔哩科技有限公司 | 直播连接的建立方法、装置及*** |
CN114640893A (zh) * | 2022-03-10 | 2022-06-17 | 京东科技信息技术有限公司 | 实时音视频通信***的服务端对接方法以及装置 |
CN114979793A (zh) * | 2022-05-11 | 2022-08-30 | 北京字节跳动网络技术有限公司 | 一种直播数据传输方法、装置、***、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108696772B (zh) | 2021-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108696772A (zh) | 一种实时视频的传输方法及装置 | |
US9282448B2 (en) | Method, system and apparatus for providing streaming media service | |
JP5788473B2 (ja) | 端末の出力を同期させる方法およびシステム | |
US20210410168A1 (en) | Service data transmission method, network device, and terminal device | |
CN108696773A (zh) | 一种实时视频的传输方法及装置 | |
US20080151885A1 (en) | On-Demand Multi-Channel Streaming Session Over Packet-Switched Networks | |
CN105704580B (zh) | 一种视频传输方法 | |
US8813160B2 (en) | Method, system and user device for obtaining a key frame in a streaming media service | |
US10027496B2 (en) | Method for distributing identifiers of multicast sources | |
US9838209B2 (en) | Method for subscribing to streams from multicast clients | |
CN107743698A (zh) | 用于多路径媒体传递的方法和装置 | |
CN101129041A (zh) | 使两个实时传输协议多媒体流会话之间的切换延迟最小化的***和方法 | |
US11101917B2 (en) | Optimizing delay-sensitive network-based communications with latency guidance | |
CN106454553A (zh) | 精准时延直播视频网络传输控制方法 | |
CN110943977A (zh) | 多媒体业务数据传输方法、服务端、设备及存储介质 | |
CN108810475A (zh) | 一种基于Onvif标准及Sip协议的Android视频监控装置 | |
CN106302377B (zh) | 媒体会话处理方法和相关设备及通信*** | |
CN106790030A (zh) | 多屏协同音频传输服务端、客户端、***及其处理方法 | |
CN106790576A (zh) | 一种互动桌面同步方法 | |
US20120023224A1 (en) | Method and system for measuring individual network round-trip delays in ip gateways | |
CN108123947A (zh) | 一对多音视频直播实现方法 | |
US20220294555A1 (en) | Optimizing delay-sensitive network-based communications with latency guidance | |
CN108353035B (zh) | 用于多路复用数据的方法和设备 | |
CN113543222B (zh) | 媒体报文的传输方法、装置及*** | |
Noh et al. | Time-shifted streaming in a peer-to-peer video multicast system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200818 Address after: No.259 Nanjing West Road, Tangqiao town, Zhangjiagang City, Suzhou City, Jiangsu Province Applicant after: Suzhou Qianwen wandaba Education Technology Co.,Ltd. Address before: Yangpu District State Road 200433 Shanghai City No. 200 Building 5 room 2002 Applicant before: SHANGHAI QIANWENWANDABA CLOUD TECH. Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20210716 |