CN114466206B - 直播数据处理方法及装置、电子设备及存储介质 - Google Patents

直播数据处理方法及装置、电子设备及存储介质 Download PDF

Info

Publication number
CN114466206B
CN114466206B CN202210002339.XA CN202210002339A CN114466206B CN 114466206 B CN114466206 B CN 114466206B CN 202210002339 A CN202210002339 A CN 202210002339A CN 114466206 B CN114466206 B CN 114466206B
Authority
CN
China
Prior art keywords
data
communication quality
sub
live broadcast
equipment
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
CN202210002339.XA
Other languages
English (en)
Other versions
CN114466206A (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.)
Beijing Shareit Information Technology Co Ltd
Original Assignee
Beijing Shareit 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 Beijing Shareit Information Technology Co Ltd filed Critical Beijing Shareit Information Technology Co Ltd
Priority to CN202210002339.XA priority Critical patent/CN114466206B/zh
Publication of CN114466206A publication Critical patent/CN114466206A/zh
Application granted granted Critical
Publication of CN114466206B publication Critical patent/CN114466206B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • 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/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

本公开实施例是关于一种直播数据处理方法及装置、电子设备及存储介质,其中,所述直播数据处理方法包括:检测当前第一设备的第一通信质量;获取至少一个第二设备的第二通信质量;根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备;通过所述第一设备及所述第二设备传输所述直播数据。如此,通过至少一个第二设备对第一设备上待传输的直播数据进行协同传输,分担第一设备的通信压力,可以有效提升第一设备直播数据的传输质量,从而优化直播效果。

Description

