当前位置: 首页 > 专利查询>暨南大学专利>正文

一种分布式音视频转码系统及其方法技术方案

技术编号:34133193 阅读:13 留言:0更新日期:2022-07-14 15:57
本发明专利技术公开了一种分布式音视频转码系统,包括文件头产生器和存储模块,所述文件头产生器至转码集群单向连接,所述存储模块至文件头产生器单向连接,所述转码集群分别与存储模块、调度器和web服务器双向连接,所述调度器与视频结构分析模块双向连接,所述调度器与客户端单向连接,所述web服务器与客户端双向连接,所述客户端上传片段至存储模块,所述存储模块将生成的Hash值返回至客户端。本发明专利技术可以实时即时拖动预览,控制局部的转码参数,即时比较不同参数应用于重要时间片段的转码效果,在转码没有完成以前就可以即时观看并分享,边看边转,边上传边转。边上传边转。边上传边转。

【技术实现步骤摘要】
一种分布式音视频转码系统及其方法


[0001]本专利技术涉及转码
,特别是一种分布式音视频转码系统及其方法。

技术介绍

[0002]视频分享在社交应用蓬勃发展的今天越来越为大众接受,用户原创视频内容分享网站在接受用户视频上传时,必须对这些视频进行转码,符合规范的格式后才能发布给用户观看,这需要一个基于云计算架构的离线转码系统来支撑。
[0003]目前的离线转码服务系统普遍的都是等用户上传完整的视频后,再调度到视频转码集群上进行转码,转码完成以后再通知用户转码已经完成,这个过程通常很漫长,用户体验非常差;如专利201911038001.4公开了一种分布式视频转码方法及系统,所述方法包括获取待转码任务的源文件信息以及目标文件信息;根据所述源文件信息以及目标文件信息将所述待转码任务对应的源视频文件划分为若干源视频段;将所有源视频段分配至转码服务器集群,通过转码服务器集群对其对应的源视频段进行转码;将转码得到的各目标视频文件段合并,以得到所述源视频文件对应的目标视频文件。
[0004]用户在转码完成以前不能预览转码效果,更谈不上拖动预览;用户也不能控制局部视频的编码参数,对编码参数即便可控也不能即时直观比较,只能是完整转了几次后再选出最合适的一个版本,造成转码资源的浪费;此外,用户文件上传过程漫长,这个上传过程也不能很好的用于转码,一些云存储服务提供并发分片上传,但这个过程没有和转码服务完美结合。

技术实现思路

[0005]针对现有技术中存在的问题,本专利技术提供了一种可以实时即时拖动预览,控制局部的转码参数,即时比较不同参数应用于重要时间片段的转码效果,在转码没有完成以前就可以即时观看并分享,边看边转,边上传边转的分布式音视频转码系统及其方法。
[0006]本专利技术的目的通过以下技术方案实现。
[0007]一种分布式音视频转码系统,包括文件头产生器和存储模块,所述文件头产生器至转码集群单向连接,所述存储模块至文件头产生器单向连接,所述转码集群分别与存储模块、调度器和web服务器双向连接,所述调度器与视频结构分析模块双向连接,所述调度器与客户端单向连接,所述web服务器与客户端双向连接,所述客户端上传片段至存储模块,所述存储模块将生成的Hash值返回至客户端。
[0008]所述视频结构分析模块位于客户端内,所述客户端还包括播放模块,所述视频结构分析模块以单独可集成的SDK的形式提供给客户端。
[0009]或者所述视频结构分析模块位于服务端内,所述视频结构分析模块以java script的形式由服务器端通过网页内嵌的形式下发给客户端。
[0010]所述视频结构分析模块用于对视频文件的整体结构进行分析,得出视频的长度、关键帧的Byte偏移量、和关键帧对应的时间偏移量,音视频编码参数相关的结构体信息,当
文件索引信息存在时,所述视频结构分析模块只需要对文件索引信息进行分析,并将分析结果上报给调度器。
[0011]所述调度器内维护一个或多个优先级别不同的调度队列,所述调度器既对视频结构分析模块的片段上传进行调度也对转码集群的离线转码进行调度。
[0012]所述存储模块存储客户端上传的每一个视频片断,并生成唯一的Hash值,以及对整个文件的所有片段的全部Hash进行存储,所述存储模块还存储转码集群完成转码的片段的存储,以及对应的Hash。
[0013]一种分布式音视频转码方法,包括如下步骤:
[0014]1)客户端选择视频,调用视频结构分析模块对视频结构进行分析,并把分析结果上报给调度器;
[0015]2)视频结构分析模块根据调度器下发的调度指令进行片段的并发上传,并存储返回的Hash值,调度器把同样的调度指令下发给转码集群,安排转码集群进行片段的离线转码;
[0016]3)在转码过程中,会调用文件头产生器为需要转码的片段产生文件头,转码集群转码完成的片段就存入到存储模块;
[0017]4)当客户端有拖动预览时,向转码集群发起某些片段的下载请求以用于预览,促发转码集群通知调度器,需要把这些被请求的片段提高到优先调度队列,优先调度上传和转码;
[0018]5)调度器重新安排调度,把优先调度命令发给视频结构分析模块;
[0019]6)视频结构分析模块把需要优先调度的片段立即上传,并被离线转码器立即进行离线转码,然后下发内容给预览客户端,客户端立即预览到刚刚被转码的视频片断。
[0020]7)用户在转码完成以前分享转码预览链接,所述预览链接是m3u8文件列表或者Mpeg

