数据的云编辑方法、系统以及云编辑的客户端与流程

文档序号:11960091阅读:510来源:国知局
数据的云编辑方法、系统以及云编辑的客户端与流程

本发明涉及音视频编辑技术领域,特别是涉及一种数据的云编辑方法和一种云编辑的客户端,以及一种数据的云编辑系统。



背景技术:

目前,在对广电领域的电视节目、新闻、广告、后期等进行视频编辑时,所用编辑平台为专门用于视频编辑的客户端,而所用的视频编辑素材也是存储在专门的客户端(PC)上或者是内部共享存储上。

具体的视频编辑方案为:通过在该专门用于视频编辑的客户端上使用用于视频制作(例如节目制作)的编辑软件来获取上述视频编辑素材,并对该视频编辑素材进行视频编辑和制作。

由此可见,现有技术中的这种视频编辑方案在进行节目制作时需要在专门的机房进行节目编辑,所用素材也固定地存储于专门的存储设备或PC端。显然,其在编辑素材的存储和视频的编辑上都受到了很大的空间限制。

而随着互联网技术的不断发展,视频的编辑制作的网络化需求也在不断加大。因此,目前需要本领域技术人员迫切解决的一个技术问题就是:如何实现视频的网络化编辑从而克服视频编辑的空间限制,并为用户提供高效的视频编辑方案,以满足用户随时随地的视频编辑需求。



技术实现要素:

本发明实施例所要解决的技术问题是提供一种数据的云编辑方法和一种云编辑的客户端以及一种数据的云编辑系统,以解决视频编辑的空间受限视频编辑效率低和无法满足用户随时随地进行视频编辑的问题。

为了解决上述问题,根据本发明的一个方面,本发明公开了一种数据的云编辑方法,包括:

向云端的目标流媒体服务器发送第一连接请求;

在所述第一连接请求得到响应时,与所述目标流媒体服务器分配的目标流媒体服务建立连接;

向所述目标流媒体服务发送数据流读请求;

接收响应于所述数据流读请求的目标数据流;

对所述目标数据流编辑。

根据本发明的另一方面,本发明还公开了一种云编辑的客户端,包括:

第一连接请求模块,用于向云端的目标流媒体服务器发送第一连接请求;

连接模块,用于在所述第一连接请求得到响应时,与所述目标流媒体服务器分配的目标流媒体服务建立连接;

读请求模块,用于向所述目标流媒体服务发送数据流读请求;

第一接收模块,用于接收响应于所述数据流读请求的目标数据流;

编辑模块,用于对所述目标数据流编辑。

根据本发明的再一方面,本发明还公开了一种数据的云编辑系统,包括:

客户端和云端侧的流媒体服务器;

其中,所述客户端包括:

第一连接请求模块,用于向云端的目标流媒体服务器发送第一连接请求;

连接模块,用于在所述第一连接请求得到响应时,与所述目标流媒体服务器分配的目标流媒体服务建立连接;

读请求模块,用于向所述目标流媒体服务发送数据流读请求;

第一接收模块,用于接收响应于所述数据流读请求的目标数据流;

编辑模块,用于对所述目标数据流编辑;

所述云端侧的流媒体服务器包括:

分配模块,用于根据接收的所述第一连接请求分配目标流媒体服务至所述客户端,并建立所述客户端与所述目标流媒体服务之间的连接;

读取模块,用于根据接收的所述数据流读请求在本地读取目标数据流并发送至所述客户端。

与现有技术相比,本发明实施例包括以下优点:

本发明实施例可以在视频的编辑素材的读取上不受限于固定的存储设备或PC端,实现编辑素材在流形式上的读取;同时,对读取的数据流可以进行实时编辑制作,以实现视频随时随地的编辑播放,实现了视频的网络化编辑,并使所编辑得到的视频都是针对于当前接收的视频流数据的,保证了所编辑得到的视频的实时性。

附图说明

图1是本发明的一种数据的云编辑方法实施例的步骤流程图;