直播数据处理方法及装置、电子设备及存储介质
技术领域
本公开涉及网络技术领域,尤其涉及一种直播数据处理方法及装置、电子设备及存储介质。
背景技术
在当前各类网络通信场景下,例如高清直播等,人们对网络吞吐量和时效性的要求不断提高,不仅需要保证高质量,还需要保证较小延迟。在某些网络覆盖不全,或者网络能力不足以支撑起实际业务的情况下,容易出现丢包花帧等问题。对于这样的情况,往往只能选择低质量直播,导致大大影响用户观看体验。
发明内容
本公开实施例提供一种直播数据处理方法及装置、电子设备及存储介质。
本公开实施例第一方面提供一种直播数据处理方法,包括:
检测当前第一设备的第一通信质量;
获取至少一个第二设备的第二通信质量;
根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备;
通过所述第一设备及所述第二设备传输所述直播数据。
基于上述方案,所述获取至少一个第二设备的第二通信质量,包括:
基于所述第一设备建立局域网;
获取添加至所述局域网的至少一个第二设备的第二通信质量。
基于上述方案,所述方法还包括:
基于添加至所述局域网的第二设备的设备标识,确定所述第二设备的设备类型;
基于所述设备类型,确定具备数据传输能力的第二设备;
所述获取添加至所述局域网的至少一个第二设备的第二通信质量,包括:
获取添加至所述局域网的至少一个具备数据传输能力的第二设备的第二通信质量。
基于上述方案,所述获取至少一个第二设备的第二通信质量,包括:
若所述第一通信质量不符合第一预设条件,获取至少一个第二设备的第二通信质量;
若待传输的直播数据的数据量高于预设数据量阈值,获取至少一个第二设备的第二通信质量。
基于上述方案,所述根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备,包括:
若所述第二通信质量符合第二预设条件,则根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备。
基于上述方案,所述获取至少一个第二设备的第二通信质量,包括:
获取至少一个第二设备的第二通信质量以及剩余流量参数;
所述根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备,包括:
若所述剩余流量参数高于预设流量阈值,则根据所述剩余流量参数、所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备。
基于上述方案,所述方法还包括:
向所述第二设备发送数据分发请求;
所述根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备,包括:
若接收到所述第二设备返回的应答消息,则根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备;所述应答消息指示:允许进行数据分发。
基于上述方案,所述根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备,包括:
若所述第一通信质量符合第三预设条件,则根据所述第一通信质量及所述第二通信质量,在所述第一设备待传输的直播数据中确定分发给第一设备的第一子数据,以及分发给所述第二设备的第二子数据;
所述通过所述第一设备及所述第二设备传输所述直播数据,包括:
通过所述第一设备传输所述第一子数据,以及通过所述第二设备传输所述第二子数据。
基于上述方案,所述根据所述第一通信质量以及所述第二通信质量,在所述第一设备待传输的直播数据中确定分发给第一设备的第一子数据,以及分发给所述第二设备的第二子数据,包括:
若所述第二通信质量符合第四预设条件,则根据所述第一通信质量与所述第二通信质量的第一比对结果,在所述直播数据中确定分发给第一设备的第一子数据,以及分发给所述第二设备的第二子数据;
若所述第二通信质量不符合所述第四预设条件,则根据所述第二通信质量,在所述第一设备待传输的直播数据包含的冗余数据中,确定分发给所述第二设备的第二子数据。
基于上述方案,所述方法还包括:
若所述第一通信质量不符合所述第三预设条件,则在所述第一设备待传输的直播数据包含的冗余数据中,确定分发给所述第一设备的第一子数据;根据多个所述第二通信质量之间的第二比对结果,在所述直播数据中确定分发给每一所述第二设备的第二子数据;
所述通过所述第一设备及所述第二设备传输所述直播数据,包括:
通过所述第一设备传输所述第一子数据,以及通过多个所述第二设备传输所述第二子数据。
基于上述方案,所述根据多个所述第二通信质量之间的第二比对结果,在所述直播数据中确定分发给每一所述第二设备的第二子数据,包括:
根据多个所述第二通信质量之间的第二比对结果确定多个所述第二通信质量的高低排序;
按所述高低排序,在所述直播数据中确定分发给每一所述第二设备的第二子数据。
基于上述方案,所述方法还包括:
获取所述第二设备的子数据传输状况;
若所述子数据传输状况表征所述第二设备的可用带宽高于预设带宽阈值,则增大分发给所述第二设备的第二子数据的数据量;
若所述子数据传输状况表征所述第二设备出现丢帧,则减小分发给所述第二设备的第二子数据的数据量。
基于上述方案,所述检测当前第一设备的第一通信质量,包括:
基于丢包率、往返传输时延、丢帧数以及可用带宽中的至少之一,确定当前第一设备的第一通信质量。
本公开实施例第二方面提供一种直播数据处理装置,包括:
检测单元,用于检测当前第一设备的第一通信质量;
获取单元,用于获取至少一个第二设备的第二通信质量;
分发单元,用于根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备;
传输单元,用于通过所述第一设备及所述第二设备传输所述直播数据。
基于上述方案,所述获取单元,具体用于:
基于所述第一设备建立局域网;
获取添加至所述局域网的至少一个第二设备的第二通信质量。
基于上述方案,所述获取单元,具体用于:
基于添加至所述局域网的第二设备的设备标识,确定所述第二设备的设备类型;
基于所述设备类型,确定具备数据传输能力的第二设备;
获取添加至所述局域网的至少一个具备数据传输能力的第二设备的第二通信质量。
基于上述方案,所述获取单元,具体用于:
若所述第一通信质量不符合第一预设条件,获取至少一个第二设备的第二通信质量;
若待传输的直播数据的数据量高于预设数据量阈值,获取至少一个第二设备的第二通信质量。
基于上述方案,所述分发单元,具体用于:
若所述第二通信质量符合第二预设条件,则根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备。
基于上述方案,所述获取单元,具体用于:
获取至少一个第二设备的第二通信质量以及剩余流量参数;
所述分发单元,具体用于:
若所述剩余流量参数高于预设流量阈值,则根据所述剩余流量参数、所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备。
基于上述方案,所述装置还包括:
请求单元,用于向所述第二设备发送数据分发请求;
所述分发单元,具体用于:
若接收到所述第二设备返回的应答消息,则根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备;所述应答消息指示:允许进行数据分发。
基于上述方案,所述分发单元,具体用于:
若所述第一通信质量符合第三预设条件,则根据所述第一通信质量及所述第二通信质量,在所述第一设备待传输的直播数据中确定分发给第一设备的第一子数据,以及分发给所述第二设备的第二子数据;
所述传输单元,具体用于:
通过所述第一设备传输所述第一子数据,以及通过所述第二设备传输所述第二子数据。
基于上述方案,所述分发单元,具体用于:
若所述第二通信质量符合第四预设条件,则根据所述第一通信质量与所述第二通信质量的第一比对结果,在所述直播数据中确定分发给第一设备的第一子数据,以及分发给所述第二设备的第二子数据;
若所述第二通信质量不符合所述第四预设条件,则根据所述第二通信质量,在所述第一设备待传输的直播数据包含的冗余数据中,确定分发给所述第二设备的第二子数据。
基于上述方案,所述分发单元,还用于:
若所述第一通信质量不符合所述第三预设条件,则在所述第一设备待传输的直播数据包含的冗余数据中,确定分发给所述第一设备的第一子数据;根据多个所述第二通信质量之间的第二比对结果,在所述直播数据中确定分发给每一所述第二设备的第二子数据;
所述传输单元,具体用于:
通过所述第一设备传输所述第一子数据,以及通过多个所述第二设备传输所述第二子数据。
基于上述方案,所述分发单元,具体用于:
根据多个所述第二通信质量之间的第二比对结果确定多个所述第二通信质量的高低排序;
按所述高低排序,在所述直播数据中确定分发给每一所述第二设备的第二子数据。
基于上述方案,所述装置还包括:
调节单元,用于获取所述第二设备的子数据传输状况;若所述子数据传输状况表征所述第二设备的可用带宽高于预设带宽阈值,则增大分发给所述第二设备的第二子数据的数据量;若所述子数据传输状况表征所述第二设备出现丢帧,则减小分发给所述第二设备的第二子数据的数据量。
本公开实施例第三方面提供一种电子设备,包括:
用于存储处理器可执行指令的存储器;
处理器,与所述存储器连接;
其中,所述处理器被配置为执行如前述任意技术方案提供的直播数据处理方法。
本公开实施例第四方面提供一种非临时性计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现前述任意技术方案提供的直播数据处理方法。
本公开的实施例提供的直播数据处理方法,包括:检测当前第一设备的第一通信质量;获取至少一个第二设备的第二通信质量;根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备;通过所述第一设备及所述第二设备传输所述直播数据。如此,通过至少一个第二设备对第一设备上待传输的直播数据进行协同传输,分担第一设备的通信压力,从而可以有效提升第一设备直播数据的传输质量。在此基础上,根据第一设备和第二设备的通信质量分发直播数据,又可以进一步提高数据协同传输的灵活性,更好地优化直播质量。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是本公开实施例示出的一种直播数据处理方法的流程示意图;
图2是本公开实施例示出的一种直播数据处理装置的结构示意图;
图3是本公开实施例示出的相关技术中直播数据传输方式的流程示意图;
图4是本公开实施例示出的直播数据传输方式的流程示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
如图1所示,本公开实施例提供一种直播数据处理方法,包括:
S110:检测当前第一设备的第一通信质量;
S120:获取至少一个第二设备的第二通信质量;
S130:根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备;
S140:通过所述第一设备及所述第二设备传输所述直播数据。
在本公开实施例中,第一设备可以为生成并需要传输直播数据的设备,例如主播等直播发起者的手机、电脑等终端设备。
第二设备可以为第一设备周边或者一定范围内的其他终端设备,例如与第一设备的位置距离在预设距离内的处于空闲状态的设备等。其中,空闲状态可以包括当前未进行数据传输任务,或者设备当前不存在待传输的数据或待传输数据量低于一定数据量阈值,或者当前数据传输占用流量低于一定流量阈值等。
这里,第二设备可以为具有数据传输能力的设备,或者,也可以为安装有第一设备待传输的直播数据对应的直播应用程序的设备。
示例性的,第二设备可以为与第一设备预设有绑定关系的设备,绑定关系的关系信息可以记录第一设备的设备信息以及与第一设备绑定的至少一个第二设备的设备信息。例如,在第一设备中记录的至少一个绑定的第二设备,其中,绑定关系可以记录在第一设备待传输的直播数据对应的应用程序中,绑定关系也可以记录在第一设备和/或第二设备中。在第一设备的第一通信质量低于一定标准时,绑定关系可以通过提示消息在第一设备显示。
这里,第一通信质量和第二通信质量,可以为当前时刻之前的预设时段内的平均通信质量,也可以为设备进行上一次数据传输对应的通信质量等。
在一个实施例中,第一通信质量和第二通信质量,可以通过设备当前连接的数据网络的信号强度或网络吞吐率、当前时刻之前的预设时段内的数据传输丢包率、所述预设时段内的数据传输往返时延(Round-Trip Time,rtt)、所述预设时段内的丢帧数量以及预测带宽中的一种或多种来表征,和/或通过预设计算方式将上述参数中的一种或多种转换为通信质量参数来表征。
这里,预测带宽可通过瓶颈带宽与往返传输时延(Bottleneck Bandwidth andRound-trip propagation time,BBR)算法来确定。预设计算方式可以为根据不同参数对应的不同权重值,对至少一个参数进行加权计算得到通信质量参数。
在另一个实施例中,获取至少一个第二设备的第二通信质量,可包括:
确定处于空闲状态的设备为第二设备;
获取至少一个第二设备的第二通信质量。
处于空闲状态可以包括设备当前未进行数据传输任务,或者,设备当前或之后的一定时长内不存在待传输的数据,或者,设备待传输数据量或正在传输的数据量低于一定阈值,或者,设备通信资源占用率低于一定阈值。其中,通信资源可包括数据网络或无线网络的可用带宽,或者用于传输数据的信道可用资源等。
在一个实施例中,步骤S130可包括:
根据多个所述第二通信质量之间的比对结果,确定分发给第一设备的第一数据量以及分发给每一第二设备的第二数据量;
根据所述第一数据量及第二数据量将第一设备待传输的直播数据分发给第一设备和多个第二设备。
这里,多个第二通信质量的比对结果,可以包括确定在利用同等通信资源的情况下,多个第二设备的可传输数据量的大小排序,或者,对第二通信质量中一个或多个参数的大小排序,或者对第二通信质量对应的通信质量参数的大小排序等。
在另一个实施例中,步骤S130也可以包括:根据智能选路算法、第一通信质量以及第二通信质量,将第一设备待传输的直播数据进行分配,并根据分配结果将所述直播数据分发给第一设备和至少一个第二设备。这里,智能选路算法用于根据不同传输通路的传输质量(即设备的通信质量),确定分配给每一传输通路(即设备)的数据量。
在一个实施例中,步骤S130可包括:
若第一通信质量不符合第三预设条件,则根据至少一个第二通信质量之间的比对结果,确定分发给至少一个第二设备的数据量;
根据数据量将第一设备待传输的直播数据分发给至少一个第二设备。
这里,第三预设条件可以表征通信质量的下限值,当第一通信质量不符合第三预设条件时表明第一设备的数据传输能力不足以用于传输直播数据。因此可以仅通过至少一个第二设备传输待传输的直播数据,即根据至少一个第二通信质量的比对结果,将直播数据分配给至少一个第二设备。
在另一个实施例中,还可以将第二通信质量不符合预设通信质量条件的第二设备删除,例如丢包率过高、rtt过大或者预测带宽过低的第二设备,不作为分发直播数据的设备。S130可包括:根据第一通信质量以及第二通信质量,将第一设备待传输的直播数据分发给通信质量符合预设通信质量条件的至少一个第二设备。
在又一个实施例中,通过第一设备及第二设备传输直播数据,可以为在确认所有分发的直播数据均已被对应的第二设备成功接收后,基于时钟同步或者基于预设传输时刻,通过第一设备及第二设备共同传输直播数据。示例性地,通过接收第二设备在成功接收到分发的直播数据后返回的反馈信息,确认第二设备成功接收直播数据。
这里,预设传输时刻可以为第一设备向第二设备分发直播数据时携带在直播数据中发送给第二设备的,用于指示第二设备开始传输直播数据的时刻。例如,预设传输时刻可以指示待传输直播数据的传输时刻,也可以指示第二设备在成功接收到分发的直播数据后的预设时长后开始传输直播数据。
在一个实施例中,第一设备可以通过建立局域网确定连接至该局域网的其它设备为第二设备,也可以为通过扫描一定距离范围内的其它设备确定其中的第二设备。其中,扫描一定距离范围内的其它设备可以包括:在一定距离范围内广播发送第一消息帧;若接收到其它设备响应于第一消息帧返回的第二消息帧,确定该设备为第二设备。也可以包括:基于待传输的直播数据所在的应用程序中记录的已安装该应用程序的设备位置信息,确定处于一定距离范围内的其它设备为第二设备。
第一设备可以向第二设备发送访问请求,若接收到第二设备反馈的表征同意访问的应答信息,则获取第二设备的第二通信质量。
如此,通过至少一个第二设备对第一设备上待传输的直播数据进行分发,并且协同传输,实现对第一设备直播数据传输任务的助力,分担第一设备的通信压力。因此,可以有效提升第一设备直播数据的传输质量与速度。在此基础上,根据第一设备和第二设备的通信质量分发直播数据,又可以更好地结合各设备的实际通信能力实现直播数据的动态分发,进一步提高直播数据协同传输的灵活性,更好地优化直播质量。
在一些实施例中,所述S120,可包括:
基于所述第一设备建立局域网;
获取添加至所述局域网的至少一个第二设备的第二通信质量。
在本公开实施例中,局域网中可以包含第一设备与至少一个第二设备,其中,第一设备与至少一个第二设备可以作为无线接入点(Access Point,AP)接入局域网。第一设备可以作为第二设备的站点,通过第二设备向网络发送直播数据。
在一个实施例中,至少一个第二设备可以通过局域网向第一设备提供所需获取的第二通信质量,例如,在连接至局域网之后主动发送距离当前时刻预设时段内的第二通信质量,或者,第一设备在第二设备连接至局域网后向第二设备获取预设时段内的第二通信质量。
在另一个实施例中,局域网可以用于第一设备向第二设备分发直播数据,例如,第一设备通过局域网向局域网中连接的多个第二设备分发直播数据。
在一个实施例中,第二设备可以获取局域网的网络信息,例如待利用局域网执行的业务信息等。第二设备可以根据局域网的网络信息确定是否接入局域网,或者,也可以基于第一设备发送的访问请求,确定是否允许访问第二通信质量或者接入局域网。
这里,访问请求可以用于携带需要获取的第二通信质量的相关参数,和/或,需要第二设备接入的局域网ID及密钥等信息。在第二设备接入局域网之后,第二通信质量可以通过局域网发送给第一设备,第一设备可以通过局域网将直播数据分发给第二设备。
在又一个实施例中,第一设备获取添加至局域网的第二设备的第二通信质量后,还可以基于第二通信质量确定第二设备是否符合第一设备的直播数据传输需求,例如,是否符合预设通信质量条件等。
若第二通信质量不符合预设通信质量条件,则第一设备可以将第二设备从局域网中删除,或者,基于通信质量符合预设通信质量条件的至少一个第二设备建立一个新的局域网,并通过新的局域网向至少一个第二设备分发待传输的直播数据。
在一些实施例中,所述方法还包括:
基于添加至所述局域网的第二设备的设备标识,确定所述第二设备的设备类型;
基于所述设备类型,确定具备数据传输能力的第二设备;
所述获取添加至所述局域网的至少一个第二设备的第二通信质量,包括:
获取添加至所述局域网的至少一个具备数据传输能力的第二设备的第二通信质量。
在本公开实施例中,设备标识可以包含设备的固件信息、系统信息、设备类型、通信协议等信息中的一个或多个,其中,设备类型可以为手机或平板电脑等类型。
在一个实施例中,基于设备类型确定具备数据传输能力的第二设备,可以为若设备类型指示第二设备为具备数据网络或者具备无线网络连接能力,或者已开启数据网络或已连接无线网络,则确定第二设备为具备数据传输能力的第二设备。
在另一个实施例中,若设备类型表征第二设备的设备通信协议或者可用通信资源与第一设备相同或部分相同,则确定第二设备为具备数据传输能力的第二设备。相应地,若设备类型表征第二设备与第一设备的设备类型相同,则确定第二设备为具备数据传输能力的第二设备。
如此,通过设备标识对第二设备进行初步筛选,从而可以有效地筛选掉不具备数据传输能力的无效设备,降低第一设备分发直播数据出现的误差。
在一些实施例中,所述S120,可包括:
若所述第一通信质量不符合第一预设条件,获取至少一个第二设备的第二通信质量;
若待传输的直播数据的数据量高于预设数据量阈值,获取至少一个第二设备的第二通信质量。
在本公开实施例中,当第一设备的当前通信资源或通信能力无法支撑需要传输的直播数据时,表明需要其他设备的协同支持,则开始获取至少一个第二设备的第二通信质量。
这里,第一预设条件可以表征第一设备传输直播数据所需的最低通信质量,例如第一设备的最低rtt、最低网络吞吐率等。
在一个实施例中,第一通信质量不符合第一预设条件,可以为第一设备的网络吞吐率低于第一预设条件,或者信号强度低于第一预设条件,或者当前时刻之前的预设时段内数据传输丢包率、rtt、丢帧数量以及预测带宽中的至少一个低于第一预设条件等。
在另一个实施例中,当待传输的直播数据的数据量过高时,也往往存在通信质量较差的情况。例如,待传输直播数据的数据量高于当前第一通信质量所能承受的预设数据量阈值时,表明第一设备需要其它设备协同传输该直播数据。
在又一个实施例中,待传输的直播数据的数据量可以为当前时刻之后一定时长内待传输的直播数据的数据量。还可以在当前直播已进行时长超过一定时长后,确定第一通信质量是否符合第一预设条件,和/或确定待传输的直播数据的数据量是否高于预设数据量阈值。如此,可以确定当前直播进入稳定传输状态后,才开始进行通信质量的检测,减少直播刚刚开始存在的通信质量波动造成的干扰。
在一些实施例中,所述S130,可包括:
若所述第二通信质量符合第二预设条件,则根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备。
在本公开实施例中,第二预设条件可以表征需要第二设备承担的数据传输任务对应的最低通信质量,例如,可以表征最低网络吞吐率、最低rtt、最低丢包率等参数。这里,由于第二设备作为第一设备的助力设备,往往无需承担过多的直播数据传输任务,因此第二预设条件可以低于第一预设条件,即第二预设条件表征的最低通信质量可以低于第一预设条件表征的对应的通信质量。
在一个实施例中,第二预设条件也可以根据第一通信质量动态调整,例如,当第一通信质量过低,可以提高第二预设条件,从而通过通信质量更高的第二设备分担更多的待传输直播数据。
若第二通信质量符合第二预设条件,表明第二设备的通信质量足够可以用于进行当前第一设备的直播数据协同传输任务。
在一个实施例中,若第二通信质量符合第二预设条件,则可以通过包含第一设备和第二设备的局域网,或者通过点对点直接发送的方式将待传输的直播数据分发给第二设备。
这里,根据第一通信质量及第二通信质量,将第一设备待传输的直播数据分发给第二设备,可以为根据第一通信质量与第一预设条件之间的差值、和/或第二通信质量与第二预设条件之间的差值,将直播数据分发给第二设备。例如,第二通信质量与第二预设条件差距较大时,可以减少分发给该第二设备的直播数据。
在一些实施例中,所述S120,可包括:
获取至少一个第二设备的第二通信质量以及剩余流量参数;
所述S130,可包括:
若所述剩余流量参数高于预设参数阈值,则根据所述剩余流量参数、所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备。
在本公开实施例中,第二设备的剩余流量参数可与第二通信质量共同发送至第一设备,其中,剩余流量参数可以表征第二设备在预设时间段内的剩余可用流量值或者剩余可用流量百分比等。
示例性的,剩余流量参数可以根据第二设备预设时间段内的全部可用流量参数和已使用流量参数确定,或者,可以根据第二设备未来一定时长内的可用流量参数确定。例如,预设时间段可以为当前时刻至当前所在月份的最后一天之间的时间段,或者也可以为当前时刻至当天的24:00之间的时间段等。
在一个实施例中,剩余流量参数可表征预设时间段内第二设备的剩余可用流量值,例如根据第二设备的流量套餐确定预设时间段内的全部可用流量值,以及当前已使用流量值,进而计算预设时间段内的剩余可用流量值。
这里,剩余可用流量值还可根据当月剩余流量值以及当月剩余天数,计算每天可用的剩余流量平均值,进而确定预设时间段的剩余可用流量值。
在另一个实施例中,剩余流量参数可表征预设时间段内第二设备的剩余可用流量百分比。例如,根据第二设备的流量套餐确定剩余可用流量占全部流量的60%,或者,剩余流量参数也可以为根据全部剩余流量以及当月剩余天数,确定预设时间段内剩余可用流量占全部剩余流量的百分比。
在一个实施例中,预设流量阈值可以表征第二设备在预设时间段内的可用流量值上限值,或者可用流量百分比上限值。预设流量阈值可以根据第二设备的全部可用流量值确定,例如,根据预设时间段在当月的时间位置以及当月的全部可用流量值,确定预设流量阈值为10G、20G等。
在另一个实施例中,预设流量阈值还可以根据第二设备的剩余流量百分比确定,例如可以为剩余流量的50%。此时若剩余流量参数高于50%,则表明第二设备可以用于进行直播数据分发传输。
在又一个实施例中,预设流量阈值还可以根据预设时间段确定,例如预设时间段为当前时刻起的1天,则根据当月剩余天数确定预设时间段的预设流量阈值可以为(剩余天数/当月总天数)×100%。若剩余流量参数表征的剩余可用流量百分比高于预设流量阈值,则表明第二设备可以用于进行直播数据分发传输。
在一个实施例中,预设流量阈值可以根据待传输的直播数据的数据量确定,例如,预设流量阈值可以表征用于传输待传输的直播数据所需的流量参数下限值。
在另一个实施例中,预设流量阈值的确定,可以根据历史传输过的直播数据的数据量和消耗的流量参数,确定数据量与流量参数之间的对应关系,进而结合待传输的直播数据的数据量,确定预设流量阈值。
在又一个实施例中,可以根据剩余流量参数和第二通信质量,确定第二设备可传输的直播数据的数据量,例如根据前述数据量与流量参数之间的对应关系和剩余流量参数,或者,根据所述对应关系和剩余流量参数的预设比例(例如80%等),确定第二设备可承担的数据量。基于此,可将待传输的直播数据分发给第二设备。
在一些实施例中,所述方法还包括:
向所述第二设备发送数据分发请求;
所述S130,可包括:
若接收到所述第二设备返回的应答消息,则根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备;所述应答消息指示:允许进行数据分发。
在本公开实施例中,第一设备可以在获取第二设备的第二通信质量,并确定第二通信质量满足通信质量要求后,例如第二通信质量符合第二预设条件,则可以向第二设备发送数据分发请求,用于确认第二设备是否可以用于传输分发的直播数据。
在一个实施例中,数据分发请求可以指示待分发的直播数据的数据量,和/或直播数据待传输的时刻或时间段,从而可用于供第二设备确定是否同意接收分发的直播数据并进行传输。
这里,将待传输的直播数据分发给所述第二设备,可以包括:通过第一设备建立的局域网向第二设备分发直播数据,或者蓝牙连接第二设备后通过蓝牙向第二设备分发直播数据,或者将第二设备的设备信息携带在对应的分发的直播数据中,并将至少一份分发的直播数据广播,由第二设备根据设备信息接收对应的直播数据等。
在另一个实施例中,若接收到第二设备基于数据分发请求返回的拒绝消息,则取消向第二设备分发直播数据,和/或,将第二设备从局域网中删除。
在另一个实施例中,若发送数据分发请求后的第一预设时长内未接收到第二设备返回的应答消息,可再次发送数据分发请求,其中,再次发送的数据分发请求可用于指示更新后的待分发直播数据的数据量或待传输时刻或时间段等。
在又一个实施例中,若发送数据分发请求后的第二预设时长内,或者,若再次发送数据分发请求后的第一预设时长内仍未接收到应答消息,则默认第二设备无法进行数据分发传输,则取消向第二设备分发直播数据,和/或,将第二设备从局域网中删除。其中,第二预设时长可以大于第一预设时长,例如,可以为第一预设时长的2倍等。
如此,基于数据分发请求和应答消息,可以在进行直播数据分发传输前对第二设备的可用性进行确认,从而进一步提高直播数据传输的可靠性。
在一些实施例中,所述S130,可包括:
若所述第一通信质量符合第三预设条件,则根据所述第一通信质量及所述第二通信质量,在所述第一设备待传输的直播数据中确定分发给第一设备的第一子数据,以及分发给所述第二设备的第二子数据;
所述S140,可包括:
通过所述第一设备传输所述第一子数据,以及通过所述第二设备传输所述第二子数据。
在本公开实施例中,第三预设条件可以表征通信质量的下限值,当第一通信质量符合第三预设条件时,表明第一设备的数据传输能力可以用于传输直播数据,但仍需第二设备助力。因此可以根据第一通信质量与第二通信质量,为第一设备和第二设备分配子数据。
在一个实施例中,根据第一通信质量及第二通信质量可以为根据第一通信质量与第二通信质量的第一比对结果,例如比对第一通信质量中指示的至少一个参数与第二通信质量中对应的参数,也可以通过一定的权重比将第一通信质量及第二通信质量中的多个参数进行加权计算,并比对计算结果。
这里的参数可以为预设时段内的参数,可以包括:丢包率、rtt、丢帧数量、预测带宽、网络吞吐率以及信号强度中的至少一个,也可以为预设时段内上述每一种参数的平均值,例如:平均丢包率、平均rtt、平均丢帧数量、平均预测带宽、平均网络吞吐率以及平均信号强度等。
在一个实施例中,第一通信质量与第二通信质量的比对结果,可以为第二通信质量中至少一个参数与第一通信质量中对应参数的比值或差值,也可以为多个第二通信质量之间比例关系,例如按通信质量高低进行权重分配,得到的第一通信质量和/或每一第二通信质量对应的权重值。
在另一个实施例中,根据第一比对结果,在第一设备待传输的直播数据中确定分发给第一设备的第一子数据,以及分发给每一第二设备的第二子数据,可以为根据第一通信质量与第二通信质量之间的比值或差值,或者,也可以为根据第一通信质量和/或至少一个第二通信质量对应的权重值,确定第一子数据和至少一个第二子数据。
示例性的,第一通信质量与多个第二通信质量对应的权重值分别为2:1:1:2,则分发给第一设备的第一子数据为待传输的直播数据中的2/6,向多个第二设备分发的第二子数据分别为待传输的直播数据中的1/6、1/6以及2/6。
在又一个实施例中,将第二子数据发送给第二设备,可以为通过第一设备建立的局域网发送给第二设备,也可以为通过第一设备待传输的直播数据所在的应用程序向第二设备中对应的应用程序分发第二子数据。
如此,基于第一设备与第二设备的通信质量的比对情况,可以更加准确地确定第一设备需要传输的第一子数据以及每个第二设备需要传输的第二子数据。因此,既可以合理分配待传输的直播数据,不会因子数据的数据量超出通信质量对应的可承载数据量,导致第二设备传输质量下降,又可以充分利用第二设备的传输资源,更好地优化直播数据传输质量。
在一些实施例中,根据所述第一通信质量以及所述第二通信质量,在所述第一设备待传输的直播数据中确定分发给第一设备的第一子数据,以及分发给所述第二设备的第二子数据,包括:
若所述第二通信质量符合第四预设条件,则根据所述第一通信质量与所述第二通信质量的第一比对结果,在所述直播数据中确定分发给第一设备的第一子数据,以及分发给所述第二设备的第二子数据;
若所述第二通信质量不符合所述第四预设条件,则根据所述第二通信质量,在所述第一设备待传输的直播数据包含的冗余数据中,确定分发给所述第二设备的第二子数据。
在本公开实施例中,第四预设条件表征助力设备即第二设备可用于助力传输直播数据的通信质量最低标准,若第二设备不符合第四预设条件,表明第二设备可用于助力,但通信质量较差,可以认为第二设备为非优质助力设备。此时,可以仅为第二设备分配较少的第二子数据,或者,仅将待传输的直播数据中的前向纠错(Forward Error/Erasure Correction,fec)冗余数据分配给第二设备进行传输。
在一个实施例中,若存在多个第二设备的第二通信质量不符合第四预设条件,可以根据多个第二通信质量向多个第二设备分发fec冗余数据,或者,选择其中第二通信质量最低的第二设备,为其分配fec冗余数据,并根据第一通信质量与第二通信质量的比对结果,向剩下的第二设备分发待传输的直播数据。
在另一个实施例中,若第二通信质量不符合第四预设条件,可以按预设比例向第二设备分发待传输的直播数据,例如,仅将待传输直播数据的5%或10%作为第二子数据分发给该第二设备。
在又一个实施例中,若第二通信质量符合第四预设条件,表明第二设备的网络质量较好,可以认为第二设备为优质助力设备。此时,可以根据第二通信质量分发第二子数据,例如,向第二通信质量越高的第二设备分发的第二子数据的数据量越大,或者,根据第二通信质量与第一通信质量的比较关系,向第二通信质量分发第二子数据。
如此,基于第四预设条件进一步衡量第二设备的通信质量,从而为通信质量较差的第二设备分配较少的待传输数据,降低子数据的数据量过大对数据传输效率的影响,进一步提高直播数据分发传输的灵活性和高效性。
在一些实施例中,所述方法还包括:
若所述第一通信质量不符合所述第三预设条件,则在所述第一设备待传输的直播数据包含的冗余数据中,确定分发给所述第一设备的第一子数据;根据多个所述第二通信质量之间的第二比对结果,在所述直播数据中确定分发给每一所述第二设备的第二子数据;
所述通过所述第一设备及所述第二设备传输所述直播数据,包括:
通过所述第一设备传输所述第一子数据,以及通过多个所述第二设备传输所述第二子数据。
在本公开实施例中,若第一通信质量不符合所述第三预设条件,表明第一设备的通信质量已经不足以支撑直播数据的传输,则此时将fec冗余数据或者部分fec冗余数据通过第一设备传输,可以更好地降低第一通信质量对直播效果的影响。
在一个实施例中,多个第二通信质量之间的第二比对结果,可以为例如比对多个第二通信质量中指示的至少一项参数,也可以通过一定的权重比分别将多个第二通信质量中的多项参数进行加权计算,并将每一第二通信质量对应的计算结果进行比对。
这里的参数可以为预设时段内的参数,可以包括:丢包率、rtt、丢帧数量、预测带宽、网络吞吐率以及信号强度中的至少一个,也可以为预设时段内上述每一种参数的平均值,例如:平均丢包率、平均rtt、平均丢帧数量、平均预测带宽、平均网络吞吐率以及平均信号强度等。
在一个实施例中,多个第二通信质量的第二比对结果,可以为不同第二通信质量中一个参数之间的比值或差值,也可以为多个第二通信质量之间的权重关系,例如按通信质量高低进行权重分配,得到的每一第二通信质量对应的权重值。
在另一个实施例中,根据第二比对结果,在第一设备待传输的直播数据中确定分发给每一第二设备的第二子数据,可以为根据第二通信质量之间的比值或差值,或者,也可以为根据至少一个第二通信质量对应的权重值,确定每一第二设备对应的第二子数据。
示例性的,多个第二通信质量对应的权重值分别为2:1:1:2,则分发给多个第二设备的第二子数据分别为待传输的直播数据中的2/6、1/6、1/6以及2/6。
在又一个实施例中,将第二子数据发送给第二设备,可以为通过第一设备建立的局域网发送给第二设备,也可以为通过第一设备待传输的直播数据所在的应用程序向第二设备中对应的应用程序分发第二子数据。
如此,基于多个第二设备的通信质量的比对情况,可以更加准确地确定每个第二设备需要传输的第二子数据。因此,在第一设备无法用于传输直播数据时,既可以合理分配待传输的直播数据,不会因子数据的数据量超出通信质量对应的可承载数据量,导致第二设备传输质量下降,又可以充分利用第二设备的传输资源,更好地优化直播数据传输质量。
在一些实施例中,所述根据多个所述第二通信质量之间的第二比对结果,在所述直播数据中确定分发给每一所述第二设备的第二子数据,包括:
根据多个所述第二通信质量之间的第二比对结果确定多个所述第二通信质量的高低排序;
按所述高低排序,在所述直播数据中确定分发给每一所述第二设备的第二子数据。
在本公开实施例中,第二通信质量的高低排序,可以表征第二设备可承载传输的直播数据的数据量,从而可以精准地为不同的第二设备分发直播数据的第二子数据。
在一个实施例中,第二通信质量的高低排序,可以为按第二通信质量中的一个参数的排序情况确定,例如根据信号强度的大小排序确定第二通信质量的高低排序等。
在另一个实施例中,第二通信质量的高低排序,也可以为按一定的权重系数对每一第二通信质量中的多个参数进行加权计算,得到表征第二通信质量的质量参数。基于此,可根据质量参数的大小排序确定第二通信质量的高低排序。
在又一个实施例中,第二通信质量的高低排序,还可以为分别比对第二通信质量的多个参数,将每一参数按从大到小的顺序排序。进而根据每一参数的排列序号以及参数对应的权重值,对第二通信质量中的多个参数排序进行加权计算,得到第二通信质量的质量参数,并根据质量参数的大小排序确定第二通信质量的高低排序。
示例性的,一个第二设备的第二通信质量中,丢包率在多个第二通信质量的丢包率排序中顺序为第1,rtt对应的排列顺序为第3,丢帧数量对应的排列顺序为第5,预测带宽对饮的排列顺序为第2。进一步地,丢包率对应的权重为a,rtt对应的权重为b,丢帧数量对应的权重为c,预测带宽对应的权重为d,则该第二设备的第二通信质量的质量参数可以表示为1×a+3×b+5×c+2×d。
在一些实施例中,所述方法还包括:
获取所述第二设备的子数据传输状况;
若所述子数据传输状况表征所述第二设备的可用带宽高于预设带宽阈值,则增大分发给所述第二设备的第二子数据的数据量;
若所述子数据传输状况表征所述第二设备出现丢帧,则减小分发给所述第二设备的第二子数据的数据量。
在本公开实施例中,根据第二设备对分发的第二子数据的传输状况,可以对下一次通过第二设备传输的第二子数据的数据量进行调整。其中,子数据传输状况可以为第二设备距离当前时刻最近的上一次传输完成的第二子数据的传输状况,也可以为当前时刻之前一定时长内的第二子数据传输状况。
在一个实施例中,子数据传输状况可以表征传输完成后的可用带宽,例如,可以为通过BBR算法计算得到的预测带宽等。若可用带宽高于预设带宽阈值,表明第二设备当前传输第二子数据的状况良好,则可以在上一次传输完成的第二子数据的数据量基础上,增加下一次分发给第二设备的第二子数据的数据量。
在另一个实施例中,若可用带宽高于预设带宽阈值,可以基于该可用带宽以及上一次传输完成的子数据的数据量,确定下一次分发给第二设备的第二子数据的数据量。
在又一个实施例中,若子数据传输状况表征出现了丢帧,或者丢包率高于丢包率阈值,或者rtt高于rtt阈值,或者丢帧数量高于丢帧数阈值等情况,可认为第二设备承担的数据传输压力过大。因而可以在下一次分发第二子数据时减小第二子数据的数据量。
在一个实施例中,若子数据传输状况表征第二设备出现丢帧,可以根据丢帧数量以及上次分发的子数据的数据量,确定下一次分发给第二设备的第二子数据的数据量。
如此,可以基于第二设备的数据传输状况,确定第二设备传输的第二子数据的数据量是否匹配其第二通信质量,从而可以灵活且精准地调整后续分发给第二设备的第二子数据的数据量,更好地优化直播数据传输效果。
在一些实施例中,所述S110,可包括:
基于丢包率、往返传输时延、丢帧数以及可用带宽中的至少之一,确定当前第一设备的第一通信质量。
这里,可用带宽可以为基于第一设备的历史数据传输状况确定的当前可用带宽,也可以为基于BBR算法等计算得到的预测带宽。
如图2所示,本公开实施例提供一种直播数据处理装置,包括:
检测单元10,用于检测当前第一设备的第一通信质量;
获取单元20,用于获取至少一个第二设备的第二通信质量;
分发单元30,用于根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备;
传输单元40,用于通过所述第一设备及所述第二设备传输所述直播数据。
在一些实施例中,所述获取单元20,具体用于:
基于所述第一设备建立局域网;
获取添加至所述局域网的至少一个第二设备的第二通信质量。
在一些实施例中,所述获取单元20,具体用于:
基于添加至所述局域网的第二设备的设备标识,确定所述第二设备的设备类型;
基于所述设备类型,确定具备数据传输能力的第二设备;
获取添加至所述局域网的至少一个具备数据传输能力的第二设备的第二通信质量。
在一些实施例中于,所述获取单元20,具体用于:
若所述第一通信质量不符合第一预设条件,获取至少一个第二设备的第二通信质量;
若待传输的直播数据的数据量高于预设数据量阈值,获取至少一个第二设备的第二通信质量。
在一些实施例中,所述分发单元30,具体用于:
若所述第二通信质量符合第二预设条件,则根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备。
在一些实施例中,所述获取单元20,具体用于:
获取至少一个第二设备的第二通信质量以及剩余流量参数;
所述分发单元30,具体用于:
若所述剩余流量参数高于预设流量阈值,则根据所述剩余流量参数、所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备。
在一些实施例中,所述装置还包括:
请求单元,用于向所述第二设备发送数据分发请求;
所述分发单元30,具体用于:
若接收到所述第二设备返回的应答消息,则根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备;所述应答消息指示:允许进行数据分发。
在一些实施例中,所述分发单元30,具体用于:
若所述第一通信质量符合第三预设条件,则根据所述第一通信质量及所述第二通信质量,在所述第一设备待传输的直播数据中确定分发给第一设备的第一子数据,以及分发给所述第二设备的第二子数据;
所述传输单元40,具体用于:
通过所述第一设备传输所述第一子数据,以及通过所述第二设备传输所述第二子数据。
在一些实施例中,所述分发单元30,具体用于:
若所述第二通信质量符合第四预设条件,则根据所述第一通信质量与所述第二通信质量的第一比对结果,在所述直播数据中确定分发给第一设备的第一子数据,以及分发给所述第二设备的第二子数据;
若所述第二通信质量不符合所述第四预设条件,则根据所述第二通信质量,在所述第一设备待传输的直播数据包含的冗余数据中,确定分发给所述第二设备的第二子数据。
在一些实施例中,所述分发单元30,还用于:
若所述第一通信质量不符合所述第三预设条件,则在所述第一设备待传输的直播数据包含的冗余数据中,确定分发给所述第一设备的第一子数据;根据多个所述第二通信质量之间的第二比对结果,在所述直播数据中确定分发给每一所述第二设备的第二子数据;
所述传输单元40,具体用于:
通过所述第一设备传输所述第一子数据,以及通过多个所述第二设备传输所述第二子数据。
在一些实施例中,所述分发单元30,具体用于:
根据多个所述第二通信质量之间的第二比对结果确定多个所述第二通信质量的高低排序;
按所述高低排序,在所述直播数据中确定分发给每一所述第二设备的第二子数据。
在一些实施例中,所述装置还包括:
调节单元,用于获取所述第二设备的子数据传输状况;若所述子数据传输状况表征所述第二设备的可用带宽高于预设带宽阈值,则增大分发给所述第二设备的第二子数据的数据量;若所述子数据传输状况表征所述第二设备出现丢帧,则减小分发给所述第二设备的第二子数据的数据量。
在一些实施例中,所述检测单元10,具体用于:
基于丢包率、往返传输时延、丢帧数以及可用带宽中的至少之一,确定当前第一设备的第一通信质量。
以下结合上述任一实施例提供一个具体示例:
本公开实施例通过多端加速,按照各终端网络能力,智能分配传输数据,由多个终端共同传输,解决网络传输瓶颈问题。相关技术中工作方式如图3所示,相较于现有技术,本公开实施例提供的工作方式如图4所示。
在户外直播场景中,常规流程是主播开启数据网络开始直播,如果网络质量不好,就降低直播视频质量。
本公开实施例流程如下:主播手机开启流量数据以及个人热点,并开启直播。助力手机连接该热点,并与主播的直播软件进行网络通信。如果主播端网络质量不好,例如丢包率较高、rtt较大或者丢帧等,主播端直播软件将一部分直播数据转发给助力手机。助力手机收到数据,马上转推到直播服务器,同时汇报自身网络质量给主播端软件。主播端软件根据助力手机的网络质量,动态分配直播数据量。
智能选路算法只要依据该链路的丢包率、rtt、丢帧数量以及带宽预测四项指标,例如rtt较小,丢包率较低的链路分配的数据会多一些。因为低rtt、低丢包率的网络,对丢包重传有较大优势。高rtt或者丢包率较高的助力端,分配少量数据的转发,或者只承担fec冗余数据的转发,冗余数据不做重传。
这里,分配给优质助力端的数据量,是一个增速的过程,该过程参考带宽预测和丢帧进行调整。如果带宽预测结果良好,则增速加大,一旦发现有丢帧,则判定该链路超载,快速降速。
本公开实施例的目的是解决单终端网络传输瓶颈问题,如没网或者网络不好,无法进行实时高质量音视频通信。通过多个终端共同助力,由传统的单路传输,转变为多路传输,解决单终端网络无法支撑业务的网络瓶颈问题。
如4g网络情况下,单终端网络的吞吐率无法支撑4k高质量视频。本实施例通过附近多个终端智能组建局域网,通过局域网将数据分发到其他终端,根据不同终端的网络质量,动态分配发送的数据量,通过fec、重传、智能选路、拥塞控制等机制,保证高质量低延时传输。使用时,只需要终端开启热点,助力端连接该热点即可。
本公开实施例提供一种电子设备,包括:
用于存储处理器可执行指令的存储器;
处理器,与存储器连接;
其中,处理器被配置为执行前述任意技术方案提供的直播数据处理方法。
处理器可包括各种类型的存储介质,该存储介质为非临时性计算机存储介质,在电子设备掉电之后能够继续记忆存储其上的信息。
处理器可以通过总线等与存储器连接,用于读取存储器上存储的可执行程序,例如,能够执行前述一个或多个技术方案所述方法。
本公开一实施例提供一种电子设备的结构。电子设备包括处理组件,其进一步包括一个或多个处理器,以及由存储器所代表的存储器资源,用于存储可由处理组件的执行的指令,例如应用程序。存储器中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件被配置为执行指令,以执行上述方法应用在所述电子设备的任意方法,例如,前述一个或多个技术方案所述方法。
电子设备还可以包括一个电源组件被配置为执行电子设备的电源管理,一个有线或无线网络接口被配置为将电子设备连接到网络,和一个输入输出(I/O)接口。电子设备可以操作基于存储在存储器的操作系统,例如Windows Server TM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本公开实施例提供一种非临时性计算机可读存储介质,当存储介质中的指令由计算机的处理器执行时,使得计算机能够执行前述一个或多个技术方案所述的直播数据处理方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (28)

