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

技术编号:9796474 阅读:152 留言:0更新日期:2014-03-22 03:39
本发明专利技术实施例提供一种分布式转码的音视频同步方法,以及一种用于音视频同步的分布式转码系统,用以解决现有技术中分布式视频转码出现的音视频无法同步的问题。使用本发明专利技术实施例公开的分布式转码的音视频同步方法及系统,封装服务器在对GOP以及音频包进行封装前能够生成各个音视频帧相对于整个源视频文件的时间戳,从而可以保证音频和视频的同步。

【技术实现步骤摘要】
一种分布式转码的音视频同步方法及系统
本专利技术涉及计算机
,尤其涉及一种分布式转码的音视频同步方法及系统。
技术介绍
当有大量视频需要进行转换格式时,可以采用多台单机版的转码软件进行转码;而更为高效的办法是设计一个分布式的转码系统进行转码。分布式视频转码一般可分为四个步骤进行:a、解封装,b、视频解码编码,c、音频解码编码,d、封装。这四个步骤中视频解码编码这一步要耗费整个转码过程80%-90%的时间。为了提高转码速度,减少转码的整体时间最核心的是要减少视频解码编码的处理时间。分布式转码的思想是利用多台服务器同时并行对进GOP(GroupofPictures,画面组)解码编码处理,并行处理GOP的服务器越多,整个转码过程耗时就越少。为此分布式转码系统一般被设计为:一台服务器负责解封装,多台服务器负责处理GOP,一台服务器负责处理音频包,一台服务器负责封装并输出目标视频文件。图1所示即为分布式转码的系统示意图。在单机上进行视频转码时,一般是按照音视频帧的自然顺序对音视频帧进行解码、编码,在编码的时候就可以同时按照顺序产生音视频帧的时间戳(pts(presentationtimestamp,显示时间戳),dts(decodingtimestampPTS,解码时间戳))。而分布式转码是由若干台服务器同时并行对GOP和音频包进行解码、编码的,这样就打乱了音视频帧的自然顺序,出现音视频无法同步的现象。
技术实现思路
为了解决分布式视频转码出现的音视频无法同步的问题,本专利技术实施例提出一种分布式转码的音视频同步方法和系统。本专利技术的一个方面,提供一种分布式转码的音视频同步方法,包括:解封装服务器解封装源视频文件,分别产生至少一个图片组GOP以及音频包;所述解封装服务器将各个GOP中第一个视频帧的序号写入所述各个GOP中,并将各个音频包中的第一个音频帧的序号写入所述各个音频包中;所述解封装服务器将所述GOP以及音频包发送到转码服务器;所述转码服务器对所述GOP进行编解码操作,生成编码后的GOP,并对所述编码后的GOP内部各视频帧生成时间戳;所述转码服务器对所述音频包进行编解码操作,生成编码后的音频包,并按照所述音频包内部帧的顺序对所述编码后的音频包内部各音频帧生成时间戳,所述编码后的音频包中包含所述第一个音频帧的序号;所述转码服务器将所述编码后的GOP以及音频包发送到封装服务器;所述封装服务器根据所述各个编码后的音频包中第一个音频帧的序号,以及各个音频包内部各音频帧的时间戳生成所述音频包内部各音频帧相对于所述源视频文件的时间戳。本专利技术的另一个方面,提供一种用于音视频同步的分布式转码系统,包括:解封装服务器,转码服务器,以及封装服务器;所述解封装服务器用于解封装源视频文件,分别产生至少一个图片组GOP以及音频包;所述解封装服务器还用于将各个GOP中第一个视频帧的序号写入所述各个GOP中,并将各个音频包中的第一个音频帧的序号写入所述各个音频包中;所述解封装服务器还用于将所述GOP以及音频包发送到所述转码服务器;所述转码服务器用于对所述GOP进行编解码操作,生成编码后的GOP,并对所述编码后的GOP内部各视频帧生成时间戳;所述转码服务器还用于对所述音频包进行编解码操作,生成编码后的音频包,并按照所述音频包内部帧的顺序对所述编码后的音频包内部各音频帧生成时间戳,所述编码后的音频包中包含所述第一个音频帧的序号;所述转码服务器还用于将所述编码后的GOP以及音频包发送到所述封装服务器;所述封装服务器还用于根据所述各个编码后的音频包中第一个音频帧的序号,以及各个音频包内部各音频帧的时间戳生成所述音频包内部各音频帧相对于所述源视频文件的时间戳。使用本专利技术实施例公开的分布式转码的音视频同步方法及系统,解封装服务器对解码产生的GOP以及音频包中的第一帧文件分别进行编号,从而可以确定各个GOP以及音频包在整个源视频文件中各帧的顺序;转码服务器在对GOP以及音频包进行转码的同时按照GOP以及音频包内部各帧的顺序生成GOP中内部各视频帧的时间戳以及音频包内部个音频帧的时间戳;封装服务器在收到前述处理过的GOP以及音频包后能够根据GOP以及音频包内部第一帧文件的序号以及内部各帧的时间戳生成各帧相对于整个源视频文件的时间戳,这样即可实现转码后的音视频帧文件的同步,保证了视频封装的正常进行。附图说明图1所示是一种分布式视频转码的系统示意图;图2所示是本专利技术实施例提供的一种分布式视频转码的纠错方法的示意图;图3所示是本专利技术实施例提供的一种用于音视频同步的分布式转码系统的结构示意图。具体实施方式在本专利技术实施例中,解封装服务器对解码产生的GOP以及音频包中的第一帧文件分别进行编号,从而可以确定各个GOP以及音频包在整个源视频文件中各帧的顺序;转码服务器在对GOP以及音频包进行转码的同时按照GOP以及音频包内部各帧的顺序生成GOP中内部各视频帧的时间戳以及音频包内部个音频帧的时间戳;封装服务器在收到前述处理过的GOP以及音频包后能够根据GOP以及音频包内部第一帧文件的序号以及内部各帧的时间戳生成各帧相对于整个源视频文件的时间戳,这样即可实现转码后的音视频帧文件的同步,保证了视频封装的正常进行。以下详细说明本专利技术实施例提供的分布式转码的音视频同步方法。图2所示为本专利技术一个实施例提供的分布式转码的音视频同步方法示意图,根据该图,详述各步骤如下:步骤201、解封装服务器解封装源视频文件,分别产生至少一个图片组GOP以及音频包;其中,所述各个GOP中第一个视频帧的序号,是指所述各个GOP中第一个视频帧在所述源视频文件中所有视频帧中排序的序号;所述各个音频包中第一个音频帧的序号,是指所述各个音频包中的第一个音频帧在所述源视频文件中所有音频帧中排序的序号。步骤202、所述解封装服务器将各个GOP中第一个视频帧的序号写入所述各个GOP中,并将各个音频包中的第一个音频帧的序号写入所述各个音频包中;步骤203、所述解封装服务器将所述GOP以及音频包发送到转码服务器;步骤204、所述转码服务器对所述GOP进行编解码操作,生成编码后的GOP,并对所述编码后的GOP内部各视频帧生成时间戳;其中,所述转码服务器对所述GOP进行编解码操作,生成编码后的GOP,并对所述编码后的GOP内部各视频帧生成时间戳,包括:所述转码服务器按照所述GOP内部帧的顺序对所述GOP进行解码操作;所述转码服务器按照所述GOP内部帧的顺序对所述解码后的GOP按照新的格式进行编码;所述转码服务器提取所述GOP中的第一个视频帧的序号,按照所述GOP中的第一个视频帧的序号在对所述GOP中每一帧进行编码的同时产生每一帧的时间戳。步骤205、所述转码服务器对所述音频包进行编解码操作,生成编码后的音频包,并按照所述音频包内部帧的顺序对所述编码后的音频包内部各音频帧生成时间戳,所述编码后的音频包中包含所述第一个音频帧的序号;其中,所述转码服务器对所述音频包进行编解码操作,生成编码后的音频包,并按照所述音频包内部帧的顺序对所述编码后的音频包内部各音频帧生成时间戳,包括:所述转码服务器按照所述音频包内部帧的顺序对所述音频包进行解码操作;所述转码服务器按照所述音频包内部帧的顺序对所述解码后的音频包按照新的格式进行编码本文档来自技高网...
一种分布式转码的音视频同步方法及系统