图2是本发明的一种云编辑的客户端实施例的结构框图;

图3是本发明的另一种云编辑的客户端实施例的结构框图;

图4是本发明的数据的云编辑系统实施例的系统框图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

参照图1,示出了本发明的一种数据的云编辑方法实施例的步骤流程图,具体可以包括如下步骤:

步骤101,向云端的目标流媒体服务器发送第一连接请求;

步骤103,在所述第一连接请求得到响应时,与所述目标流媒体服务器分配的目标流媒体服务建立连接;

步骤105,向所述目标流媒体服务发送数据流读请求;

其中,可以实时的向目标流媒体服务发送数据流读请求;

步骤107,接收响应于所述数据流读请求的目标数据流;

其中,可以实时的接收响应于所述数据流读请求的目标数据流;

步骤109,对所述目标数据流编辑。

借助于本发明上述实施例的技术方案,本发明实施例可以在视频的编辑素材的读取上不受限于固定的存储设备或PC端,实现编辑素材在流形式上的读取;同时,对读取的数据流可以进行实时编辑制作,以实现视频随时随地的编辑播放,实现了视频的网络化编辑,并使所编辑得到的视频都是针对于当前接收的视频流数据,保证了所编辑得到的视频的实时性。

为了更好的理解本发明上述实施例的技术方案,下面结合客户端与负载均衡服务器、流媒体服务器之间的信息交互来对本发明实施例的上述技术方案进行详细阐述。

为了实现客户端向流媒体服务器的视频数据流的实时读取,首先,需要启动客户端,具体的启动流程包括:

首先,客户端可以采用HTTP协议的交互方式向云端的负载均衡服务器发送与云端的流媒体服务器建立连接的请求,具体包括请求流媒体服务器的IP地址和端口号;

负载均衡服务器在接收到该请求后,会根据云端的多个流媒体服务器的负载信息(其中,该负载信息可以是每个流媒体服务器当前存在连接的客户端的个数),选择负载最小的流媒体服务器作为为该客户端提供服务的目标流媒体服务器;

并且,负载均衡服务器会获取该目标流媒体服务器的地址信息(具体包括IP地址和端口号)并发送至该客户端。

此时,客户端就可以接收响应于上述连接请求的目标流媒体服务器的IP地址和端口号;

然后,客户端就可以与流媒体服务器进行交互。其中,二者在交互时可以采用Socket协议的方式,客户端负责保持这个Socket连接,一旦连接断开,客户端就需要负载均衡服务器重新分配新的流媒体服务器的IP地址和端口号。其中,在通过Socket协议进行交互时,在本实施例中所有的二进制的数字字段都采用big endian形式传输;所有的字符串都使用UTF-8编码,交互所用的时间单位无特殊要求可以默认为毫秒。

具体的,客户端可以向对应于上述IP地址和端口号的云端的目标流媒体服务器发送连接请求;

该目标流媒体服务器在接收到客户端的该连接请求后,就会启动一个流媒体服务(即目标流媒体服务)并分配给该客户端;其中,每个流媒体服务只可以连接一个客户端;

该客户端与该目标流媒体服务建立连接,此时,客户端的启动流程完成。

在客户端启动完成之后,即与流媒体服务建立连接之后,客户端就可以借助于流媒体服务从流媒体服务器进行音视频数据流(即视频编辑素材)的读取,以进行视频的实时编辑和播放。

而客户端与流媒体服务之间的具体交互流程如下:

首先,客户端可以实时的向目标流媒体服务请求打开新的文件,即发送数据流读请求,其中,该数据流读请求中包括文件名、流ID和文件路径;

该目标流媒体服务在接收到数据流读请求后,就可以根据数据流读请求来确定目标数据流所在的文件名、文件路径和所述目标数据流的流ID;

然后,在客户端需要读取该目标数据流时,即客户端向该目标流媒体服务发送请求音视频数据的情况下,该目标流媒体服务就可以在该目标流媒体服务器中的文件路径下实时读取对应于上述文件名和上述ID的目标数据流;

并且,该目标流媒体服务还需要对目标数据流进行解码、并压缩成预定码流的数据并发送给客户端;

然后,客户端就可以实时接收响应于所述数据流读请求的目标数据流;

其中,根据视频素材的不同编辑需求,客户端可以同时向一个客户端的多个流媒体服务读取多个不同的音视频数据流,也可以同时向多个客户端的多个流媒体读取多个不同的音视频数据流,从而保证编辑素材读取的实时性,以及编辑素材的多样性,利于视频的多样化编辑,满足不同的视频编辑需求。

最后,客户端就可以对接收的一条或多条目标数据流进行解码,并编辑渲染输出到电视机的屏幕,保证电视机所播放的视频的实时性。

其中,在一个实施例中,为了满足不同的网络状况,目标流媒体服务在对目标数据流进行压缩时,可以根据当前的网络状况设置对目标数据流进行压缩的码流的高低,例如,在网络好的情况下,可以压缩成高码流(高清晰度)的数据流并推向至客户端;而在网络差的情况下,则可以压缩成低码流(低清晰度,例如视频流可以是H.264、音频流可以是AAC压缩编码)的数据流并推向至客户端。其中,流媒体服务负责处理客户端发送至流媒体服务器的所有命令。

此外,在另一个实施例中,在客户端与目标流媒体服务器所分配的目标流媒体服务之间的连接断开时,目标流媒体服务器可以关闭该目标流媒体服务。

另外,在一个实施例中,在与所述目标流媒体服务器分配的目标流媒体服务建立连接的情况下,客户端可以定时发送心跳指令至目标流媒体服务,这样如果该目标流媒体服务长时间(例如一个时间长度阈值)没有接收到该心跳指令,就可以认为该客户端死机,此时,目标流媒体服务器就可以关闭该流媒体服务。

并且,在一个实施例中,流媒体服务器和负载均衡服务器之间会进行流媒体服务器的客户端连接个数和当前所使用的流媒体服务器的端口号的信息同步,以保证负载均衡服务器在进行流媒体服务器的分配的有效性。因此,在流媒体服务器开启或关闭流媒体服务时,负载均衡服务器都会进行上述信息的同步。

其中,在目前的各级广播电视制作机构和播出机构中,都在进行网络化的建设。而本实施例的上述技术方案就可以应用到电视节目的制作上,例如可以对某一场球赛进行实时播出,可以对这场球赛设置多个摄像头来采集当前视频并上传至流媒体服务器,那么在电视节目对该场球赛的电视直播时,就可以借助于上述云编辑方法来获取多个摄像头拍摄的视频,以多个数据流的方式读取到客户端,进行编辑制作,实现电视节目的直播。由此可见,本发明上述实施例的技术方案可以将电视节目的摄制、采集、编辑、传输、管理、播出、多渠道发布等有机的整合在一个网络平台上,形成全新的电视节目的生产工艺流程。

需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。

与上述本发明实施例所提供的方法相对应,参照图2,示出了本发明一种云编辑的客户端实施例的结构框图,具体可以包括如下模块:

第一连接请求模块21,用于向云端的目标流媒体服务器发送第一连接请求;

连接模块22,用于在所述第一连接请求得到响应时,与所述目标流媒体服务器分配的目标流媒体服务建立连接;

读请求模块23,用于向所述目标流媒体服务发送数据流读请求;

第一接收模块24,用于接收响应于所述数据流读请求的目标数据流;

编辑模块25,用于对所述目标数据流编辑。

借助于本发明上述实施例的技术方案,本发明实施例可以在视频的编辑素材的读取上不受限于固定的存储设备或PC端,实现编辑素材在流形式上的读取;同时,对读取的数据流可以进行实时编辑制作,以实现视频随时随地的编辑播放,实现了视频的网络化编辑,并使所编辑得到的视频都是针对于当前接收的视频流数据的,保证了所编辑得到的视频的实时性。

此外,在一个可选的实施例中,参照图3,示出了本发明另一种包括图2所示的云编辑的客户端实施例的结构框图,具体还可以包括如下模块:

第二连接请求模块26,用于在所述第一连接请求模块发送所述第一连接请求之前,向负载均衡服务器发送与云端的流媒体服务器建立连接的第二连接请求;

第二接收模块27,用于接收响应于所述第二连接请求的目标流媒体服务器的地址信息;

所述第一连接请求模块21,用于向与所述地址信息相对应的所述云端的目标流媒体服务器发送所述第一连接请求。

其中,上述地址信息包括:IP地址和端口号。

发送心跳模块28,用于在与所述目标流媒体服务器分配的目标流媒体服务建立连接的情况下,定时发送心跳指令至所述目标流媒体服务。

其中,根据本发明实施例的云编辑的客户端主要负责与负载均衡服务器之间的信息交互;以及获取流媒体服务器的IP地址和端口号;并控制流媒体服务器的文件的打开、读取和关闭;以及接收和解码流媒体服务器发送的数据;并且支持所有非线性编辑功能和方式。

参照图4,示出了本发明一种数据的云编辑系统实施例的系统框图,具体可以包括:客户端4a、云端侧的流媒体服务器4b和云端侧的负载均衡服务器4c。

其中,客户端4a包括:

第一连接请求模块41a,用于向云端的目标流媒体服务器发送第一连接请求;

连接模块42a,用于在所述第一连接请求得到响应时,与所述目标流媒体服务器分配的目标流媒体服务建立连接;

读请求模块43a,用于向所述目标流媒体服务发送数据流读请求;

第一接收模块44a,用于接收响应于所述数据流读请求的目标数据流;

编辑模块45a,用于对所述目标数据流编辑;

第二连接请求模块46a,用于在所述第一连接请求模块41a发送所述第一连接请求之前,向负载均衡服务器发送与云端的流媒体服务器建立连接的第二连接请求;

第二接收模块47a,用于接收响应于所述第二连接请求的目标流媒体服务器的地址信息;

其中,第一连接请求模块41a,用于向与所述地址信息相对应的所述云端的目标流媒体服务器发送所述第一连接请求。

云端侧的流媒体服务器4b包括:

分配模块41b,用于根据接收的所述第一连接请求分配目标流媒体服务至所述客户端,并建立所述客户端与所述目标流媒体服务之间的连接;

读取模块42b,用于根据接收的所述数据流读请求在本地读取目标数据流并发送至所述客户端。

云端侧的负载均衡服务器4c包括:

选择模块41c,用于在对所述第二连接请求进行响应时,根据云端侧的多个流媒体服务器的负载信息,选择负载最小的流媒体服务器作为所述目标流媒体服务器;

获取模块42c,用于获取所述目标流媒体服务器的地址信息并发送。

其中,该负载信息包括:与流媒体服务器当前建立连接的客户端个数。

另外,在一个实施例中,流媒体服务器中的流媒体服务可包括:

确定子模块(未示出),用于根据所述数据流读请求确定目标数据流所在的文件名和所述目标数据流的ID;

读取子模块(未示出),用于在所述目标流媒体服务器中读取对应于所述文件名和所述ID的目标数据流;

处理子模块(未示出),用于对所述目标数据流解码、压缩并发送;

关闭单元(未示出),用于在与所述目标流媒体服务器分配的目标流媒体服务之间的连接断开时,关闭所述目标流媒体服务。

其中,处理子模块(未示出)包括设置单元(未示出),用于根据当前的网络状况设置对所述目标数据流进行压缩的码流。

本发明实施例的编辑系统可以在视频的编辑素材的读取上不受限于固定的存储设备或PC端,实现编辑素材在流形式上的读取;同时,对读取的数据流可以进行实时编辑制作,以实现视频随时随地的编辑播放,实现了视频的网络化编辑,并使所编辑得到的视频都是针对于当前接收的视频流数据的,保证了所编辑得到的视频的实时性。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对本发明所提供的一种数据的云编辑方法和一种云编辑的客户端以及一种数据的云编辑系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1