1.一种直播数据处理方法,其特征在于,所述方法包括:
检测当前第一设备的第一通信质量;
获取至少一个第二设备的第二通信质量;
根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备;
在确定所有分发的直播数据均已被对应的所述第二设备成功接收后,基于时钟同步或者预设传输时刻,通过所述第一设备及所述第二设备传输所述直播数据。
2.根据权利要求1所述的方法,其特征在于,所述获取至少一个第二设备的第二通信质量,包括:
基于所述第一设备建立局域网;
获取添加至所述局域网的至少一个第二设备的第二通信质量。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
基于添加至所述局域网的第二设备的设备标识,确定所述第二设备的设备类型;
基于所述设备类型,确定具备数据传输能力的第二设备;
所述获取添加至所述局域网的至少一个第二设备的第二通信质量,包括:
获取添加至所述局域网的至少一个具备数据传输能力的第二设备的第二通信质量。
4.根据权利要求1所述的方法,其特征在于,所述获取至少一个第二设备的第二通信质量,包括:
若所述第一通信质量不符合第一预设条件,获取至少一个第二设备的第二通信质量;
若待传输的直播数据的数据量高于预设数据量阈值,获取至少一个第二设备的第二通信质量。
5.根据权利要求1所述的方法,其特征在于,所述根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备,包括:
若所述第二通信质量符合第二预设条件,则根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备。
6.根据权利要求1所述的方法,其特征在于,所述获取至少一个第二设备的第二通信质量,包括:
获取至少一个第二设备的第二通信质量以及剩余流量参数;
所述根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备,包括:
若所述剩余流量参数高于预设流量阈值,则根据所述剩余流量参数、所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
向所述第二设备发送数据分发请求;
所述根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备,包括:
若接收到所述第二设备返回的应答消息,则根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备;所述应答消息指示:允许进行数据分发。
8.根据权利要求1所述的方法,其特征在于,所述根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备,包括:
若所述第一通信质量符合第三预设条件,则根据所述第一通信质量及所述第二通信质量,在所述第一设备待传输的直播数据中确定分发给第一设备的第一子数据,以及分发给所述第二设备的第二子数据;
所述通过所述第一设备及所述第二设备传输所述直播数据,包括:
通过所述第一设备传输所述第一子数据,以及通过所述第二设备传输所述第二子数据。
9.根据权利要求8所述的方法,其特征在于,所述根据所述第一通信质量以及所述第二通信质量,在所述第一设备待传输的直播数据中确定分发给第一设备的第一子数据,以及分发给所述第二设备的第二子数据,包括:
若所述第二通信质量符合第四预设条件,则根据所述第一通信质量与所述第二通信质量的第一比对结果,在所述直播数据中确定分发给第一设备的第一子数据,以及分发给所述第二设备的第二子数据;
若所述第二通信质量不符合所述第四预设条件,则根据所述第二通信质量,在所述第一设备待传输的直播数据包含的冗余数据中,确定分发给所述第二设备的第二子数据。
10.根据权利要求8所述的方法,其特征在于,所述方法还包括:
若所述第一通信质量不符合所述第三预设条件,则在所述第一设备待传输的直播数据包含的冗余数据中,确定分发给所述第一设备的第一子数据;根据多个所述第二通信质量之间的第二比对结果,在所述直播数据中确定分发给每一所述第二设备的第二子数据;
所述通过所述第一设备及所述第二设备传输所述直播数据,包括:
通过所述第一设备传输所述第一子数据,以及通过多个所述第二设备传输所述第二子数据。
11.根据权利要求10所述的方法,其特征在于,所述根据多个所述第二通信质量之间的第二比对结果,在所述直播数据中确定分发给每一所述第二设备的第二子数据,包括:
根据多个所述第二通信质量之间的第二比对结果确定多个所述第二通信质量的高低排序;
按所述高低排序,在所述直播数据中确定分发给每一所述第二设备的第二子数据。
12.根据权利要求8所述的方法,其特征在于,所述方法还包括:
获取所述第二设备的子数据传输状况;
若所述子数据传输状况表征所述第二设备的可用带宽高于预设带宽阈值,则增大分发给所述第二设备的第二子数据的数据量;
若所述子数据传输状况表征所述第二设备出现丢帧,则减小分发给所述第二设备的第二子数据的数据量。
13.根据权利要求1所述的方法,其特征在于,所述检测当前第一设备的第一通信质量,包括:
基于丢包率、往返传输时延、丢帧数以及可用带宽中的至少之一,确定当前第一设备的第一通信质量。
14.一种直播数据处理装置,其特征在于,所述装置包括:
检测单元,用于检测当前第一设备的第一通信质量;
获取单元,用于获取至少一个第二设备的第二通信质量;
分发单元,用于根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备;
传输单元,用于在确定所有分发的直播数据均已被对应的所述第二设备成功接收后,基于时钟同步或者预设传输时刻,通过所述第一设备及所述第二设备传输所述直播数据。
15.根据权利要求14所述的装置,其特征在于,所述获取单元,具体用于:
基于所述第一设备建立局域网;
获取添加至所述局域网的至少一个第二设备的第二通信质量。
16.根据权利要求15所述的装置,其特征在于,所述获取单元,具体用于:
基于添加至所述局域网的第二设备的设备标识,确定所述第二设备的设备类型;
基于所述设备类型,确定具备数据传输能力的第二设备;
获取添加至所述局域网的至少一个具备数据传输能力的第二设备的第二通信质量。
17.根据权利要求14所述的装置,其特征在于,所述获取单元,具体用于:
若所述第一通信质量不符合第一预设条件,获取至少一个第二设备的第二通信质量;
若待传输的直播数据的数据量高于预设数据量阈值,获取至少一个第二设备的第二通信质量。
18.根据权利要求14所述的装置,其特征在于,所述分发单元,具体用于:
若所述第二通信质量符合第二预设条件,则根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备。
19.根据权利要求14所述的装置,其特征在于,所述获取单元,具体用于:
获取至少一个第二设备的第二通信质量以及剩余流量参数;
所述分发单元,具体用于:
若所述剩余流量参数高于预设流量阈值,则根据所述剩余流量参数、所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备。
20.根据权利要求14所述的装置,其特征在于,所述装置还包括:
请求单元,用于向所述第二设备发送数据分发请求;
所述分发单元,具体用于:
若接收到所述第二设备返回的应答消息,则根据所述第一通信质量及所述第二通信质量,将所述第一设备待传输的直播数据分发给所述第二设备;所述应答消息指示:允许进行数据分发。
21.根据权利要求14所述的装置,其特征在于,所述分发单元,具体用于:
若所述第一通信质量符合第三预设条件,则根据所述第一通信质量及所述第二通信质量,在所述第一设备待传输的直播数据中确定分发给第一设备的第一子数据,以及分发给所述第二设备的第二子数据;
所述传输单元,具体用于:
通过所述第一设备传输所述第一子数据,以及通过所述第二设备传输所述第二子数据。
22.根据权利要求21所述的装置,其特征在于,所述分发单元,具体用于:
若所述第二通信质量符合第四预设条件,则根据所述第一通信质量与所述第二通信质量的第一比对结果,在所述直播数据中确定分发给第一设备的第一子数据,以及分发给所述第二设备的第二子数据;
若所述第二通信质量不符合所述第四预设条件,则根据所述第二通信质量,在所述第一设备待传输的直播数据包含的冗余数据中,确定分发给所述第二设备的第二子数据。
23.根据权利要求21所述的装置,其特征在于,所述分发单元,还用于:
若所述第一通信质量不符合所述第三预设条件,则在所述第一设备待传输的直播数据包含的冗余数据中,确定分发给所述第一设备的第一子数据;根据多个所述第二通信质量之间的第二比对结果,在所述直播数据中确定分发给每一所述第二设备的第二子数据;
所述传输单元,具体用于:
通过所述第一设备传输所述第一子数据,以及通过多个所述第二设备传输所述第二子数据。
24.根据权利要求23所述的装置,其特征在于,所述分发单元,具体用于:
根据多个所述第二通信质量之间的第二比对结果确定多个所述第二通信质量的高低排序;
按所述高低排序,在所述直播数据中确定分发给每一所述第二设备的第二子数据。
25.根据权利要求21所述的装置,其特征在于,所述装置还包括:
调节单元,用于获取所述第二设备的子数据传输状况;若所述子数据传输状况表征所述第二设备的可用带宽高于预设带宽阈值,则增大分发给所述第二设备的第二子数据的数据量;若所述子数据传输状况表征所述第二设备出现丢帧,则减小分发给所述第二设备的第二子数据的数据量。
26.根据权利要求14所述的装置,其特征在于,所述检测单元,具体用于:
基于丢包率、往返传输时延、丢帧数以及可用带宽中的至少之一,确定当前第一设备的第一通信质量。
27.一种电子设备,其特征在于,包括:
用于存储处理器可执行指令的存储器;
处理器,与所述存储器连接;
其中,所述处理器被配置为执行如权利要求1至13中任一项提供的直播数据处理方法。
28.一种非临时性计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1至13中任一项提供的直播数据处理方法。
CN202210002339.XA 2022-01-04 2022-01-04 直播数据处理方法及装置、电子设备及存储介质 Active CN114466206B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210002339.XA CN114466206B (zh) 2022-01-04 2022-01-04 直播数据处理方法及装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210002339.XA CN114466206B (zh) 2022-01-04 2022-01-04 直播数据处理方法及装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN114466206A CN114466206A (zh) 2022-05-10
CN114466206B true CN114466206B (zh) 2024-03-15

