CN103838779A - 复用空闲计算资源的云转码方法及系统、分布式文件装置 - Google Patents
复用空闲计算资源的云转码方法及系统、分布式文件装置 Download PDFInfo
- Publication number
- CN103838779A CN103838779A CN201210490708.0A CN201210490708A CN103838779A CN 103838779 A CN103838779 A CN 103838779A CN 201210490708 A CN201210490708 A CN 201210490708A CN 103838779 A CN103838779 A CN 103838779A
- Authority
- CN
- China
- Prior art keywords
- transcoding
- data
- distributed
- compositor
- storage module
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000003860 storage Methods 0.000 claims abstract description 36
- 230000005540 biological transmission Effects 0.000 claims abstract description 13
- 239000012634 fragment Substances 0.000 claims abstract description 13
- 238000013500 data storage Methods 0.000 claims description 52
- 230000008569 process Effects 0.000 claims description 37
- 238000004891 communication Methods 0.000 claims description 12
- 238000000151 deposition Methods 0.000 claims description 8
- 238000005243 fluidization Methods 0.000 claims description 6
- 230000000737 periodic effect Effects 0.000 claims description 4
- 230000008901 benefit Effects 0.000 description 10
- 230000000694 effects Effects 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000005538 encapsulation Methods 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 230000005012 migration Effects 0.000 description 3
- 238000013508 migration Methods 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- 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/60—Network streaming of media packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/222—Secondary servers, e.g. proxy server, cable television Head-end
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1824—Distributed file systems implemented using Network-attached Storage [NAS] architecture
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
-
- 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/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/765—Media network packet handling intermediate
-
- 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/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234309—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明提出一种复用空闲计算资源的云转码方法及系统、分布式文件装置,其复用空闲计算资源的云转码方法包括:接收转码任务,并提交任务信息;根据所述任务信息生成任务分配信息;根据所述分配信息,从分布式磁盘中分别获取相应媒体片段的源数据,通过分布式处理器并行转码成目标格式的数据后保存到分布式磁盘;根据所述任务信息以及所述任务分配信息,将转码后的数据进行合并,形成转码后的媒体文件,并保存到分布式磁盘。本发明利用存储服务器空闲的CPU完成分布式转码,不仅节省了硬件成本,充分利用了现有资源,而且大大加快了数据的传输和拷贝,提高了转码效率。
Description
技术领域
本发明涉及分布式多媒体编解码领域,特别涉及一种复用空闲计算资源的云转码方法及系统、分布式文件装置。
背景技术
邮箱文件中转站、离线下载等业务有大量的各种格式的视频等媒体文件,当用户需要在线使用个人计算机或手机等终端播放时,需要先下载文件,然后将下载的文件转码成手机终端或者播放器等支持的格式才可以观看。
为了让用户端无需转码而直接可以在线播放,各大视频业务公司的做法是购置专用的视频转码服务器以及专用的存储服务器,服务端将数据传送到视频转码服务器进行转码,再把转码后的视频文件传送到存储服务器储存,以供用户下载。这种离线转码的方式让用户端下载视频文件后无需进行转码,可以直接通过终端或页面进行播放。
但是上述方式中,视频转码服务器一般是采取串行转码,转码一部影片往往需要数十分钟,而且期间的多次文件传输(先由服务端传输给视频转码服务器,再由视频转码服务器传输给存储服务器,最后由存储服务器传输给用户端)也会付出较长的时间代价。
为此,业界提出了一些提高转码效率的方式:
US 2012/0101254A1美国专利申请提出了一种基于云的转码系统和方法,侧重在边上传边转码,从而节约文件的传输时间,但是其仍然采用串行转码,且需要在用户端增加分析媒体文件的开销。
2011年全国高性能计算学术年会(HPC China 2011)论文集中《基于云架构的视频转码技术研究》一文提出了两种不同的分布式转码方案,但需要对视频进行预处理,以及需要分离、合并、同步音视频,转码过程复杂。
CN 200810236508.6中国专利公开了一种分布式多格式数字视频转码结构设计方法,其同样需要事先切割文件,并对音视频分解复用,此阶段完全变成串行且代价巨大。原始、转码后、中间结果均在NFS(Network FileSystem,网络文件系统)上,受其最大挂载磁盘数限制,系统不可能具有处理PB(1PB=1024TB)级海量数据的能力。
可见,以往所有的设计均未考虑转码和存储之间的关系,均需要专门的硬件来做分割、转码与合并操作,增加了硬件成本,也增加了转码复杂程度。此外,许多现有分布式转码系统均是基于C/S(Client/Server,用户端/服务器)模式,只要稍稍改变系统中机器数目,分布式程序就要重新编码部署,可扩展性差。转码和合并机器上的CPU、I/O负载难以控制。
综上所述,现有的网络音视频转码方式存在耗时多、效率低、硬件成本高、拓展能力差等问题。
发明内容
本发明的目的是提供一种复用空闲计算资源的云转码方法及系统,以解决现有的网络音视频转码方式存在耗时多、效率低、硬件成本高、拓展能力差等问题。
本发明提出一种复用空闲计算资源的云转码方法,包括:
接收转码任务,并提交任务信息;
根据所述任务信息生成任务分配信息;
根据所述分配信息,从分布式磁盘中分别获取相应媒体片段的源数据,通过分布式处理器并行转码成目标格式的数据后保存到分布式磁盘;
根据所述任务信息以及所述任务分配信息,将转码后的数据进行合并,形成转码后的媒体文件,并保存到分布式磁盘。
本发明还提出一种复用空闲计算资源的云转码系统,包括:
任务管理器,用于接收转码任务;
任务提交客户端,用于根据所述任务管理器发送来的任务信息,提交任务信息;
调度管理器,用于接收所述任务提交客户端发出的任务信息,输出任务分配信息;
分布式文件子系统,用于统一对数据进行管理,其又进一步包括:
源数据存储模组,用于存放源数据;
上传数据存储模组,用于存放转码后的数据;
多个转码器,用于根据接收到的所述任务管理器输出的任务信息以及所述调度管理器输出的任务分配信息,分别从所述源数据存储模组中获取相应媒体片段的源数据,并转码成目标格式的数据,存入所述上传数据存储模组;
至少一个合成器,且至少一个合成器与多个转码器形成一个进程工作模组,所述合成器用于根据接收到的所述调度管理器输出的分配信息,将所在进程工作模组中的转码器转码后的数据进行合并,形成转码后的媒体文件,并存入所述上传数据存储模组。
本发明还提出一种分布式文件装置,包括:
源数据存储模组,用于存放源数据;
上传数据存储模组,用于存放转码后的数据;
多个转码器,用于根据接收到的任务信息以及任务分配信息,分别从所述源数据存储模组中获取相应媒体片段的源数据,并转码成目标格式的数据,存入所述上传数据存储模组;
至少一个合成器,且至少一个合成器与多个转码器形成一个进程工作模组,所述合成器用于根据接收到的任务分配信息,将所在进程工作模组中的转码器转码后的数据进行合并,形成转码后的媒体文件,并存入所述上传数据存储模组。
相对于现有技术,本发明的有益效果是:
(1)本发明将转码的工作构建在具有空闲计算资源的音视频存储服务器上,充分利用了现有资源,大大节约了硬件成本。
(2)本发明不需要对媒体文件进行预切片,而是把切片放在了转码任务执行的同时时完成,这样提高了并行度,能有效降低转码时间。
(3)本发明在分片转码和分片合成阶段,分别实现对CPU占用和硬盘/内存的精确控制,防止影响现网机器的原有服务。
(4)本发明对于特定业务场景,还可较容易地通过修改参数,满足传统MapReduce系统不能满足的一定实时性的要求。
(5)本发明的系统具有良好的可扩展行,通过分布式文件系统和/或网络协议,理论上可处理无限量的视频数据,现有系统已证实可以处理PB级别的音视频资源。
(6)本发明的转码工作在存储机器上完成,避免了大部分数据传输/拷贝,效果接近于本地计算,实现了“计算向存储迁移”这个云计算的理想目的。
(7)本发明可以对转码任务、每个转码器获得的分片任务、每个转码器分片任务里的各个工作线程实现精确控制,可以有效避免影响存储服务器的现网服务。
当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
附图说明
图1为本发明实施例的一种复用空闲计算资源的云转码系统的架构图;
图2为本发明实施例的一种进程工作模组的工作示意图;
图3为本发明实施例的一种复用空闲计算资源的云转码方法的流程图。
具体实施方式
为更进一步阐述本发明达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的复用空闲计算资源的云转码方法及系统、分布式文件装置其具体实施方式、方法、步骤及功效,详细说明如后。
有关本发明的前述及其他技术内容、特点及功效,在以下配合参考图式的较佳实施例详细说明中将可清楚的呈现。通过具体实施方式的说明,当可对本发明为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图式仅是提供参考与说明之用,并非用来对本发明加以限制。
I/O(硬盘/内存)密集型机器指的是系统的CPU效能相对硬盘/内存的效能要好很多,即系统运作的大部分的状况是CPU在等待I/O的读/写,CPU占用率较低。本发明主要思想的出发点是考虑到转码后的音视频文件的存储所在地---存储服务器(通常由大量存储机器的集群构成)---由于只起到存储数据的作用,因而有大量CPU空闲的存储机器,这些机器因为是I/O密集型机器,其CPU利用率一般低于20%,如果使用这些空闲CPU进行转码,可以节约大量成本,还可以在文件的存储点就近转码,减少异地拉取的时间、带宽消耗。不仅可以节省硬件成本,充分利用现有资源,还可以实现云计算的理想目标---“计算向存储迁移”。
此外,本发明涉及的分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连。从内部实现来看,分布式的系统不再和普通文件系统一样负责管理本地磁盘,它的文件内容和目录结构都不是存储在本地磁盘上,而是通过网络传输到远端系统上。并且,同一个文件存储不只是在一台机器上,而是在一簇机器上分布式存储,协同提供服务,正所谓分布式。与单机的文件系统不同,分布式文件系统不是将这些数据放在一块磁盘上,由上层操作系统来管理。而是存放在一个服务器集群上,由集群中的服务器,各尽其责,通力合作,提供整个文件系统的服务。因此,使用分布式转码,可以近似线性的降低转码耗时,提高用户体验,并且分布式计算框架的资源管理、调度方案能有效的利用硬件资源,降低故障的影响。本发明中所述的分布式文件子系统及相应的管理方法优选采用申请号为200710307132.9的中国专利“分布式系统、分布式业务处理方法及相关装置”中所揭示的的分布式系统及相应的处理方法。
请参见图1,其为本发明实施例的一种复用空闲计算资源的云转码系统的架构图,其包括:任务管理器101、任务提交客户端102、调度管理器104、流化媒体服务器109以及分布式文件子系统。任务提交客户端102与任务管理器101连接,任务管理器101、调度管理器104和流化媒体服务器109均与分布式文件子系统连接。其中分布式文件子系统又进一步包括:源数据存储模组110、上传数据存储模组111、多个转码器106以及至少一个合成器107。
任务管理器101接到转码任务(Transcoding Job)后,首先把任务信息发给任务提交客户端102,由任务提交客户端102来提交任务。任务提交客户端102将任务信息提交给调度管理器104。调度管理器104根据接收到的任务信息生成任务分配信息(dispatch“tasks”),并发送给各个转码器106和合成器107。
转码器106、合成器107以及调度管理器104形成了一个云计算框架103,其优选采用MapReduce框架(如专利号为US7650331B1的美国专利中公开的Map/Reduce分布式处理框架)及其变种实现,或者也可以采用开源的Hadoop框架、Sector/Sphere框架、Typhoon框架等。其中所有的转码器106和合成器107都分布在分布式文件子系统的计算机机群上。
请结合参见图2,调度管理器104是负责云计算框架103的任务、资源的调度和管理,其作用是根据接收到的任务信息中待转码源文件,确定需要并行执行的工作数(优选通过源文件的时间长度来划分工作数),并形成任务分配信息(dispatch“tasks”)发送给各个转码器106和合成器107。也即是说,转码器106和合成器107通过接收到的任务分配信息获知自身负责的工作,从而形成进程工作模组105,一个进程工作模组105中包括多个转码器106和至少一个合成器107(为便于描述,本实施例的图示中一个进程工作模组105仅绘示了一个合成器107,一个进程工作模组105通常情况下仅包含一个合成器107即可,特殊时候如任务控制不精确的情况下,一个进程工作模组105也可以包含多个合成器107)。
转码器106的工作是负责转码一个个媒体片段。在根据任务分配信息形成工作模组105之后,转码器106会从任务管理器101处获取任务信息(obtain real tasks)。表1为一种任务信息的结构示意,任务信息包括任务的类型、文件的位置(如源文件的url地址,Universal ResourceLocator,统一资源定位符)、音视频的起始位置、时长等。
字段 | 类型 | 备注 |
Taskid | Unsigned | 任务id,标识某个转码任务 |
Fileid | String | 文件名(vid或者sha) |
url | 源文件所在url | http url |
Start | Double | 目的分片的起始时间 |
Duration | Double | 目的分片的时长 |
Type | 任务类型 | 转码任务的类型 |
Profile | int | 目的文件的编码参数设置...... |
…… |
表1
本发明转码任务信息的传递优选采用asn协议(asn协议具有丰富且规范的语义表达和统一的编码规则等优点),即转码器106和任务管理器101之间的通讯优选采用asn协议,转码器106与任务管理器101往返通信对应的asn协议消息的示意如下所示:
转码器106从任务管理器101获取任务信息后,根据其中的源文件存储地址以及任务分配信息,直接从源数据存储模组110中下载源文件片段(download src video),接着对源文件片段进行转码,然后保存到上传数据存储模组111中(upload dst video)。可见,本发明不需要对媒体文件进行预切片,而是把切片放在了转码器106任务执行的同时完成,转码程序可以按时间偏移读取源文件,这样提高了并行度,能有效降低转码时间。由于mepgts格式具有可以自由合并的属性,片文件的目标格式可以统一为mpegts格式,这样在后续合并的时候处理更简单。经实验证明,这种格式的媒体分片转码再合并,拷贝到mp4等容器后得到的文件只比串行转码后得到的文件体积大约0.01%--1%,以极小的代价换取了合并时分析GOP(Group of Pictures,画面组)序列的时间开销,且媒体不会出现音视频不同步、抖动等现象。
转码器106从源数据存储模组110中下载源文件片段时,对于能够获得特定完整头部的多媒体文件,比如MP4和TFLV格式,则从头部获得所有关键帧(H.264编码格式为IDR帧,其余为I帧)时间点,然后按连续若干个能够组成接近时间T(实现时优选取30s)的若干GOP划分,获得各个转码器106要处理的信息,包括起始时间点和结束时间点(或片长时间)。对于不能获得上述头部的文件,则严格按片长时间T划分。这种方式使得转码器106可以直接从源数据存储模组110中拉取相应时间段的媒体片段,而分析视频的代价降到几乎可以忽略的程度(因为视频文件的头(head)相对视频大小而言一般很小)。
由于转码器106的转码工作是利用了存储机器的空闲CPU资源,因而可以在源文件的存储点就近转码(类似于局域网之间的数据传输),相对于现有技术,大大缩减了异地拉取源文件的时间和带宽消耗。但是,为了不影响存储业务的正常运行,所以需要在CPU资源的利用上做精确控制,将CPU占用率控制在预设范围内。本发明优选利用周期性的中断程序控制CPU占用率,具体做法是:对转码程序在各个CPU核心上运行的线程周期性且比较细粒度地发送停止进程信号(SIGSTOP)和恢复进程信号(SIGCONT),通过控制两者之间的时间长度比例来控制程序的CPU占用率,同时也可以做到在多逻辑CPU上的负载均衡。本系统的具体实现中,把转码程序在每个逻辑CPU的利用率都控制在了80%,这样就可以保证不会影响存储索引服务进程的正常运行。此外,在精确控制CPU利用率的同时,用实验确定每种不同类型服务器的最佳转码线程数,并把转码线程绑定到特定逻辑CPU,这样防止了转码线程在不同逻辑CPU之间发生漂移,充分利用了高速缓冲存储器(cache)和数据和指令流水线(pipeline),一定程度上提高了性能。
一个进程工作模组105中的所有转码器106都将转码完成的文件片段存入上传数据存储模组111之后,合成器107开始执行任务。合成器107根据调度管理器104发送来的任务分配信息,将其所在进程工作模组105中的转码器106转码后的数据进行合并,形成转码后的媒体文件,并存入上传数据存储模组111。
具体来说,在转码器106将转码完成的文件片段存入上传数据存储模组111后,会将相应的存储地址信息(当前音视频所在机器、路径和其它信息)发送给同一进程工作模组105的合成器107(obtaintranscoded segments),然后合成器107根据接收到的存储地址信息从上传数据存储模组111中获取转码后的数据,并进行合成,然后将完整的媒体文件封装后重新上传到上传数据存储模组111中(uploadjoined file),以供用户下载。
特别的,一个进程工作模组105中,合成器107可以不止一个,比如对于长视频文件,可以通过归并排序的方式进行“树形”合并。
由于合成器107和上传数据存储模组111也都属于分布式文件子系统,属于同一组机群,因而合成器107从上传数据存储模组111中下载和上传数据都具有很快的速度(类似于局域网的数据传输)。合成器107对媒体分片文件的合并操作是基于计算机硬盘/内存(I/O)的,不加限制的话基本可能会达到磁盘顺序读写的最高值,影像存储业务的正常运行。所以,需要对合成器107的合并操作进行I/O控制,甚至需要在单独的机型上进行。
值得注意的是,因为一个云计算框架103(即Map/Reduce集群)中可能同时在处理几十甚至上百个转码任务,如果把每个转码任务中每个转码器106和合成器107所要处理的任务的详细信息都发送到任务提交客户端102,再发送到调度管理器104,再由其派发到每个转码器106和合成器107所在机器的话,则数据的传输量会很较大,影响效率。本发明突破性地引入了发送共用元信息的方式,即由调度管理器104分配好转码器106和合成器107的任务,“唤醒”并“通知”各个转码器106从任务管理器101上拉取自己所需转码的那一部分任务信息,从而大大减少了数据传输量,且同时做到了并发。也即是说,本发明的一个重要优点,就是把以往系统中的必须串行的几个步骤,都变成了并行。
另一方面,因为“视角”不同,任务管理器101和转码器106、合成器107看到的文件路径形式是不一样的,本发明的这种“实任务”(转码器106从任务管理器101获取任务信息)和“虚任务”(调度管理器104向转码器106和合成器107分配任务分配信息)分开的方式,另一种好处是避免把真实的路径暴露在外,提高安全性。
由前述可见,文件的上传下载可以采用http协议,即转码器106与上传数据存储模组111之间的通讯、转码器106与源数据存储模组110之间的通讯、以及合成器107与上传数据存储模组111之间的通讯均采用http协议,这需要在相应存储服务器上部署轻量级的相应协议的服务器。
本实施例的存储器108包括源数据存储模组110和上传数据存储模组111,是以所存文件的类型(未转码和已转码)进行划分的,但在实际结构中,源数据存储模组110和上传数据存储模组111均是分布在分布式文件之系统的机群上的,通常是无需明显划分两者的存储空间,而可以根据实际需要来进行调整。
流化媒体服务器109对于本发明来说并非一个必须的部件,其用于实时接收所述转码器107转码完成的媒体片段,并发送给用户端。在某些有实时性要求的场合,当前面若干个转码器107完成转码工作之后,可立即给流化媒体服务器109发送状态消息,通知流化媒体服务器109从其上下载转码完成的媒体分片,立即以流或文件的方式发送给用户,这样就可实现“边看边下”等要求,而且把用户等待时间降到更低。而传统的MapReduce系统并不能满足实时性的要求。本发明通过把系统部署在存储机器上,外加上述机制可以实现这一需求。而在这种“边看边下”的情况下,可能并不需要合成器107合并文件,或者合并后的文件并不需要再拷贝成特定的封装格式,这时合成器107就可以少做或不做工作。可以是通过任务管理器101输出的任务信息中的特定字段来决定的(如表1中的“type”字段)。
本发明还提出一种分布式文件装置,其包括源数据存储模组、上传数据存储模组、多个转码器以及至少一个合成器。该分布式文件装置的结构、功能及工作原理与前述复用空闲计算资源的云转码系统的分布式文件子系统相同,在此不再赘述。
本发明还提出一种复用空闲计算资源的云转码方法,请参加图3,其包括以下步骤:
S301,接收转码任务,并提交任务信息。
任务信息包括待转码媒体文件的类型、文件的位置(如源文件的url地址,Universal Resource Locator,统一资源定位符)、音视频的起始位置、时长等。
S302,根据所述任务信息生成任务分配信息。
生成任务分配信息的目的是确定待转码的文件需要并行执行的工作数(优选通过源文件的时间长度来划分工作数)。
S303,根据所述任务信息以及所述任务分配信息,从分布式磁盘中分别获取相应媒体片段的源数据,通过分布式处理器并行转码成目标格式的数据后保存到分布式磁盘。
这里所述的分布式处理器和分布式磁盘即为分布式文件系统的处理器和磁盘,即分布式处理器和分布式磁盘均属于同一组服务器机群。由于存储媒体文件的计算机上有大量空闲的CPU,所以本发明利用这部分空间的CPU进行转码工作,不仅节约了大量成本,还可以在文件的存储点就近转码,大大提高了转码效率。
本发明中转码任务信息的传递优选采用asn协议(asn协议具有丰富且规范的语义表达和统一的编码规则等优点)。表1是任务信息的结构示意。而文件的上传下载优选采用http协议,这需要在相应存储服务器上部署轻量级的相应协议的服务器。
此外,由于转码工作是利用了存储机器的空闲CPU资源,因而可以在源文件的存储点就近转码(类似于局域网之间的数据传输),相对于现有技术,大大缩减了异地拉取源文件的时间和带宽消耗。但是,为了不影响存储业务的正常运行,所以需要在CPU资源的利用上做精确控制,将CPU占用率控制在预设范围内。本发明优选利用周期性的中断程序控制CPU占用率,具体做法是:对转码程序在各个CPU核心上运行的线程周期性且比较细粒度地发送停止进程信号(SIGSTOP)和恢复进程信号(SIGCONT),通过控制两者之间的时间长度比例来控制程序的CPU占用率,同时也可以做到在多逻辑CPU上的负载均衡。在具体实现中,把转码程序在每个逻辑CPU的利用率都控制在了80%,这样就可以保证不会影响存储索引服务进程的正常运行。此外,在精确控制CPU利用率的同时,用实验确定每种不同类型服务器的最佳转码线程数,并把转码线程绑定到特定逻辑CPU,这样防止了转码线程在不同逻辑CPU之间发生漂移,充分利用了高速缓冲存储器(cache)和数据和指令流水线(pipeline),一定程度上提高了性能。
S304,根据所述任务信息以及所述分配信息,将转码后的数据进行合并,形成转码后的媒体文件,并保存到分布式磁盘。
将转码后的数据进行合并的过程具体可以为:先获取转码后的数据在分布式磁盘中的存储地址信息;接着根据所述存储地址信息获取分布式磁盘中相应的转码后的数据;然后所述将转码后的数据进行合并。
合并过程中,从分布式磁盘中读取数据,合并后再次存入分布式磁盘,这一系列的动作均是由同一组机群的CPU和存储器完成,因而文件的上传和下载都具有很快的速度(类似于局域网的数据传输)。对媒体分片文件的合并操作是基于计算机硬盘/内存(I/O)的,不加限制的话基本可能会达到磁盘顺序读写的最高值,影像存储业务的正常运行。所以,需要对合成器107的合并操作进行I/O控制,甚至需要在单独的机型上进行。I/O控制的实现方式类似于上文所述CPU占用率控制的方式。
此外,在一些有实时性要求的场合(如用户需要边看边下载),可以根据任务信息中的特定字段(如表1中的“type”字段),在媒体片段的源数据转码完成后,可以直接以流或文件的方式发送给用户端,这样就可实现“边看边下”等要求,而且把用户等待时间降到更低。而在这种“边看边下”的情况下,可能并不需要合并文件,或者合并后的文件并不需要再拷贝成特定的封装格式,这时就可以少做或不做工作,进一步减少CPU的负担。
本发明利用存储服务器空闲的CPU完成分布式转码,不仅节省了硬件成本,充分利用了现有资源,而且大大加快了数据的传输和拷贝,提高了转码效率。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
Claims (28)
1.一种复用空闲计算资源的云转码方法,其特征在于,包括:
接收转码任务,并提交任务信息;
根据所述任务信息生成任务分配信息;
根据所述分配信息,从分布式磁盘中分别获取相应媒体片段的源数据,通过分布式处理器并行转码成目标格式的数据后保存到分布式磁盘;
根据所述任务信息以及所述任务分配信息,将转码后的数据进行合并,形成转码后的媒体文件,并保存到分布式磁盘。
2.如权利要求1所述的复用空闲计算资源的云转码方法,其特征在于,所述将转码后的数据进行合并的步骤包括:
获取转码后的数据在分布式磁盘中的存储地址信息;
根据所述存储地址信息获取分布式磁盘中相应的转码后的数据;
将转码后的数据进行合并。
3.如权利要求1所述的复用空闲计算资源的云转码方法,其特征在于,分布式磁盘中数据的上传与下载的通讯采用http协议。
4.如权利要求1所述的复用空闲计算资源的云转码方法,其特征在于,所述根据所述任务信息生成任务分配信息的步骤包括:
根据任务信息中源文件的时间长度确定需要执行的并行工作数,并形成所述任务分配信息。
5.如权利要求1所述的复用空闲计算资源的云转码方法,其特征在于,转码任务信息的传递采用ans协议。
6.如权利要求1所述的复用空闲计算资源的云转码方法,其特征在于,将媒体片段的源数据进行转码之后,实时将转码完成的媒体片段发送给用户端。
7.如权利要求1所述的复用空闲计算资源的云转码方法,其特征在于,在进行转码时,将CPU占用率控制在预设范围内。
8.如权利要求7所述的复用空闲计算资源的云转码方法,其特征在于,所述将CPU占用率控制在预设范围内的步骤包括:对各个CPU核心上运行的转码线程周期性的发送停止进程信号和恢复进程信号,并通过控制所述停止进程信号和所述恢复进程信号之间的时间长度,将CPU占用率控制在预设范围内。
9.如权利要求1所述的复用空闲计算资源的云转码方法,其特征在于,在进行数据合并时,对硬盘/内存的读写进行控制。
10.如权利要求9所述的复用空闲计算资源的云转码方法,其特征在于,采用单独的计算机进行数据的合并。
11.一种复用空闲计算资源的云转码系统,其特征在于,包括:
任务管理器,用于接收转码任务;
任务提交客户端,用于根据所述任务管理器发送来的任务信息,提交任务信息;
调度管理器,用于接收所述任务提交客户端发出的任务信息,输出任务分配信息;
分布式文件子系统,用于统一对数据进行管理,其又进一步包括:
源数据存储模组,用于存放源数据;
上传数据存储模组,用于存放转码后的数据;
多个转码器,用于根据接收到的所述任务管理器输出的任务信息以及所述调度管理器输出的任务分配信息,分别从所述源数据存储模组中获取相应媒体片段的源数据,并转码成目标格式的数据,存入所述上传数据存储模组;
至少一个合成器,且至少一个合成器与多个转码器形成一个进程工作模组,所述合成器用于根据接收到的所述调度管理器输出的分配信息,将所在进程工作模组中的转码器转码后的数据进行合并,形成转码后的媒体文件,并存入所述上传数据存储模组。
12.如权利要求11所述的复用空闲计算资源的云转码系统,其特征在于,所述转码器将转码后的数据存入所述上传数据存储模组后,将相应的存储地址信息发送给同一进程工作模组的合成器,所述合成器通过所述存储地址信息从所述上传数据存储模组中获取相应的转码后的数据,并进行合成。
13.如权利要求11所述的复用空闲计算资源的云转码系统,其特征在于,所述转码器与所述上传数据存储模组之间的通讯、所述转码器与所述源数据存储模组之间的通讯、以及所述合成器与所述上传数据存储模组之间的通讯均采用http协议。
14.如权利要求11所述的复用空闲计算资源的云转码系统,其特征在于,所述调度管理器根据任务信息中源文件的时间长度确定需要执行的并行工作数,并形成所述任务分配信息后发送给相应的转码器和合成器。
15.如权利要求11所述的复用空闲计算资源的云转码系统,其特征在于,所述转码器和所述任务管理器之间的通讯均采用ans协议。
16.如权利要求11所述的复用空闲计算资源的云转码系统,其特征在于,还包括:
流化媒体服务器,用于实时接收所述转码器转码完成的媒体片段,并发送给用户端。
17.如权利要求11所述的复用空闲计算资源的云转码系统,其特征在于,所述转码器在进行转码时,将CPU占用率控制在预设范围内。
18.如权利要求17所述的复用空闲计算资源的云转码系统,其特征在于,所述转码器利用周期性的中断程序控制CPU占用率。
19.如权利要求11所述的复用空闲计算资源的云转码系统,其特征在于,所述合成器在进行数据合并时,对硬盘/内存的读写进行控制。
20.如权利要求19所述的复用空闲计算资源的云转码系统,其特征在于,所述合成器为所述分布式文件子系统中单独的计算机。
21.一种分布式文件装置,其特征在于,包括:
源数据存储模组,用于存放源数据;
上传数据存储模组,用于存放转码后的数据;
多个转码器,用于根据接收到的任务信息以及任务分配信息,分别从所述源数据存储模组中获取相应媒体片段的源数据,并转码成目标格式的数据,存入所述上传数据存储模组;
至少一个合成器,且至少一个合成器与多个转码器形成一个进程工作模组,所述合成器用于根据接收到的任务分配信息,将所在进程工作模组中的转码器转码后的数据进行合并,形成转码后的媒体文件,并存入所述上传数据存储模组。
22.如权利要求21所述的分布式文件装置,其特征在于,所述转码器将转码后的数据存入所述上传数据存储模组后,将相应的存储地址信息发送给同一进程工作模组的合成器,所述合成器通过所述存储地址信息从所述上传数据存储模组中获取相应的转码后的数据,并进行合成。
23.如权利要求21所述的分布式文件装置,其特征在于,所述转码器与所述上传数据存储模组之间的通讯、所述转码器与所述源数据存储模组之间的通讯、以及所述合成器与所述上传数据存储模组之间的通讯均采用http协议。
24.如权利要求21所述的分布式文件装置,其特征在于,根据任务信息中源文件的时间长度确定需要执行的并行工作数,并形成所述任务分配信息。
25.如权利要求21所述的分布式文件装置,其特征在于,所述转码器在进行转码时,将CPU占用率控制在预设范围内。
26.如权利要求25所述的分布式文件装置,其特征在于,所述转码器利用周期性的中断程序控制CPU占用率。
27.如权利要求21所述的分布式文件装置,其特征在于,所述合成器在进行数据合并时,对硬盘/内存的读写进行控制。
28.如权利要求27所述的分布式文件装置,其特征在于,所述合成器为所述分布式文件装置中单独的计算机。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210490708.0A CN103838779B (zh) | 2012-11-27 | 2012-11-27 | 复用空闲计算资源的云转码方法及系统、分布式文件装置 |
PCT/CN2013/085388 WO2014082505A1 (zh) | 2012-11-27 | 2013-10-17 | 转码方法及系统、分布式文件装置 |
US14/711,928 US10291673B2 (en) | 2012-11-27 | 2015-05-14 | Transcoding method and system, and distributed file apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210490708.0A CN103838779B (zh) | 2012-11-27 | 2012-11-27 | 复用空闲计算资源的云转码方法及系统、分布式文件装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103838779A true CN103838779A (zh) | 2014-06-04 |
CN103838779B CN103838779B (zh) | 2019-02-05 |
Family
ID=50802288
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210490708.0A Active CN103838779B (zh) | 2012-11-27 | 2012-11-27 | 复用空闲计算资源的云转码方法及系统、分布式文件装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10291673B2 (zh) |
CN (1) | CN103838779B (zh) |
WO (1) | WO2014082505A1 (zh) |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104252394A (zh) * | 2014-09-05 | 2014-12-31 | 江苏维罗可思信息科技有限公司 | 在线云转码服务系统软件 |
CN104378665A (zh) * | 2014-11-24 | 2015-02-25 | 深圳市天威视讯股份有限公司 | 一种基于数字电视的分布式转码系统及方法 |
CN104469396A (zh) * | 2014-12-24 | 2015-03-25 | 北京中科大洋信息技术有限公司 | 一种分布式转码系统和方法 |
CN105357546A (zh) * | 2015-11-17 | 2016-02-24 | 国云科技股份有限公司 | 一种基于云计算的视频转码方法 |
CN105354254A (zh) * | 2015-10-21 | 2016-02-24 | 杭州施强网络科技有限公司 | 一种利用节点服务器进行文档文件格式转换的方法 |
CN105407413A (zh) * | 2014-09-11 | 2016-03-16 | 腾讯科技(深圳)有限公司 | 一种分布式视频转码方法及相关设备、系统 |
CN105657451A (zh) * | 2016-01-14 | 2016-06-08 | 世纪龙信息网络有限责任公司 | 上传视频文件同时进行转码的方法与系统 |
CN105992020A (zh) * | 2015-07-24 | 2016-10-05 | 乐视云计算有限公司 | 一种分配视频转换资源的方法及系统 |
CN106851400A (zh) * | 2015-12-03 | 2017-06-13 | 山大鲁能信息科技有限公司 | 微课视频分布式转码方法及系统 |
CN107291370A (zh) * | 2016-03-30 | 2017-10-24 | 杭州海康威视数字技术股份有限公司 | 一种云存储系统调度方法和装置 |
CN108134660A (zh) * | 2017-12-19 | 2018-06-08 | 新疆石油管理局数据公司 | 一种油井数据处理方法及周期设置方法和设备 |
CN109195012A (zh) * | 2018-11-07 | 2019-01-11 | 成都索贝数码科技股份有限公司 | 一种基于对象存储分片转码/合成闪拼成mp4文件的方法 |
CN109862402A (zh) * | 2019-01-31 | 2019-06-07 | 深圳爱克莱特科技股份有限公司 | 基于并行和边缘计算的灯光控制系统多媒体数据处理装置 |
CN110278282A (zh) * | 2019-07-01 | 2019-09-24 | 成都启英泰伦科技有限公司 | 一种语音大数据存储调用方法 |
CN111246215A (zh) * | 2018-11-28 | 2020-06-05 | 深圳市炜博科技有限公司 | 一种视频格式转换的方法及终端 |
CN111314777A (zh) * | 2019-12-06 | 2020-06-19 | 北京沃东天骏信息技术有限公司 | 视频生成方法及装置、计算机存储介质、电子设备 |
CN111427686A (zh) * | 2020-03-23 | 2020-07-17 | 贵阳块数据城市建设有限公司 | 一种处理器多线程并发方法 |
CN112423024A (zh) * | 2020-11-18 | 2021-02-26 | 北京乐学帮网络技术有限公司 | 一种视频转码方法、装置、计算机设备和存储介质 |
CN113055680A (zh) * | 2021-03-16 | 2021-06-29 | 西南科技大学 | 一种分布式转码方法 |
CN114071046A (zh) * | 2020-07-31 | 2022-02-18 | 上海华博信息服务有限公司 | 一种特种影片转制服务平台 |
CN114598927A (zh) * | 2022-03-03 | 2022-06-07 | 京东科技信息技术有限公司 | 转码资源的调度方法、系统以及调度装置 |
CN114745601A (zh) * | 2022-04-01 | 2022-07-12 | 暨南大学 | 一种分布式音视频转码系统及其方法 |
CN115174535A (zh) * | 2022-06-24 | 2022-10-11 | 上海网达软件股份有限公司 | 基于Kubernetes实现文件转码POD调度方法、系统、设备及存储介质 |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104967619B (zh) | 2015-06-17 | 2018-09-04 | 深圳市腾讯计算机系统有限公司 | 文件推送方法、装置和系统 |
US10387367B2 (en) | 2016-05-26 | 2019-08-20 | Red Hat, Inc. | Distributed file system with integrated file object conversion |
US10511864B2 (en) | 2016-08-31 | 2019-12-17 | Living As One, Llc | System and method for transcoding media stream |
US11412272B2 (en) | 2016-08-31 | 2022-08-09 | Resi Media Llc | System and method for converting adaptive stream to downloadable media |
CN106791932B (zh) * | 2017-01-06 | 2019-08-30 | 广州亦云信息技术股份有限公司 | 分布式转码系统、方法及其装置 |
US10531134B2 (en) | 2017-11-10 | 2020-01-07 | Akamai Technologies, Inc. | Determining a time budget for transcoding of video |
KR102006449B1 (ko) | 2017-11-29 | 2019-08-01 | 네이버 주식회사 | 분산 트랜스코딩 방법 및 분산 트랜스코딩 시스템 |
US11653040B2 (en) * | 2018-07-05 | 2023-05-16 | Mux, Inc. | Method for audio and video just-in-time transcoding |
US11695978B2 (en) | 2018-07-05 | 2023-07-04 | Mux, Inc. | Methods for generating video-and audience-specific encoding ladders with audio and video just-in-time transcoding |
CN110830826A (zh) * | 2018-08-08 | 2020-02-21 | 视联动力信息技术股份有限公司 | 视频转码设备调度方法及系统 |
CN109471715B (zh) * | 2018-09-17 | 2021-10-29 | 咪咕视讯科技有限公司 | 一种转码任务的调度方法、装置及存储介质 |
US11611784B2 (en) * | 2019-08-02 | 2023-03-21 | Dao Lab Limited | System and method for transferring large video files with reduced turnaround time |
CN111083408B (zh) * | 2019-12-20 | 2022-08-05 | 苏州浪潮智能科技有限公司 | 一种视频存储业务的处理方法、系统及设备 |
CN111158887B (zh) * | 2019-12-31 | 2023-11-17 | 中国银行股份有限公司 | 一种集中式数据分布式处理方法及装置 |
CN114072760A (zh) * | 2020-05-29 | 2022-02-18 | 京东方科技集团股份有限公司 | 切割方法、分配方法、介质、服务器、系统 |
CN112584103A (zh) * | 2020-12-07 | 2021-03-30 | 武汉微创光电股份有限公司 | 一种大规模监控视频转码上云的方法及系统 |
CN112689171B (zh) * | 2020-12-16 | 2023-06-13 | 创盛视联数码科技(北京)有限公司 | 一种视频播放系统 |
CN112866713B (zh) * | 2021-01-19 | 2022-09-16 | 北京睿芯高通量科技有限公司 | 一种转码一体机系统以及转码方法 |
CN115002514B (zh) * | 2022-05-27 | 2023-07-21 | 浙江大学 | 基于云原生控制器的spark视频转码系统及视频转码方法 |
CN115277579B (zh) * | 2022-07-25 | 2024-03-19 | 广州品唯软件有限公司 | 仓库视频调取方法及云平台 |
CN117055880B (zh) * | 2023-08-22 | 2024-05-03 | 广东保伦电子股份有限公司 | 一种基于容器化部署的文档转码方法、装置及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040078369A1 (en) * | 2002-07-02 | 2004-04-22 | American Management Systems, Incorporated | Apparatus, method, and medium of a commodity computing high performance sorting machine |
US20050273772A1 (en) * | 1999-12-21 | 2005-12-08 | Nicholas Matsakis | Method and apparatus of streaming data transformation using code generator and translator |
US20070244962A1 (en) * | 2005-10-20 | 2007-10-18 | The Trustees Of Columbia University In The City Of New York | Methods, media and systems for managing a distributed application running in a plurality of digital processing devices |
US20100241953A1 (en) * | 2006-07-12 | 2010-09-23 | Tae Hyeon Kim | Method and apparatus for encoding/deconding signal |
CN101909046A (zh) * | 2009-11-17 | 2010-12-08 | 新奥特(北京)视频技术有限公司 | 一种多媒体转码服务器及一种多媒体转码系统 |
CN102123279A (zh) * | 2010-12-28 | 2011-07-13 | 乐视网信息技术(北京)股份有限公司 | 一种分布式实时转码方法与系统 |
CN102497359A (zh) * | 2011-12-02 | 2012-06-13 | 山东大学 | 一种基于瘦客户端流媒体服务系统的运行方法 |
CN102780918A (zh) * | 2012-08-15 | 2012-11-14 | 华数传媒网络有限公司 | 一种视频分布式转换编码格式方法 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3155991B2 (ja) * | 1997-04-09 | 2001-04-16 | 日本アイ・ビー・エム株式会社 | 集約演算実行方法及びコンピュータ・システム |
US6609131B1 (en) * | 1999-09-27 | 2003-08-19 | Oracle International Corporation | Parallel partition-wise joins |
WO2003048961A1 (en) * | 2001-12-04 | 2003-06-12 | Powerllel Corporation | Parallel computing system, method and architecture |
US7133905B2 (en) * | 2002-04-09 | 2006-11-07 | Akamai Technologies, Inc. | Method and system for tiered distribution in a content delivery network |
US7082495B2 (en) * | 2002-06-27 | 2006-07-25 | Microsoft Corporation | Method and apparatus to reduce power consumption and improve read/write performance of hard disk drives using non-volatile memory |
US8850223B1 (en) * | 2002-07-19 | 2014-09-30 | F5 Networks, Inc. | Method and system for hard disk emulation and cryptographic acceleration on a blade server |
US7650331B1 (en) * | 2004-06-18 | 2010-01-19 | Google Inc. | System and method for efficient large-scale data processing |
US7865898B2 (en) * | 2006-01-27 | 2011-01-04 | Oracle America, Inc. | Repartitioning parallel SVM computations using dynamic timeout |
US20070177519A1 (en) * | 2006-01-30 | 2007-08-02 | Thomsen Jan H | Systems and methods for transcoding bit streams |
CN101197754B (zh) | 2007-12-27 | 2011-11-16 | 腾讯科技(深圳)有限公司 | 分布式系统、分布式业务处理方法及相关装置 |
US9268613B2 (en) * | 2010-12-20 | 2016-02-23 | Microsoft Technology Licensing, Llc | Scheduling and management in a personal datacenter |
CN102595652A (zh) * | 2011-01-05 | 2012-07-18 | 中兴通讯股份有限公司 | 支持数字电视的移动终端和实现方法 |
US8583818B2 (en) * | 2011-01-31 | 2013-11-12 | Cbs Interactive Inc. | System and method for custom segmentation for streaming video |
KR101136564B1 (ko) * | 2011-10-24 | 2012-04-19 | 이기택 | Ssd를 사용한 vod 서비스 방법 |
US8700683B2 (en) * | 2011-10-24 | 2014-04-15 | Nokia Corporation | Method and apparatus for providing a key-value based storage interface |
US9432704B2 (en) * | 2011-11-06 | 2016-08-30 | Akamai Technologies Inc. | Segmented parallel encoding with frame-aware, variable-size chunking |
US9063938B2 (en) * | 2012-03-30 | 2015-06-23 | Commvault Systems, Inc. | Search filtered file system using secondary storage, including multi-dimensional indexing and searching of archived files |
US9112922B2 (en) * | 2012-08-28 | 2015-08-18 | Vantrix Corporation | Method and system for self-tuning cache management |
US9516078B2 (en) * | 2012-10-26 | 2016-12-06 | Cisco Technology, Inc. | System and method for providing intelligent chunk duration |
US8928804B2 (en) * | 2012-11-19 | 2015-01-06 | Broadcom Corporation | Managing encoder parameters for parallel transcoding |
-
2012
- 2012-11-27 CN CN201210490708.0A patent/CN103838779B/zh active Active
-
2013
- 2013-10-17 WO PCT/CN2013/085388 patent/WO2014082505A1/zh active Application Filing
-
2015
- 2015-05-14 US US14/711,928 patent/US10291673B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050273772A1 (en) * | 1999-12-21 | 2005-12-08 | Nicholas Matsakis | Method and apparatus of streaming data transformation using code generator and translator |
US20040078369A1 (en) * | 2002-07-02 | 2004-04-22 | American Management Systems, Incorporated | Apparatus, method, and medium of a commodity computing high performance sorting machine |
US20070244962A1 (en) * | 2005-10-20 | 2007-10-18 | The Trustees Of Columbia University In The City Of New York | Methods, media and systems for managing a distributed application running in a plurality of digital processing devices |
US20100241953A1 (en) * | 2006-07-12 | 2010-09-23 | Tae Hyeon Kim | Method and apparatus for encoding/deconding signal |
CN101909046A (zh) * | 2009-11-17 | 2010-12-08 | 新奥特(北京)视频技术有限公司 | 一种多媒体转码服务器及一种多媒体转码系统 |
CN102123279A (zh) * | 2010-12-28 | 2011-07-13 | 乐视网信息技术(北京)股份有限公司 | 一种分布式实时转码方法与系统 |
CN102497359A (zh) * | 2011-12-02 | 2012-06-13 | 山东大学 | 一种基于瘦客户端流媒体服务系统的运行方法 |
CN102780918A (zh) * | 2012-08-15 | 2012-11-14 | 华数传媒网络有限公司 | 一种视频分布式转换编码格式方法 |
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104252394A (zh) * | 2014-09-05 | 2014-12-31 | 江苏维罗可思信息科技有限公司 | 在线云转码服务系统软件 |
CN105407413B (zh) * | 2014-09-11 | 2019-03-08 | 腾讯科技(深圳)有限公司 | 一种分布式视频转码方法及相关设备、系统 |
CN105407413A (zh) * | 2014-09-11 | 2016-03-16 | 腾讯科技(深圳)有限公司 | 一种分布式视频转码方法及相关设备、系统 |
CN104378665A (zh) * | 2014-11-24 | 2015-02-25 | 深圳市天威视讯股份有限公司 | 一种基于数字电视的分布式转码系统及方法 |
CN104378665B (zh) * | 2014-11-24 | 2018-02-27 | 深圳市天威视讯股份有限公司 | 一种基于数字电视的分布式转码系统及方法 |
CN104469396A (zh) * | 2014-12-24 | 2015-03-25 | 北京中科大洋信息技术有限公司 | 一种分布式转码系统和方法 |
CN104469396B (zh) * | 2014-12-24 | 2018-01-05 | 北京中科大洋信息技术有限公司 | 一种分布式转码系统和方法 |
WO2017016292A1 (zh) * | 2015-07-24 | 2017-02-02 | 乐视控股(北京)有限公司 | 一种分配视频转换资源的方法及系统 |
CN105992020A (zh) * | 2015-07-24 | 2016-10-05 | 乐视云计算有限公司 | 一种分配视频转换资源的方法及系统 |
CN105354254A (zh) * | 2015-10-21 | 2016-02-24 | 杭州施强网络科技有限公司 | 一种利用节点服务器进行文档文件格式转换的方法 |
CN105357546A (zh) * | 2015-11-17 | 2016-02-24 | 国云科技股份有限公司 | 一种基于云计算的视频转码方法 |
CN106851400B (zh) * | 2015-12-03 | 2021-02-05 | 山大鲁能信息科技有限公司 | 微课视频分布式转码方法及系统 |
CN106851400A (zh) * | 2015-12-03 | 2017-06-13 | 山大鲁能信息科技有限公司 | 微课视频分布式转码方法及系统 |
CN105657451B (zh) * | 2016-01-14 | 2018-06-22 | 世纪龙信息网络有限责任公司 | 上传视频文件同时进行转码的方法与系统 |
CN105657451A (zh) * | 2016-01-14 | 2016-06-08 | 世纪龙信息网络有限责任公司 | 上传视频文件同时进行转码的方法与系统 |
CN107291370A (zh) * | 2016-03-30 | 2017-10-24 | 杭州海康威视数字技术股份有限公司 | 一种云存储系统调度方法和装置 |
CN108134660A (zh) * | 2017-12-19 | 2018-06-08 | 新疆石油管理局数据公司 | 一种油井数据处理方法及周期设置方法和设备 |
CN108134660B (zh) * | 2017-12-19 | 2021-04-09 | 新疆石油管理局数据公司 | 一种油井数据处理方法及周期设置方法和设备 |
CN109195012A (zh) * | 2018-11-07 | 2019-01-11 | 成都索贝数码科技股份有限公司 | 一种基于对象存储分片转码/合成闪拼成mp4文件的方法 |
CN111246215A (zh) * | 2018-11-28 | 2020-06-05 | 深圳市炜博科技有限公司 | 一种视频格式转换的方法及终端 |
CN109862402A (zh) * | 2019-01-31 | 2019-06-07 | 深圳爱克莱特科技股份有限公司 | 基于并行和边缘计算的灯光控制系统多媒体数据处理装置 |
CN110278282A (zh) * | 2019-07-01 | 2019-09-24 | 成都启英泰伦科技有限公司 | 一种语音大数据存储调用方法 |
CN111314777A (zh) * | 2019-12-06 | 2020-06-19 | 北京沃东天骏信息技术有限公司 | 视频生成方法及装置、计算机存储介质、电子设备 |
CN111314777B (zh) * | 2019-12-06 | 2021-03-30 | 北京沃东天骏信息技术有限公司 | 视频生成方法及装置、计算机存储介质、电子设备 |
CN111427686A (zh) * | 2020-03-23 | 2020-07-17 | 贵阳块数据城市建设有限公司 | 一种处理器多线程并发方法 |
CN111427686B (zh) * | 2020-03-23 | 2023-03-24 | 贵阳块数据城市建设有限公司 | 一种处理器多线程并发方法 |
CN114071046A (zh) * | 2020-07-31 | 2022-02-18 | 上海华博信息服务有限公司 | 一种特种影片转制服务平台 |
CN112423024A (zh) * | 2020-11-18 | 2021-02-26 | 北京乐学帮网络技术有限公司 | 一种视频转码方法、装置、计算机设备和存储介质 |
CN113055680A (zh) * | 2021-03-16 | 2021-06-29 | 西南科技大学 | 一种分布式转码方法 |
CN114598927A (zh) * | 2022-03-03 | 2022-06-07 | 京东科技信息技术有限公司 | 转码资源的调度方法、系统以及调度装置 |
CN114745601A (zh) * | 2022-04-01 | 2022-07-12 | 暨南大学 | 一种分布式音视频转码系统及其方法 |
CN114745601B (zh) * | 2022-04-01 | 2024-04-19 | 暨南大学 | 一种分布式音视频转码系统及其方法 |
CN115174535A (zh) * | 2022-06-24 | 2022-10-11 | 上海网达软件股份有限公司 | 基于Kubernetes实现文件转码POD调度方法、系统、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2014082505A1 (zh) | 2014-06-05 |
CN103838779B (zh) | 2019-02-05 |
US10291673B2 (en) | 2019-05-14 |
US20150244757A1 (en) | 2015-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103838779A (zh) | 复用空闲计算资源的云转码方法及系统、分布式文件装置 | |
CN107888933B (zh) | 用于处理实时视频流的段的方法和系统 | |
Sembiring et al. | Dynamic resource allocation for cloud-based media processing | |
US10390055B1 (en) | Video file processing | |
CN110769278B (zh) | 一种分布式视频转码方法及系统 | |
EP2256735B1 (en) | Rendering in a multi-user video editing system | |
CN110856018B (zh) | 一种基于云计算的监控系统中的快速转码方法及系统 | |
CN102123279B (zh) | 一种分布式实时转码方法与系统 | |
CN105828105A (zh) | 一种基于分布式环境的视频转码系统及视频转码方法 | |
US9712835B2 (en) | Video encoding system and method | |
CN102882829A (zh) | 一种转码方法及系统 | |
CN102855133B (zh) | 一种计算机处理单元交互式系统 | |
US20140129680A1 (en) | Socket communication apparatus and method | |
CN102497370A (zh) | 一种在移动互联网发布及点播媒体节目的方法及系统 | |
Reddy et al. | Qos-Aware Video Streaming Based Admission Control And Scheduling For Video Transcoding In Cloud Computing | |
EP2552075A2 (en) | Systems and methods of distributed file storage | |
Ko et al. | Design analysis for real-time video transcoding on cloud systems | |
Pan et al. | OJUMP: Optimization for joint unicast‐multicast panoramic VR live streaming system | |
Panarello et al. | A big video data transcoding service for social media over federated clouds | |
Van Ma et al. | An efficient scheduling multimedia transcoding method for DASH streaming in cloud environment | |
KR20190059465A (ko) | 대용량의 uhd 트랜스코딩을 위한 스마트 작업 스케일링 및 분산 트랜스코딩 클라우드 서비스 방법 및 이를 위한 장치 | |
CN101616319B (zh) | 数据处理方法及服务设备 | |
Kastrinakis et al. | Video2Flink: real-time video partitioning in Apache Flink and the cloud | |
Ting et al. | Smart video hosting and processing platform for Internet-of-Things | |
Nirmalan et al. | An intelligent surveillance video analytics framework using NACT-Hadoop/MapReduce on cloud services |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |