CN113438499B - 数据上传和接收方法、装置、设备及存储介质 - Google Patents

数据上传和接收方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN113438499B
CN113438499B CN202110731100.1A CN202110731100A CN113438499B CN 113438499 B CN113438499 B CN 113438499B CN 202110731100 A CN202110731100 A CN 202110731100A CN 113438499 B CN113438499 B CN 113438499B
Authority
CN
China
Prior art keywords
video data
data
fragmented
edge server
receiving
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
CN202110731100.1A
Other languages
English (en)
Other versions
CN113438499A (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 QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and 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 QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN202110731100.1A priority Critical patent/CN113438499B/zh
Publication of CN113438499A publication Critical patent/CN113438499A/zh
Application granted granted Critical
Publication of CN113438499B publication Critical patent/CN113438499B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23103Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion using load balancing strategies, e.g. by placing or distributing content on different disks, different memories or different servers
    • 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/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26233Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving content or additional data duration or size, e.g. length of a movie, size of an executable file

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例提供一种数据上传和接收方法、装置、设备及存储介质,其中数据上传方法包括:向接收端设备发送目标视频数据的上传请求;在接收到接收端设备反馈的边缘服务器列表的情况下,在边缘服务器列表中选择可用的N个第一边缘服务器,N为大于或者等于1的整数;通过N个第一边缘服务器向接收端设备上传分片视频数据,分片视频数据为目标视频数据经分片处理后得到;其中,分片视频数据上传至接收端设备后,由接收端设备基于视频播放顺序进行实时分片重组。本发明可以实现客户端设备选择用于上传的边缘服务器,而非接收端设备分配,解耦目标视频数据与边缘服务器的绑定关系,以分片形式进行负载均衡,增强数据上传的稳定性。

Description

数据上传和接收方法、装置、设备及存储介质
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据上传和接收方法、装置、设备及存储介质。
背景技术
目前用户在进行数据上传时都是基于分片上传的,主要是方便用户在网络不畅通的情况下可以断点续传。在通过分片方式上传时,首先将数据上传到边缘点机器,之后再集中存储到对象存储(Object Storage Service,OSS)服务中,这个集中存储叫做归档。通过归档到集中点,可以使得其他分布式设备读到此文件。
但发明人发现,用户在请求进行数据上传时,服务接口会返回一台边缘点机器的互联网协议(Internet Protocol,IP)地址以供用户上传数据,而这个上传操作没有实现数据与边缘点机器解耦,也就是说,如果在数据上传过程中网络中断,在网络恢复后数据的续传也必须要续传到该边缘点机器。由于没有对数据和边缘点机器进行解耦,也就无法做到数据的负载均衡。假如同一时刻,用户请求上传几百上千个文件,每个文件都很大,在这一瞬间,后端负载均衡分配此刻负载最低的边缘点机器上传这些文件,这就可能会导致此台边缘点机器后续负载突然升高。
由此可见,现有的上传方式由于数据与边缘点机器绑定,无法实现数据的负载均衡,影响数据上传的稳定性。
发明内容
本发明实施例提供一种数据上传和接收方法、装置、设备及存储介质,以解决现有技术中的数据上传方式无法实现负载均衡影响上传稳定性的问题。
在本发明实施例的第一方面,提供了一种数据上传方法,应用于客户端设备,包括:
向接收端设备发送目标视频数据的上传请求;
在接收到所述接收端设备反馈的边缘服务器列表的情况下,在所述边缘服务器列表中选择可用的N个第一边缘服务器,N为大于或者等于1的整数;
通过所述N个第一边缘服务器向所述接收端设备上传分片视频数据,所述分片视频数据为所述目标视频数据经分片处理后得到;
其中,所述分片视频数据上传至所述接收端设备后,由所述接收端设备基于视频播放顺序进行实时分片重组。
在本发明实施例的第二方面,提供了一种数据接收方法,应用于接收端设备,包括:
在接收到客户端设备发送的目标视频数据的上传请求的情况下,向所述客户端设备反馈边缘服务器列表;
接收所述客户端设备通过可用的N个第一边缘服务器上传的分片视频数据,所述分片视频数据为所述目标视频数据经分片处理后得到,所述N个第一边缘服务器由所述客户端设备在所述边缘服务器列表中选择,N为大于或者等于1的整数;
按照视频播放顺序,对接收到的所述分片视频数据进行实时分片重组,得到所述目标视频数据对应的重组数据。
在本发明实施例的第三方面,提供了一种数据上传装置,应用于客户端设备,包括:
发送模块,用于向接收端设备发送目标视频数据的上传请求;
第一选择模块,用于在接收到所述接收端设备反馈的边缘服务器列表的情况下,在所述边缘服务器列表中选择可用的N个第一边缘服务器,N为大于或者等于1的整数;
第一上传模块,用于通过所述N个第一边缘服务器向所述接收端设备上传分片视频数据,所述分片视频数据为所述目标视频数据经分片处理后得到;
其中,所述分片视频数据上传至所述接收端设备后,由所述接收端设备基于视频播放顺序进行实时分片重组。
在本发明实施例的第四方面,提供了一种数据接收装置,应用于接收端设备,包括:
第一反馈模块,用于在接收到客户端设备发送的目标视频数据的上传请求的情况下,向所述客户端设备反馈边缘服务器列表;
第一接收模块,用于接收所述客户端设备通过可用的N个第一边缘服务器上传的分片视频数据,所述分片视频数据为所述目标视频数据经分片处理后得到,所述N个第一边缘服务器由所述客户端设备在所述边缘服务器列表中选择,N为大于或者等于1的整数;
重组模块,用于按照视频播放顺序,对接收到的所述分片视频数据进行实时分片重组,得到所述目标视频数据对应的重组数据。
在本发明实施例的第五方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第一方面所述的数据上传方法或者第二方面所述的数据接收方法。
在本发明实施的第六方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面所述的数据上传方法或者第二方面所述的数据接收方法。
在本发明实施的第七方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的数据上传方法或者第二方面所述的数据接收方法。
本发明实施例至少包括以下技术效果:
在客户端设备向接收端设备发送目标视频数据的上传请求后,接收接收端设备反馈的边缘服务器列表,在边缘服务器列表中选择可用的N个第一边缘服务器,通过N个第一边缘服务器向接收端设备上传目标视频数据对应的分片视频数据,可以实现客户端设备选择用于数据上传的边缘服务器,而非接收端设备分配,解耦目标视频数据与边缘服务器的绑定关系,以分片形式进行负载均衡,增强数据上传的稳定性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例提供的数据上传方法的示意图;
图2为本发明实施例提供的数据接收方法的示意图;
图3为本发明实施例客户端设备、接收端设备、生产端设备交互的示意图;
图4为本发明实施例提供的数据上传装置的示意图;
图5为本发明实施例提供的数据接收装置的示意图;
图6为本发明实施例提供的电子设备的框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
本发明实施例,客户端通过选择的至少一个传输入口上传分片视频数据,可以解耦视频数据与上传机的绑定关系,以分片而非文件粒度进行负载均衡,增强数据上传的稳定性。
下面对本发明实施例提供的数据上传方法进行详细介绍,本发明实施例提供的数据上传方法应用于客户端设备,如图1所示,该方法包括:
步骤101、向接收端设备发送目标视频数据的上传请求。
客户端设备基于与接收端设备之间的通信,向接收端设备发送目标视频数据的上传请求,以请求向接收端设备上传目标视频数据。接收端设备在允许客户端设备上传目标视频数据时,可以向客户端设备反馈边缘服务器列表。
步骤102、在接收到所述接收端设备反馈的边缘服务器列表的情况下,在所述边缘服务器列表中选择可用的N个第一边缘服务器,N为大于或者等于1的整数。
客户端设备在接收到边缘服务器列表之后,可以在边缘服务器列表中选择可用的N个第一边缘服务器,这里的N的取值为大于或者等于1的整数,其中,在边缘服务器列表中,每个边缘服务器对应有是否处于空闲状态的标识,以便于客户端设备进行选择。
需要说明的是,边缘服务器是跟客户端设备直接发生联系的前端服务器,为用户提供一个进入网络的通道和与其它服务器设备通讯的功能。在本实施例中,边缘服务器作为上传机,实现转发功能。
步骤103、通过所述N个第一边缘服务器向所述接收端设备上传分片视频数据,所述分片视频数据为所述目标视频数据经分片处理后得到;其中,所述分片视频数据上传至所述接收端设备后,由所述接收端设备基于视频播放顺序进行实时分片重组。
客户端设备在边缘服务器列表中选择N个第一边缘服务器之后,可以通过N个第一边缘服务器向接收端设备上传分片视频数据,在上传分片视频数据之前,需要对目标视频数据进行分片处理,以得到分片视频数据。在将分片视频数据上传至接收端设备之后,由接收端设备根据视频播放顺序对分片视频数据进行实时分片重组。
由于客户端设备通过选择的N个第一边缘服务器上传分片视频数据,而非通过接收端设备分配的边缘服务器上传分片数据,可以无需形成目标视频数据与边缘服务器的绑定关系,实现以分片形式进行负载均衡,增强数据上传的稳定性。
本发明上述实施过程,通过向接收端设备发送目标视频数据的上传请求,接收接收端设备反馈的边缘服务器列表,在边缘服务器列表中选择可用的N个第一边缘服务器,通过N个第一边缘服务器向接收端设备上传目标视频数据对应的分片视频数据,可以实现客户端设备选择用于数据上传的边缘服务器,而非接收端设备分配,解耦目标视频数据与边缘服务器的绑定关系,以分片形式进行负载均衡,增强数据上传的稳定性。
在本发明一可选实施例中,在所述分片视频数据未完成上传、所述客户端设备与所述N个第一边缘服务器中的至少一个中断连接的情况下,还包括:
在所述边缘服务器列表中选择可用的至少一个第二边缘服务器;
通过所述至少一个第二边缘服务器和与所述客户端设备保持连接的所述第一边缘服务器,继续向所述接收端设备上传剩余的所述分片视频数据。
在客户端设备通过选择的N个第一边缘服务器向接收端设备上传分片视频数据之后,若出现分片视频数据未完成上传、但客户端设备与N个第一边缘服务器中的至少一个中断连接的情况,则可以在边缘服务器列表中继续选择可用的至少一个第二边缘服务器,然后通过选择的至少一个第二边缘服务器和与客户端设备保持连接的第一边缘服务器,继续上传剩余的分片视频数据。
在N的取值为1时,即客户端设备选择可用的一个第一边缘服务器进行分片视频数据上传的场景,在客户端设备与第一边缘服务器中断连接时,客户端设备可以在边缘服务器列表中选择可用的至少一个第二边缘服务器,进行分片视频数据的续传,解除分片视频数据与第一边缘服务器的绑定关系,保证分片视频数据上传的连续性,无需等待中断连接的第一边缘服务器恢复连接后再上传,避免出现在客户端设备与第一边缘服务器中断连接时无法续传的情况。
在N为大于或者等于2的整数时,即客户端设备选择可用的至少两个第一边缘服务器进行分片视频数据上传的场景,由于通过至少两个第一边缘服务器进行分片视频数据的上传,可以实现多传输入口上传,解除分片视频数据与单个边缘服务器的绑定关系,进而以分片形式进行负载均衡,增强数据上传的稳定性。
针对客户端设备选择可用的至少两个第一边缘服务器进行分片视频数据上传的场景,在至少一个边缘服务器与客户端设备中断连接时,客户端设备可以选择至少一个第二边缘服务器,以通过选择的至少一个第二边缘服务器以及与客户端保持连接的第一边缘服务器,继续上传剩余的分片视频数据,保证上传速率,避免出现由于至少一个第一边缘服务器与客户端设备中断连接上传速率大幅度下降的情况。其中,若至少两个第一边缘服务器均与客户端设备中断连接,通过选择至少一个第二边缘服务器,可以保证分片视频数据的续传,无需等待中断连接的第一边缘服务器恢复连接后再上传。
其中,所选择的第二边缘服务器的数量和与客户端设备中断连接的第一边缘服务器的数量可以相等或者不等。若基于N个第一边缘服务器上传分片数据时的上传速率满足需求,客户端设备所选择的第二边缘服务器的数量可以和与客户端设备中断连接的第一边缘服务器的数量相等,此时可以在中断连接前后采用相同数量的边缘服务器上传分片视频数据,实现在中断连接前后保持相同的上传速率。若基于N个第一边缘服务器上传分片数据时的上传速率不满足需求(上传速率慢),客户端设备所选择的第二边缘服务器的数量可以大于与客户端设备中断连接的第一边缘服务器的数量,此时可以实现在中断连接后对应的边缘服务器的数量大于中断连接前对应的边缘服务器的数量,进而在中断连接后提升上传速率。若基于N个第一边缘服务器上传分片数据时的上传速率过快,客户端设备所选择的第二边缘服务器的数量可以小于与客户端设备中断连接的第一边缘服务器的数量,此时可以实现中断连接后对应的边缘服务器的数量小于中断连接前对应的边缘服务器的数量,进而在中断连接后降低上传速率。上述所提及的中断连接为至少一个第一边缘服务器与客户端设备中断连接。
本发明上述实施过程,针对分片视频数据未完成上传但客户端设备与N个第一边缘服务器中的至少一个中断连接的情况,通过继续选择可用的至少一个第二边缘服务器,基于选择的至少一个第二边缘服务器和与客户端设备保持连接的第一边缘服务器进行分片视频数据的续传,可以无需等待中断连接的第一边缘服务器恢复连接后再上传,可以解耦分片视频数据与边缘服务器的绑定关系,以分片形式进行负载均衡,提高上传效率,增强数据上传的稳定性。
在本发明一可选实施例中,所述向接收端设备发送目标视频数据的上传请求之后,还包括:
接收所述接收端设备反馈的用于区别所述目标视频数据的全局唯一标识;
所述通过所述N个第一边缘服务器向所述接收端设备上传分片视频数据,包括:
通过所述N个第一边缘服务器,向所述接收端设备上传携带所述全局唯一标识和播放顺序标号的所述分片视频数据,以使得所述接收端设备根据所述全局唯一标识对所述目标视频数据对应的分片视频数据进行识别、根据所述播放顺序标号确定所述视频播放顺序。
客户端设备在向接收端设备发送目标视频数据的上传请求之后,可以接收接收端设备反馈的用于区别目标视频数据的全局唯一标识,所接收的全局唯一标识可以作为上传请求对应的请求应答。其中,接收端设备可以在反馈全局唯一标识的同时,向客户端设备发送边缘服务器列表,也可以在反馈全局唯一标识之后,向客户端设备发送边缘服务器列表。针对客户端设备而言,可以同时获取全局唯一标识以及边缘服务器列表,也可以先获取全局唯一标识,确定接收到上传请求对应的请求应答,然后在获取边缘服务器列表。
客户端设备在接收到用于区别目标视频数据的全局唯一标识之后,通过N个第一边缘服务器向接收端设备上传分片视频数据的过程具体为:通过N个第一边缘服务器,向接收端设备上传携带全局唯一标识和播放顺序标号的分片视频数据。即,客户端设备所上传的每个分片视频数据,均可以携带对应的目标视频数据的全局唯一标识以及分片视频数据在目标视频数据中对应的播放顺序标号。
针对接收端设备而言,在接收到携带全局唯一标识和播放顺序标号的分片视频数据之后,可以根据全局唯一标识确定分片视频数据归属于目标视频数据,根据播放顺序标号确定视频播放顺序,进而可以基于视频播放顺序对分片视频数据进行实时分片重组,以获取目标视频数据对应的重组数据。
需要说明的是,分片视频数据也可以携带编解码顺序标号、格式转化顺序标号,接收端设备可以根据编解码顺序标号确定编解码顺序、根据格式转化顺序标号确定格式转化顺序,由于视频需要顺序播放,因此视频播放顺序、编解码顺序、格式转化顺序都是一样的顺序。
本发明上述实施过程,通过接收接收端设备反馈的全局唯一标识,向接收端设备发送携带全局唯一标识以及播放顺序标号的分片视频数据,可以便于接收端设备基于全局唯一标识确定分片视频数据归属于目标视频数据、基于播放顺序标号确定视频播放顺序,保证分片重组的准确性。
以上为本发明实施例提供的数据上传方法的整体实施过程,通过向接收端设备发送目标视频数据的上传请求,接收接收端设备反馈的边缘服务器列表,在边缘服务器列表中选择可用的N个第一边缘服务器,通过N个第一边缘服务器向接收端设备上传目标视频数据对应的分片视频数据,可以实现客户端设备选择用于数据上传的边缘服务器,而非接收端设备分配,解耦目标视频数据与边缘服务器的绑定关系,以分片形式进行负载均衡,增强数据上传的稳定性。
进一步的,针对分片视频数据未完成上传、但客户端设备与N个第一边缘服务器中的至少一个中断连接的情况,通过继续选择可用的至少一个第二边缘服务器,基于选择的至少一个第二边缘服务器和与客户端设备保持连接的第一边缘服务器进行分片视频数据的续传,可以无需等待中断连接的第一边缘服务器恢复连接后再上传,以分片形式进行负载均衡,提高上传效率。
通过向接收端设备发送携带全局唯一标识以及播放顺序标号的分片视频数据,可以便于接收端设备基于全局唯一标识确定分片视频数据归属于目标视频数据、基于播放顺序标号确定视频播放顺序,保证分片重组的准确性。
本发明实施例还提供一种数据接收方法,应用于接收端设备,如图2所示,包括:
步骤201、在接收到客户端设备发送的目标视频数据的上传请求的情况下,向所述客户端设备反馈边缘服务器列表。
接收端设备基于与客户端设备之间的通信,接收客户端设备发送的目标视频数据的上传请求,在允许客户端设备上传目标视频数据时,可以向客户端设备反馈边缘服务器列表,其中,在边缘服务器列表中,每个边缘服务器对应有是否处于空闲状态的标识,以便于客户端设备选择可用的边缘服务器。
步骤202、接收所述客户端设备通过可用的N个第一边缘服务器上传的分片视频数据,所述分片视频数据为所述目标视频数据经分片处理后得到,所述N个第一边缘服务器由所述客户端设备在所述边缘服务器列表中选择,N为大于或者等于1的整数。
客户端设备在接收到边缘服务器列表之后,可以选择N个可用的第一边缘服务器,这里的N的取值为大于或者等于1的整数,实现客户端设备基于至少一个第一边缘服务器上传分片视频数据。接收端设备接收客户端设备通过可用的N个第一边缘服务器上传的分片视频数据,这里的分片视频数据即为目标视频数据对应的分片数据。客户端设备在上传分片视频数据之前,需要对目标视频数据进行分片处理,以得到分片视频数据。
步骤203、按照视频播放顺序,对接收到的所述分片视频数据进行实时分片重组,得到所述目标视频数据对应的重组数据。
接收端设备在接收到客户端设备上传的分片视频数据之后,可以按照视频播放顺序,对接收到的分片视频数据进行实时分片重组,通过实时分片重组,获取目标视频数据对应的重组数据。
其中,也可以按照编解码顺序、格式转化顺序对接收到的视频数据进行实时分片重组,由于视频需要顺序播放,因此不论采用哪种顺序进行实时分片重组,重组结果均相同,即,视频播放顺序、编解码顺序、格式转化顺序都是一样的顺序。
上述的实时分片重组,指的是在接收到可以进行重组的分片视频数据后,立即进行分片重组,实现数据重组的及时性,如存在分片视频数据1和分片视频数据3,则可以将二者重组,分片视频数据2的位置空缺。重组的过程即为确定分片视频数据的顺序标号,将分片视频数据聚合成顺序有效的数据的过程,可以理解为确定分片视频数据的次序、进行分片视频数据的有效拼接。
本发明上述实施过程,在接收到客户端设备发送的目标视频数据的上传请求之后,反馈边缘服务器列表,由客户端设备在边缘服务器列表中选择可用的N个第一边缘服务器,接收客户端设备通过N个第一边缘服务器上传的目标视频数据对应的分片视频数据,并对分片视频数据进行分片重组,可以实现由客户端设备选择上传的边缘服务器,而非接收端设备分配,解耦目标视频数据与边缘服务器的绑定关系,以分片形式进行负载均衡,增强数据接收的稳定性。
在本发明一可选实施例中,在所述分片视频数据未完成接收、所述客户端设备与所述N个第一边缘服务器中的至少一个中断连接的情况下,还包括:
接收所述客户端设备通过可用的至少一个第二边缘服务器以及与所述客户端设备保持连接的所述第一边缘服务器,所上传的剩余的所述分片视频数据;
其中,所述至少一个第二边缘服务器由所述客户端设备在所述边缘服务器列表中选择。
在接收端设备未完成分片视频数据的接收、但客户端设备与N个第一边缘服务器中的至少一个中断连接时,可以由客户端设备继续选择可用的至少一个第二边缘服务器,通过选择的至少一个第二边缘服务器和与客户端设备保持连接的第一边缘服务器,上传剩余的分片视频数据,接收端设备接收客户端设备上传的剩余的分片视频数据。
其中,客户端设备所选择的第二边缘服务器的数量和与客户端设备中断连接的第一边缘服务器的数量可以相等或者不等。在客户端所选择的第二边缘服务器的数量和与客户端设备中断连接的第一边缘服务器的数量相等时,可以实现在中断连接前后接收相同数量的边缘服务器上传的分片视频数据;在客户端设备所选择的第二边缘服务器的数量大于与客户端设备中断连接的第一边缘服务器的数量时,可以实现在中断连接后基于相对多数量的边缘服务器接收分片视频数据;在客户端设备所选择的第二边缘服务器的数量小于与客户端设备中断连接的第一边缘服务器的数量时,可以实现在中断连接后基于相对少数量的边缘服务器接收分片视频数据。
本发明上述实施过程,针对分片视频数据未接收完成但客户端设备与N个第一边缘服务器中的至少一个中断连接的情况,可以接收客户端通过至少一个第二边缘服务器和与客户端设备保持连接的第一边缘服务器所上传的分片视频数据,保证数据接收的连续性,提高接收效率,增强数据接收的稳定性。
在本发明一可选实施例中,在接收到客户端设备发送的目标视频数据的上传请求后,还包括:
生成用于区别所述目标视频数据的全局唯一标识;
向所述客户端设备反馈所生成的所述全局唯一标识。
接收端设备可以接收多个客户端设备以分片形式上传的视频,也可以仅接收某一个客户端设备以分片形式上传的视频,为了区分不同的视频,以保证分片重组的准确性,可以针对上传的每个视频分配一视频标识。
在接收到客户端设备发送的目标视频数据的上传请求之后,可以生成用于区别目标视频数据的全局唯一标识,将全局唯一标识作为上传请求对应的请求应答反馈至客户端设备。其中,接收端设备可以在反馈全局唯一标识的同时,向客户端设备发送边缘服务器列表,也可以在反馈全局唯一标识之后,向客户端设备发送边缘服务器列表。针对客户端设备而言,可以同时获取全局唯一标识以及边缘服务器列表,也可以先获取全局唯一标识,确定接收到上传请求对应的请求应答,然后在获取边缘服务器列表。
本发明上述实施过程,通过基于上传请求生成全局唯一标识并将所生成的全局唯一标识发送至客户端设备,可以使得客户端设备发送携带全局唯一标识的分片视频数据,以便于接收端设备对接收到的分片视频数据进行有效性识别。
在上一实施例的基础上,所述接收所述客户端设备通过可用的N个第一边缘服务器上传的分片视频数据,包括:
接收所述客户端设备通过所述N个第一边缘服务器上传的、携带所述全局唯一标识和播放顺序标号的所述分片视频数据;
在接收到所述客户端设备上传的所述分片视频数据之后,还包括:
根据所述全局唯一标识确定所述分片视频数据对应于所述目标视频数据、根据所述播放顺序标号确定所述视频播放顺序。
接收端设备在接收客户端设备通过可用的N个第一边缘服务器上传的分片视频数据时,可以接收携带全局唯一标识和播放顺序标号的分片视频数据,在接收到携带全局唯一标识和播放顺序标号的分片视频数据之后,可以根据全局唯一标识确定分片视频数据对应于目标视频数据、根据播放顺序标号确定视频播放顺序,进而可以基于视频播放顺序对分片视频数据进行实时分片重组,以获取目标视频数据对应的重组数据。
需要说明的是,分片视频数据也可以携带编解码顺序标号、格式转化顺序标号,接收端设备可以根据编解码顺序标号确定编解码顺序、根据格式转化顺序标号确定格式转化顺序,由于视频需要顺序播放,因此不论采用哪种顺序进行实时分片重组,重组结果均相同,即,视频播放顺序、编解码顺序、格式转化顺序都是一样的顺序。
本发明上述实施过程,通过接收客户端设备上传的携带全局唯一标识和播放顺序标号的分片视频数据,可以基于全局唯一标识确定分片视频数据归属于目标视频数据、基于播放顺序标号确定视频播放顺序,保证分片重组的准确性。
在本发明一可选实施例中,接收端设备在生成所述全局唯一标识,向所述客户端设备反馈所生成的所述全局唯一标识的同时,还包括:
通知生产端设备所述目标视频数据的状态为可获取状态、所述目标视频数据的标识为所生成的所述全局唯一标识;
所述方法还包括:
在接收到所述生产端设备发送的携带所述全局唯一标识的视频读取请求的情况下,顺序获取所述目标视频数据对应的重组数据,并反馈所获取的所述重组数据作为所述视频读取请求的应答。
接收端设备在向客户端设备反馈所生成的全局唯一标识的同时,可以向生产端设备(空闲状态的生产端设备)发送通知消息,以通知生产端设备目标视频数据的状态为可获取状态以及目标视频数据的标识为所生成的全局唯一标识。这里的同时具体指在可接受的时间段范围内。通过向生产端设备发送通知消息,可以使得生产端设备获知目标视频数据为可获取状态,并获知目标视频数据对应的全局唯一标识,进而可以基于通知消息向接收端设备发送携带全局唯一标识的视频读取请求。
在接收到生产端设备发送的携带全局唯一标识的视频读取请求的情况下,可以根据视频读取请求,顺序获取目标视频数据对应的重组数据,然后将获取的重组数据反馈至生产端设备,以实现对视频读取请求的应答,进而可以实现将重组数据实时同步至生产端设备,由生产端设备进行视频生产,保证视频上传、视频生产的并行化,以解决由于视频上传、视频生产串行执行,导致的视频生产效率低,增加了视频观看用户的等待时间的问题,为视频快速生产、实时归档提供可行性方案。
通常情况下,生产端设备需要按照视频播放顺序依次请求不同的分片视频数据,以按照视频播放顺序进行视频生产,在此种情况下,接收端设备可以根据视频读取请求,按照视频播放顺序获取重组数据反馈至生产端设备。
针对生产端设备同时请求多个分片视频数据的情况,可以依据重组数据的生成顺序获取目标视频数据对应的重组数据,例如,生产端设备同时请求分片视频数据1至分片视频数据5,在分片视频数据2和分片视频数据3到达且进行分片重组后,将重组数据反馈至生产端设备,在分片视频数据1到达且进行分片重组后,将重组数据反馈至生产端设备,在分片视频数据4和分片视频数据5到达且进行分片重组后,将重组数据反馈至生产端设备,实现依据重组数据的生成顺序获取目标视频数据对应的重组数据并实时反馈至生产端设备。
针对生产端设备仅请求某一个分片视频数据的情况,则可以在该分片视频数据到达时对其进行分片重组,获取对应的重组数据反馈至生产端设备。针对生产端设备依次请求某几个分片视频数据的情况,可以根据请求顺序,获取重组数据并反馈至生产端设备。
本发明上述实施过程,在向客户端设备反馈全局唯一标识的同时,向生产端设备发送通知消息,根据客户端上传的分片视频数据进行实时分片重组,在接收到生产端设备的视频读取请求时,顺序获取目标视频数据对应的重组数据并反馈,以使得生产端设备进行实时视频生产,可以实现视频上传与生产的并行,节约从上传到生产的时间,实现视频快速生产,提升效率,降低视频观看用户的等待时间。
可选的,接收端设备在顺序获取目标视频数据对应的重组数据时,若未获取到目标重组数据,则可以基于重试或者阻塞获取目标重组数据,这里的目标重组数据指的是:最后一个获取并反馈的重组数据之后的第一个重组数据。
其中,在基于重试获取目标重组数据时,需要按预设的重试时间间隔重新获取目标重组数据,这里的重试时间间隔为预先设定,且重试的次数需要小于设定的预设检测次数。在基于阻塞获取目标重组数据时,需要阻塞生产端设备发送的视频读取请求,等待目标重组数据的到来,在目标重组数据到达时,可以取消阻塞,并获取目标重组数据。
针对未获取到目标重组数据的情况,对应于两种情况,第一种情况为:未接收到上传的分片视频数据,第二种情况为得到的目标视频数据对应的重组数据中不包括目标重组数据。
若在接收到视频读取请求后的第一预设时长内,未接收到上传的分片视频数据时,可以按照预设的重试时间间隔,重新检测是否接收到客户端设备上传的分片视频数据,并对重新检测的次数进行记录,若仍未接收到客户端设备上传的分片视频数据,当再次达到预设的重试时间间隔时,判断记录的重新检测的次数是否小于预设检测次数,若小于,则可以继续重新检测是否接收到客户端设备上传的分片视频数据,直至记录的重新检测的次数达到预设检测次数。其中,在经过小于预设检测次数的重新检测接收到目标重组数据时,则获取目标重组数据并停止检测。
若在记录的次数达到预设检测次数时,仍未接收到目标视频数据,可以阻塞生产端设备发送的视频读取请求,以等待目标重组数据的到来,在目标重组数据到达时,可以取消阻塞,并获取已到达的目标视频数据。
需要说明的是,由于接收端设备在针对上传请求反馈的同时向生产端设备发送通知消息,以使得生产端设备根据通知消息发送视频读取请求,因此会存在接收端设备已接收到视频读取请求但是还未接收到客户端设备上传的分片视频数据的情况,因此可以在接收到视频读取请求后,等待第一预设时长,若在第一预设时长内未接收到上传的分片视频数据,则可以按照预设的重试时间间隔,重新检测是否接收到客户端设备上传的分片视频数据,其中重试时间间隔的起点可以为接收到视频读取请求的时刻,此时重试时间间隔对应的时长大于第一预设时长。重试时间间隔的起点也可以为接收到视频读取请求且等待第一预设时长后对应的时刻。
若在接收到视频读取请求后的第二预设时长内未接收到分片视频数据的情况下,可以阻塞视频读取请求进行等待,在目标重组数据到达时取消阻塞。需要说明的是,这里的第二预设时长可以小于第一预设时长,即在相对短的时间内未接收到分片视频数据时,可以先阻塞视频读取请求,在相对长的时间内未接收到分片视频数据时,可以进行分片视频数据的重新检测。第二预设时长也可以大于第一预设时长,即在相对短的时间内未接收到分片视频数据时,可以重新检测,在相对长的时间内未接收到分片视频数据时,阻塞视频读取请求。
针对第二种情况而言,在得到的目标视频数据对应的重组数据中不包括目标重组数据时,表明可以正常接收分片视频数据,此时可以阻塞视频读取请求进行等待,在目标重组数据到达时取消阻塞。
可选的,在接收到所述生产端设备发送的携带所述全局唯一标识的视频读取请求的情况下,顺序获取所述目标视频数据对应的重组数据时,包括:
根据所述视频读取请求中携带的全局唯一标识,确定所述目标视频数据;
调用HTTP服务,顺序读取所述目标视频数据对应的数据流;
将所读取的数据流转化为POSIX文件,并作为所述目标视频数据对应的重组数据。
接收端设备在接收到生产端设备发送的目标视频数据的视频读取请求的情况下,可以根据视频读取请求中携带的全局唯一标识,确定生产端设备所请求的视频数据为目标视频数据。由于互联网使用的最通用的协议为HTTP协议(HyperText Transfer Protocol,超文本传输协议),在确定目标视频数据之后,可以调用HTTP服务,以通过HTTP服务顺序读取目标视频数据对应的数据流,实现通过HTTP协议流出口输出目标视频数据对应的HTTP数据流。
在输出HTTP数据流之后,再通过协议映射将HTTP数据流转为POSIX(PortableOperating System Interface,可移植操作系统接口)文件。通过将HTTP数据流转为POSIX文件,可以实现将网络数据转为用户态数据,从而支持处理工具的操作,这里的处理包括但不限于生产、归档、编码、数据签名计算、数据加解密等。这样对于处理工具而言,处理的是一个本地文件,但实际上此文件是源源不断从客户端设备处上传来的,可以实现在客户端设备上传数据的同时进行数据的处理。
通过基于生产端设备发送的携带全局唯一标识的视频读取请求,确定所请求的目标视频数据,可以保证向生产端设备反馈匹配的数据流,在确定目标视频数据之后,调用HTTP服务,顺序读取目标视频数据对应的数据流,将读取的数据流转化为POSIX文件反馈至生产端设备,可以基于通用协议读取数据流,将网络数据转为用户态数据,使得生产端设备基于用户态数据进行视频生产。
以上为本发明实施例应用于接收端设备的数据接收方法的整体实施流程,在接收到客户端设备发送的目标视频数据的上传请求之后,反馈边缘服务器列表,由客户端设备在边缘服务器列表中选择可用的N个第一边缘服务器,接收客户端设备通过N个第一边缘服务器上传的目标视频数据对应的分片视频数据,并对分片视频数据进行分片重组,可以实现由客户端设备选择用于数据上传的边缘服务器,而非接收端设备分配,解耦目标视频数据与边缘服务器的绑定关系,以分片形式进行负载均衡,增强数据接收的稳定性。
进一步的,针对分片视频数据未接收完成但客户端设备与N个第一边缘服务器中的至少一个中断连接的情况,可以接收客户端设备通过至少一个第二边缘服务器和与客户端设备保持连接的第一边缘服务器所上传的分片视频数据,保证数据接收的连续性,提高接收效率,增强数据接收的稳定性。
通过接收客户端设备上传的携带全局唯一标识和播放顺序标号的分片视频数据,可以基于全局唯一标识确定分片视频数据归属于目标视频数据、基于播放顺序标号确定视频播放顺序,保证分片重组的准确性。
通过向客户端设备反馈全局唯一标识的同时,向生产端设备发送通知消息,根据客户端上传的分片视频数据进行实时分片重组,在接收到生产端设备的视频读取请求时,顺序获取目标视频数据对应的重组数据并反馈,使得生产端设备进行实时视频生产,可以实现视频上传与生产的并行,节约从上传到生产的时间,实现视频快速生产,提升效率,降低视频观看用户的等待时间。
参见图3所示,为客户端设备、接收端设备以及生产端设备交互的过程,客户端设备向接收端设备的模块C发送目标视频数据的上传请求,模块C针对接收到的上传请求生成目标视频数据对应的全局唯一标识,将全局唯一标识作为上传请求的应答反馈至客户端设备,模块C在反馈应答的同时,向处于空闲状态的生产端设备发送通知消息,通知生产端设备目标视频数据的状态为可获取状态且目标视频数据的标识为所生成的全局唯一标识。
接收端设备的模块A接收客户端设备通过选择的至少一个第一边缘服务器上传的分片视频数据,这里的分片视频数据为对目标视频数据进行分片处理后得到,将分片视频数据写入对应的目标缓存区域以进行分片重组,模块A可以向接收端设备的模块B提供读数据的HTTP服务。
处于空闲状态的生产端设备基于接收到的通知消息,向模块B发送携带全局唯一标识的视频读取请求,模块B在接收到视频读取请求之后,确定所请求的目标视频数据,调用HTTP服务,顺序读取目标视频数据对应的数据流,将所读取的数据流转化为POSIX文件,并作为目标视频数据对应的重组数据,反馈至生产端设备。
若目标视频数据对应的数据流中缺少数据,如缺少分片视频数据5,则模块B将依据其他分片视频数据生成的重组数据反馈至生产端设备,然后阻塞视频读取请求,等待分片视频数据5的到达,在分片视频数据5到达之后,可以解除阻塞,反馈分片视频数据5。
上述实施过程,客户端设备通过选择的至少一个第一边缘服务器上传分片视频数据,可以解耦视频与上传机的绑定,增强数据上传的稳定性;接收端设备在向客户端设备反馈目标视频数据的上传请求的同时通知生产端设备,可以使得生产端设备基于接收到的通知发送视频读取请求,接收端设备基于视频读取请求实时向生产端设备反馈重组数据,使得生产端设备进行实时视频生产,实现视频上传与生产的并行;且可以基于通用协议读取目标视频数据的数据流,将网络数据转为用户态数据,使得生产端设备基于用户态数据进行视频生产。
本发明实施例在应用于实时视频生产的情况下,还可以应用于其他类型的数据处理,如数据归档、数据编码、数据签名计算、数据加解密等,针对视频生产而言,通过将上传视频与视频生产并行操作,可以极大地降低从上传到生产的时间,实现视频快速速生产,降低视频观看用户的等待时间。
本发明实施例还提供一种数据上传装置,应用于客户端设备,如图4所示,包括:
发送模块401,用于向接收端设备发送目标视频数据的上传请求;
第一选择模块402,用于在接收到所述接收端设备反馈的边缘服务器列表的情况下,在所述边缘服务器列表中选择可用的N个第一边缘服务器,N为大于或者等于1的整数;
第一上传模块403,用于通过所述N个第一边缘服务器向所述接收端设备上传分片视频数据,所述分片视频数据为所述目标视频数据经分片处理后得到;
其中,所述分片视频数据上传至所述接收端设备后,由所述接收端设备基于视频播放顺序进行实时分片重组。
可选的,在所述分片视频数据未完成上传、所述客户端设备与所述N个第一边缘服务器中的至少一个中断连接的情况下,该装置还包括:
第二选择模块,用于在所述边缘服务器列表中选择可用的至少一个第二边缘服务器;
第二上传模块,用于通过所述至少一个第二边缘服务器和与所述客户端设备保持连接的所述第一边缘服务器,继续向所述接收端设备上传剩余的所述分片视频数据。
可选的,该装置还包括:
第二接收模块,用于在所述发送模块向接收端设备发送目标视频数据的上传请求之后,接收所述接收端设备反馈的用于区别所述目标视频数据的全局唯一标识;
所述第一上传模块进一步用于:
通过所述N个第一边缘服务器,向所述接收端设备上传携带所述全局唯一标识和播放顺序标号的所述分片视频数据,以使得所述接收端设备根据所述全局唯一标识对所述目标视频数据对应的分片视频数据进行识别、根据所述播放顺序标号确定所述视频播放顺序。
对于装置实施例而言,由于其与数据上传方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供一种数据接收装置,应用于接收端设备,如图5所示,包括:
第一反馈模块501,用于在接收到客户端设备发送的目标视频数据的上传请求的情况下,向所述客户端设备反馈边缘服务器列表;
第一接收模块502,用于接收所述客户端设备通过可用的N个第一边缘服务器上传的分片视频数据,所述分片视频数据为所述目标视频数据经分片处理后得到,所述N个第一边缘服务器由所述客户端设备在所述边缘服务器列表中选择,N为大于或者等于1的整数;
重组模块503,用于按照视频播放顺序,对接收到的所述分片视频数据进行实时分片重组,得到所述目标视频数据对应的重组数据。
可选的,在所述分片视频数据未完成接收、所述客户端设备与所述N个第一边缘服务器中的至少一个中断连接的情况下,该装置还包括:
第三接收模块,用于接收所述客户端设备通过可用的至少一个第二边缘服务器以及与所述客户端设备保持连接的所述第一边缘服务器,所上传的剩余的所述分片视频数据;
其中,所述至少一个第二边缘服务器由所述客户端设备在所述边缘服务器列表中选择。
可选的,该装置还包括:
生成模块,用于在所述第一反馈模块接收到客户端设备发送的目标视频数据的上传请求后,生成用于区别所述目标视频数据的全局唯一标识;
第二反馈模块,用于向所述客户端设备反馈所生成的所述全局唯一标识。
可选的,所述第一接收模块进一步用于:
接收所述客户端设备通过所述N个第一边缘服务器上传的、携带所述全局唯一标识和播放顺序标号的所述分片视频数据;
在接收到所述客户端设备上传的所述分片视频数据之后,该装置还包括:
确定模块,用于根据所述全局唯一标识确定所述分片视频数据对应于所述目标视频数据、根据所述播放顺序标号确定所述视频播放顺序。
可选的,该装置还包括:
通知模块,用于在所述第二反馈模块向所述客户端设备反馈所生成的所述全局唯一标识的同时,通知生产端设备所述目标视频数据的状态为可获取状态、所述目标视频数据的标识为所生成的所述全局唯一标识;
该装置还包括:
获取反馈模块,用于在接收到所述生产端设备发送的携带所述全局唯一标识的视频读取请求的情况下,顺序获取所述目标视频数据对应的重组数据,并反馈所获取的所述重组数据作为所述视频读取请求的应答。
对于装置实施例而言,由于其与数据接收方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供了一种电子设备,如图6所示,包括处理器61、通信接口62、存储器63和通信总线64,其中,处理器61,通信接口62,存储器63通过通信总线64完成相互间的通信,电子设备可以为客户端设备或者接收端设备。
存储器63,用于存放计算机程序;在电子设备为客户端设备时,所述处理器61,用于执行存储器63上所存放的程序,实现如下步骤:向接收端设备发送目标视频数据的上传请求;在接收到接收端设备反馈的边缘服务器列表的情况下,在边缘服务器列表中选择可用的N个第一边缘服务器,N为大于或者等于1的整数;通过N个第一边缘服务器向接收端设备上传分片视频数据,分片视频数据为目标视频数据经分片处理后得到;其中,分片视频数据上传至接收端设备后,由接收端设备基于视频播放顺序进行实时分片重组。
在电子设备为接收端设备时,所述处理器61,用于执行存储器63上所存放的程序,实现如下步骤:在接收到客户端设备发送的目标视频数据的上传请求的情况下,向客户端设备反馈边缘服务器列表;接收客户端设备通过可用的N个第一边缘服务器上传的分片视频数据,分片视频数据为目标视频数据经分片处理后得到,N个第一边缘服务器由客户端设备在边缘服务器列表中选择,N为大于或者等于1的整数;按照视频播放顺序,对接收到的分片视频数据进行实时分片重组,得到目标视频数据对应的重组数据。处理器,在执行存储器上所存放的程序时,还可以实现本发明实施例中数据上传方法或者数据接收方法的其他步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(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 (12)

1.一种数据上传方法,应用于客户端设备,其特征在于,包括:
向接收端设备发送目标视频数据的上传请求;
在接收到所述接收端设备反馈的边缘服务器列表的情况下,在所述边缘服务器列表中选择可用的N个第一边缘服务器,N为大于或者等于1的整数;所述边缘服务器列表中,每个边缘服务器对应有是否处于空闲状态的标识;所述客户端设备通过所述空闲状态的标识选择可用的所述第一边缘服务器;
通过所述N个第一边缘服务器向所述接收端设备上传分片视频数据,所述分片视频数据为所述目标视频数据经分片处理后得到;在N大于或者等于2的整数时,至少通过两个第一边缘服务器上传分片视频数据;
其中,所述分片视频数据上传至所述接收端设备后,由所述接收端设备基于视频播放顺序进行实时分片重组。
2.根据权利要求1所述的数据上传方法,其特征在于,在所述分片视频数据未完成上传、所述客户端设备与所述N个第一边缘服务器中的至少一个中断连接的情况下,还包括:
在所述边缘服务器列表中选择可用的至少一个第二边缘服务器;
通过所述至少一个第二边缘服务器和与所述客户端设备保持连接的所述第一边缘服务器,继续向所述接收端设备上传剩余的所述分片视频数据。
3.根据权利要求1所述的数据上传方法,其特征在于,所述向接收端设备发送目标视频数据的上传请求之后,还包括:
接收所述接收端设备反馈的用于区别所述目标视频数据的全局唯一标识;
所述通过所述N个第一边缘服务器向所述接收端设备上传分片视频数据,包括:
通过所述N个第一边缘服务器,向所述接收端设备上传携带所述全局唯一标识和播放顺序标号的所述分片视频数据,以使得所述接收端设备根据所述全局唯一标识对所述目标视频数据对应的分片视频数据进行识别、根据所述播放顺序标号确定所述视频播放顺序。
4.一种数据接收方法,应用于接收端设备,其特征在于,包括:
在接收到客户端设备发送的目标视频数据的上传请求的情况下,向所述客户端设备反馈边缘服务器列表;
接收所述客户端设备通过可用的N个第一边缘服务器上传的分片视频数据,所述分片视频数据为所述目标视频数据经分片处理后得到,所述N个第一边缘服务器由所述客户端设备在所述边缘服务器列表中选择,N为大于或者等于1的整数;所述边缘服务器列表中,每个边缘服务器对应有是否处于空闲状态的标识;所述客户端设备通过所述空闲状态的标识选择可用的所述第一边缘服务器;在N大于或者等于2的整数时,至少通过两个第一边缘服务器上传分片视频数据;
按照视频播放顺序,对接收到的所述分片视频数据进行实时分片重组,得到所述目标视频数据对应的重组数据。
5.根据权利要求4所述的数据接收方法,其特征在于,在所述分片视频数据未完成接收、所述客户端设备与所述N个第一边缘服务器中的至少一个中断连接的情况下,还包括:
接收所述客户端设备通过可用的至少一个第二边缘服务器以及与所述客户端设备保持连接的所述第一边缘服务器,所上传的剩余的所述分片视频数据;
其中,所述至少一个第二边缘服务器由所述客户端设备在所述边缘服务器列表中选择。
6.根据权利要求4所述的数据接收方法,其特征在于,在接收到客户端设备发送的目标视频数据的上传请求后,还包括:
生成用于区别所述目标视频数据的全局唯一标识;
向所述客户端设备反馈所生成的所述全局唯一标识。
7.根据权利要求6所述的数据接收方法,其特征在于,所述接收所述客户端设备通过可用的N个第一边缘服务器上传的分片视频数据,包括:
接收所述客户端设备通过所述N个第一边缘服务器上传的、携带所述全局唯一标识和播放顺序标号的所述分片视频数据;
在接收到所述客户端设备上传的所述分片视频数据之后,还包括:
根据所述全局唯一标识确定所述分片视频数据对应于所述目标视频数据、根据所述播放顺序标号确定所述视频播放顺序。
8.根据权利要求6所述的数据接收方法,其特征在于,在向所述客户端设备反馈所生成的所述全局唯一标识的同时,还包括:
通知生产端设备所述目标视频数据的状态为可获取状态、所述目标视频数据的标识为所生成的所述全局唯一标识;
所述方法还包括:
在接收到所述生产端设备发送的携带所述全局唯一标识的视频读取请求的情况下,顺序获取所述目标视频数据对应的重组数据,并反馈所获取的所述重组数据作为所述视频读取请求的应答。
9.一种数据上传装置,应用于客户端设备,其特征在于,包括:
发送模块,用于向接收端设备发送目标视频数据的上传请求;
第一选择模块,用于在接收到所述接收端设备反馈的边缘服务器列表的情况下,在所述边缘服务器列表中选择可用的N个第一边缘服务器,N为大于或者等于1的整数;所述边缘服务器列表中,每个边缘服务器对应有是否处于空闲状态的标识;所述客户端设备通过所述空闲状态的标识选择可用的所述第一边缘服务器;
第一上传模块,用于通过所述N个第一边缘服务器向所述接收端设备上传分片视频数据,所述分片视频数据为所述目标视频数据经分片处理后得到;在N大于或者等于2的整数时,至少通过两个第一边缘服务器上传分片视频数据;
其中,所述分片视频数据上传至所述接收端设备后,由所述接收端设备基于视频播放顺序进行实时分片重组。
10.一种数据接收装置,应用于接收端设备,其特征在于,包括:
第一反馈模块,用于在接收到客户端设备发送的目标视频数据的上传请求的情况下,向所述客户端设备反馈边缘服务器列表;
第一接收模块,用于接收所述客户端设备通过可用的N个第一边缘服务器上传的分片视频数据,所述分片视频数据为所述目标视频数据经分片处理后得到,所述N个第一边缘服务器由所述客户端设备在所述边缘服务器列表中选择,N为大于或者等于1的整数;所述边缘服务器列表中,每个边缘服务器对应有是否处于空闲状态的标识;所述客户端设备通过所述空闲状态的标识选择可用的所述第一边缘服务器;在N大于或者等于2的整数时,至少通过两个第一边缘服务器上传分片视频数据;
重组模块,用于按照视频播放顺序,对接收到的所述分片视频数据进行实时分片重组,得到所述目标视频数据对应的重组数据。
11.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现如权利要求1至3任一项所述的数据上传方法或者如权利要求4至8任一项所述的数据接收方法中的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至3任一项所述的数据上传方法或者如权利要求4至8任一项所述的数据接收方法中的步骤。
CN202110731100.1A 2021-06-29 2021-06-29 数据上传和接收方法、装置、设备及存储介质 Active CN113438499B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110731100.1A CN113438499B (zh) 2021-06-29 2021-06-29 数据上传和接收方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110731100.1A CN113438499B (zh) 2021-06-29 2021-06-29 数据上传和接收方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN113438499A CN113438499A (zh) 2021-09-24
CN113438499B true CN113438499B (zh) 2023-02-03

Family

ID=77757835

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110731100.1A Active CN113438499B (zh) 2021-06-29 2021-06-29 数据上传和接收方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN113438499B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113852642B (zh) * 2021-10-09 2023-05-09 珠海迈科智能科技股份有限公司 一种基于dvb标准的ts流分片上传方法及其装置
CN115361455B (zh) * 2022-08-22 2024-01-23 中能融合智慧科技有限公司 一种数据传输存储方法、装置以及计算机设备
CN115643453B (zh) * 2022-12-23 2023-03-21 北京安锐卓越信息技术股份有限公司 视频上传方法、系统、用户终端、服务器及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105872640A (zh) * 2015-12-07 2016-08-17 乐视云计算有限公司 一种直播视频的获取方法、装置及系统
CN109982160A (zh) * 2019-04-09 2019-07-05 北京奇艺世纪科技有限公司 一种视频上传的方法、装置、客户端设备及服务器
CN110213623A (zh) * 2019-06-03 2019-09-06 上海哔哩哔哩科技有限公司 视频上传方法、视频上传装置及计算机可读存储介质
CN110535890A (zh) * 2018-05-23 2019-12-03 杭州海康威视系统技术有限公司 文件上传的方法和装置
WO2020034082A1 (zh) * 2018-08-14 2020-02-20 海能达通信股份有限公司 基于切片的rtp流传输方法、装置、终端及服务器
CN111131450A (zh) * 2019-12-23 2020-05-08 北京奇艺世纪科技有限公司 文件上传方法、重组方法及装置
CN111193788A (zh) * 2019-12-24 2020-05-22 视联动力信息技术股份有限公司 一种音视频流负载均衡方法和装置
CN112511650A (zh) * 2020-12-22 2021-03-16 湖南新云网科技有限公司 一种视频上传方法、装置、设备及可读存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105872640A (zh) * 2015-12-07 2016-08-17 乐视云计算有限公司 一种直播视频的获取方法、装置及系统
CN110535890A (zh) * 2018-05-23 2019-12-03 杭州海康威视系统技术有限公司 文件上传的方法和装置
WO2020034082A1 (zh) * 2018-08-14 2020-02-20 海能达通信股份有限公司 基于切片的rtp流传输方法、装置、终端及服务器
CN109982160A (zh) * 2019-04-09 2019-07-05 北京奇艺世纪科技有限公司 一种视频上传的方法、装置、客户端设备及服务器
CN110213623A (zh) * 2019-06-03 2019-09-06 上海哔哩哔哩科技有限公司 视频上传方法、视频上传装置及计算机可读存储介质
CN111131450A (zh) * 2019-12-23 2020-05-08 北京奇艺世纪科技有限公司 文件上传方法、重组方法及装置
CN111193788A (zh) * 2019-12-24 2020-05-22 视联动力信息技术股份有限公司 一种音视频流负载均衡方法和装置
CN112511650A (zh) * 2020-12-22 2021-03-16 湖南新云网科技有限公司 一种视频上传方法、装置、设备及可读存储介质

Also Published As

Publication number Publication date
CN113438499A (zh) 2021-09-24

Similar Documents

Publication Publication Date Title
CN113438499B (zh) 数据上传和接收方法、装置、设备及存储介质
US20230155908A1 (en) Media stream monitoring
US8191099B2 (en) Automated analysis of collected field data for error detection
AU2019200652B2 (en) Using messaging associated with adaptive bitrate streaming to perform media monitoring for mobile platforms
CN111355971B (zh) 直播流传输方法、装置、cdn服务器及计算机可读介质
CN108023941B (zh) 语音控制方法及装置和电子设备
WO2017080428A1 (zh) 流媒体频道录制、回看方法、装置、服务器及存储介质
CN111935227A (zh) 通过浏览器上传文件的方法、浏览器和电子设备
CN114338651A (zh) 文件传输方法、装置、电子设备及可读存储介质
US20200366967A1 (en) Method and system for monitoring quality of streaming media
CN116261021A (zh) 一种视频流播放方法、装置、电子设备及存储介质
CN113438520B (zh) 数据处理方法、装置及系统
WO2015096745A1 (zh) 一种内容传送网络的数据处理方法与装置
US20120072942A1 (en) Broadcast-contents management apparatus and control method for use in a broadcast-contents management apparatus
CN115022676B (zh) 视频流的推送方法、装置、电子设备及可读介质
CN111291127A (zh) 一种数据同步方法、装置、服务器及存储介质
CN114448573B (zh) 一种报文处理方法及装置
CN111083067A (zh) 数据流拼接的方法、装置、存储介质和终端设备
CN114124941B (zh) m3u8格式文件下载方法、播放方法及m3u8格式文件下载系统
CN111314726B (zh) 一种用于cdn的配置数据添加方法、装置及系统
WO2018112804A1 (en) Handling a content user request in a content delivery network
CN114422831B (zh) 媒体播放方法及装置、电子设备和可读存储介质
US20090313317A1 (en) Wider Delivery Of Multimedia Content
CN116112531A (zh) 数据汇集方法、装置、设备及介质
JP6396882B2 (ja) 情報処理装置、メール送受信システムおよびメール送受信方法、並びにコンピュータ・プログラム

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