Family

ID=81408253

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210002339.XA Active CN114466206B (zh) 2022-01-04 2022-01-04 直播数据处理方法及装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN114466206B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011084037A2 (ko) * 2010-01-11 2011-07-14 성균관대학교산학협력단 분산 비디오 부호화/복호화 방법, 분산 비디오 부호화/복호화 장치 및 변환 부호화 장치
CN102685595A (zh) * 2012-04-18 2012-09-19 深圳市天和荣视频技术有限公司 一种摄像机实时视频的直播式分享方法
CN106210797A (zh) * 2016-07-29 2016-12-07 北京小米移动软件有限公司 网络直播方法及装置
CN109168011A (zh) * 2018-09-07 2019-01-08 深圳市网心科技有限公司 网络视频直播中转设备、中转控制系统、方法和介质
CN110611827A (zh) * 2019-10-17 2019-12-24 星宏集群有限公司 一种Android设备对于直播流的局域网内分发方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011084037A2 (ko) * 2010-01-11 2011-07-14 성균관대학교산학협력단 분산 비디오 부호화/복호화 방법, 분산 비디오 부호화/복호화 장치 및 변환 부호화 장치
CN102685595A (zh) * 2012-04-18 2012-09-19 深圳市天和荣视频技术有限公司 一种摄像机实时视频的直播式分享方法
CN106210797A (zh) * 2016-07-29 2016-12-07 北京小米移动软件有限公司 网络直播方法及装置
CN109168011A (zh) * 2018-09-07 2019-01-08 深圳市网心科技有限公司 网络视频直播中转设备、中转控制系统、方法和介质
CN110611827A (zh) * 2019-10-17 2019-12-24 星宏集群有限公司 一种Android设备对于直播流的局域网内分发方法及系统

