一种自适应的高性能视频转码系统和方法技术方案

技术编号:15522686 阅读:226 留言:0更新日期:2017-06-04 11:38
本发明专利技术公开了一种自适应的高性能视频转码系统及方法,包含:S1、调度核心模块接收视频转码请求系统提出的转码任务,在转码处理模块中选取节点资源最富裕的一个;S2、转码处理模块对视频的源文件进行下载、特性提取;S3、转码处理模块根据特性提取的结果,确定视频的转码类型;S4、根据视频的转码类型,由转码处理模块、转码节点模块、转码合并模块对视频执行转码任务;S5、转码合并模块将完成转码的视频传送至视频转码请求系统,并向调度核心模块发送转码完成信息。本发明专利技术能最大限度的使用计算资源,避免不必要的排队等待,达到最大的转码速度和最短的平均转码时间。

An adaptive high performance video transcoding system and method

The invention discloses a high performance video transcoding system and an adaptive method, including transcoding tasks S1, scheduling core module receives the video transcoding request system is proposed, in the transcoding process to select a node resources richest module; S2, video transcoding module of the source file to download and feature extraction; S3 transcoding and processing module according to feature extraction results, determine the type of video transcoding; S4, according to the type of video transcoding, the transcoding transcoding module, node module, the module of video transcoding and transcoding tasks; S5 transcoding and merge module will complete the transfer of video to video transcoding transcoding request system, and complete information to the dispatch the core module of transcoding. The invention can maximize the use of computing resources, avoid unnecessary queue waiting, and achieve maximum transcoding speed and the shortest average transcoding time.

【技术实现步骤摘要】
一种自适应的高性能视频转码系统和方法
本专利技术涉及一种视频转码系统和方法,具体是指一种自适应的高性能视频转码系统和方法,属于高性能分布式系统架构设计以及视频编解码

