CN111741248B - 一种数据传输方法、装置、终端设备和存储介质 - Google Patents

一种数据传输方法、装置、终端设备和存储介质 Download PDF

Info

Publication number
CN111741248B
CN111741248B CN202010456996.2A CN202010456996A CN111741248B CN 111741248 B CN111741248 B CN 111741248B CN 202010456996 A CN202010456996 A CN 202010456996A CN 111741248 B CN111741248 B CN 111741248B
Authority
CN
China
Prior art keywords
data packet
bandwidth value
current
media data
value
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.)
Active
Application number
CN202010456996.2A
Other languages
English (en)
Other versions
CN111741248A (zh
Inventor
谢文龙
李云鹏
吕亚亚
杨春晖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Visionvera Information Technology Co Ltd
Original Assignee
Visionvera Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Visionvera Information Technology Co Ltd filed Critical Visionvera Information Technology Co Ltd
Priority to CN202010456996.2A priority Critical patent/CN111741248B/zh
Publication of CN111741248A publication Critical patent/CN111741248A/zh
Application granted granted Critical
Publication of CN111741248B publication Critical patent/CN111741248B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/63Control 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/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64784Data processing by the network
    • H04N21/64792Controlling the complexity of the content stream, e.g. by dropping packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明实施例提供了一种数据传输方法、装置、终端设备和存储介质,包括:流媒体服务器获取接收会议发送端发送的当前媒体数据包所需的当前带宽值;确定将当前媒体数据包发送至至少两个会议接收端的预测带宽值;根据当前带宽值与预测带宽值的对比结果,获取与对比结果相对应的流控传输策略;根据流控传输策略,将当前媒体数据包发送至至少两个会议接收端,以使至少两个会议接收端接收到的当前媒体数据包的丢包率小于预设值,利用本发明实施例,会议发送端发送的同一份帧率、码流的媒体数据包可以适应多种网络带宽状态下的会议接收端,会议接收端接收到的媒体数据包避免出现丢包现象。

Description

一种数据传输方法、装置、终端设备和存储介质
技术领域
本发明涉及数据通信技术领域,特别是涉及一种数据传输方法、装置、终端设备和存储介质。
背景技术
在视频会议中,每个会议端对采用的音视频数据按照一定帧率和码流进行编码,然后通过网络协议发送至其他的各个会议接收端,会议接收端对接收到的音视频数据进行解码并进行播放。但是每个会议端因为网络带宽不同,所能接收的最大码流也不一样,在传输过程中可能造成音视频数据的丢包现象。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种数据传输方法、装置、终端设备和存储介质。
第一个方面,本发明实施例提供一种数据传输方法,所述方法应用于流媒体服务器,包括:
获取接收会议发送端发送的当前媒体数据包所需的当前带宽值;
确定将所述当前媒体数据包发送至至少两个会议接收端的预测带宽值;
根据所述当前带宽值与所述预测带宽值的对比结果,获取与所述对比结果相对应的流控传输策略;
根据所述流控传输策略,将所述当前媒体数据包发送至所述至少两个会议接收端,以使所述至少两个会议接收端接收到的所述当前媒体数据包的丢包率小于预设值。
可选地,所述确定将所述媒体数据包发送至至少两个会议接收端的预测带宽值,包括:
将所述会议发送端前一时刻发送的第一媒体数据包发送至所述会议接收端,其中,所述第一媒体数据包包括第一时间戳;
获取所述至少两个会议接收端返回的统计数据包和丢包率,其中,所述统计数据包包括第二时间戳;
根据所述第一时间戳、所述第二时间戳和所述丢包率,分别计算将所述当前媒体数据包发送至所述至少两个会议接收端的预测带宽值。
可选地,所述根据所述当前带宽值与所述预测带宽值的对比结果,获取与所述对比结果相对应的流控传输策略,包括:
在所述当前带宽值大于至少两个会议接收端的预测带宽值中的最大值的情况下,向所述会议发送端返回调整码流指令,其中,所述调整码流指令中包括目的带宽值,所述目的带宽值为所述至少两个会议接收端的预测带宽值中的最小值,以使所述会议发送端根据所述目的带宽值,对发送所述当前媒体数据包的带宽进行调整。
可选地,所述根据所述当前带宽值与所述预测带宽值的对比结果,获取与所述对比结果相对应的流控传输策略,包括:
在所述当前带宽值大于第一预测带宽值,且小于第二预测带宽值的情况下,将所述当前媒体数据包按照所述当前带宽值发送至与所述第二预测带宽值对应的会议接收端;
对所述当前媒体数据包进行转码,获得与所述第一预测带宽值对应的转码媒体数据包;
将所述转码媒体数据包发送至与所述第一预测带宽值对应的会议接收端。
可选地,所述对所述当前媒体数据包进行转码,获得与所述第一预测带宽值对应的转码媒体数据包,包括:
将预先设置的分辨率和预先设置的帧率进行相乘,获得码率值;
将所述码率值与所述第一预测带宽值进行比较;
若所述码率值小于所述第一预测带宽值,并且所述码率值与所述第一预测带宽值的差值最小,则将所述码率值确定为目标码率值;
对所述当前媒体数据包进行转码,获得与所述目标码率值对应的所述转码媒体数据包。
可选地,所述根据所述当前带宽值与所述预测带宽值的对比结果,获取与所述对比结果相对应的流控传输策略,包括:
在所述当前带宽值小于至少两个会议接收端的预测带宽值中的最小值的情况下,将所述当前媒体数据包以所述当前带宽值发送至至少两个会议接收端。
第二个方面,本发明实施例提供一种数据传输装置,所述装置应用于流媒体服务器,包括:
获取模块,用于获取接收会议发送端发送的当前媒体数据包所需的当前带宽值;
预测模块,用于确定将所述当前媒体数据包发送至至少两个会议接收端的预测带宽值;
对比模块,用于根据所述当前带宽值与所述预测带宽值的对比结果,获取与所述对比结果相对应的流控传输策略;
发送模块,用于根据所述流控传输策略,将所述当前媒体数据包发送至所述至少两个会议接收端,以使所述至少两个会议接收端接收到的所述当前媒体数据包的丢包率小于预设值。
可选地,所述预测模块用于:
将所述会议发送端前一时刻发送的第一媒体数据包发送至所述会议接收端,其中,所述第一媒体数据包包括第一时间戳;
获取所述至少两个会议接收端返回的统计数据包和丢包率,其中,所述统计数据包包括第二时间戳;
根据所述第一时间戳、所述第二时间戳和所述丢包率,分别计算将所述当前媒体数据包发送至所述至少两个会议接收端的预测带宽值。
可选地,所述对比模块,用于:
在所述当前带宽值大于至少两个会议接收端的预测带宽值中的最大值的情况下,向所述会议发送端返回调整码流指令,其中,所述调整码流指令中包括目的带宽值,所述目的带宽值为所述至少两个会议接收端的预测带宽值中的最小值,以使所述会议发送端根据所述目的带宽值,对发送所述当前媒体数据包的带宽进行调整。
可选地,所述对比模块,用于:
在所述当前带宽值大于第一预测带宽值,且小于第二预测带宽值的情况下,将所述当前媒体数据包按照所述当前带宽值发送至与所述第二预测带宽值对应的会议接收端;
对所述当前媒体数据包进行转码,获得与所述第一预测带宽值对应的转码媒体数据包;
将所述转码媒体数据包发送至与所述第一预测带宽值对应的会议接收端。
可选地,所述对比模块用于:
将预先设置的分辨率和预先设置的帧率进行相乘,获得码率值;
将所述码率值与所述第一预测带宽值进行比较;
若所述码率值小于所述第一预测带宽值,并且所述码率值与所述第一预测带宽值的差值最小,则将所述码率值确定为目标码率值;
对所述当前媒体数据包进行转码,获得与所述目标码率值对应的所述转码媒体数据包。
可选地,所述对比模块,用于:
在所述当前带宽值小于至少两个会议接收端的预测带宽值中的最小值的情况下,将所述当前媒体数据包以所述当前带宽值发送至所述至少两个会议接收端。
第三个方面,本发明实施例提供一种终端设备,包括:至少一个处理器和存储器;
所述存储器存储计算机程序;所述至少一个处理器执行所述存储器存储的计算机程序,以实现第一个方面提供的数据传输方法。
第四个方面,本发明实施例提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,所述计算机程序被执行时实现第一个方面提供的数据传输方法。
本发明实施例包括以下优点:
本发明实施例提供的数据传输方法、装置、终端设备和存储介质,包括流媒体服务器获取接收会议发送端发送的当前媒体数据包所需的当前带宽值;确定将当前媒体数据包发送至至少两个会议接收端的预测带宽值;根据当前带宽值与预测带宽值的对比结果,获取与对比结果相对应的流控传输策略;根据流控传输策略,将当前媒体数据包发送至至少两个会议接收端,以使至少两个会议接收端接收到的当前媒体数据包的丢包率小于预设值,利用本发明实施例,会议发送端发送的同一份帧率、码流的媒体数据包可以适应多种网络带宽状态下的会议接收端,会议接收端接收到的媒体数据包避免出现丢包现象。
附图说明
图1是本发明的一种数据传输方法实施例的步骤流程图;
图2是本发明的另一种数据传输方法实施例的步骤流程图;
图3是本发明的一种数据传输装置实施例的结构框图;
图4是本发明的一种终端设备的结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
视联网是网络发展的重要里程碑,是一个实时网络,能够实现高清视频实时传输,将众多互联网应用推向高清视频化,高清面对面。
视联网采用实时高清视频交换技术,可以在一个网络平台上将所需的服务,如高清视频会议、视频监控、智能化监控分析、应急指挥、数字广播电视、延时电视、网络教学、现场直播、VOD点播、电视邮件、个性录制(PVR)、内网(自办)频道、智能化视频播控、信息发布等数十种视频、语音、图片、文字、通讯、数据等服务全部整合在一个系统平台,通过电视或电脑实现高清品质视频播放。
名词解释如下:
RTT:是客户端到服务器往返所花时间(rouEd-trip time,RTT),TCP含有动态估算RTT的算法。TCP还持续估算一个给定连接的RTT,这是因为RTT受网络传输拥塞程序的变化而变化。
4G多网卡聚合终端:一款可采用多网卡链路同时传输的终端产品。
WebRTC:Web Real-Time Communication,网页即时通信,是一个支持网页浏览器进行实时语音对话或视频对话的API。
本发明一实施例提供一种数据传输方法,用于对会议发送端发送的媒体数据包按照合适的流控传输策略,发送至会议接收端,执行主体为数据传输装置,安装在流媒体服务器上。
参照图1,示出了本发明的一种数据传输方法实施例的步骤流程图,该方法可以应用于流媒体服务器,具体可以包括如下步骤:
S101、获取接收会议发送端发送的当前媒体数据包所需的当前带宽值;
具体地,在一个视频会议中,包括会议发送端、会议接收端和流媒体服务器,其中,会议发送端可以是主席或者是发言方,会议发送端向流媒体服务器发送媒体数据包,即音视频数据,流媒体服务器接收会议发送端发送的当前媒体数据包,并根据当前媒体数据包的大小和接收的时间,计算接收当前媒体数据包所需要的当前带宽值。
其中,会议接收端可以是互联网终端,也可以是视联网终端,比如4G多网卡聚合终端。
S102、确定将所述当前媒体数据包发送至至少两个会议接收端的预测带宽值;
具体地,流媒体服务器在发送当前媒体数据包之前,根据之前接收的媒体数据包和发送媒体数据包的历史数据,计算将当前媒体数据包发送至至少两个会议接收端的预测带宽值。
S103、根据所述当前带宽值与所述预测带宽值的对比结果,获取与所述对比结果相对应的流控传输策略;
具体地,流媒体服务器根据当前带宽值,与至少两个会议接收端的预测带宽值进行对比,获取与对比结果对应的流控传输策略,每种不同的对比结果对应不同的流控传输策略。
示例性地,若流媒体服务器获取会议发送端发送的当前媒体数据包的当前带宽值为E,确定将当前媒体数据包发送至至少两个会议接收端的预测带宽值为A、B、C和D,将E与A、B、C和D进行对比,至少包括三种情况,一种是当前带宽值E大于所有的预测值A、B、C和D;一种是当前带宽值E小于所有的预测值A、B、C和D;还有一种为E为中间值,大于预测值的最小值,且小于预测值的最大值,对于这几种情况,分别对应不同的流控传输策略。
S104、根据所述流控传输策略,将所述当前媒体数据包发送至所述至少两个会议接收端,以使所述至少两个会议接收端接收到的所述当前媒体数据包的丢包率小于预设值。
具体地,流媒体服务器根据对比结果,获得与对比结果对应的流控传输策略,并根据获得的流控传输策略对当前媒体数据包进行处理,例如,若当前带宽值大于预测值的最大值,则通知会议发送端将码率和帧率降低进行发送,或者,对当前媒体数据包进行转码进行发送,或者以当前带宽值进行发送。不论哪种情况,至少两个会议接收端接收到的当前媒体数据包的丢包率小于预设值,这样同一份帧率、码流的媒体数据包可以适应多种网络带宽状态下的会议接收端,会议接收端接收到的媒体数据包避免出现丢包现象。
本发明实施例提供的数据传输方法,通过流媒体服务器获取接收会议发送端发送的当前媒体数据包所需的当前带宽值;确定将当前媒体数据包发送至至少两个会议接收端的预测带宽值;根据当前带宽值与预测带宽值的对比结果,获取与对比结果相对应的流控传输策略;根据流控传输策略,将当前媒体数据包发送至至少两个会议接收端,以使至少两个会议接收端接收到的当前媒体数据包的丢包率小于预设值,利用本发明实施例,会议发送端发送的同一份帧率、码流的媒体数据包可以适应多种网络带宽状态下的会议接收端,会议接收端接收到的媒体数据包避免出现丢包现象。
本发明又一实施例对上述实施例提供的数据传输方法做进一步补充说明。
如图2所示,示出了本发明的另一种数据传输方法实施例的步骤流程图,应用于流媒体服务器,该数据传输方法包括:
S201、获取接收会议发送端发送的当前媒体数据包所需的当前带宽值;
S202、确定将所述当前媒体数据包发送至至少两个会议接收端的预测带宽值;
具体地,在流媒体服务器上安装有WebRTC流控预测机制,即WebRTC流控预测单元,用于确定将所述当前媒体数据包发送至至少两个会议接收端的预测带宽值;步骤S202包括:
步骤a:将所述会议发送端前一时刻发送的第一媒体数据包发送至所述会议接收端,其中,所述第一媒体数据包包括第一时间戳;
步骤b:获取所述至少两个会议接收端返回的统计数据包和丢包率,其中,所述统计数据包包括第二时间戳;
具体地,会议接收端根据在预设时间内接收到的媒体数据包的包序计算预设时间内的丢包率。
步骤c:根据所述第一时间戳、所述第二时间戳和所述丢包率,分别计算将所述当前媒体数据包发送至所述至少两个会议接收端的预测带宽值。
具体地,每个会议接收都会向流媒体服务器返回统计数据包,流媒体根据第一时间戳和第二时间戳计算RTT值,并根据RTT值和丢包率,分别计算各个会议接收端的预测带宽值。
S203、根据所述当前带宽值与所述预测带宽值的对比结果,获取与所述对比结果相对应的流控传输策略;
该步骤S203包括三种情况,分别为S2031、S2032和S2033,具体地:
S2031作为一种可选的方式,包括:
在所述当前带宽值大于至少两个会议接收端的预测带宽值中的最大值的情况下,向所述会议发送端返回调整码流指令,其中,所述调整码流指令中包括目的带宽值,所述目的带宽值为所述至少两个会议接收端的预测带宽值中的最小值,以使所述会议发送端根据所述目的带宽值,对发送所述当前媒体数据包的带宽进行调整。
示例性地,在上面实施例的基础上,若E大于A、B、C和D中的最大值,则流媒体服务器向会议发送端返回调整码流指令,该调整码流指令包括目的带宽值,目的带宽值为至少两个会议接收端的预测带宽值A、B、C和D中的最小值,会议发送端根据A、B、C和D中的最小值,对发送当前媒体数据包的带宽进行调整,并按照调整后的媒体数据包进行发送。
S2032作为又一种可选的方式,包括:
在所述当前带宽值大于第一预测带宽值,且小于第二预测带宽值的情况下,将所述当前媒体数据包按照所述当前带宽值发送至与所述第二预测带宽值对应的会议接收端;
对所述当前媒体数据包进行转码,获得与所述第一预测带宽值对应的转码媒体数据包;
具体地,将预先设置的分辨率和预先设置的帧率进行相乘,获得码率值;
将所述码率值与所述第一预测带宽值进行比较;
若所述码率值小于所述第一预测带宽值,并且所述码率值与所述第一预测带宽值的差值最小,则将所述码率值确定为目标码率值;
对所述当前媒体数据包进行转码,获得与所述目标码率值对应的所述转码媒体数据包。
将所述转码媒体数据包发送至与所述第一预测带宽值对应的会议接收端。
示例性地,若当E为中间值时,即E大于第一预测带宽值(AB)且E小于第二预测带宽值(CD),则
对于与C、D对应的会议接收端,按E码流发送给与C、D对应的会议接收端;
对于与A、B对应的会议接收端,在流媒体服务器进行转码,具体地:
在流媒体服务器上预先存储各种不同格式的分辨率和各种不同格式的帧率,例如,根据预先设置的m个不同格式的分辨率和预先设备的n个不同的帧率分别进行相乘,获得m*n个码率值,将m*n个码率值与预侧带宽值A(或B)进行比较,若码率值小于预侧带宽值A(或B),并且码率值与该预侧带宽值A(或B)的差值最小,则将该码率值确定为目标码率值,流媒体服务器将原媒体文件先解码,再进行编码,获得与目标码率值对应的文件格式的媒体文件,然后将该媒体文件(媒体数据包)以预侧带宽值A发送至对应的会议接收端。
示例性地,分辨率格式包括320*240、640*480、320*480、480*272、640*360、672*378、720*480、1024*600、1280*720、1920*1080,并不限于此,帧率包括15帧、20帧、25帧,并不限定于此,可根据实际情况进行设定。
S2033作为再一种可选的方式,包括:
在所述当前带宽值小于至少两个会议接收端的预测带宽值中的最小值的情况下,将所述当前媒体数据包以所述当前带宽值发送至至少两个会议接收端。
具体地,当E小于A,B,C,D所有值中的最小值时,流媒体服务器继续按原带宽值E将媒体文件发送至分别与A,B,C,D对应的会议接收端。
S204、根据所述流控传输策略,将所述当前媒体数据包发送至所述至少两个会议接收端,以使所述至少两个会议接收端接收到的所述当前媒体数据包的丢包率小于预设值。
由于步骤S201和步骤S204与图1所示实施例中的步骤S101和S104相同。在图1中已经对步骤S101和步骤S104进行了详细描述,因此,在此不再对步骤S201和步骤S204进行赘述。
本发明实施例在引用了webrtc流控预测机制后可以预测每个端能够接收的合理码流,流媒体服务器需要根据这个码流适当的调整发言人和主席(会议发送端)的音视频数据。所以,同一份帧率、码流的数据需要适应多种状态下的会议接收端,需要在流媒体服务器上对音视频数据进行音视频转码操作,以匹配各种接收能力的会议接收端,达到各个会议接收端画面流畅的效果。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
本发明实施例提供的数据传输方法,通过流媒体服务器获取接收会议发送端发送的当前媒体数据包所需的当前带宽值;确定将当前媒体数据包发送至至少两个会议接收端的预测带宽值;根据当前带宽值与预测带宽值的对比结果,获取与对比结果相对应的流控传输策略;根据流控传输策略,将当前媒体数据包发送至至少两个会议接收端,以使至少两个会议接收端接收到的当前媒体数据包的丢包率小于预设值,利用本发明实施例,会议发送端发送的同一份帧率、码流的媒体数据包可以适应多种网络带宽状态下的会议接收端,会议接收端接收到的媒体数据包避免出现丢包现象。
本发明另一实施例提供一种数据传输装置,用于执行上述实施例提供的数据传输方法。
参照图3,示出了本发明的一种数据传输装置实施例的结构框图,该装置可以应用于流媒体服务器,具体可以包括如下模块:获取模块301、预测模块302、对比模块303和发送模块304,其中:
获取模块301用于获取接收会议发送端发送的当前媒体数据包所需的当前带宽值;
预测模块302用于确定将所述当前媒体数据包发送至至少两个会议接收端的预测带宽值;
对比模块303用于根据所述当前带宽值与所述预测带宽值的对比结果,获取与所述对比结果相对应的流控传输策略;
发送模块304用于根据所述流控传输策略,将所述当前媒体数据包发送至所述至少两个会议接收端,以使所述至少两个会议接收端接收到的所述当前媒体数据包的丢包率小于预设值。
本发明实施例提供的数据传输装置,通过流媒体服务器获取接收会议发送端发送的当前媒体数据包所需的当前带宽值;确定将当前媒体数据包发送至至少两个会议接收端的预测带宽值;根据当前带宽值与预测带宽值的对比结果,获取与对比结果相对应的流控传输策略;根据流控传输策略,将当前媒体数据包发送至至少两个会议接收端,以使至少两个会议接收端接收到的当前媒体数据包的丢包率小于预设值,利用本发明实施例,会议发送端发送的同一份帧率、码流的媒体数据包可以适应多种网络带宽状态下的会议接收端,会议接收端接收到的媒体数据包避免出现丢包现象。
本发明又一实施例对上述实施例提供的数据传输装置做进一步补充说明。
可选地,所述预测模块302用于:
将所述会议发送端前一时刻发送的第一媒体数据包发送至所述会议接收端,其中,所述第一媒体数据包包括第一时间戳;
获取所述至少两个会议接收端返回的统计数据包和丢包率,其中,所述统计数据包包括第二时间戳;
根据所述第一时间戳、所述第二时间戳和所述丢包率,分别计算将所述当前媒体数据包发送至所述至少两个会议接收端的预测带宽值。
可选地,所述对比模块303用于:
在所述当前带宽值大于至少两个会议接收端的预测带宽值中的最大值的情况下,向所述会议发送端返回调整码流指令,其中,所述调整码流指令中包括目的带宽值,所述目的带宽值为所述至少两个会议接收端的预测带宽值中的最小值,以使所述会议发送端根据所述目的带宽值,对发送所述当前媒体数据包的带宽进行调整。
可选地,所述对比模块303用于:
在所述当前带宽值大于第一预测带宽值,且小于第二预测带宽值的情况下,将所述当前媒体数据包按照所述当前带宽值发送至与所述第二预测带宽值对应的会议接收端;
对所述当前媒体数据包进行转码,获得与所述第一预测带宽值对应的转码媒体数据包;
将所述转码媒体数据包发送至与所述第一预测带宽值对应的会议接收端。
可选地,所述对比模块303用于:
将预先设置的分辨率和预先设置的帧率进行相乘,获得码率值;
将所述码率值与所述第一预测带宽值进行比较;
若所述码率值小于所述第一预测带宽值,并且所述码率值与所述第一预测带宽值的差值最小,则将所述码率值确定为目标码率值;
对所述当前媒体数据包进行转码,获得与所述目标码率值对应的所述转码媒体数据包。
可选地,所述对比模块303用于:
在所述当前带宽值小于至少两个会议接收端的预测带宽值中的最小值的情况下,将所述当前媒体数据包以所述当前带宽值发送至所述至少两个会议接收端。
需要说明的是,本实施例中各可实施的方式可以单独实施,也可以在不冲突的情况下以任意组合方式结合实施本申请不做限定。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例提供的数据传输装置,通过流媒体服务器获取接收会议发送端发送的当前媒体数据包所需的当前带宽值;确定将当前媒体数据包发送至至少两个会议接收端的预测带宽值;根据当前带宽值与预测带宽值的对比结果,获取与对比结果相对应的流控传输策略;根据流控传输策略,将当前媒体数据包发送至至少两个会议接收端,以使至少两个会议接收端接收到的当前媒体数据包的丢包率小于预设值,利用本发明实施例,会议发送端发送的同一份帧率、码流的媒体数据包可以适应多种网络带宽状态下的会议接收端,会议接收端接收到的媒体数据包避免出现丢包现象。
本发明再一实施例提供一种终端设备,用于执行上述实施例提供的数据传输方法。
图4是本发明的一种终端设备的结构示意图,如图4所示,该终端设备包括:至少一个处理器401和存储器402;
所述存储器存储计算机程序;所述至少一个处理器执行所述存储器存储的计算机程序,以实现上述实施例提供的数据传输方法。
本实施例提供的终端设备,通过流媒体服务器获取接收会议发送端发送的当前媒体数据包所需的当前带宽值;确定将当前媒体数据包发送至至少两个会议接收端的预测带宽值;根据当前带宽值与预测带宽值的对比结果,获取与对比结果相对应的流控传输策略;根据流控传输策略,将当前媒体数据包发送至至少两个会议接收端,以使至少两个会议接收端接收到的当前媒体数据包的丢包率小于预设值,利用本发明实施例,会议发送端发送的同一份帧率、码流的媒体数据包可以适应多种网络带宽状态下的会议接收端,会议接收端接收到的媒体数据包避免出现丢包现象。
本申请又一实施例提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,所述计算机程序被执行时实现上述任一实施例提供的数据传输方法。
根据本实施例的计算机可读存储介质,通过流媒体服务器获取接收会议发送端发送的当前媒体数据包所需的当前带宽值;确定将当前媒体数据包发送至至少两个会议接收端的预测带宽值;根据当前带宽值与预测带宽值的对比结果,获取与对比结果相对应的流控传输策略;根据流控传输策略,将当前媒体数据包发送至至少两个会议接收端,以使至少两个会议接收端接收到的当前媒体数据包的丢包率小于预设值,利用本发明实施例,会议发送端发送的同一份帧率、码流的媒体数据包可以适应多种网络带宽状态下的会议接收端,会议接收端接收到的媒体数据包避免出现丢包现象。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、电子设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理电子设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理电子设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理电子设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理电子设备上,使得在计算机或其他可编程电子设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程电子设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者电子设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者电子设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者电子设备中还存在另外的相同要素。
以上对本发明所提供的一种数据传输方法和一种数据传输装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (9)

1.一种数据传输方法,其特征在于,应用于流媒体服务器,所述方法包括:
获取接收会议发送端发送的当前媒体数据包所需的当前带宽值;
确定将所述当前媒体数据包发送至至少两个会议接收端的预测带宽值;
根据所述当前带宽值与所述预测带宽值的对比结果,获取与所述对比结果相对应的流控传输策略;
根据所述流控传输策略,将所述当前媒体数据包发送至所述至少两个会议接收端,以使所述至少两个会议接收端接收到的所述当前媒体数据包的丢包率小于预设值;
其中,所述根据所述当前带宽值与所述预测带宽值的对比结果,获取与所述对比结果相对应的流控传输策略,包括:
在所述当前带宽值大于所有预测带宽值时,通知会议发送端将码率和帧率按照所述预测带宽值的最小值进行降低并发送;
在所述当前带宽值小于所有预测带宽值时,以当前带宽值对所述当前媒体数据包进行发送;
在所述当前带宽值大于所述预测带宽值的最小值且小于所述预测带宽值的最大值的时,将所述当前媒体数据包按照所述当前带宽值,发送至与大于所述当前带宽值的预测带宽值对应的会议接收端,并且根据小于所述当前带宽值的预测带宽值,对所述当前媒体数据包进行转码,获得转码媒体数据包,将所述转码媒体数据包发送至与小于所述当前带宽值的预测带宽值对应的会议接收端。
2.根据权利要求1所述的方法,其特征在于,所述确定将所述媒体数据包发送至至少两个会议接收端的预测带宽值,包括:
将所述会议发送端前一时刻发送的第一媒体数据包发送至所述会议接收端,其中,所述第一媒体数据包包括第一时间戳;
获取所述至少两个会议接收端返回的统计数据包和丢包率,其中,所述统计数据包包括第二时间戳;
根据所述第一时间戳、所述第二时间戳和所述丢包率,分别计算将所述当前媒体数据包发送至所述至少两个会议接收端的预测带宽值。
3.根据权利要求1所述的方法,其特征在于,所述通知会议发送端将码率和帧率按照所述预测带宽值的最小值进行降低并发送,包括:
向所述会议发送端返回调整码流指令,其中,所述调整码流指令中包括目的带宽值,所述目的带宽值为所述至少两个会议接收端的预测带宽值中的最小值,以使所述会议发送端根据所述目的带宽值,对发送所述当前媒体数据包的带宽进行调整。
4.根据权利要求1所述的方法,其特征在于,在所述在所述当前带宽值大于预测带宽值的最小值且小于预测带宽值的最大值的情况下之后,所述方法还包括:
在所述当前带宽值大于第一预测带宽值,且小于第二预测带宽值的情况下,将所述当前媒体数据包按照所述当前带宽值发送至与所述第二预测带宽值对应的会议接收端;
对所述当前媒体数据包进行转码,获得与所述第一预测带宽值对应的转码媒体数据包;
将所述转码媒体数据包发送至与所述第一预测带宽值对应的会议接收端。
5.根据权利要求4所述的方法,其特征在于,所述对所述当前媒体数据包进行转码,获得与所述第一预测带宽值对应的转码媒体数据包,包括:
将预先设置的分辨率和预先设置的帧率进行相乘,获得码率值;
将所述码率值与所述第一预测带宽值进行比较;
若所述码率值小于所述第一预测带宽值,并且所述码率值与所述第一预测带宽值的差值最小,则将所述码率值确定为目标码率值;
对所述当前媒体数据包进行转码,获得与所述目标码率值对应的所述转码媒体数据包。
6.一种数据传输装置,其特征在于,应用于流媒体服务器,所述装置包括:
获取模块,用于获取接收会议发送端发送的当前媒体数据包所需的当前带宽值;
预测模块,用于确定将所述当前媒体数据包发送至至少两个会议接收端的预测带宽值;
对比模块,用于根据所述当前带宽值与所述预测带宽值的对比结果,获取与所述对比结果相对应的流控传输策略;
发送模块,用于根据所述流控传输策略,将所述当前媒体数据包发送至所述至少两个会议接收端,以使所述至少两个会议接收端接收到的所述当前媒体数据包的丢包率小于预设值;
所述对比模块,还用于:
在所述当前带宽值大于所有预测带宽值时,通知会议发送端将码率和帧率按照所述预测带宽值的最小值进行降低并发送;
在所述当前带宽值小于所有预测带宽值时,以当前带宽值对所述当前媒体数据包进行发送;
在所述当前带宽值大于所述预测带宽值的最小值且小于所述预测带宽值的最大值时,将所述当前媒体数据包按照所述当前带宽值,发送至与大于所述当前带宽值的预测带宽值对应的会议接收端,并且根据小于所述当前带宽值的预测带宽值,对所述当前媒体数据包进行转码,获得转码媒体数据包,将所述转码媒体数据包发送至与小于所述当前带宽值的预测带宽值对应的会议接收端。
7.根据权利要求6所述的装置,其特征在于,所述预测模块,用于:
将所述会议发送端前一时刻发送的第一媒体数据包发送至所述会议接收端,其中,所述第一媒体数据包包括第一时间戳;
获取所述至少两个会议接收端返回的统计数据包和丢包率,其中,所述统计数据包包括第二时间戳;
根据所述第一时间戳、所述第二时间戳和所述丢包率,分别计算将所述当前媒体数据包发送至所述至少两个会议接收端的预测带宽值。
8.一种终端设备,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机程序;所述至少一个处理器执行所述存储器存储的计算机程序,以实现权利要求1-5中任一项所述的数据传输方法。
9.一种计算机可读存储介质,其特征在于,该计算机可读存储介质中存储有计算机程序,所述计算机程序被执行时实现权利要求1-5中任一项所述的数据传输方法。
CN202010456996.2A 2020-05-26 2020-05-26 一种数据传输方法、装置、终端设备和存储介质 Active CN111741248B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010456996.2A CN111741248B (zh) 2020-05-26 2020-05-26 一种数据传输方法、装置、终端设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010456996.2A CN111741248B (zh) 2020-05-26 2020-05-26 一种数据传输方法、装置、终端设备和存储介质

Publications (2)

Publication Number Publication Date
CN111741248A CN111741248A (zh) 2020-10-02
CN111741248B true CN111741248B (zh) 2024-03-15

Family

ID=72646787

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010456996.2A Active CN111741248B (zh) 2020-05-26 2020-05-26 一种数据传输方法、装置、终端设备和存储介质

Country Status (1)

Country Link
CN (1) CN111741248B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112511702B (zh) * 2020-12-18 2022-06-03 咪咕文化科技有限公司 媒体帧的推送方法、服务器、电子设备和存储介质
CN113542215B (zh) * 2021-05-31 2023-04-25 浙江大华技术股份有限公司 一种提升流媒体传输性能的方法及相关装置
CN113923480A (zh) * 2021-09-27 2022-01-11 西安万像电子科技有限公司 用于图像传输的宽带确定方法、电子设备及存储介质
CN113992967B (zh) * 2021-10-25 2022-11-01 北京字节跳动网络技术有限公司 一种投屏数据传输方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101621351A (zh) * 2008-06-30 2010-01-06 华为技术有限公司 一种调节多媒体编码速率的方法、装置及系统
CN102137023A (zh) * 2011-04-14 2011-07-27 中国人民解放军空军工程大学 基于可用带宽预测的组播拥塞控制方法
CN107342848A (zh) * 2017-08-24 2017-11-10 杭州联吉技术有限公司 一种自适应码流传输方法、装置及设备
CN111083532A (zh) * 2019-12-26 2020-04-28 北京东土科技股份有限公司 一种卫星系统的音视频传输控制方法、装置及服务器

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9609040B2 (en) * 2014-02-21 2017-03-28 Dialogic Corporation Efficient bitrate adaptation in video communications over IP networks

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101621351A (zh) * 2008-06-30 2010-01-06 华为技术有限公司 一种调节多媒体编码速率的方法、装置及系统
CN102137023A (zh) * 2011-04-14 2011-07-27 中国人民解放军空军工程大学 基于可用带宽预测的组播拥塞控制方法
CN107342848A (zh) * 2017-08-24 2017-11-10 杭州联吉技术有限公司 一种自适应码流传输方法、装置及设备
CN111083532A (zh) * 2019-12-26 2020-04-28 北京东土科技股份有限公司 一种卫星系统的音视频传输控制方法、装置及服务器

Also Published As

Publication number Publication date
CN111741248A (zh) 2020-10-02

Similar Documents

Publication Publication Date Title
CN111741248B (zh) 一种数据传输方法、装置、终端设备和存储介质
US10819766B2 (en) Voice encoding and sending method and apparatus
US8527649B2 (en) Multi-stream bit rate adaptation
US10110657B2 (en) System and method for pushing live media content in an adaptive streaming environment
EP3016395B1 (en) Video encoding device and video encoding method
US20100085868A1 (en) Method and apparatus for improved multicast streaming in wireless networks
US10944973B2 (en) Estimation of video quality of experience on media servers
US8805320B2 (en) Method and system for message collision avoidance
EP2466911B1 (en) Method and device for fast pushing unicast stream in fast channel change
RU2009116472A (ru) Динамическая модификация свойств видео
CN103828324A (zh) 用于分组网络上的流媒体的按需自适应比特率管理
US8873590B2 (en) Apparatus and method for correcting jitter
US20170142029A1 (en) Method for data rate adaption in online media services, electronic device, and non-transitory computer-readable storage medium
CN110996103A (zh) 一种根据网络情况对视频编码码率进行调节的方法
KR20090089901A (ko) 역방향 링크 비디오 데이터 에러와 순방향 링크 비디오 데이터 에러를 구별하기 위한 에러 필터
KR20050038646A (ko) 멀티미디어 데이터를 스트리밍하는 방법
CN112866390B (zh) 一种数据传输方法、装置、终端设备和存储介质
JP3871661B2 (ja) マルチメディアコンテンツ受信装置及びマルチメディアコンテンツ受信方法
CN107483990B (zh) 一种流媒体传输的动态码率调节方法、装置及传输系统
CN113630576A (zh) 自适应视频流式传输系统和方法
US20100220195A1 (en) Method and system for updating video data
US8644138B2 (en) Method, computer program product, and apparatus for deriving intelligence from format change requests
CN111385081B (zh) 一种端到端的通信方法、装置、电子设备及介质
Klink et al. Video quality assessment in the DASH technique
CN114866763A (zh) 一种视频质量的评估方法、装置、终端设备和存储介质

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
GR01 Patent grant
GR01 Patent grant