Also Published As

Publication number Publication date
CN114466206A (zh) 2022-05-10

Similar Documents

Publication Publication Date Title
CN106027586B (zh) 在对等网络中协商带宽的方法和设备
US20170155870A1 (en) Priority of uplink streams in video switching
CN113301299B (zh) 一种多通道视频传输方法、系统、终端以及存储介质
US9516264B2 (en) Methods, devices, and systems for controlling audio and video transmission channel
US8811180B2 (en) Communication apparatus and communication method
US9538132B2 (en) Methods, devices, and systems for controlling audio and video transmission
CN105900481B (zh) 一种无线保真技术的带宽选择方法及接入点ap
US7428271B2 (en) Network device and data transmission method for efficient data transmission and reception in mobile ad hoc network environment
JP4831608B2 (ja) 視聴者端末およびその通信規制方法
CN111953611A (zh) 混合接入网络中的流量分发方法和装置
JPH0983565A (ja) 通信システム
CN114466206B (zh) 直播数据处理方法及装置、电子设备及存储介质
JP5573167B2 (ja) コンテンツ共有システム,コンテンツ共有方法及びプログラム
JP2005101815A (ja) 携帯通信端末
CN113542215B (zh) 一种提升流媒体传输性能的方法及相关装置
CN113543262B (zh) 一种降低云游戏网络时延的方法及装置
EP2051429B1 (en) Apparatus and method for setting timer and counter in mobile communication system
US8463275B2 (en) Mobile communication system, radio channel controller, mobile station, mobile switching center, and radio channel controlling method
KR20180126133A (ko) 복수의 이종 통신망을 통해 데이터를 선택적으로 이중 전송하는 방법 및 장치
CN115297153A (zh) 数据传输方法、装置、终端、存储介质
US8837344B2 (en) Apparatus and method for multicast/broadcast service data transmission synchronization
CN117676305B (zh) 基于物联网的智能摄像头控制方法及系统
CN112637787B (zh) 通信方法、装置、设备及存储介质
CN111615170B (zh) 一种数据传输方法及系统
WO2022120683A1 (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