CN113572750B - 视频数据传输方法及装置 - Google Patents
视频数据传输方法及装置 Download PDFInfo
- Publication number
- CN113572750B CN113572750B CN202110819739.5A CN202110819739A CN113572750B CN 113572750 B CN113572750 B CN 113572750B CN 202110819739 A CN202110819739 A CN 202110819739A CN 113572750 B CN113572750 B CN 113572750B
- Authority
- CN
- China
- Prior art keywords
- data
- data transmission
- video data
- transmission channel
- channel
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/401—Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
- H04L67/108—Resource delivery mechanisms characterised by resources being split in blocks or fragments
Abstract
本发明实施例提供了一种视频数据传输方法及装置,其中,该方法包括:数据发送方接收数据接收方发送的通道控制信令,其中,所述通道控制信令中包括:待传输视频数据的范围、所述待传输视频数据划分为多个大小相等的分片的大小以及数据传输通道的编号;所述数据发送方根据所述分片的大小以及所述数据传输通道的编号,确定在所述编号指示的数据传输通道上传输的目标视频数据;所述数据发送方将所述目标视频数据上传至所述编号指示的数据传输通道进行传输。该方法解决了现有技术中P2P的视频数据传输方式存在低速高功耗的问题,进而实现高速低功耗的P2P视频数据传输。
Description
技术领域
本发明涉及视频处理技术领域,特别是涉及一种视频数据传输方法及装置。
背景技术
随着百兆带宽和5G的逐步普及,8K、多视角视频这类高码率视频的出现,用户对视频体验的要求越来越高,导致服务带宽的成本也越来越高。现有技术中P2P的视频数据传输方式采用下载方向上传方发送数据请求,上传方向下载方返回所请求的视频数据,该方式未充分利用上传方的上传带宽,且频繁的位图交换、交点请求、数据请求及确认消息导致CPU消耗高、磁盘消耗大、且数据传输速度低。现有技术中P2P的视频数据传输方式存在低速高功耗的问题,无法满足用户对高码率视频体验需求的增长。
针对现有技术中P2P的视频数据传输方式存在低速高功耗的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例的目的在于提供一种视频数据传输方法及装置,以实现高速低功耗的P2P视频数据传输。
在本发明实施的第一方面,首先提供了一种视频数据传输方法,包括:
数据发送方接收数据接收方发送的通道控制信令,其中,所述通道控制信令中包括:待传输视频数据的范围、所述待传输视频数据划分为多个大小相等的分片的大小以及数据传输通道的编号;
所述数据发送方根据所述分片的大小以及所述数据传输通道的编号,确定在所述编号指示的数据传输通道上传输的目标视频数据;
所述数据发送方将所述目标视频数据上传至所述编号指示的数据传输通道进行传输。
进一步地,所述数据发送方根据所述分片的大小以及所述数据传输通道的编号,确定在所述编号指示的数据传输通道上传输的目标视频数据包括:
所述数据发送方根据所述数据传输通道的编号以及数据传输通道的数量确定所述目标视频数据的偏移位置;
将所述分片的大小确定为所述目标视频数据的偏移大小;
根据所述目标视频数据的偏移位置和所述目标视频数据的偏移大小确定所述目标视频数据在所述待传输视频数据中的范围;
其中,所述目标视频数据在所述待传输视频数据的范围之内。
进一步地,所述数据发送方根据所述数据传输通道的编号以及数据传输通道的数量确定所述目标视频数据的偏移位置包括:
按照以下公式确定所述偏移位置:
所述偏移位置=[(n*所述数据传输通道的数量)+所述数据传输通道的编号]*所述分片的大小;
其中,n为所述编号指示的数据传输通道内传输的分片的序号,n为从0开始取值的整数。
进一步地,在数据发送方接收数据接收方发送的通道控制信令之前,所述方法还包括:
所述数据接收方根据待下载视频的码率以及所述数据发送方的数据上传速度确定数据传输通道的数量。
进一步地,所述数据传输通道的数量大于或等于所述待下载视频的码率与最慢的数据上传速度的比值。
进一步地,在所述数据接收方根据待下载视频的码率以及所述数据发送方的数据上传速度确定数据传输通道的数量之前,所述方法还包括:
所述数据接收方向服务端发送资源节点请求消息;
所述数据接收方接收所述服务端返回的多个所述数据发送方的相关信息,其中,所述数据发送方的相关信息包括所述数据发送方的数据上传速度。
进一步地,在所述数据发送方将所述目标视频数据上传至所述编号指示的数据传输通道进行传输之后,所述方法还包括:
所述数据接收方根据每个所述数据传输通道的数据传输进度生成通道更新指令,其中,所述通道更新指令用于指示由第一数据发送方接替第二数据发送方在数据传输进度最慢的数据传输通道上传输视频数据,所述第一数据发送方为数据传输进度最快的数据传输通道所对应的数据发送方,所述第二数据发送方为数据传输进度最慢的数据传输通道所对应的数据发送方;
所述数据接收方将所述通道更新指令分别发送至所述第一数据发送方和所述第二数据发送方,以使得所述第一数据发送方接替所述第二数据发送方在数据传输进度最慢的数据传输通道上传输视频数据。
在本发明实施的第二方面,还提供了一种视频数据传输装置,包括:
接收单元,用于数据发送方接收数据接收方发送的通道控制信令,其中,所述通道控制信令中包括:待传输视频数据的范围、所述待传输视频数据划分为多个大小相等的分片的大小以及数据传输通道的编号;
确定单元,用于所述数据发送方根据所述分片的大小以及所述数据传输通道的编号,确定在所述编号指示的数据传输通道上传输的目标视频数据;
上传单元,用于所述数据发送方将所述目标视频数据上传至所述编号指示的数据传输通道进行传输。
在本发明实施的第三方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现上述任一所述的视频数据传输方法。
在本发明实施的第四方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一所述的视频数据传输方法。
本发明实施例提供的视频数据传输方法,通过数据发送方接收数据接收方发送的通道控制信令,其中,所述通道控制信令中包括:待传输视频数据的范围、所述待传输视频数据划分为多个大小相等的分片的大小以及数据传输通道的编号;所述数据发送方根据所述分片的大小以及所述数据传输通道的编号,确定在所述编号指示的数据传输通道上传输的目标视频数据;所述数据发送方将所述目标视频数据上传至所述编号指示的数据传输通道进行传输,可以解决现有技术中P2P的视频数据传输方式存在低速高功耗的问题,进而实现高速低功耗的P2P视频数据传输。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例中的视频数据传输方法的流程图;
图2为本发明实施例中的数据下载方与数据上传方的交互图;
图3为本发明实施例中的数据上传方在数据传输通道上传输分片的示意图;
图4为本发明实施例中的视频数据传输装置的结构示意图;
图5为本发明实施例中的电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
本发明实施例提供了一种视频数据传输方法。
图1为本发明实施例中的视频数据传输方法的流程图,如图1所示,该方法包括以下步骤:
步骤S101,数据发送方接收数据接收方发送的通道控制信令,其中,通道控制信令中包括:待传输视频数据的范围、待传输视频数据划分为多个大小相等的分片的大小以及数据传输通道的编号;本申请的数据发送方相当于P2P中的数据上传方,数据接收方相当于P2P中的数据下载方。
步骤S102,数据发送方根据分片的大小以及数据传输通道的编号,确定在编号指示的数据传输通道上传输的目标视频数据;
步骤S103,数据发送方将目标视频数据上传至编号指示的数据传输通道进行传输。
上述步骤,通过数据接收方向数据发送方发送包括:待传输视频数据的范围、待传输视频数据划分为多个大小相等的分片的大小以及数据传输通道的编号的通道控制信令,以指示数据发送方根据分片的大小以及数据传输通道的编号,确定在编号指示的数据传输通道上传输的目标视频数据,然后将目标视频数据上传至编号指示的数据传输通道进行传输,利用多个数据传输通道传输视频数据,能够解决现有技术中P2P的视频数据传输方式存在的低速的问题,此外数据接收方通过向数据发送方发送通道控制信令的方式便可以实现请求视频数据,相对于现有技术中的请求响应机制,能够解决现有技术中P2P的视频数据传输方式存在的高功耗的问题,进而实现了高速低功耗的P2P视频数据传输。
本发明实施例中的数据接收方是视频数据的请求方,数据发送方是视频数据的提供方。例如,在视频直播时,数据接收方即为观看直播的用户端,数据发送方即为视频直播平台。再例如,在播放视频时,数据接收方即为观看视频的用户端,数据发送方即为视频播放平台。本发明实施例中的数据传输通道在物理上可以体现为网络链路。
为了实现视频数据的快速传输,本发明实施例可以通过多个数据传输通道实现多接点对单节点的P2P视频数据传输,多节点对单节点可以理解为多个数据发送方通过多个数据传输通道同时上传视频数据,一个数据接收方下载多个数据传输通道上的视频数据,进而实现快速下载视频数据的目的。
作为一种可选的实施例,本发明实施例中数据接收方可以先确定需要下载的视频数据(即上述待传输视频数据),然后将待传输视频数据划分为多个大小相等的分片,并确定分片的大小,并对每个分片按序进行编号。
数据接收方在确定好待传输数据的范围以及分片的大小之后,还可以确定数据传输通道的数量,具体过程如图2所示:
步骤S201,请求资源节点。也即数据接收方向服务端发送资源节点请求消息,用于请求获取资源可用的多个数据发送方,资源节点即为数据发送方。
步骤S202,返回资源节点(图2中示出了三个数据发送方,分别为资源节点1、资源节点2、资源节点3)。也即数据接收方接收服务端返回的多个数据发送方的相关信息,其中,数据发送方的相关信息中至少包括数据发送方的IP地址、数据上传速度等信息。
步骤S203,分配通道。具体包括:数据接收方(即数据下载方)根据待下载视频(待下载视频的视频数据即为上述待传输视频数据)的码率以及每个数据发送方的数据上传速度确定数据传输通道的数量,并为每个数据传输通道进行编号;数据接收方为数据发送方分配对应的数据传输通道,并记录数据发送方与数据传输通道之间的对应关系。
可选地,数据传输通道的数量大于或等于待下载视频的码率与最慢的数据上传速度的比值,以便于能够保障存在足够的数据传输通道进行视频数据传输,进而实现快速高效的传输视频数据的效果。
在数据接收方确定待传输视频数据的范围、待传输视频数据划分为多个大小相等的分片的大小以及数据发送方与数据传输通道之间的对应关系之后,数据接收方可以生成通道控制信令,其中,通道控制信令中至少包括以下信息:待传输视频数据的范围、待传输视频数据划分为多个大小相等的分片的大小以及数据传输通道的编号。
数据接收方在生成通道控制信令之后,可以向数据发送方发送通道控制信令。
作为一种可选的实施方式,数据接收方同时向不同的数据发送方发送的通道控制信令的内容不同,该不同主要体现在数据传输通道的编号不同,如图2中步骤S204至步骤S206,数据接收方向资源节点1发送的通道控制信令为“待传输视频数据的范围、分片大小、通道编号为0”、数据接收方向资源节点2发送的通道控制信令为“待传输视频数据的范围、分片大小、通道编号为1”、数据接收方向资源节点3发送的通道控制信令为“待传输视频数据的范围、分片大小、通道编号为2和3”。
作为另一种可选的实施方式,数据接收方向不同的数据发送方发送的通道控制信令的内容相同,例如数据接收方向资源节点1、资源节点2及资源节点3发送的通道控制信令为“待传输视频数据的范围、分片大小、资源节点1对应通道编号0、资源节点2对应通道编号1、资源节点3对应通道编号2和3”。
在实际应用场景中,可以根据需求选择上述任一种实施方式,此处不做具体限定。
在各个数据发送方接收到数据接收方发送的通道控制信令之后,如图2中步骤S207至步骤S209所示,各个数据发送方可以在各自对应的数据传输通道上传输视频数据。需要说明的是,各个数据发送方在各自对应的数据传输通道上传输视频数据为分片,且各个数据发送方在各自对应的数据传输通道上传输的分片不同,这些数据传输通道上的分片共同构成待传输视频数据,以便于数据接收方下载完整的待传输视频数据。
每个数据发送方在接收到数据接收方发送的通道控制信令之后,需要先计算在自身对应的数据传输通道上传输哪些分片(即目标视频数据),然后再将目标视频数据上传至自身对应的数据传输通道进行传输。
作为一种可选的实施例,数据发送方可以根据分片的大小以及通道控制信令中包括的数据传输通道的编号,确定在编号指示的数据传输通道上传输的目标视频数据,具体可以包括:
根据数据传输通道的编号以及数据传输通道的数量确定目标视频数据的偏移位置;
将分片的大小确定为目标视频数据的偏移大小;
根据所述目标视频数据的偏移位置和所述目标视频数据的偏移大小确定所述目标视频数据在所述待传输视频数据中的范围;
其中,目标视频数据在待传输视频数据的范围之内。
可选地,本发明实施例可以按照以下公式确定偏移位置:
偏移位置=[(n*数据传输通道的数量)+数据传输通道的编号]*分片的大小;
其中,n为编号指示的数据传输通道内传输的分片的序号,n为从0开始取值的整数。
结合图3,对上述可选的实施例进行举例说明:
假设待传输视频数据的范围为256K,将其划分为16个大小相等的分片,分片大小为16K;数据传输通道的数量为8个,编号分别为0、1、2、3、4、5、6、7;数据发送方的数量为8个,如图3所示分别对应8个数据传输通道。则按照上述公式可以计算出在编号为0的数据传输通道上,数据发送方P0上传的分片依次为:
n取值为0时,偏移位置为0,偏移大小为16K,则编号为0的数据传输通道上传输的第1个分片为0-16K;
n取值为1时,偏移位置为128,偏移大小为16K,则编号为0的数据传输通道上传输的第2个分片为128K-144K;
n取值为2时,偏移位置为256,偏移大小为16K,由于偏移位置已经超过待传输视频数据的范围,故在编号为0的数据传输通道上,数据发送方P0上传的分片只包括0-16K以及128K-144K这两个分片。
同理,编号为1、2、3、4、5、6、7数据传输通道上,数据发送方P1、P2、P3、P4、P5、P6、P7上传的分片也可以按照上述方式进行确定,具体分片如图3所示。
作为另一种可选的实施例,数据接收方所生成的通道控制信令中除了包括待传输视频数据的范围、分片的大小以及数据传输通道的编号之外,还可以包括数据发送方在编号指示的数据传输通道上传输的分片的编号,这样,数据发送方在接收到通道控制信令后,无需再计算在自身对应的数据传输通道上传输的目标视频数据,而是直接获取到指定的分片后再自身对应的数据传输通道上进行传输,这样可以达到减少数据发送方CPU消耗的目的。
数据接收方通过多个数据传输通道接收多个分片,并将多个分片按序组合成完整的视频数据,得到待传输视频数据,进而实现数据接收方高速低功耗下载视频数据的目的。
需要说明的是,如果数据接收方需要重新下载别的视频数据时,数据接收方可以通过更新通道控制信令,来通知数据发送方改变待传输视频数据的范围、分片的大小以及数据传输通道的编号,以使得数据发送方重新确定自身对应的数据传输通道以及在该数据传输通道上传输的分片,进而实现在数据传输通道上进行视频数据传输的目的。
作为一种可选的实施例,在所述数据发送方将所述目标视频数据上传至所述编号指示的数据传输通道进行传输之后,所述方法还包括:
数据接收方根据每个数据传输通道的数据传输进度生成通道更新指令,其中,所述通道更新指令用于指示由第一数据发送方接替第二数据发送方在数据传输进度最慢的数据传输通道上传输视频数据,所述第一数据发送方为数据传输进度最快的数据传输通道所对应的数据发送方,所述第二数据发送方为数据传输进度最慢的数据传输通道所对应的数据发送方;
数据接收方将所述通道更新指令分别发送至所述第一数据发送方和所述第二数据发送方,以使得所述第一数据发送方接替所述第二数据发送方在数据传输进度最慢的数据传输通道上传输视频数据。
需要说明的是,数据传输通道的数据传输进度可以由在该数据传输通道上传输的分片的数量决定,传输的分片数量越多,则该数据传输通道的数据传输进度越快,传输的分片数量越少,则该数据传输通道的数据传输进度越慢。本发明实施例中,数据接收方可以实时检测每个数据传输通道的数据传输进度,并可以在检测到最快的数据传输进度与最慢的数据传输进度之间的差值大于目标阈值(目标阈值可以根据实际需求设定或调整,此处不做具体限定)时,生成所述通道更新指令,以指示由数据传输进度最快的数据传输通道所对应的数据发送方接替数据传输进度最慢的数据传输通道所对应的数据发送方,在数据传输进度最慢的数据传输通道上传输视频数据,这样可以实现实时调整数据传输进度最慢的数据传输通道,避免因某个数据传输通道的数据传输进度较慢而影响整体视频数据的下载速度,进而达到提高视频数据下载速度,避免观看视频时出现卡顿的效果。
本发明实施例采用多个数据发送方主动推流的模式能够解决请求响应机制导致的延迟,同时也能减少频繁的消息处理,进而降低功耗,建立数据传输通道后控制消息少,数据冗余小,相应的也带来CPU消耗的减少;采用多节点协同工作,能够提升连续下载速度,提供速度稳定的连接,不受数据接收方问题的干扰;将数据分为多数据传输通道来实现多节点对单节点的P2P推流模式下载,每个数据传输通道有自己特定的位图序列,独立节点提供数据。通过数据接收方与数据发送方的通道控制信令可以提前协商传输数据以及传输通道,能够解决数据发送方对数据接收方后续缺失数据不可预知的缺陷,数据发送方能预知需要读取的数据,减少不必要的缓存和磁盘消耗;通过明确数据传输通道与资源节点的对应关系以及数据传输通道所输出的分片,可以通过定时检查是否超时进行重传,相对于传统的不断循环检查所有视频数据能够降低CPU消耗。
通过本发明实施例可以实现实时直播P2P单节点可支持720P视频的播放。支持多通道的P2P推送模式,在播放场景中需要快速下载头部的连续缓冲数据的情况下,可以充分利用推流的优势和多资源节点的优势。通道控制信令可以灵活的同步数据接收方与数据发送方的需要推送数据的位置,并方便协调多个资源节点协调工作,在推流模式下,使得对节点的筛选淘汰策略的进一步优化成为可能。较少的控制信息,可以降低设备在网络传输时使用的功耗。本发明使用低功耗、高速度P2P传输方式,可广泛使用于需要高码率,低成本的视频传输业务上。如:4K、8K视频、VR视频、多视角视频等。
需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明实施例还提供了一种视频数据传输装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4为本发明实施例中的视频数据传输装置的结构示意图,如图4所示,该装置包括:
接收单元41,用于数据发送方接收数据接收方发送的通道控制信令,其中,所述通道控制信令中包括:待传输视频数据的范围、所述待传输视频数据划分为多个大小相等的分片的大小以及数据传输通道的编号;
确定单元42,用于所述数据发送方根据所述分片的大小以及所述数据传输通道的编号,确定在所述编号指示的数据传输通道上传输的目标视频数据;
上传单元43,用于所述数据发送方将所述目标视频数据上传至所述编号指示的数据传输通道进行传输。
作为一种可选的实施例,所述确定单元42包括:
第一确定模块,用于所述数据发送方根据所述数据传输通道的编号以及数据传输通道的数量确定所述目标视频数据的偏移位置;
第二确定模块,用于将所述分片的大小确定为所述目标视频数据的偏移大小;
其中,所述目标视频数据在所述待传输视频数据的范围之内。
作为一种可选的实施例,所述第一确定模块用于按照以下公式确定所述偏移位置:
所述偏移位置=[(n*所述数据传输通道的数量)+所述数据传输通道的编号]*所述分片的大小;
其中,n为所述编号指示的数据传输通道内传输的分片的序号,n为从0开始取值的整数。
作为一种可选的实施例,所述装置还包括:数据确定单元,用于在数据发送方接收数据接收方发送的通道控制信令之前,所述数据接收方根据待下载视频的码率以及所述数据发送方的数据上传速度确定数据传输通道的数量。
作为一种可选的实施例,所述数据传输通道的数量大于或等于所述待下载视频的码率与最慢的数据上传速度的比值。
作为一种可选的实施例,所述装置还包括:发送单元,用于在所述数据接收方根据待下载视频的码率以及所述数据发送方的数据上传速度确定数据传输通道的数量之前,所述数据接收方向服务端发送资源节点请求消息;返回单元,用于所述数据接收方接收所述服务端返回的多个所述数据发送方的相关信息,其中,所述数据发送方的相关信息包括所述数据发送方的数据上传速度。
作为一种可选的实施例,所述装置还包括:生成单元,用于在所述数据发送方将所述目标视频数据上传至所述编号指示的数据传输通道进行传输之后,所述数据接收方根据每个所述数据传输通道的数据传输进度生成通道更新指令,其中,所述通道更新指令用于指示由第一数据发送方接替第二数据发送方在数据传输进度最慢的数据传输通道上传输视频数据,所述第一数据发送方为数据传输进度最快的数据传输通道所对应的数据发送方,所述第二数据发送方为数据传输进度最慢的数据传输通道所对应的数据发送方;发送单元,用于所述数据接收方将所述通道更新指令分别发送至所述第一数据发送方和所述第二数据发送方,以使得所述第一数据发送方接替所述第二数据发送方在数据传输进度最慢的数据传输通道上传输视频数据。
需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
本发明实施例还提供了一种电子设备,如图5所示,包括处理器51、通信接口52、存储器53和通信总线54,其中,处理器51,通信接口52,存储器53通过通信总线54完成相互间的通信,
存储器53,用于存放计算机程序;
处理器51,用于执行存储器53上所存放的程序时,实现如下步骤:
数据发送方接收数据接收方发送的通道控制信令,其中,所述通道控制信令中包括:待传输视频数据的范围、所述待传输视频数据划分为多个大小相等的分片的大小以及数据传输通道的编号;
所述数据发送方根据所述分片的大小以及所述数据传输通道的编号,确定在所述编号指示的数据传输通道上传输的目标视频数据;
所述数据发送方将所述目标视频数据上传至所述编号指示的数据传输通道进行传输。
进一步地,还实现如下步骤:
所述数据发送方根据所述数据传输通道的编号以及数据传输通道的数量确定所述目标视频数据的偏移位置;
将所述分片的大小确定为所述目标视频数据的偏移大小;
其中,所述目标视频数据在所述待传输视频数据的范围之内。
进一步地,还实现如下步骤:
按照以下公式确定所述偏移位置:
所述偏移位置=[(n*所述数据传输通道的数量)+所述数据传输通道的编号]*所述分片的大小;
其中,n为所述编号指示的数据传输通道内传输的分片的序号,n为从0开始取值的整数。
进一步地,还实现如下步骤:
在数据发送方接收数据接收方发送的通道控制信令之前,所述数据接收方根据待下载视频的码率以及所述数据发送方的数据上传速度确定数据传输通道的数量。
进一步地,还实现如下步骤:
在所述数据接收方根据待下载视频的码率以及所述数据发送方的数据上传速度确定数据传输通道的数量之前,所述数据接收方向服务端发送资源节点请求消息;
所述数据接收方接收所述服务端返回的多个所述数据发送方的相关信息,其中,所述数据发送方的相关信息包括所述数据发送方的数据上传速度。
进一步地,还实现如下步骤:
在所述数据发送方将所述目标视频数据上传至所述编号指示的数据传输通道进行传输之后,所述数据接收方根据每个所述数据传输通道的数据传输进度生成通道更新指令,其中,所述通道更新指令用于指示由第一数据发送方接替第二数据发送方在数据传输进度最慢的数据传输通道上传输视频数据,所述第一数据发送方为数据传输进度最快的数据传输通道所对应的数据发送方,所述第二数据发送方为数据传输进度最慢的数据传输通道所对应的数据发送方;
所述数据接收方将所述通道更新指令分别发送至所述第一数据发送方和所述第二数据发送方,以使得所述第一数据发送方接替所述第二数据发送方在数据传输进度最慢的数据传输通道上传输视频数据。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的视频数据传输方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的视频数据传输方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种视频数据传输方法,其特征在于,包括:
数据发送方接收数据接收方发送的通道控制信令,其中,所述通道控制信令中包括:待传输视频数据的范围、所述待传输视频数据划分为多个大小相等的分片的大小以及数据传输通道的编号;
所述数据发送方根据所述分片的大小以及所述数据传输通道的编号,确定在所述编号指示的数据传输通道上传输的目标视频数据;
所述数据发送方将所述目标视频数据上传至所述编号指示的数据传输通道进行传输。
2.根据权利要求1所述的方法,其特征在于,所述数据发送方根据所述分片的大小以及所述数据传输通道的编号,确定在所述编号指示的数据传输通道上传输的目标视频数据,包括:
所述数据发送方根据所述数据传输通道的编号以及数据传输通道的数量确定所述目标视频数据的偏移位置;
将所述分片的大小确定为所述目标视频数据的偏移大小;
根据所述目标视频数据的偏移位置和所述目标视频数据的偏移大小确定所述目标视频数据在所述待传输视频数据中的范围;
其中,所述目标视频数据在所述待传输视频数据的范围之内。
3.根据权利要求2所述的方法,其特征在于,所述数据发送方根据所述数据传输通道的编号以及数据传输通道的数量确定所述目标视频数据的偏移位置,包括:
按照以下公式确定所述偏移位置:
所述偏移位置=[(n*所述数据传输通道的数量)+所述数据传输通道的编号]*所述分片的大小;
其中,n为所述编号指示的数据传输通道内传输的分片的序号,n为从0开始取值的整数。
4.根据权利要求1所述的方法,其特征在于,在数据发送方接收数据接收方发送的通道控制信令之前,所述方法还包括:
所述数据接收方根据待下载视频的码率以及所述数据发送方的数据上传速度确定数据传输通道的数量。
5.根据权利要求4所述的方法,其特征在于,所述数据传输通道的数量大于或等于所述待下载视频的码率与最慢的数据上传速度的比值。
6.根据权利要求4所述的方法,其特征在于,在所述数据接收方根据待下载视频的码率以及所述数据发送方的数据上传速度确定数据传输通道的数量之前,所述方法还包括:
所述数据接收方向服务端发送资源节点请求消息;
所述数据接收方接收所述服务端返回的多个所述数据发送方的相关信息,其中,所述数据发送方的相关信息包括所述数据发送方的数据上传速度。
7.根据权利要求1至6中任一项所述的方法,其特征在于,在所述数据发送方将所述目标视频数据上传至所述编号指示的数据传输通道进行传输之后,所述方法还包括:
所述数据接收方根据每个所述数据传输通道的数据传输进度生成通道更新指令,其中,所述通道更新指令用于指示由第一数据发送方接替第二数据发送方在数据传输进度最慢的数据传输通道上传输视频数据,所述第一数据发送方为数据传输进度最快的数据传输通道所对应的数据发送方,所述第二数据发送方为数据传输进度最慢的数据传输通道所对应的数据发送方;
所述数据接收方将所述通道更新指令分别发送至所述第一数据发送方和所述第二数据发送方,以使得所述第一数据发送方接替所述第二数据发送方在数据传输进度最慢的数据传输通道上传输视频数据。
8.一种视频数据传输装置,其特征在于,包括:
接收单元,用于数据发送方接收数据接收方发送的通道控制信令,其中,所述通道控制信令中包括:待传输视频数据的范围、所述待传输视频数据划分为多个大小相等的分片的大小以及数据传输通道的编号;
确定单元,用于所述数据发送方根据所述分片的大小以及所述数据传输通道的编号,确定在所述编号指示的数据传输通道上传输的目标视频数据;
上传单元,用于所述数据发送方将所述目标视频数据上传至所述编号指示的数据传输通道进行传输。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一所述的方法步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110819739.5A CN113572750B (zh) | 2021-07-20 | 2021-07-20 | 视频数据传输方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110819739.5A CN113572750B (zh) | 2021-07-20 | 2021-07-20 | 视频数据传输方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113572750A CN113572750A (zh) | 2021-10-29 |
CN113572750B true CN113572750B (zh) | 2023-01-10 |
Family
ID=78165712
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110819739.5A Active CN113572750B (zh) | 2021-07-20 | 2021-07-20 | 视频数据传输方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113572750B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114615260B (zh) * | 2022-05-12 | 2022-09-16 | 广州市保伦电子有限公司 | 一种面向云服务资源传输的方法 |
CN116132425B (zh) * | 2022-12-27 | 2024-03-26 | 中国电子科技集团公司第三十研究所 | 一种大规模多路数据跨网单向导入方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102647251A (zh) * | 2012-03-26 | 2012-08-22 | 北京星网锐捷网络技术有限公司 | 数据传输方法及系统、发送端设备与接收端设备 |
CN110995697A (zh) * | 2019-11-29 | 2020-04-10 | 济南慧天云海信息技术有限公司 | 一种大数据传输方法及系统 |
CN111263240A (zh) * | 2020-02-12 | 2020-06-09 | 青岛海信宽带多媒体技术有限公司 | Iptv 4k音视频播放管理方法、装置、显示设备 |
CN111294664A (zh) * | 2019-05-28 | 2020-06-16 | 杭州萤石软件有限公司 | 音视频传输数据方法、电子设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11019123B2 (en) * | 2018-06-22 | 2021-05-25 | International Business Machines Corporation | Multi-bitrate component sharding |
-
2021
- 2021-07-20 CN CN202110819739.5A patent/CN113572750B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102647251A (zh) * | 2012-03-26 | 2012-08-22 | 北京星网锐捷网络技术有限公司 | 数据传输方法及系统、发送端设备与接收端设备 |
CN111294664A (zh) * | 2019-05-28 | 2020-06-16 | 杭州萤石软件有限公司 | 音视频传输数据方法、电子设备及存储介质 |
CN110995697A (zh) * | 2019-11-29 | 2020-04-10 | 济南慧天云海信息技术有限公司 | 一种大数据传输方法及系统 |
CN111263240A (zh) * | 2020-02-12 | 2020-06-09 | 青岛海信宽带多媒体技术有限公司 | Iptv 4k音视频播放管理方法、装置、显示设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113572750A (zh) | 2021-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110662085B (zh) | 消息发送方法、装置、可读介质及电子设备 | |
CN107566786B (zh) | 一种获取监控视频的方法、装置及终端设备 | |
US9621620B2 (en) | Apparatus and method for providing content with a distributed architecture, and system for providing content with the said apparatus | |
CN113572750B (zh) | 视频数据传输方法及装置 | |
US9124674B2 (en) | Systems and methods for connection pooling for video streaming in content delivery networks | |
WO2015117570A1 (en) | Network acceleration method, apparatus and device based on router device | |
CN108063769B (zh) | 一种内容服务的实现方法、装置及内容分发网络节点 | |
CN113556618B (zh) | 数据传输方法和装置 | |
KR20190002670A (ko) | 네트워크 노드, 엔드포인트 노드 및 관심 메시지 수신 방법 | |
CN110312140B (zh) | 直播数据处理方法、装置、系统及计算机可读存储介质 | |
CN113422818A (zh) | 一种数据级联传输方法、系统及节点设备 | |
CN112312162A (zh) | 一种传输视频流的视频服务器 | |
CN108306923A (zh) | 一种直播视频上传方法、装置、电子设备以及存储介质 | |
CN111835801B (zh) | 文件下载方法、装置、服务器、边缘设备、终端及介质 | |
CN109831467B (zh) | 数据传输方法、设备及系统 | |
TW201501526A (zh) | 提供多媒體內容之內容部分至用戶端之方法及對應之快取 | |
CN116074197A (zh) | 一种传输方法及装置 | |
CN110958068B (zh) | 一种视频传输的方法和设备 | |
CN115412777A (zh) | 流媒体数据的传输方法及装置、系统 | |
CN101635669B (zh) | 一种用于数据共享系统中获取数据片段的方法 | |
CN108243091B (zh) | 一种信息共享装置和信息共享方法 | |
CN113271475B (zh) | 一种数据处理方法、系统、电子设备及存储介质 | |
CN105230074A (zh) | 视频缓存切换处理方法、装置和系统 | |
US20190222872A1 (en) | Playout buffering in a live content distribution system | |
CN110856148B (zh) | 一种基于5g通信的数据传输方法、系统、装置及介质 |
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 |