CN104581200B - 切片转码的方法和设备 - Google Patents
切片转码的方法和设备 Download PDFInfo
- Publication number
- CN104581200B CN104581200B CN201510064049.8A CN201510064049A CN104581200B CN 104581200 B CN104581200 B CN 104581200B CN 201510064049 A CN201510064049 A CN 201510064049A CN 104581200 B CN104581200 B CN 104581200B
- Authority
- CN
- China
- Prior art keywords
- transcoding
- machine
- data frame
- file fragment
- stopping
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 239000012634 fragment Substances 0.000 claims abstract description 143
- 230000001419 dependent effect Effects 0.000 claims abstract description 18
- 230000004044 response Effects 0.000 claims abstract description 8
- 230000008569 process Effects 0.000 abstract description 4
- 238000009432 framing Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005194 fractionation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- 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
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明的实施方式提供了一种切片转码方法。该方法包括:响应于对第一文件片段停止转码的控制指令,第一转码机器判断在所述第一文件片段的未经过转码处理的数据帧中是否存在依赖于已经过转码处理的数据帧才能解码的数据帧;如果否,第一转码机器立即停止转码,如果是,第一转码机器继续对所述第一文件片段进行转码,直到所述第一文件片段中未经过转码处理的数据帧不依赖已经过转码处理的数据帧即可解码时,才停止转码;第一转码机器将所述第一文件片段的停止转码位置上报给控制机器。本发明的方法可以解决现有技术中由于机群中的某一台机器无法在转码过程中提前终止自身的转码任务的问题。此外,本发明的另一方面提供了一种切片转码设备。
Description
技术领域
本发明的实施方式图像处理领域,更具体地,本发明的实施方式涉及切片转码的方法和设备。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述可包括可以探究的概念,但不一定是之前已经想到或者已经探究的概念。因此,除非在此指出,否则在本部分中描述的内容对于本申请的说明书和权利要求书而言不是现有技术,并且并不因为包括在本部分中就承认是现有技术。
在视频网站中,用户或者各个电影及电视剧制片厂商所提供的视频源文件的格式和码率不统一,因此,为了保证用户可以流畅稳定地观看视频源,需要在视频网站的后台将各种视频源文件转码成统一的格式和码率。转码本质上就是一个先解码,再编码的过程。
发明内容
但是,本发明人在研究过程中发现,在现有技术中,由于视频源文件的数据量比较大,如果只用一台机器对视频源文件进行转码的话,会导致转码效率较低,耗时也会很长。例如,以目前机器的计算能力,如果用一台机器对一个高清的视频源文件进行转码将消耗一到几个小时的时间。因此,针对视频源文件,一种改进的转码方式是先对视频源文件进行切片,然后将切片后所获得的多个文件片段分别分配给一个机群中的多台机器并行地进行转码,最后将转码后的多个文件片段合片成一个文件,从而最终获得一个转码文件。
依照现有技术,当采用改进的切片转码方式对一个视频源文件进行转码时,一旦机群中的某一个机器因为一定的原因而需要提前终止对某一个文件片段的转码,就需要由其它机器重新对该文件片段进行转码,而该机器在终止前已经获得的该文件片段的转码结果也将全部作废。
为此,非常需要一种切片转码方法和设备,以解决现有技术中由于机群中的某一台机器提前终止转码而导致的需要对该机器已经完成转码的文件片段重新进行转码的问题。
在本上下文中,本发明的实施方式期望提供一种切片转码方法和设备。
在本发明实施方式的第一方面中,提供了一种切片转码方法,包括:
响应于对第一文件片段停止转码的控制指令,第一转码机器判断在所述第一文件片段的未经过转码处理的数据帧中是否存在依赖于已经过转码处理的数据帧才能解码的数据帧;
如果否,第一转码机器立即停止转码,如果是,第一转码机器继续对所述第一文件片段进行转码,直到所述第一文件片段中未经过转码处理的数据帧不依赖已经过转码处理的数据帧即可解码时,才停止转码;
第一转码机器将所述第一文件片段的停止转码位置上报给控制机器。
在本发明实施方式的第二方面中,提供了一种切片转码设备,包括:
判断单元,用于响应于对第一文件片段停止转码的控制指令,判断在所述第一文件片段的未经过转码处理的数据帧中是否存在依赖于已经过转码处理的数据帧才能解码的数据帧;
停止转码执行单元,用于如果否,立即停止转码,如果是,继续对所述第一文件片段进行转码,直到所述第一文件片段中未经过转码处理的数据帧都不依赖已经过转码处理的数据帧即可解码时,才停止转码;
第一上报单元,用于将所述第一文件片段的停止转码位置上报给控制机器。
在本发明实施方式的第二方面中,提供了一种切片转码设备,包括:
任务接收单元,用于接收所述控制机器分配的对第一文件片段进行转码的转码任务,在所述转码任务中指示了所述第一文件片段在上一次转码时的停止转码位置;
转码单元,用于从所述停止转码位置开始对所述第一文件片段进行转码。
在本发明实施方式中,在接收到控制指令需要提前停止转码时,第一转码机器先确定当前在第一文件片段中未经过转码处理的数据帧是否存在依赖于已经过转码处理的数据帧才能解码的数据帧,如果不存在,就可以在当前立即停止转码,如果存在,还会继续对第一文件片段进行转码,直到第一文件片段中未经过转码处理的数据帧不依赖已经过转码处理的数据帧即可解码时,才停止转码。这样,在将未经过转码处理的那一部分数据帧交给其它的机器进行转码时,其它的机器可以成功地实现转码。也就是说,在第一转码机器提前停止转码后,可以由其它机器继续对第一文件片段剩下部分进行转码,而第一转码机器在终止转码前已经获得的该第一文件片段的转码结果仍然有效。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
图1示意性地示出了本发明实施方式可以在其中实施的一个示例性场景;
图2示意性地示出了根据本发明的一个实施方式的切片转码方法的流程图;
图3示意性地示出了根据本发明的一个实施方式的视频源文件的结构示意图;
图4-1示意性地示出了根据本发明的一个实施方式的文件片段一种转码停止位置的示意图;
图4-2示意性地示出了根据本发明的一个实施方式的文件片段的另一种停止转码位置的结构示意图;
图5示意性地示出了根据本发明的一个实施方式的将视频源文件拆分为三个文件片段的结构示意图;
图6示意性地示出了根据本发明一个实施方式的切片转码设备的结构框架图;
图7示意性地示出了根据本发明一个实施方式的判断单元的结构框架图;
图8示意性地示出了根据本发明的另一个实施方式的切片转码设备的结构框架图;
图9示意性地示出了根据本发明的另一个实施方式的切片转码设备的结构框架图。
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
根据本发明的实施方式,提出了一种切片转码方法和设备。
在本文中,需要理解的是,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
发明概述
本发明人发现,当由一个机群中的多台机器并行地对多个文件片段进行转码处理时,如果机群中的某一个机器在转码过程中提前停止了转码,并不是由其它的机器从该机器停止转码的位置开始继续转码,而是由其它的机器重新对该机器的文件片段进行转码。其主要原因在于:对于该机器上未经过转码处理的数据帧来说,其可能包含有依赖于已经过转码处理的数据帧才可以解码的数据帧,如果将未经过转码处理的那一部分数据帧直接交给其它的机器进行转码,将因为无法正常解码而导致转码失败。
如果当该机器停止转码时未经过转码处理的那部分数据帧可以不依赖于已经过转码处理的数据帧的话,就可以避免前面所述的由于机群中的某一台机器提前终止转码而导致的需要对该机器的文件片段重新进行转码的问题。
在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。
应用场景总览
首先参考图1,图1示意性地示出了本发明的实施方式可以在其中实施的示例性应用场景。其中,为了方便描述,假设在机群10中仅包含四个转码机器11、12、13和14。视频源文件30存储在控制机器20上,并且控制机器20将视频源文件30在物理上拆分为三个文件片段31、32和33,并分别分配给转码机器11、12和13,转码机器11对文件片段31进行转码处理,转码机器12对文件片段32进行转码处理,转码机器13对文件片段33进行转码处理。在转码过程中,如果转码机器11提前终止了对文件片段31的转码处理,控制机器20将文件片段31分配给目前空闲的转码机器14,并指示了文件片段31在上一次转码时的停止转码位置。转码处理完毕后,转码机器11将文件片段31的一部分转码结果(即,转码片段41A)、转码机器14将文件片段31的另一部分转码结果(即,转码片段41B)、转码机器12将文件片段32的转码结果(即,转码片段42)以及转码机器13将文件片段33的转码结果(即,转码片段43)都上传给控制机器20,最终由控制机器20将转码片段41A、转码片段41B、转码片段42和转码片段43合并为一个完整的转码文件40。本领域技术人员可以理解,图1所示的示意图仅是本发明的实施方式可以在其中得以实现的一个示例。本发明实施方式的应用范围不受到该框架任何方面的限制。例如,视频源文件30存储在一个云服务器上而不是控制机器20上,控制机器20将视频源文件30在逻辑上拆分为三个文件片段并生成三个转码任务分配给转码机器11、12和13,而在每一个转码任务中都指示了各个转码机器应该处理的文件片段的起始位置和终止位置。转码机器11、12和13根据转码任务中指示的起始位置和终止位置从云服务器上读取各自负责的文件片段,并进行转码处理。当转码机器11提前终止了对文件片段31的转码处理时,控制机器20再生成一个新的转码任务,并将新生成的转码任务分配给转码机器14,该该转码任务中指示了文件片段31的起始位置和终止位置,以及文件片段31在上一次转码时的停止转码位置,同样,转码机器14根据停止转码位置和终止位置从云服务器上读取其负责的文件片段,并进行转码处理。转码处理完毕后,转码机器11将转码片段41A、转码机器14将转码片段41B、转码机器12将转码片段42以及转码机器13将转码片段43都上传给云服务器,控制机器20从云服务器读取转码片段41A、转码片段41B、转码片段42和转码片段43,并将其合并为一个完整的转码文件40。
示例性方法
下面结合图1的应用场景,参考图2来描述根据本发明示例性实施方式的、用于切片转码方法。需要注意的是,上述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。
请参阅图2,其示意性地示出了根据本发明的一个实施方式的切片转码方法的流程图,例如,该方法由机群10中的转码机器11执行,该方法具体例如可以包括:
步骤201:响应于对文件片段31停止转码的控制指令,转码机器11判断在文件片段31的未经过转码处理的数据帧中是否存在依赖于已经过转码处理的数据帧才能解码的数据帧,如果是,进入步骤202,否则,进入步骤203。
步骤202:转码机器11继续对文件片段31进行转码,直到文件片段31中未经过转码处理的数据帧不依赖已经过转码处理的数据帧即可解码时,才停止转码,进入步骤204。
步骤203:转码机器11立即停止转码,进入步骤204。
步骤204:第一转码机器将所述第一文件片段的停止转码位置上报给控制机器。
其中,视频源文件主要由I、P和B三种类型的数据帧组成,如图3所示,I帧可以不依赖于其它数据帧而单独解码出完整的视频图像,P帧和B帧必须依赖前一个I帧才能解码出完整的视频图像。
因此,在本发明的一个优选实施方式中,转码机器11识别文件片段31中未经过转码处理的第一个数据帧是否为I帧,如果是I帧,如图4-1所示,可以确定在文件片段31的未经过转码处理的数据帧中不存在依赖于已经过转码处理的数据帧才能解码的数据帧,如果不是I帧,如图4-2所示,可以确定在文件片段31的未经过转码处理的数据帧中存在依赖于已经过转码处理的数据帧才能解码的数据帧。
当文件片段31中未经过转码处理的第一个数据帧不是I帧时,转码机器11需要继续对文件片段31进行转码,直到未经过转码处理的第一个数据帧为I帧或者对第一文件片段的转码完成时,停止转码,如图4-2所示实际停止转码位置。
可以理解的,这样可以保证当将文件片段31的剩下部分交给其它的转码机器,并由其它的转码机器继续对文件片段31中未经过转码处理的数据帧进行转码时,可以正常的转码,而不会出现丢帧或重复帧的问题。也就是说,转码机器11已完成的转码结果以及其它转码机器已完成的转码结果并不会因为转码机器11提前停止转码而全部作废,后续不再需要对整个视频源文件重新进行转码,而是继续将文件片段31中未经过转码处理的数据帧进行转码即可。
而对于视频帧来说,任意两个I帧的间隔一般在25-50个数据帧左右,根据清晰度的不同,转码50个数据帧所花费的时间在0.1-5秒左右。也就是说,对于转码机器11来说,当其接收到停止转码的控制指令之后,只需要延迟0.1-5秒左右的时间就可以在一个转码任务中脱离。
当然,需要说明的是,为了保证各个转码机器可以独立地将各自的文件片段进行转码,而不需要依赖其它文件片段中的数据帧,当控制机器20依据参考切片单位拆分视频源文件30时,可以将参考切片单位外最近的I帧的开始位置作为实际的拆分位置,从而将视频源文件30拆分为三个文件片段31、32和33,如图5所示。
在停止转码后,转码机器11将文件片段31的停止转码位置上报给控制机器20。例如,转码机器11可以将未经转码处理的第一个数据帧的位置作为停止转码位置,也可以将已经过转码处理的最后一个数据帧的位置作为停止转码位置。
为了完成对整个视频源文件30的转码,在本发明的另一个优选实施方式中,控制机器20还需要将未完成的文件片段31的转码任务分配给机群10中其它处于空闲状态的转码机器,例如,转码机器14。如果视频源文件30存储在控制机器20上,控制机器20可以将文件片段31分配给目前空闲的转码机器14,并指示文件片段31在上一次转码时(即,转码机器11对其转码时)的停止转码位置,转码机器14可以直接从停止转码位置开始对文件片段31进行转码。或者,控制机器20可以根据停止转码位置,对文件片段31进行进一步的切分,以切出还没有被转码的部分,并将该切出的还没有被转码的部分提供给转码机器14。如果视频源文件30存储在云服务器上,控制机器20可以向转码机器14指示文件片段31的起始位置和终止位置,以及文件片段31在上一次转码时的停止转码位置,转码机器14可以从云服务器上读取位于停止转码位置和终止位置之间文件片段,并对其进行转码。
最后,在本发明的另一个优选实施方式中,转码机器11将其对文件片段31进行转码后所得到的转码片段以及转码机器14将其对文件片段31进行转码后所得到的转码片段上报给控制机器20,控制机器20对这两个转码片段进行合并,从而得到文件片段31完整的转码片段41。
当然,当其它转码机器也将其负责的转码片段(如,文件片段32的转码片段42以及文件片段33的转码片段43)上报给控制机器20后时,控制机器20还可以进一步对其它的转码片段进行合并,最终获得视频源文件30完整的转码文件40。
另外,作为一种替换方式,转码机器11以及转码机器14还可以将其获得的转码片段上传给云服务器,控制机器20从该云服务器读取两个转码片段,并将其合并成完整的转码片段41。
在本发明的另一个优选实施方式中,如果机群10中的转码机器12或13在转码机器11提前终止转码任务时已经完成了其负责的转码任务,并处于空闲状态,作为替换,也可以由转码机器12或13继续完成对文件片段31的转码处理。当然,也可以将一个空闲的机器挂载到机群10中,由该新加入的机器继续完成对文件片段31的转码处理。
根据本发明,在接收到控制指令需要提前停止转码时,第一转码机器先确定当前在第一文件片段中未经过转码处理的数据帧是否存在依赖于已经过转码处理的数据帧才能解码的数据帧,如果不存在,就可以在当前立即停止转码,如果存在,还会继续对第一文件片段进行转码,直到第一文件片段中未经过转码处理的数据帧不依赖已经过转码处理的数据帧即可解码时,才停止转码。这样,在将未经过转码处理的那一部分数据帧交给其它的机器进行转码时,其它的机器可以成功地实现转码。也就是说,在第一转码机器提前停止转码时,可以由其它机器继续对第一文件片段的剩下部分进行转码,而第一转码机器在终止前已经获得的该文件片段的转码结果仍然有效。
示例性设备
在介绍了本发明示例性实施方式的方法之后,接下来,参考图6来描述根据本发明示例性实施方式的、用于切片转码设备。
参考图6,其示意性地示出了根据本发明一个实施方式的切片转码设备的结构框架图,例如,该设备可以为转码机器11。具体地,该设备例如可以包括:
判断单元601:用于响应于对第一文件片段停止转码的控制指令,判断在所述第一文件片段的未经过转码处理的数据帧中是否存在依赖于已经过转码处理的数据帧才能解码的数据帧;
停止转码执行单元602,用于如果否,立即停止转码,如果是,继续对所述第一文件片段进行转码,直到所述第一文件片段中未经过转码处理的数据帧都不依赖已经过转码处理的数据帧即可解码时,才停止转码;
第一上报单元603,用于将所述第一文件片段的停止转码位置上报给控制机器。
在本发明的一个优选实施方式中,如图7所示,判断单元601包括:
识别子单元6011,用于识别未经过转码处理的第一个数据帧是否为I帧;
确定子单元6012,用于如果是,确定在所述第一文件片段的未经过转码处理的数据帧中不存在依赖于已经过转码处理的数据帧才能解码的数据帧,如果否,确定在所述第一文件片段的未经过转码处理的数据帧中存在依赖于已经过转码处理的数据帧才能解码的数据帧。
在本发明的另一个优选实施方式中,所述停止转码执行单元具体用于:继续对所述第一文件片段的未经过转码处理的数据帧进行转码,直到下一个待转码的数据帧为I帧或者对第一文件片段的转码完成时,停止转码。
在本发明的另一个优选实施方式中,所述第一上报单元还用于,将所述第一文件片段进行转码后所得到的转码片段上报给控制机器,以便控制机器根据所述转码片段进行合并处理。
参考图8,其示意性地示出了根据本发明一个实施方式的切片转码设备的结构框架图,例如,该设备可以为转码机器14。具体地,该设备例如可以包括:
任务接收单元801,用于接收所述控制机器分配的对第一文件片段进行转码的转码任务,在所述转码任务中指示了所述第一文件片段在上一次转码时的停止转码位置;
转码单元802,用于从所述停止转码位置开始对所述第一文件片段进行转码。
在本发明的一个优选实施方式中,如图9所示,该设备还包括:
第二上报单元803,用于将所述第一文件片段进行转码后所得到的转码片段上报给控制机器,以便控制机器根据所述转码片段进行合并处理。
当然,本领域的技术人员可以理解,参考图8和9描述的设备也可以是转码机器11;同样地,参考图6和7描述的设备也可以是转码机器14。换句话说,每个转码机器都可以作为提前停止转码机器,以及提前停止转码机器的替换机器。
根据本发明,在接收到控制指令需要提前停止转码时,第一转码机器先确定当前在第一文件片段中未经过转码处理的数据帧是否存在依赖于已经过转码处理的数据帧才能解码的数据帧,如果不存在,就可以在当前立即停止转码,如果存在,还会继续对第一文件片段进行转码,直到第一文件片段中未经过转码处理的数据帧不依赖已经过转码处理的数据帧即可解码时,才停止转码。这样,在将未经过转码处理的那一部分数据帧交给其它的机器进行转码时,其它的机器可以成功地实现转码。也就是说,在第一转码机器提前停止转码时,可以由其它机器继续对第一文件片段的剩下部分进行转码,而第一转码机器在终止前已经获得的该文件片段的转码结果仍然有效。
应当注意,尽管在上文详细描述中提及了切片转码设备的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。
Claims (11)
1.一种切片转码方法,包括:
响应于对第一文件片段停止转码的控制指令,第一转码机器判断在所述第一文件片段的未经过转码处理的数据帧中是否存在依赖于已经过转码处理的数据帧才能解码的数据帧;
如果否,第一转码机器立即停止转码,如果是,第一转码机器继续对所述第一文件片段进行转码,直到所述第一文件片段中未经过转码处理的数据帧不依赖已经过转码处理的数据帧即可解码时,才停止转码;
第一转码机器将所述第一文件片段的停止转码位置上报给控制机器;
第二转码机器接收所述控制机器分配的对所述第一文件片段进行转码的转码任务,在所述转码任务中指示了所述第一文件片段在上一次转码时的停止转码位置;
第二转码机器从所述停止转码位置开始对所述第一文件片段进行转码。
2.根据权利要求1所述的方法,其中,所述第一转码机器判断在所述第一文件片段的未经过转码处理的数据帧中是否存在依赖于已经过转码处理的数据帧才能解码的数据帧,包括:
第一转码机器识别未经过转码处理的第一个数据帧是否为I帧;
如果是,确定在所述第一文件片段的未经过转码处理的数据帧中不存在依赖于已经过转码处理的数据帧才能解码的数据帧,如果否,确定在所述第一文件片段的未经过转码处理的数据帧中存在依赖于已经过转码处理的数据帧才能解码的数据帧。
3.根据权利要求2所述的方法,其中,所述第一转码机器继续对所述第一文件片段进行转码,直到所述第一文件片段中未经过转码处理的数据帧不依赖已经过转码处理的数据帧即可解码时,才停止转码,具体为:
第一转码机器继续对所述第一文件片段的未经过转码处理的数据帧进行转码,直到下一个待转码的数据帧为I帧或者对第一文件片段的转码完成时,停止转码。
4.根据权利要求1所述的方法,其中,所述第二转码机器为所述第一转码机器所在机群中的任一空闲机器,或者为在所述第一转码机器停止转码之后新加入到所述第一转码机器所在机群中的空闲机器。
5.根据权利要求1所述的方法,还包括:
第一转码机器以及第二转码机器将各自对所述第一文件片段进行转码后所得到的转码片段上报给控制机器;
控制机器对两个转码片段进行合并。
6.一种切片转码设备,包括:
判断单元,用于响应于对第一文件片段停止转码的控制指令,判断在所述第一文件片段的未经过转码处理的数据帧中是否存在依赖于已经过转码处理的数据帧才能解码的数据帧;
停止转码执行单元,用于如果否,立即停止转码,如果是,继续对所述第一文件片段进行转码,直到所述第一文件片段中未经过转码处理的数据帧都不依赖已经过转码处理的数据帧即可解码时,才停止转码;
第一上报单元,用于将所述第一文件片段的停止转码位置上报给控制机器,以使所述控制机器向第二转码机器分配对所述第一文件片段进行转码的转码任务,在所述转码任务中指示了所述第一文件片段在上一次转码时的停止转码位置;所述第二转码机器用于从所述停止转码位置开始对所述第一文件片段进行转码。
7.根据权利要求6所述的设备,其中,所述判断单元包括:
识别子单元,用于识别未经过转码处理的第一个数据帧是否为I帧;
确定子单元,用于如果是,确定在所述第一文件片段的未经过转码处理的数据帧中不存在依赖于已经过转码处理的数据帧才能解码的数据帧,如果否,确定在所述第一文件片段的未经过转码处理的数据帧中存在依赖于已经过转码处理的数据帧才能解码的数据帧。
8.根据权利要求7所述的设备,其中,所述停止转码执行单元具体用于:继续对所述第一文件片段的未经过转码处理的数据帧进行转码,直到下一个待转码的数据帧为I帧或者对第一文件片段的转码完成时,停止转码。
9.根据权利要求6所述的设备,所述第一上报单元还用于,将所述第一文件片段进行转码后所得到的转码片段上报给控制机器,以便控制机器根据所述转码片段进行合并处理。
10.一种切片转码设备,包括:
任务接收单元,用于接收控制机器分配的对第一文件片段进行转码的转码任务,在所述转码任务中指示了所述第一文件片段在上一次转码时的停止转码位置;所述第一文件片段在上一次转码时的停止转码位置是由第一转码机器上报给所述控制机器的,所述第一转码机器用于响应于对第一文件片段停止转码的控制指令,判断在所述第一文件片段的未经过转码处理的数据帧中是否存在依赖于已经过转码处理的数据帧才能解码的数据帧;如果否,第一转码机器立即停止转码,如果是,第一转码机器继续对所述第一文件片段进行转码,直到所述第一文件片段中未经过转码处理的数据帧不依赖已经过转码处理的数据帧即可解码时,才停止转码;第一转码机器将所述第一文件片段的停止转码位置上报给所述控制机器;
转码单元,用于从所述停止转码位置开始对所述第一文件片段进行转码。
11.根据权利要求10所述的设备,还包括:
第二上报单元,用于将所述第一文件片段进行转码后所得到的转码片段上报给控制机器,以便控制机器根据所述转码片段进行合并处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510064049.8A CN104581200B (zh) | 2015-02-06 | 2015-02-06 | 切片转码的方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510064049.8A CN104581200B (zh) | 2015-02-06 | 2015-02-06 | 切片转码的方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104581200A CN104581200A (zh) | 2015-04-29 |
CN104581200B true CN104581200B (zh) | 2018-01-02 |
Family
ID=53096255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510064049.8A Active CN104581200B (zh) | 2015-02-06 | 2015-02-06 | 切片转码的方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104581200B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110505499A (zh) * | 2019-07-24 | 2019-11-26 | 深圳市瑞讯云技术有限公司 | 一种分布式转码系统及分布式转码装置 |
CN112543374A (zh) * | 2020-11-30 | 2021-03-23 | 联想(北京)有限公司 | 一种转码控制方法、装置及电子设备 |
CN117156172B (zh) * | 2023-10-30 | 2024-01-16 | 江西云眼视界科技股份有限公司 | 视频切片上报方法、系统、存储介质及计算机 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007007496A1 (ja) * | 2005-07-12 | 2007-01-18 | Nec Corporation | 多地点会議システム、多地点会議方法及びプログラム |
US9307258B2 (en) * | 2012-10-30 | 2016-04-05 | Broadcom Corporation | Parallel transcoding |
CN103458270B (zh) * | 2013-09-09 | 2017-01-18 | 融创天下(上海)科技发展有限公司 | 视频转码系统和方法 |
CN104159127B (zh) * | 2014-08-21 | 2019-02-22 | 北京奇艺世纪科技有限公司 | 一种视频转码方法、装置及系统 |
-
2015
- 2015-02-06 CN CN201510064049.8A patent/CN104581200B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN104581200A (zh) | 2015-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103929655B (zh) | 对音视频文件进行转码处理的方法和设备 | |
WO2017101488A1 (zh) | 实时转码的监控方法和实时转码系统 | |
CN104581200B (zh) | 切片转码的方法和设备 | |
EP3365791B1 (en) | Techniques for determining client-side effects of server-side behavior using canary analysis | |
WO2020106779A3 (en) | Testing as a service for cloud gaming | |
CN105898318A (zh) | 离线转码方法和系统 | |
CN105824698A (zh) | 一种任务优先级修正方法和装置 | |
CN104601366B (zh) | 一种控制、服务节点配置服务的方法及装置 | |
WO2009058200A3 (en) | Method and apparatus for performing lower complexity multiple bit rate video encoding using metadata | |
CN103517143A (zh) | 网络视频的播放方法、装置及终端设备 | |
CA3073519C (en) | Scalable techniques for executing custom algorithms on media items | |
WO2016029738A1 (zh) | 对流数据进行处理的方法及装置 | |
CN110267118B (zh) | 一种视频发布方法和装置及计算机可读存储介质 | |
WO2015169028A1 (zh) | 终端软件的在线升级方法及装置 | |
US9380189B2 (en) | Method of providing information configuration function in video play device and video play device | |
CN109976745A (zh) | 一种业务流处理方法及装置 | |
WO2017096839A1 (zh) | 流媒体文件切片的方法、装置及系统 | |
WO2017185631A1 (zh) | 一种数据下载方法及设备 | |
KR102010236B1 (ko) | 동영상 비교 방법 및 이를 이용한 동영상 비교 시스템 | |
US20150135187A1 (en) | Method for monitoring resources in computing device, and computing device | |
CN109714214A (zh) | 一种服务器异常的处理方法及管理设备 | |
US20220021696A1 (en) | Minimizing Production Disruption Through A Scan Rule Engine | |
WO2017185798A1 (zh) | 多媒体文件分享的方法及装置 | |
WO2018177018A1 (zh) | 多调谐器机顶盒生产检测方法、系统及检测设备 | |
CN107835192A (zh) | 一种检测实时转码系统中hls直播流是否正常的方法及系统 |
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 |