【技术保护点】
一种分布式转码的音视频同步方法,其特征在于,包括:解封装服务器解封装源视频文件,分别产生至少一个图片组GOP以及音频包;所述解封装服务器将各个GOP中第一个视频帧的序号写入所述各个GOP中,并将各个音频包中的第一个音频帧的序号写入所述各个音频包中;所述解封装服务器将所述GOP以及音频包发送到转码服务器;所述转码服务器对所述GOP进行编解码操作,生成编码后的GOP,并对所述编码后的GOP内部各视频帧生成时间戳;所述转码服务器对所述音频包进行编解码操作,生成编码后的音频包,并按照所述音频包内部帧的顺序对所述编码后的音频包内部各音频帧生成时间戳,所述编码后的音频包中包含所述第一个音频帧的序号;所述转码服务器将所述编码后的GOP以及音频包发送到封装服务器;所述封装服务器根据所述各个编码后的音频包中第一个音频帧的序号,以及各个音频包内部各音频帧的时间戳生成所述音频包内部各音频帧相对于所述源视频文件的时间戳。

【技术特征摘要】
1.一种分布式转码的音视频同步方法,其特征在于,包括:解封装服务器解封装源视频文件,分别产生至少一个图片组GOP以及音频包;所述解封装服务器将各个GOP中第一个视频帧的序号写入所述各个GOP中,并将各个音频包中的第一个音频帧的序号写入所述各个音频包中,所述各个GOP中第一个视频帧的序号,是指所述各个GOP中第一个视频帧在所述源视频文件中所有视频帧中排序的序号,所述各个音频包中第一个音频帧的序号,是指所述各个音频包中的第一个音频帧在所述源视频文件中所有音频帧中排序的序号;所述解封装服务器将所述GOP以及音频包发送到转码服务器;所述转码服务器对所述GOP进行编解码操作,生成编码后的GOP,并对所述编码后的GOP内部各视频帧生成时间戳;所述转码服务器对所述音频包进行编解码操作,生成编码后的音频包,并按照所述音频包内部帧的顺序对所述编码后的音频包内部各音频帧生成时间戳,所述编码后的音频包中包含所述第一个音频帧的序号;所述转码服务器将所述编码后的GOP以及音频包发送到封装服务器;所述封装服务器根据所述各个编码后的音频包中第一个音频帧的序号,以及各个音频包内部各音频帧的时间戳生成所述音频包内部各音频帧相对于所述源视频文件的时间戳。2.根据权利要求1所述的方法,其特征在于,所述转码服务器对所述GOP进行编解码操作,生成编码后的GOP,并对所述编码后的GOP内部各视频帧生成时间戳,包括:所述转码服务器按照所述GOP内部帧的顺序对所述GOP进行解码操作;所述转码服务器按照所述GOP内部帧的顺序对所述解码后的GOP按照新的格式进行编码;所述转码服务器提取所述GOP中的第一个视频帧的序号,按照所述GOP中的第一个视频帧的序号在对所述GOP中每一帧进行编码的同时生成每一帧的时间戳。3.根据权利要求1或2所述的方法,其特征在于,所述转码服务器对所述音频包进行编解码操作,生成编码后的音频包,并按照所述音频包内部帧的顺序对所述编码后的音频包内部各音频帧生成时间戳,包括:所述转码服务器按照所述音频包内部帧的顺序对所述音频包进行解码操作;所述转码服务器按照所述音频包内部帧的顺序对所述解码后的音频包按照新的格式进行编码;所述转码服务器对所述解码后的音频包按照新的格式进行编码的同时,按照所述音频包内部帧的顺序对所述编码后的音频包内部各音频帧生成时间戳。4.根据权利要求1所述的方法,其特征在于,所述封装服务器根据所述各个编码后的音频包中第一个音频帧的序号,以及各个音频包内部各音频帧的时间戳生成所述音频包内部各音频帧相对于所述源视频文件的时间戳,包括:所述封装服务器根据所述音频包内相邻音频帧的时间戳计算所述音频帧时间戳的间隔,并按照所述音频包内相邻音频帧的时间戳间隔和每一个音频包中第一音频帧的序号生成所述音频包内部各音频帧相对于所述源视频文件的时间戳。5.一种用于音视频同步的分布式转码系统,其特征在于...

【专利技术属性】
技术研发人员:张金良
申请(专利权)人:天脉聚源北京传媒科技有限公司
类型:发明
国别省市:

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

1