技术介绍
视频转码是视频分享环节中的关键一环,也是最为费时的一环,转码所耗费的时间长短直接决定了视频分享的效率和体验。现有技术中,常用的转码方法有以下两种:一、最传统的方法是将整个视频在集群的某一个节点上完成全部转码任务。这一方法无法均匀有效的使用集群的全部计算资源,转码速度完全受限于集群中单个节点的转码能力,转码速度慢,等待时间长。二、现在使用最广泛的方法是将视频切片以后,发送到所有集群节点中进行转码。这一方法由于可以最均衡、最大程度上的利用集群的全部计算资源,因此转码速度快。然而,在不同的集群节点分享视频切片,会产生网络传输成本。此外,流程的调度本身也是有成本的。最后,这种方法极容易造成一个较大的转码任务占用全部的集群资源,从而阻塞系统。此时,其他任务都必须在任务队列中排队,即使是个很短的视频,其本身的转码速度很快,也需要等待很长的时间,故而用这种转码方法,实际上等待的时间依然很长。
技术实现思路
本专利技术的目的在于提供一种自适应的高性能视频转码系统和方法,能最大限度的使用计算资源,避免不必要的排队等待,达到最大的转码速度和最短的平均转码时间。为了达到上述目的,本专利技术提供一种自适应的高性能视频转码系统,包含:调度核心模块,接收视频转码请求系统提出的转码任务,进行控制数据交互,调度并调节视频转码系统的负载情况;转码执行模块,由分别与调度核心模块连接的多个转码处理模块、多个转码节点模块、多个转码合并模块构成,根据调度核心模块的控制,对需要进行转码任务的视频进行预处理、转码类型确定、切片、多节点并行转码、合并封装;集群分布式共享存储模块,分别与各个转码处理模块、转码节点模块、转码合并模块连接,在视频转码任务的执行过程中对视频进行分布式存储。每个所述的转码处理模块、转码节点模块、转码合并模块均具有一本地存储模块,在视频转码任务的执行过程中对视频进行本地存储。本专利技术所述的自适应的高性能视频转码系统,还包含转码任务队列模块,与调度核心模块连接,根据视频转码请求系统提出的转码任务,按照时间顺序进行队列排序,集中进行转码。为本专利技术还提供一种自适应的高性能视频转码方法,采用上述的视频转码系统实现,包含以下步骤:S1、视频转码请求系统提供需要进行转码任务的视频源文件,以及存放转码结果的存储空间;调度核心模块接收视频转码请求系统提出的转码任务,在所有的转码处理模块中选取节点资源最富裕的一个,开始执行转码任务;S2、转码处理模块对需要进行转码任务的视频的源文件进行下载、特性提取的预处理;S3、转码处理模块根据特性提取的结果,确定该视频的转码类型;S4、根据视频的转码类型,由转码处理模块、转码节点模块、转码合并模块对视频执行转码任务;S5、将完成转码任务的视频文件传送至视频转码请求系统提供的转码结果存储空间,并向调度核心模块发送转码完成信息。在所述的S1之前,还包含:S0、视频转码请求系统提出的各个转码任务会按照被提出请求的时间先后顺序进入转码任务队列模块排序,集中进行转码。所述的S2中,具体包含以下步骤:S21、转码处理模块从视频转码请求系统中下载需要进行转码任务的视频的源文件,存放至本地存储模块中,并对该视频的源文件进行校验;S22、转码处理模块对下载后的视频的源文件进行特性提取,包括视频的宽高、码率、时长。所述的S3中,具体包含以下步骤:S31、转码处理模块根据特性提取的结果,判断该视频是否需要进行转码;如是,继续执行S32;如否,继续执行S33;S32、转码处理模块根据特性提取的结果,判断该视频是否需要进行多节点并行转码;当视频内容为无法安全切割的视频格式,并且视频的时长小于预设阈值时,判断该视频不进行多节点并行转码,确定该视频的转码类型为单节点本地转码及封装;否则,确定该视频的转码类型为多节点并行转码;S33、转码处理模块根据特性提取的结果,判断该视频是否需要进行封装;如是,确定该视频的转码类型为无需转码只需封装;如否,确定该视频的转码类型为无需转码及无需封装。所述的S4中,具体包含以下步骤:S41、当视频的转码类型为无需转码及无需封装时,无需对视频进行任何处理,继续执行S5,由转码处理模块将完成转码任务的视频文件传送至视频转码请求系统;S42、当视频的转码类型为无需转码只需封装时,转码处理模块在本地存储模块中将视频封装成需要的格式,并继续执行S5,由转码处理模块将完成转码任务的视频文件传送至视频转码请求系统;S43、当视频的转码类型为单节点本地转码及封装时,转码处理模块在本地存储模块中对视频进行转码,封装成需要的格式,并继续执行S5,由转码处理模块将完成转码任务的视频文件传送至视频转码请求系统;S44、当视频的转码类型为多节点并行转码时,转码处理模块、转码节点模块、转码合并模块对视频执行多节点并行转码任务,并继续执行S5,由转码合并模块将完成转码任务的视频文件传送至视频转码请求系统。所述的S44中,具体包含以下步骤:S441、转码处理模块对视频进行切片处理,存放至集群分布式共享存储模块中,并将各切片的存放位置发送至调度核心模块;S442、调度核心模块根据接收到的各切片的存放位置,选取对应数量的空闲的转码节点模块对各切片进行转码任务;S443、各个转码节点模块在其本地存储模块中,对所分派到的切片进行转码,将切片转码结果存放至集群分布式共享存储模块中,并将各切片转码结果的存放位置发送至调度核心模块;S444、当调度核心模块接收到所有转码节点模块发送的切片转码结果的存放位置后,选取一个空闲的转码合并模块,在其本地存储模块中,对所有切片转码结果进行合并,并封装成需要的格式。所述的S5中,转码处理模块或转码合并模块对完成转码任务的视频进行打标签、写入跳转表的后处理。本专利技术所提供的自适应的高性能视频转码系统和方法,根据视频特性,在无需转码无需封装、无需转码只需封装、单节点本地转码及封装、多节点并行转码这4种视频转码处理方式中,选取最优的方案;转码处理模块和执行多节点并行转码的转码节点模块在流程上的隔离,保证了短小的转码任务不会被大而长的转码任务阻塞而排队等待,可以最快的速度完成;同时保证了系统中大多数的计算资源被用于处理较大、较长的转码任务。因此,本专利技术能最大限度的使用计算资源,避免不必要的排队等待,达到最大的转码速度和最短的平均转码时间。附图说明图1为本专利技术中的自适应的高性能视频转码系统的结构示意图;图2为本专利技术中的自适应的高性能视频转码方法的流程图。具体实施方式以下结合图1~图2,通过详细说明一个较佳的具体实施例,对本专利技术做进一步阐述。如图1所示,为本专利技术提供的自适应的高性能视频转码系统,包含:调度核心模块1,接收视频转码请求系统提出的转码任务,进行控制数据交互,调度并调节视频转码系统的负载情况;转码执行模块2(Worker),由分别与调度核心模块1连接的多个转码处理模块21(GatewayWorker)、多个转码节点模块22(TranscodeWorker)、多个转码合并模块23(ConcludeWorker)构成,根据调度核心模块1发出的本文档来自技高网...
一种自适应的高性能视频转码系统和方法

【技术保护点】
一种自适应的高性能视频转码系统,其特征在于,包含:调度核心模块,接收视频转码请求系统提出的转码任务,进行控制数据交互,调度并调节视频转码系统的负载情况;转码执行模块,由分别与调度核心模块连接的多个转码处理模块、多个转码节点模块、多个转码合并模块构成,根据调度核心模块的控制,对需要进行转码任务的视频进行预处理、转码类型确定、切片、多节点并行转码、合并封装;集群分布式共享存储模块,分别与各个转码处理模块、转码节点模块、转码合并模块连接,在视频转码任务的执行过程中对视频进行分布式存储。

【技术特征摘要】
1.一种自适应的高性能视频转码系统,其特征在于,包含:调度核心模块,接收视频转码请求系统提出的转码任务,进行控制数据交互,调度并调节视频转码系统的负载情况;转码执行模块,由分别与调度核心模块连接的多个转码处理模块、多个转码节点模块、多个转码合并模块构成,根据调度核心模块的控制,对需要进行转码任务的视频进行预处理、转码类型确定、切片、多节点并行转码、合并封装;集群分布式共享存储模块,分别与各个转码处理模块、转码节点模块、转码合并模块连接,在视频转码任务的执行过程中对视频进行分布式存储。2.如权利要求1所述的自适应的高性能视频转码系统,其特征在于,每个转码处理模块、转码节点模块、转码合并模块均具有一本地存储模块,在视频转码任务的执行过程中对视频进行本地存储。3.如权利要求1所述的自适应的高性能视频转码系统,其特征在于,还包含转码任务队列模块,与调度核心模块连接,根据视频转码请求系统提出的转码任务,按照时间顺序进行队列排序,集中进行转码。4.一种自适应的高性能视频转码方法,利用如权利要求1~3中任一项所述的视频转码系统实现,其特征在于,包含以下步骤:S1、视频转码请求系统提供需要进行转码任务的视频源文件,以及存放转码结果的存储空间;调度核心模块接收视频转码请求系统提出的转码任务,在所有的转码处理模块中选取节点资源最富裕的一个,开始执行转码任务;S2、转码处理模块对需要进行转码任务的视频的源文件进行下载、特性提取的预处理;S3、转码处理模块根据特性提取的结果,确定该视频的转码类型;S4、根据视频的转码类型,由转码处理模块、转码节点模块、转码合并模块对视频执行转码任务;S5、将完成转码任务的视频文件传送至视频转码请求系统提供的转码结果存储空间,并向调度核心模块发送转码完成信息。5.如权利要求4所述的自适应的高性能视频转码方法,其特征在于,在所述的S1之前,还包含:S0、视频转码请求系统提出的各个转码任务会按照被提出请求的时间先后顺序进入转码任务队列模块排序,集中进行转码。6.如权利要求4所述的自适应的高性能视频转码方法,其特征在于,所述的S2中,具体包含以下步骤:S21、转码处理模块从视频转码请求系统中下载需要进行转码任务的视频的源文件,存放至本地存储模块中,并对该视频的源文件进行校验;S22、转码处理模块对下载后的视频的源文件进行特性提取,包括视频的宽高、码率、时长。7.如权利要求6所述的自适应的高性能视频转码方法,其特征在于,所述的S3中,具体包含以下步骤:S31、转码处理模块根据特性提...

【专利技术属性】
技术研发人员:王一何钧
申请(专利权)人:上海幻电信息科技有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1