一种音视频编码同步方法和系统技术方案

技术编号:7839839 阅读:222 留言:0更新日期:2012-10-12 07:29
本发明专利技术公开了一种音视频编码同步方法和系统,首先,采集音视频信号并分离为音频帧流和视频帧流,并分别保存在音频原始帧队列和视频原始帧队列中;对队列中的数据进行各自的编码,得到编码后的音频帧和编码后的视频帧;模拟硬件时钟生成各自的解码时间标签和显示时间标签,并将解码时间标签和显示时间标签插入到所述编码后的音频帧和编码后的视频帧中;将解码时间标签的值进行对比,交替组合排列输出同步的音视频帧并封装为TS流,同时模拟硬件时钟生成节目时钟参考插入到所述TS流中。本发明专利技术能够将音视频编码同步并有效降低用户成本。

【技术实现步骤摘要】

本专利技术涉及音视频编解码
,尤其涉及一种音视频编码同步方法和系统
技术介绍
MPEG组织于1994年推出MPEG-2压缩标准,以实现视/音频服务与应用互操作的可能性,MPEG-2标准是针对标准数字电视和高清晰度电视在各种应用下的压缩方案和系统层的详细规定。对应于不同的应用,符合MPEG-2标准的码流又分为传送流和程序流。在MPEG-2标准中,为了将一个或更多的音频、视频或其他的基本数据流合成单个或多个数据流,以适应于存储和传送,必须对其重新进行打包编码,在码流中还需插入各种时间标记、系统控制等信息,最后送到信道编码与调制器。这样可以形成两种数据流一传送流(TS)和程序流(PS),分别适用于不同的应用。 传送流(Transport Stream)简称 TS 流,它是根据 ITU-T Rec. H. 222. O | IS0/IEC13818-2和IS0/IEC 13818-3协议而定义的一种数据流,其目的是为了在有可能发生严重错误的情况下进行一道或多道程序编码数据的传送和存储。这种错误表现为比特值错误或分组丢失。传送流由一道或多道节目组成,每道节目由一个或多个原始流和一些其他流复合在一起,包括视频流、音频流、节目特殊信息流(PSI)和其他数据包。其中PSI表有4种类型节目关联表(PAT)、节目映射表(PMT)、网络信息表和条件访问表。传送流应用比较广泛,如视音频资料的保存、电视节目的非线性编辑系统及其网络等。在数字电视系统中,模拟视音频信号按照MPEG-2的标准,经过抽样、量化及压缩编码形成基本码流ES,基本码流ES是不分段的连续码流。把基本码流分割成段,并加上相应的头文件打包形成的打包基本码流PES,PES包和包之间可以是不连续的。在传输时将PES包再分段打成有固定长度188B的传送码流TS或可变长度的节目流包(PS包)。PES只是PS转换为TS或TS转换为PS的中间步骤或桥梁,是MPEG-2数据流互换的逻辑结构。TS和PS这两种码流分别适应于不同的场合应用,节目流PS适合在相对出错较少的环境下使用,其长度是变化的,而传送流TS能够把多个节目在基于一个或多个时间标识的基础上构成一个流,传送流适合于出错较多的场合下使用。用数据包传输的优点是网络中信息可占用不同的连接线路和简单暂存。通过数据包交织把多个数据流复用成一个新的数据流。便于解码器按照相应顺序对数据包进行灵活的整理,从而,为数据流同步和复用奠定了基础。MPEG-2的结构可分为压缩层和系统层,其中ES属于压缩层,PES和TS/PS属于系统层。在PES层,主要是在PES包头信息中加入PTS- Presentation Time Stamp (显示时间标签)和DTS- Decoding Time Stamp (解码时间标签)用于视频、音频同步。而在TS流中,TS包头加入了 PCR- Program Clock Reference (节目时钟参考),用于解码器的系统时钟恢复。在节目流PS包头中加入SCR,它的作用与PCR域相似。ES是编码视频数据流或音频数据流,每个ES都由若干个存取单元(AU)组成,每个视频AU或音频AU都是由头部和编码数据两部分组成,I个AU相当于编码的I幅视频图像或I个音频帧,也可以说,每个AU实际上是编码数据流的显示单元,即相当于解码的I幅视、频图像或I个音频帧的取样。MPEG-2对视频的压缩产生I帧、P帧、B帧。把帧顺序11帧-P4帧-B2帧-B3帧-P7帧-B5帧-B6帧的编码ES,通过打包并在每个帧中插入PTS/DTS标志,变成PES。在插入PTS/DTS标志时,由于在I帧PTS和DTS是相等的,所以无须在I帧多插入DTS。而对于B帧和P帧,由于经过复用后数据包的顺序会发生变化,显示前一定要存储于视频解码器的从新排序缓存器中,经过从新排序后再显示,所以一定要同时插入PTS和DTS作为从新排序的依据。例如,解码器输入的图像帧顺序为I1-P4-B2-B3-P7-B5-B6,但显示时P4 —定要在B2、B3之后,在PST和DTS的指引下,经过缓存器从新排序,以从建视频帧顺序为I1-B2-B3-P4-P7-B5-B6。将PES包再打成更小的具固定长度的TS包时在其包头位置加入了 PCR和PID (包标识)。PID的值是由用户确定的,解码器根据PID把TS (多节目传输流)上不同节目的TS包区分出来,以重建原来的ES。另外,TS的包头包含一个4bit的连续计数器,连续计数器可对PID包传送顺序计数,据计数器读数,接收端可判断是否有包丢失及包传送顺序错 误,所以TS的包头具有同步、识别、检错等功能。现在,H264/AAC编码也使用MPEG2 TS方式封装和传输,这样可以在更低的码率下传输更高质量的图像视频和音频。目前音视频同步一般是使用硬件系统时序时钟(STC-System Time Clock)来实现的,在硬件编码器中有一个系统时钟(其频率是27MHz),音视频的PTD/DTS以及在解码中还原编码器硬件时钟的PCR,都是通过这个硬件系统时钟产生的。由于音视频的DTS/PTS在硬件编码器中按照时间顺序同时生成,因此在硬件编码器中音视频原生态是同步的,只要在音视频复用成TS时插入由同一硬件时钟产生的PCR即可实现音视频同步。PCR的插入必须在PCR字段的最后离开复用器的那一时刻,同时把27 MHz系统时钟的采样瞬时值作为PCR字段插入到相应的PCR域。传输流中的PCR,PTS/DTS等均为对该共同系统时钟的采样值。解码端捕获PCR,恢复出本地的STC,作为音视频同步控制的基准,并依据PTS/DTS时间标签来安排解码和显示时间表,使音视频分别同步于STC,以实现音视频之间的同步。现有的音视频同步是依赖于27MHz的硬件时钟来实现的,但在软件编码器中,无法模拟硬件时钟,也就无法实现音视频同步输出。而且在软件实现中,音视频是各自独立编码的,编码后的音视频流各自存储到自己的缓冲器中,由于软件编码器受操作系统环境的影响,在同一时刻可能对音频已经编码,但视频还没有编码,这样同时输出音视频编码后的结果,已经是音视不同步了。软件编码可以根据CPU等系统硬件环境可以同时编码多路音视频流,但硬件编码器同一时刻只能编码一路视频流,如果有多路音视频流需要编码,那么多少路音视频流就需要多少个硬件编码器,但对于软件编码器来说,可能需要一台编码服务器即可满足用户需求。从成本角度来看硬件编码器成本高,且不灵活,在用户需要变动的情况下,无法满足用户需求,新的变化就要采购新的编码器,给用户带来重大损失。
技术实现思路
本专利技术的目的是针对上述技术问题提出的一种音视频编码同步方法和系统,能够使用户在不采购的硬件编码器的情况下,快速调整来适应市场的变动,解决了用户开发周期长、成本高、不易调试的问题,降低了项目实施失败的风险。本专利技术主要是通过软件实现音视频信号的采集和编码,能够同时对多路音视频流进行编码,并通过模拟硬件时钟生成解码时间标签和显示时间标签,将音视频流的解码时间标签和显示时间标签进行对比,再通过音视频同步装置进行排列组合生成同步后的音视频流,最后封装成TS流,实现音视频编码的同步,在音视频采集和编解码领域有非常广泛的应用。根据本专利技术的一方面,提供了本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种音视频编码同步方法,其特征在于,包括以下步骤 A、采集音视频信号并分离为音频帧流和视频帧流,并分别保存在音频原始帧队列和视频原始帧队列中; B、对所述音频原始帧队列和视频原始帧队列中的数据进行各自的编码,得到编码后的音频帧和编码后的视频帧; C、根据所述编码后的音频帧和编码后的视频帧模拟硬件时钟生成各自的解码时间标签和显示时间标签,并将所述解码时间标签和显示时间标签插入到所述编码后的音频帧和编码后的视频帧中; D、将所述音频帧和视频帧的解码时间标签的值进行对比,交替组合排列输出同步的音视频帧; E、将所述同步的音视频帧封装为TS流,模拟硬件时钟生成节目时钟参考,将所述节目 时钟参考插入到所述TS流中。2.根据权利要求I所述的音视频编码同步方法,其特征在于,所述步骤A中的音视频信号为SDI信号、AV模拟信号或TS流信号。3.根据权利要求I所述的音视频编码同步方法,其特征在于,所述模拟硬件时钟的频率为27MHz。4.根据权利要求I所述的音视频编码同步方法,其特征在于,所述步骤D中交替排列组合输出同步的音视频帧进一步包括 取出一个视频帧的解码时间标签的值,用音频帧的解码时间标签值和它比较; 如果所述音频帧的值小于所述视频帧的值,那么就输出所述音频帧; 如果所述音频帧的值大于所述视频帧的值,那么就输出视频帧的值; 再取出下一帧视频帧重复上述步骤,交替组合输出已经同步好的音视频帧。5.一种音视频编码同步系统,其特征在于,包括音视频采集装置、音视频编码装置、音视频解码时间标签和显示时间标签生成装...

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

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

1