DASH的列表描述文件或是其他类似的列表文件;
[0021]8)转码都完成以后,转码集群根据用户需要对所有片段实施一次虚拼接,所述虚拼接只产生合并文件头,文件的真实存储仍然是存储在存储模块里面。
[0022]所述步骤6)中具体片段的转码参数精细微调通过webServer上传给转码集群。
[0023]当用户需要用特定封装格式下载完整的拼接文件时,通过转码集群进行实时拼接,然后通过Web Server下发。
[0024]相比于现有技术,本专利技术的优点在于:本专利技术可以实时即时拖动预览,控制局部的转码参数,即时比较不同参数应用于重要时间片段的转码效果,在转码没有完成以前就可以即时观看并分享,边看边转,边上传边转,用户在开始上传3

4秒的时间后就和观看本地视频一样的用户体验。
附图说明
[0025]图1为本专利技术实施例1的系统结构示意图。
[0026]图2为本专利技术实施例2的系统结构示意图。
具体实施方式
[0027]下面结合说明书附图和具体的实施例,对本专利技术作详细描述。
[0028]一种分布式音视频转码系统,包括文件头产生器和存储模块,所述文件头产生器至转码集群单向连接,所述存储模块至文件头产生器单向连接,所述转码集群分别与存储模块、调度器和web服务器双向连接,所述调度器与视频结构分析模块双向连接,所述调度器与客户端单向连接,所述web服务器与客户端双向连接,所述客户端上传片段至存储模块,所述存储模块将生成的Hash值返回至客户端。
[0029]所述视频结构分析模块位于客户端内,所述客户端还包括播放模块,所述视频结构分析模块以单独可集成的SDK的形式提供给客户端。
[0030]或者所述视频结构分析模块位于服务端内,所述视频结构分析模块以java script的形式由服务器端通过网页内嵌的形式下发给客户端。
[0031]所述视频结构分析模块用于对视频文件的整体结构进行分析,得出视频的长度、关键帧的Byte偏移量、和关键帧对应的时间偏移量,音视频编码参数相关的结构体信息,当文件索引信息存在时,所述视频结构分析模块只需要对文件索引信息进行分析,比如MP4文件中的MOOV,FLV的文件头;并将分析结果上报给调度器。
[0032]所述调度器内维护一个或多个优先级别不同的调度队列,所述调度器既对视频结构分析模块的片段上传进行调本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分布式音视频转码系统,其特征在于包括文件头产生器和存储模块,所述文件头产生器至转码集群单向连接,所述存储模块至文件头产生器单向连接,所述转码集群分别与存储模块、调度器和web服务器双向连接,所述调度器与视频结构分析模块双向连接,所述调度器与客户端单向连接,所述web服务器与客户端双向连接,所述客户端上传片段至存储模块,所述存储模块将生成的Hash值返回至客户端。2.根据权利要求1所述的一种分布式音视频转码系统,其特征在于所述视频结构分析模块位于客户端内,所述客户端还包括播放模块,所述视频结构分析模块以单独可集成的SDK的形式提供给客户端。3.根据权利要求1所述的一种分布式音视频转码系统,其特征在于所述视频结构分析模块位于服务端内,所述视频结构分析模块以java script的形式由服务器端通过网页内嵌的形式下发给客户端。4.根据权利要求1

3任意一项所述的一种分布式音视频转码系统,其特征在于所述视频结构分析模块用于对视频文件的整体结构进行分析,得出视频的长度、关键帧的Byte偏移量、和关键帧对应的时间偏移量,音视频编码参数相关的结构体信息,当文件索引信息存在时,所述视频结构分析模块只需要对文件索引信息进行分析,并将分析结果上报给调度器。5.根据权利要求1

3任意一项所述的一种分布式音视频转码系统,其特征在于所述调度器内维护一个或多个优先级别不同的调度队列,所述调度器既对视频结构分析模块的片段上传进行调度也对转码集群的离线转码进行调度。6.根据权利要求1

3任意一项所述的一种分布式音视频转码系统,其特征在于所述存储模块存储客户端上传的每一个视频片断,并生成唯一的Hash值,以及对整个...

【专利技术属性】
技术研发人员:赵乘骥安荣邦庄师强
申请(专利权)人:暨南大学
类型:发明
国别省市:

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

1