CN109151505A - 一种视频转码方法、系统、装置及计算机可读存储介质 - Google Patents
一种视频转码方法、系统、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN109151505A CN109151505A CN201811321211.XA CN201811321211A CN109151505A CN 109151505 A CN109151505 A CN 109151505A CN 201811321211 A CN201811321211 A CN 201811321211A CN 109151505 A CN109151505 A CN 109151505A
- Authority
- CN
- China
- Prior art keywords
- video
- transcoded
- slice
- sliced
- transcoding
- 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
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, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
-
- 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
-
- 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/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8547—Content authoring involving timestamps for synchronizing content
Abstract
本申请公开了一种视频转码方法,获取待转码视频;对待转码视频进行冗余切片,得到切片待转码视频集,切片待转码视频集中包括一组切片待转码视频;在切片待转码视频集中确定出目标切片待转码视频;在对目标切片待转码视频进行转码时,保留目标切片待转码视频的参数集,并引用目标切片待转码视频的参数集对切片待转码视频集中除目标切片待转码视频之外的其他切片待转码视频进行转码。本申请还公开了一种视频转码系统、装置及计算机可读存储介质,使得切片待转码视频可以将冗余切片所对应的视频作为自身的重建图像;使得通过待转码视频本身即可为切片待转码视频添加其转码时所需的参数集;使得切片待转码视频可正常转码,稳定性高。
Description
技术领域
本申请涉及音视频技术领域,更具体地说,涉及一种视频转码方法、系统、装置及计算机可读存储介质。
背景技术
随着通信技术的发展,在视频的转码过程中,为了提高转码效率,可以采用分布式转码方式对视频进行转码。分布式转码是一种利用分处各地的多台机器分别对原音视频文件的其中的一段同时进行处理的转码方式。
在分布式转码方式中,需要对视频进行拆分,然而,在将视频进行拆分后,会出现转码失败的情况,也即分布式转码方式的稳定性较差。
综上所述,如何提高分布式转码方式的稳定性是目前本领域技术人员亟待解决的问题。
发明内容
本申请的主要目在于提供一种视频转码方法、系统、装置及计算机可读存储介质,旨在解决提高分布式转码方式的稳定性的技术问题。
为实现上述目的,本申请提供的一种视频转码方法,包括:
获取待转码视频;
对所述待转码视频进行冗余切片,得到切片待转码视频集,所述切片待转码视频集中包括一组切片待转码视频;
在所述切片待转码视频集中确定出目标切片待转码视频;
在对所述目标切片待转码视频进行转码时,保留所述目标切片待转码视频的参数集,并引用所述目标切片待转码视频的参数集对所述切片待转码视频集中除所述目标切片待转码视频之外的其他所述切片待转码视频进行转码。
优选的,所述在所述切片待转码视频集中确定出目标切片待转码视频,包括:
确定所述切片待转码视频集中的显示时间戳的值最小的所述切片待转码视频为所述目标切片待转码视频。
优选的,在对每一个所述切片待转码视频进行转码的过程中,包括:
将所述切片待转码视频中的非冗余视频部分进行转码,得到所述切片待转码视频对应的转码视频,并舍弃所述切片待转码视频中的冗余视频部分。
优选的,所述舍弃所述切片待转码视频中的冗余视频部分,包括:
舍弃所述切片待转码视频中显示时间戳等于前一个所述切片待转码视频的显示时间戳的视频部分。
优选的,在对每一个所述切片待转码视频进行转码之后,还包括:
按照显示时间戳的先后顺序,将每一个所述切片待转码视频对应的转码视频进行拼接,得到所述待转码视频对应的转码视频。
优选的,所述保留所述目标切片待转码视频的参数集,包括:
保留所述目标切片待转码视频的参数集,所述参数集包括序列参数集和图像参数集。
优选的,所述对所述待转码视频进行冗余切片,包括:
在复用层按照预设冗余长度值对所述待转码视频进行冗余切片,所述预设冗余长度值包括5秒。
优选的,所述获取待转码视频之后,所述对所述待转码视频进行冗余切片之前,还包括:
判断所述待转码视频的类型是否为open-gop类型,若是,则执行所述对所述待转码视频进行冗余切片的步骤。
优选的,所述判断所述待转码视频的类型是否为open-gop类型,包括:
解复用分析所述待转码视频,得到解复用待转码视频;
解码所述解复用待转码视频的所有I帧的块头部,读取每一个所述块头部的帧顺序号;
判断值为0的所述帧顺序号的个数是否大于等于预设个数,若是,则判定所述待转码视频的类型为所述open-gop类型,若否,则判定所述待转码视频的类型并非所述open-gop类型。
为实现上述目的,本申请进一步提供一种视频转码系统,包括:
第一获取模块,用于获取待转码视频;
第一切片模块,用于对所述待转码视频进行冗余切片,得到切片待转码视频集,所述切片待转码视频集中包括一组切片待转码视频;
第一确定模块,用于在所述切片待转码视频集中确定出目标切片待转码视频;
第一处理模块,用于在对所述目标切片待转码视频进行转码时,保留所述目标切片待转码视频的参数集,并引用所述目标切片待转码视频的参数集对所述切片待转码视频集中除所述目标切片待转码视频之外的其他所述切片待转码视频进行转码。
优选的,所述第一确定模块包括:
第一确定单元,用于确定所述切片待转码视频集中的显示时间戳的值最小的所述切片待转码视频为所述目标切片待转码视频。
优选的,所述第一处理模块包括:
第一转码单元,用于将所述切片待转码视频中的非冗余视频部分进行转码,得到所述切片待转码视频对应的转码视频,并舍弃所述切片待转码视频中的冗余视频部分。
优选的,所述第一转码单元包括:
第一舍弃子单元,用于舍弃所述切片待转码视频中显示时间戳等于前一个所述切片待转码视频的显示时间戳的视频部分。
优选的,还包括:
第一拼接模块,用于所述第一处理模块在对每一个所述切片待转码视频进行转码之后,按照显示时间戳的先后顺序,将每一个所述切片待转码视频对应的转码视频进行拼接,得到所述待转码视频对应的转码视频。
优选的,所述第一处理模块包括:
第一保留单元,用于保留所述目标切片待转码视频的参数集,所述参数集包括序列参数集和图像参数集。
优选的,所述第一切片模块包括:
第一切片单元,用于在复用层按照预设冗余长度值对所述待转码视频进行冗余切片,所述预设冗余长度值包括5秒。
优选的,还包括:
第一判断模块,用于所述第一获取模块获取待转码视频之后,所述第一切片模块对所述待转码视频进行冗余切片之前,判断所述待转码视频的类型是否为open-gop类型,若是,则执行所述对所述待转码视频进行冗余切片的步骤。
优选的,所述第一判断模块包括:
第一解复用单元,用于解复用分析所述待转码视频,得到解复用待转码视频;
第一读取单元,用于解码所述解复用待转码视频的所有I帧的块头部,读取每一个所述块头部的帧顺序号;
第一判断单元,用于判断值为0的所述帧顺序号的个数是否大于等于预设个数,若是,则判定所述待转码视频的类型为所述open-gop类型,若否,则判定所述待转码视频的类型并非所述open-gop类型。
为实现上述目的,本申请进一步提供一种视频转码装置,所述装置包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的视频转码程序,所述视频转码程序被所述处理器执行时实现如上任一所述的方法。
优选的,所述装置为组成CDN网络或者区块链网络的节点。
为实现上述目的,本申请进一步提供一种计算机可读存储介质,所述计算机可读存储介质上存储有视频转码程序,所述视频转码程序可被一个或者多个处理器执行,以实现如上任一所述的视频转码方法。
本申请提供的一种视频转码方法,获取待转码视频;对待转码视频进行冗余切片,得到切片待转码视频集,切片待转码视频集中包括一组切片待转码视频;在切片待转码视频集中确定出目标切片待转码视频;在对目标切片待转码视频进行转码时,保留目标切片待转码视频的参数集,并引用目标切片待转码视频的参数集对切片待转码视频集中除目标切片待转码视频之外的其他切片待转码视频进行转码。
本申请提供的一种视频转码方法,通过对待转码视频进行冗余切片,使得切片待转码视频可以将冗余切片所对应的视频作为自身的重建图像;此外,引用目标切片待转码视频的参数集对除目标切片待转码视频之外的其他切片待转码视频进行冗余切片,使得通过待转码视频本身即可为切片待转码视频添加其转码时所需的参数集;当切片待转码视频具有重建图像和参数集后,切片待转码视频即可正常转码;可见,本申请提供的一种视频转码方法不需依靠外界即可实现对视频的转码,稳定性高。本申请提供的一种视频转码系统、装置及计算机可读存储介质也解决了相应技术问题。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请第一实施例的流程示意图;
图2为本申请第二实施例的流程示意图;
图3为本申请第三实施例的流程示意图;
图4为图3中判断待转码视频的类型是否为open-gop类型的步骤的细化流程示意图;
图5为本申请实施例提供的一种视频转码方法的实施流程图;
图6为本申请一实施例揭露的视频转码系统的结构示意图;
图7为本申请一实施例揭露的视频转码装置的内部结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
本申请提供一种视频转码方法。
参照图1,图1为本申请第一实施例的流程示意图。
在第一实施例中,该方法包括:
S101,获取待转码视频。
实际应用中,可以先获取待转码视频。具体的,可以按照实时接收的原则接收待转码视频,以此来获取待转码视频;还可以按照累积达到预设数量后获取累积的全部待转码视频的原则接收待转码视频,以此来获取待转码视频等。待转码视频的封装格式,包括但不限于以下几种:mp4、ts、flv、mkv等。
S102,对待转码视频进行冗余切片,得到切片待转码视频集,切片待转码视频集中包括一组切片待转码视频。
实际应用中,对待转码视频进行冗余切片,也即将待转码视频进行切片,并且在切片过程中为待转码视频添加冗余部分,不难理解,冗余部分为待转码视频的一部分,使得切片待转码视频可以将冗余部分作为自身的重建图;这里所描述的重建图像是指编码器中的重构环路里的图像,也就是编码码流的图像,其一般被用作参考图像,为编码帧获取参考块。本申请中,切片待转码视频的冗余部分可以为该切片待转码视频相邻的其他切片待转码视频的一部分,以两个相邻的切片待转码为A和B为例,B的冗余部分便可以为A的一部分视频。对待转码视频进行冗余切片后得到的切片待转码视频的数量可以根据实际需要确定,在待转码视频的大小确定的情况下,当每个切片待转码视频的大小确定后,切片待转码视频的总个数便可以相应的确定;此外,还可以根据切片待转码视频的总个数来确定每个切片待转码视频的大小,比如按照均分原则,将待转码视频进行冗余切片,得到预设数量的切片待转码视频等。
S103,在切片待转码视频集中确定出目标切片待转码视频。
实际应用中,在得到切片待转码视频集后,便可以在切片待转码视频集中确定出目标切片待转码视频,比如将切片待转码视频集中的第一个生成的切片待转码视频作为目标切片待转码视频等,具体的确定原则可以根据实际需要确定。
S104,在对目标切片待转码视频进行转码时,保留目标切片待转码视频的参数集,并引用目标切片待转码视频的参数集对切片待转码视频集中除目标切片待转码视频之外的其他切片待转码视频进行转码。
实际应用中,在确定出目标切片待转码视频后,在对目标切片待转码视频进行转码时,便需保留目标切片待转码视频的参数集;并且引用目标切片待转码视频的参数集对其他切片待转码视频进行转码,也即将目标切片待转码视频的参数集作为其他切片待转码视频转码时所需的参数集。
本申请提供的一种视频转码方法,获取待转码视频;对待转码视频进行冗余切片,得到切片待转码视频集,切片待转码视频集中包括一组切片待转码视频;在切片待转码视频集中确定出目标切片待转码视频;在对目标切片待转码视频进行转码时,保留目标切片待转码视频的参数集,并引用目标切片待转码视频的参数集对切片待转码视频集中除目标切片待转码视频之外的其他切片待转码视频进行转码。本申请提供的一种视频转码方法,通过对待转码视频进行冗余切片,使得切片待转码视频可以将冗余切片所对应的视频作为自身的重建图像;此外,引用目标切片待转码视频的参数集对除目标切片待转码视频之外的其他切片待转码视频进行冗余切片,使得通过待转码视频本身即可为切片待转码视频添加其转码时所需的参数集;当切片待转码视频具有重建图像和参数集后,切片待转码视频即可正常转码;可见,本申请提供的一种视频转码方法不需依靠外界即可实现对视频的转码,稳定性高。
在第一实施例中,步骤S103在切片待转码视频集中确定出目标切片待转码视频的步骤可以具体为:确定切片待转码视频集中的显示时间戳(Presentation time stamp,pts)的值最小的切片待转码视频为目标切片待转码视频。也即按时间顺序,将待转码视频中最先出现的视频作为目标切片待转码视频,这样之后的其他切片待转码视频只需依照最先出现的视频进行转码即可,保证了时间上的有序性,可以增强整个转码过程的有序性,此外,将显示时间戳的值最小的切片待转码视频作为目标切片待转码视频,还可以兼容码流的参数集发生切换的情况,进一步提高整个转码过程的稳定性。
在第一实施例中,在对每一个切片待转码视频进行转码的过程中,可以将切片待转码视频中的非冗余视频部分进行转码,得到切片待转码视频对应的转码视频,并舍弃切片待转码视频中的冗余视频部分。由于切片待转码视频中的冗余视频部分只是为非冗余部分提高重建图像,如果对冗余视频部分一并进行转码,提高整个转码的压力且无有益效果,为了避免提高整个转码过程的压力,可以只对非冗余视频部分进行转码,并且在转码完成后,舍弃冗余视频部分。应当指出,在此过程中,应保证冗余视频部分的显示时间戳和帧类型不变。
在第一实施例中,舍弃切片待转码视频中的冗余视频部分的步骤可以具体为:舍弃切片待转码视频中显示时间戳等于前一个切片待转码视频的显示时间戳的视频部分。借助显示时间戳可以方便、快速的确定出切片待转码视频中的冗余视频部分和非冗余视频部分,从而可以提高舍弃切片待转码视频中的冗余视频部分的效率,进而可以提高整个视频转码方法的效率。
请参照图2,图2为本申请第二实施例的流程示意图。
在第二实施例中,该方法包括:
S201,获取待转码视频。
S202,对待转码视频进行冗余切片,得到切片待转码视频集,切片待转码视频集中包括一组切片待转码视频。
S203,在切片待转码视频集中确定出目标切片待转码视频。
S204,在对目标切片待转码视频进行转码时,保留目标切片待转码视频的参数集,并引用目标切片待转码视频的参数集对切片待转码视频集中除目标切片待转码视频之外的其他切片待转码视频进行转码。
S205,在对每一个切片待转码视频进行转码之后,按照显示时间戳的先后顺序,将每一个切片待转码视频对应的转码视频进行拼接,得到待转码视频对应的转码视频。
本实施例中,在对每一个切片待转码视频进行转码之后,可以按照显示时间戳的先后顺序,将每一个切片待转码视频对应的转码视频进行拼接,得到待转码视频对应的转码视频,以便于对转码视频进行封装、传输等后续操作。应当指出,在此过程中,对于待转码视频中携带的音频部分,可以根据需要进行选择性转码,如果不对音频部分转码,则可以直接拷贝待转码视频中的音频部分来得到转码视频中的音频部分,拷贝过程中也可以根据显示时间戳来判断是否去掉音频部分的冗余部分。
在第一实施例和第二实施例中,保留目标切片待转码视频的参数集的步骤可以具体为:保留目标切片待转码视频的参数集,参数集包括序列参数集(sps)和图像参数集(pps)。申请人发现,在将序列参数集和图像参数集作为参数集的情况下,即可实现对切片待转码图像的转码,也即只需将序列参数集和图像参数集作为参数集即可实现对切片待转码视频的转码,节省了本领域技术人员在众多数据中确定出有效参数集的时间,可以提高整个视频转码方法的效率。
在第一实施例和第二实施例中,对待转码视频进行冗余切片的步骤可以具体为:在复用层按照预设冗余长度值对待转码视频进行冗余切片,预设冗余长度值包括5秒。为了实现对切片待转码视频的转码,满足转码需求,又尽可能低的减少冗余视频部分的大小,可以将冗余视频部分的长度值设定为5秒,当然,也可以为其他长度。这里所描述的复用层也即待转码视频的封装层,由于在封装层进行切片,省去了去压缩层进行切割、重新进行封装的过程,可以提高视频转码方法的转码效率。
请参照图3,图3为本申请第三实施例的流程示意图。
在第三实施例中,该方法包括:
S301,获取待转码视频。
S302,判断待转码视频的类型是否为open-gop类型,若是,则执行S303。
实际应用中,本申请的申请人发现提供的视频转码方法尤其适用于open-gop类型的H.264视频,所以可以先判断待转码视频的类型是否为open-gop类型,若是,则直接执行S303。若否,则可能还需要进行其他验证来判断待转码视频是否满足分布式转码条件。open-gop类型是H.264视频根据图像的GOP(group of picture,图像组)划分出的一个类型,于此对应的,还有close-gop类型,open-gop类型和close-gop类型的区别在于,close-gop类型只参考当前GOP内的图像,而open-gop类型不是只参考当前GOP内的图像。
S303,对待转码视频进行冗余切片,得到切片待转码视频集,切片待转码视频集中包括一组切片待转码视频。
S304,在切片待转码视频集中确定出目标切片待转码视频。
S305,在对目标切片待转码视频进行转码时,保留目标切片待转码视频的参数集,并引用目标切片待转码视频的参数集对切片待转码视频集中除目标切片待转码视频之外的其他切片待转码视频进行转码。
请参照图4,图4为图3中判断待转码视频的类型是否为open-gop类型的步骤的细化流程示意图。
在第三实施例中,S302判断待转码视频的类型是否为open-gop类型的步骤可以具体为:
S3021,解复用分析待转码视频,得到解复用待转码视频。
S3022,解码解复用待转码视频的所有I帧的块头部(slice header),读取每一个块头部的帧顺序号(frame_number)。
S3023,判断值为0的帧顺序号的个数是否大于等于预设个数,若是,则执行S2024,判定待转码视频的类型为open-gop类型,若否,则执行S2025,判定待转码视频的类型并非open-gop类型。
解复用是将音视频文件的外围封装格式拆开,得到音视频文件包含的音频压缩数据、视频压缩数据的过程。借助本实施例提供的方法可以快速判断待转码视频的类型是否为open-gop类型,进而提高整个方法的效率。
为了对本申请提供的一种视频转码方法有一个直观的了解,现结合附图对本申请提供的一种视频转码方法进行描述。请参照图5,图5为本申请实施例提供的一种视频转码方法的实施流程图。图5中,full time表示整个待转码的音视频文件;冗余切片表示将fulltime切分成带有一定冗余度的5个切片;引用sps/pps是指冗余切片的转码过程中使用sps/pps辅助转码过程的实现;转码是指将非冗余视频部分的帧转码输出,不输出冗余视频部分的转码结果;拼接是指将各个转码后的切片集中后连接起来。
另一方面,本申请提供一种视频转码系统。
参照图6,图6为本申请一实施例揭露的视频转码系统的结构示意图。
本申请提供的一种视频转码系统,可以包括:
第一获取模块601,用于获取待转码视频;
第一切片模块602,用于对待转码视频进行冗余切片,得到切片待转码视频集,切片待转码视频集中包括一组切片待转码视频;
第一确定模块603,用于在切片待转码视频集中确定出目标切片待转码视频;
第一处理模块604,用于在对目标切片待转码视频进行转码时,保留目标切片待转码视频的参数集,并引用目标切片待转码视频的参数集对切片待转码视频集中除目标切片待转码视频之外的其他切片待转码视频进行转码。
本申请提供的一种视频转码系统,第一确定模块可以包括:
第一确定单元,用于确定切片待转码视频集中的显示时间戳的值最小的切片待转码视频为目标切片待转码视频。
本申请提供的一种视频转码系统,第一处理模块可以包括:
第一转码单元,用于将切片待转码视频中的非冗余视频部分进行转码,得到切片待转码视频对应的转码视频,并舍弃切片待转码视频中的冗余视频部分。
本申请提供的一种视频转码系统,第一转码单元可以包括:
第一舍弃子单元,用于舍弃切片待转码视频中显示时间戳等于前一个切片待转码视频的显示时间戳的视频部分。
本申请提供的一种视频转码系统,还可以包括:
第一拼接模块,用于第一处理模块在对每一个切片待转码视频进行转码之后,按照显示时间戳的先后顺序,将每一个切片待转码视频对应的转码视频进行拼接,得到待转码视频对应的转码视频。
本申请提供的一种视频转码系统,第一处理模块可以包括:
第一保留单元,用于保留目标切片待转码视频的参数集,参数集包括序列参数集和图像参数集。
本申请提供的一种视频转码系统,第一切片模块可以包括:
第一切片单元,用于在复用层按照预设冗余长度值对待转码视频进行冗余切片,预设冗余长度值可以为5秒,也可以根据需要设定为其他数值。
本申请提供的一种视频转码系统,还可以包括:
第一判断模块,用于第一获取模块获取待转码视频之后,第一切片模块对待转码视频进行冗余切片之前,判断待转码视频的类型是否为open-gop类型,若是,则执行对待转码视频进行冗余切片的步骤。
本申请提供的一种视频转码系统,第一判断模块可以包括:
第一解复用单元,用于解复用分析待转码视频,得到解复用待转码视频;
第一读取单元,用于解码解复用待转码视频的所有I帧的块头部,读取每一个块头部的帧顺序号;
第一判断单元,用于判断值为0的帧顺序号的个数是否大于等于预设个数,若是,则判定待转码视频的类型为open-gop类型,若否,则判定待转码视频的类型并非open-gop类型。
另一方面,本申请提供一种视频转码装置。
参照图7,图7为本申请一实施例揭露的视频转码装置的内部结构示意图。
本实施例中,视频转码装置1可以是PC(Personal Computer,个人电脑),也可以是智能手机、平板电脑、掌上电脑、便携计算机、智能路由器、矿机、网络存储设备终端设备。
该视频转码装置1可以是组成CDN网络或者区块链网络的节点。
该视频转码装置1可以包括存储器11、处理器12和总线13。
其中,存储器11至少包括一种类型的可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是视频转码装置1的内部存储单元,例如该视频转码装置1的硬盘。存储器11在另一些实施例中也可以是视频转码装置1的外部存储设备,例如视频转码装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器11还可以既包括视频转码装置1的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于视频转码装置1的应用软件及各类数据,例如视频转码程序01的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行视频转码程序01等。
该总线13可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
进一步地,视频转码装置还可以包括网络接口14,网络接口14可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该装置1与其他电子设备之间建立通信连接。
可选地,该视频转码装置1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在视频转码装置1中处理的信息以及用于显示可视化的用户界面。
图7仅示出了具有组件11-14以及视频转码程序01的视频转码装置1,本领域技术人员可以理解的是,图6示出的结构并不构成对视频转码装置1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
本申请提供的一种计算机可读存储介质,计算机可读存储介质上存储有视频转码程序,视频转码程序可被一个或者多个处理器执行,以实现如上任一实施例所描述的视频转码方法。
这里所涉及的计算机可读存储介质包括随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (13)
1.一种视频转码方法,其特征在于,包括:
获取待转码视频;
对所述待转码视频进行冗余切片,得到切片待转码视频集,所述切片待转码视频集中包括一组切片待转码视频;
在所述切片待转码视频集中确定出目标切片待转码视频;
在对所述目标切片待转码视频进行转码时,保留所述目标切片待转码视频的参数集,并引用所述目标切片待转码视频的参数集对所述切片待转码视频集中除所述目标切片待转码视频之外的其他所述切片待转码视频进行转码。
2.根据权利要求1所述的方法,其特征在于,所述在所述切片待转码视频集中确定出目标切片待转码视频,包括:
确定所述切片待转码视频集中的显示时间戳的值最小的所述切片待转码视频为所述目标切片待转码视频。
3.根据权利要求1所述的方法,其特征在于,在对每一个所述切片待转码视频进行转码的过程中,包括:
将所述切片待转码视频中的非冗余视频部分进行转码,得到所述切片待转码视频对应的转码视频,并舍弃所述切片待转码视频中的冗余视频部分。
4.根据权利要求3所述的方法,其特征在于,所述舍弃所述切片待转码视频中的冗余视频部分,包括:
舍弃所述切片待转码视频中显示时间戳等于前一个所述切片待转码视频的显示时间戳的视频部分。
5.根据权利要求3所述的方法,其特征在于,在对每一个所述切片待转码视频进行转码之后,还包括:
按照显示时间戳的先后顺序,将每一个所述切片待转码视频对应的转码视频进行拼接,得到所述待转码视频对应的转码视频。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述保留所述目标切片待转码视频的参数集,包括:
保留所述目标切片待转码视频的参数集,所述参数集包括序列参数集和图像参数集。
7.根据权利要求6所述的方法,其特征在于,所述对所述待转码视频进行冗余切片,包括:
在复用层按照预设冗余长度值对所述待转码视频进行冗余切片,所述预设冗余长度值为5秒。
8.根据权利要求6所述的方法,其特征在于,所述获取待转码视频之后,所述对所述待转码视频进行冗余切片之前,还包括:
判断所述待转码视频的类型是否为open-gop类型,若是,则执行所述对所述待转码视频进行冗余切片的步骤。
9.根据权利要求8所述的方法,其特征在于,所述判断所述待转码视频的类型是否为open-gop类型,包括:
解复用分析所述待转码视频,得到解复用待转码视频;
解码所述解复用待转码视频的所有I帧的块头部,读取每一个所述块头部的帧顺序号;
判断值为0的所述帧顺序号的个数是否大于等于预设个数,若是,则判定所述待转码视频的类型为所述open-gop类型,若否,则判定所述待转码视频的类型并非所述open-gop类型。
10.一种视频转码系统,其特征在于,包括:
第一获取模块,用于获取待转码视频;
第一切片模块,用于对所述待转码视频进行冗余切片,得到切片待转码视频集,所述切片待转码视频集中包括一组切片待转码视频;
第一确定模块,用于在所述切片待转码视频集中确定出目标切片待转码视频;
第一处理模块,用于在对所述目标切片待转码视频进行转码时,保留所述目标切片待转码视频的参数集,并引用所述目标切片待转码视频的参数集对所述切片待转码视频集中除所述目标切片待转码视频之外的其他所述切片待转码视频进行转码。
11.一种视频转码装置,其特征在于,所述装置包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的视频转码程序,所述视频转码程序被所述处理器执行时实现如权利要求1至9任一项所述的方法。
12.根据权利要求11所述的装置,其特征在于,所述装置为组成CDN网络或者区块链网络的节点。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有视频转码程序,所述视频转码程序可被一个或者多个处理器执行,以实现如权利要求1至9中任一项所述的视频转码方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811321211.XA CN109151505B (zh) | 2018-11-07 | 2018-11-07 | 一种视频转码方法、系统、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811321211.XA CN109151505B (zh) | 2018-11-07 | 2018-11-07 | 一种视频转码方法、系统、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109151505A true CN109151505A (zh) | 2019-01-04 |
CN109151505B CN109151505B (zh) | 2021-02-26 |
Family
ID=64808040
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811321211.XA Active CN109151505B (zh) | 2018-11-07 | 2018-11-07 | 一种视频转码方法、系统、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109151505B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109889919A (zh) * | 2019-03-27 | 2019-06-14 | 深圳市网心科技有限公司 | 一种视频转码方法、装置、系统及介质 |
CN109963167A (zh) * | 2019-04-02 | 2019-07-02 | 深圳市网心科技有限公司 | 音视频处理方法、服务器、装置及存储介质 |
CN110113663A (zh) * | 2019-05-10 | 2019-08-09 | 深圳市网心科技有限公司 | 一种音视频转码方法、系统、存储介质及分布式设备 |
CN110505499A (zh) * | 2019-07-24 | 2019-11-26 | 深圳市瑞讯云技术有限公司 | 一种分布式转码系统及分布式转码装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101951504A (zh) * | 2010-09-07 | 2011-01-19 | 中国科学院深圳先进技术研究院 | 基于重叠边界的多媒体切片转码方法和系统 |
US20120191805A1 (en) * | 2011-01-26 | 2012-07-26 | Openwave Systems Inc. | Method and transcoding proxy for transcoding a media stream that is delivered to an end-user device over a communications network |
CN104469370A (zh) * | 2013-09-17 | 2015-03-25 | 中国普天信息产业股份有限公司 | 一种视频转码的方法和装置 |
CN104662904A (zh) * | 2012-09-21 | 2015-05-27 | 高通股份有限公司 | 用于视频译码的参数集的指示及激活 |
CN105027567A (zh) * | 2013-01-07 | 2015-11-04 | 诺基亚技术有限公司 | 用于视频编码和解码的方法和装置 |
CN105828105A (zh) * | 2015-12-10 | 2016-08-03 | 广东亿迅科技有限公司 | 一种基于分布式环境的视频转码系统及视频转码方法 |
CN105900424A (zh) * | 2013-10-11 | 2016-08-24 | 索尼公司 | 解码装置、解码方法、编码装置以及编码方法 |
CN107211167A (zh) * | 2015-02-05 | 2017-09-26 | 微软技术许可有限责任公司 | 视频解码 |
CN108650510A (zh) * | 2018-05-10 | 2018-10-12 | 中南大学 | 视频的编码方法和装置、存储介质、电子装置 |
-
2018
- 2018-11-07 CN CN201811321211.XA patent/CN109151505B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101951504A (zh) * | 2010-09-07 | 2011-01-19 | 中国科学院深圳先进技术研究院 | 基于重叠边界的多媒体切片转码方法和系统 |
US20120191805A1 (en) * | 2011-01-26 | 2012-07-26 | Openwave Systems Inc. | Method and transcoding proxy for transcoding a media stream that is delivered to an end-user device over a communications network |
CN104662904A (zh) * | 2012-09-21 | 2015-05-27 | 高通股份有限公司 | 用于视频译码的参数集的指示及激活 |
CN105027567A (zh) * | 2013-01-07 | 2015-11-04 | 诺基亚技术有限公司 | 用于视频编码和解码的方法和装置 |
CN104469370A (zh) * | 2013-09-17 | 2015-03-25 | 中国普天信息产业股份有限公司 | 一种视频转码的方法和装置 |
CN105900424A (zh) * | 2013-10-11 | 2016-08-24 | 索尼公司 | 解码装置、解码方法、编码装置以及编码方法 |
CN107211167A (zh) * | 2015-02-05 | 2017-09-26 | 微软技术许可有限责任公司 | 视频解码 |
CN105828105A (zh) * | 2015-12-10 | 2016-08-03 | 广东亿迅科技有限公司 | 一种基于分布式环境的视频转码系统及视频转码方法 |
CN108650510A (zh) * | 2018-05-10 | 2018-10-12 | 中南大学 | 视频的编码方法和装置、存储介质、电子装置 |
Non-Patent Citations (1)
Title |
---|
张勇: "面向移动视频的分布式实时转码机制研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109889919A (zh) * | 2019-03-27 | 2019-06-14 | 深圳市网心科技有限公司 | 一种视频转码方法、装置、系统及介质 |
CN109963167A (zh) * | 2019-04-02 | 2019-07-02 | 深圳市网心科技有限公司 | 音视频处理方法、服务器、装置及存储介质 |
CN110113663A (zh) * | 2019-05-10 | 2019-08-09 | 深圳市网心科技有限公司 | 一种音视频转码方法、系统、存储介质及分布式设备 |
CN110505499A (zh) * | 2019-07-24 | 2019-11-26 | 深圳市瑞讯云技术有限公司 | 一种分布式转码系统及分布式转码装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109151505B (zh) | 2021-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109151505A (zh) | 一种视频转码方法、系统、装置及计算机可读存储介质 | |
CN103702171B (zh) | 一种视频流下载方法及电子设备 | |
RU2015102812A (ru) | Концепция потока видеоданных | |
CN102223416B (zh) | 一种媒体文件的传输方法及系统 | |
CN102981887B (zh) | 数据处理方法及电子设备 | |
CN109600373B (zh) | 一种直播数据传输方法、装置、系统以及可读存储介质 | |
CN103327021B (zh) | 一种多设备互动方法及相关设备、系统 | |
WO2016045356A1 (zh) | 屏幕共享方法和装置 | |
CN105959797A (zh) | 一种视频解码方法及数字电视 | |
CN111510756A (zh) | 音视频的切换方法、装置、计算机设备及可读存储介质 | |
CN111510755A (zh) | 音视频的切换方法、装置、计算机设备及可读存储介质 | |
CN109921801A (zh) | 一种数据压缩及解压缩方法、装置、系统及数据处理系统 | |
CN106095413B (zh) | 一种蓝牙驱动程序的配置方法及装置 | |
CN109963167B (zh) | 音视频处理方法、服务器、装置及存储介质 | |
CN102799406A (zh) | 一种开机logo显示方法、装置及嵌入式设备 | |
CN115529425A (zh) | 车载显示屏,车载显示屏分区显示系统及方法 | |
CN110298896A (zh) | 图片转码方法、装置及电子设备 | |
CN106507172A (zh) | 信息编码方法、解码方法及装置 | |
CN105471871B (zh) | 用于提供视频片段集合的方法和装置 | |
CN106790466B (zh) | 用于推送的方法、服务器和终端设备 | |
CN116193160A (zh) | 一种数字水印嵌入方法、装置、设备和介质 | |
CN104506390A (zh) | 一种路测系统日志存储方法及装置 | |
CN109451313A (zh) | 一种视频编码方法、系统及电子设备和存储介质 | |
CN108984206B (zh) | 一种数据发送的方法和设备 | |
CN113066139A (zh) | 图片处理方法和装置、存储介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |