影音串流的音频同步方法与流程

文档序号:12730856阅读:383来源:国知局
影音串流的音频同步方法与流程

本发明关于一种影音串流(audio-video stream)的音频同步方法,特别是一种应用重采样技术的影音串流的音频同步方法。



背景技术:

影音串流被应用在网络直播、线上影音,因此在现今的网络服务中是一个重要的分支。在影音串流的播放中,有时候会发生音频与影像不一致的现象,影响了影音串流订阅者的感受。



技术实现要素:

本发明在于提供一种影音串流的音频同步方法。

依据本发明一实施例的影音串流的音频同步方法,适于从第一装置获取影音串流以播放于第二装置,所述方法包括下列步骤:撷取影音串流中次一笔音频数据,音频数据具有第一采样率;撷取音频数据的显示时间戳(presentation timestamp,PTS);撷取第二装置的节目参考时钟标签(program clock reference,PCR);依据显示时间戳与节目参考时钟标签,判断是否需要对音频数据进行重采样;当判断不需要对音频数据进行重采样时,以第一采样率播放音频数据;当判断需要对音频数据进行重采样时,依据第一采样率、显示时间戳与节目参考时钟标签决定重采样率;以重采样率对音频数据进行重采样以产生一笔重采样音频数据;以及以第一采样率播放重采样音频数据。

综上所述,本发明一实施例中所揭示的影音串流的音频同步方法通过比较节目参考时钟标签与显示时间戳,来选择性地对音频数据进行重采样,并以预设的采样率来播放处理后的音频数据,借以使音频数据与节目播放的时间差缩小至不为人耳所感知。

以上是关于本揭露内容是说明及以下是实施方式是说明用以示范与解释本发明的精神与原理,并且提供本发明的权利要求书更进一步的解释。

附图说明

图1是用以说明适于实施本发明的一系统架构示意图。

图2是依据本发明一实施例的影音串流音频同步方法流程图。

图3是依据本发明一实施例的步骤S240的流程图。

图4是依据本发明一实施例的步骤S260的流程图。

图5是依据本发明一实施例的影音播放时序图。

图6是依据本发明再一实施例的影音播放时序图。

图7是依据本发明一实施例的线性插值法重采样示意图。

其中,附图中符号的简单说明如下:

1000:第一装置;2000:第二装置;AVS:影音串流;T1、T1’、T2、T2’、T3、T3’、T4、T4’:时间点;t1、t2、t3:时间点;A1、A2、A3:采样值;PCR:节目参考时钟标签;PTS:显示时间戳。

具体实施方式

以下在实施方式中详细叙述本发明的详细特征以及优点,其内容足以使任何熟悉相关技术的人员了解本发明的技术内容并据以实施,且根据本说明书所揭露的内容、权利要求书及附图,任何熟悉相关技术的人员可轻易地理解本发明相关的目的及优点。以下的实施例进一步详细说明本发明的观点,但非以任何观点限制本发明的范畴。

请参照图1与图2,其中图1用以说明适于实施本发明的一系统架构示意图,图2是依据本发明一实施例的影音串流音频同步方法流程图。如图1所示,影音串流AVS储存于第一装置1000,并且第一装置1000以恒定传输速率向第二装置2000发送影音串流AVS以便于在第二装置2000上播放影音串流AVS。本发明的方法可以用硬件电路或是执行于计算机上的软件来实现。如图2所示,依据本发明一实施例的影音串流音频同步方法包含下列步骤。如步骤S210所示,第二装置2000上的影音播放单元从影音串流AVS中撷取次一笔音频数据AD,此笔音频数据具有第一采样率。举例来说,次一帧画面(frame)的数据与其音频数据通常会同时或先后地被从第一装置1000传送至第二装置2000。其中音频数据具有第一采样率例如为44.1千赫兹、48千赫兹、37.8千赫兹或是16千赫兹。就熟知技术而言,音频数据在第一装置1000上被以第一采样率采样就会在第二装置2000上被以第一采样率播放。如步骤S220所示,第二装置2000从收到的音频数据中,撷取此笔音频数据的显示时间戳(presentation timestamp,PTS)。举例来说,显示时间戳关于此笔音频数据应该在一个影音串流中的第几分几秒开始被播放。再如步骤S230所示,第二装置2000中用来播放影音串流的影音播放单元会撷取第二装置的节目参考时钟标签(program clock reference,PCR)。举例来说,节目参考时钟标签定义当前节目的时间,也就是说节目已经被播放了几分几秒了。当收集完上述的信息后,如步骤S240所示,影音播放单元依据显示时间戳与节目参考时钟标签,判断是否需要对音频数据进行重采样。当判断不需要对音频数据进行重采样时,如步骤S250所示,以第一采样率播放音频数据。反之,当需要对音频数据进行重采样时,如步骤S260所示,依据第一采样率、显示时间戳与节目参考时钟标签决定重采样率。并如步骤S270所示,以重采样率对音频数据进行重采样。之后进行到步骤S250,以第一采样率播放被重采样的音频数据。

其中于步骤S240中,所谓依据显示时间戳与节目参考时钟标签,判断是否需要对音频数据进行重采样。请参照图3,其是依据本发明一实施例的步骤S240的流程图。如图3所示,在决定的流程中,首先如步骤S241所示,影音播放单元会判断显示时间戳与节目参考时钟标签的时钟差是否大于阈值。此处的时钟差显示时间戳所定义的时间与节目参考时钟标签当前定义的时间两者的差异。于一实施例中,显示时间戳所定义的时间就是音频数据要被在节目中播放的时间点。而节目参考时钟标签当前定义的时间就是第二装置2000所定义的当前节目已经/将要播放完前一笔音频数据的时间点,也就是接下来应该播放次一笔音频数据的时间点。此处的阈值的定义是人类感官上会察觉视频与音频有不一致的最小时间,于一实施例中,此一阈值小于等于90毫秒,较佳的需小于等于45毫秒。如果当时钟差大于阈值时,影音播放单元判断需要对音频数据进行重采样,因此进行到步骤S260。反之如果当时钟差不大于阈值时,影音播放单元判断不需要对音频数据进行重采样。因此进行到步骤S250。换句话说,如果人类感官上不会察觉视频与音频不一致时,不需要对于音频数据进行重采样,而是直接播放。也就是当收到的音频数据的采样率是44.1千赫兹时,就是以44.1千赫兹的频率来播放音频数据。

如果判断需要对音频数据重采样时,请参照图4,其是依据本发明一实施例的步骤S260的流程图。如图4所示,首先如步骤S261所示,影音播放单元会判断节目参考时钟标签是否领先显示时间戳。当节目参考时钟标签领先显示时间戳时,如步骤S263所示,以第二采样率作为重采样率,其中第二采样率低于第一采样率。举例来说,如果第一采样率为44.1千赫兹,则第二采样率例如为40千赫兹。反之当节目参考时钟标签落后显示时间戳时,如步骤S265所示,以第三采样率作为重采样率,其中第三采样率高于第一采样率。举例来说,如果第一采样率为44.1千赫兹,则第三采样率例如为48千赫兹。于一实施例中,第二采样率与第一采样率的比值大于等于0.9且小于1。较佳地,第二采样率与第一采样率的比值大于等于0.97且小于1。于一实施例中,第三采样率与第一采样率的比值小于等于1.1且大于1。较佳地,第三采样率与第一采样率的比值小于等于1.03且大于1。

具体来说,请参照图5,其是依据本发明一实施例的影音播放时序图。首先于时间点T1,影音播放单元收到的第一笔音频数据的显示时间戳PTS标记了时间点T1’,且当前节目参考时钟标签PCR标记了时间点T1,其中时间点T1与时间点T1’的时钟差例如为30毫秒,因此根据前述图3的流程判断,无须对第一笔音频数据进行重采样。接着影音播放单元接收了第二笔音频数据,其中第二笔音频数据中的显示时间戳PTS标记了时间点T2’,且显示单元已知第一笔音频数据播放完准备要播放第二笔音频数据的对应节目参考时钟标签PCR标记时间点T2。于此,由于时间点T2与时间点T2’的时钟差为100毫秒,大于阈值(90毫秒),因此影音播放单元会判断需要对音频数据进行重采样。于此,假设节目参考时钟标签PCR定义的时间点T2为1分35秒100毫秒,而第二笔音频数据的显示时间戳PTS定义的时间点T2’为1分35秒,因此判断节目参考时钟标签PCR领先于显示时间戳PTS。于此,需要使得第二笔音频数据以较短的时间播放完成,以缩短第三笔音频数据来临时,节目参考时钟标签PCR与显示时间戳PTS的时钟差。因此影音播放单元选择以第二采样率来对第二笔音频数据进行重采样。以前述第一采样率为44.1千赫兹而第二采样率为40千赫兹为例。假设第二笔音频数据为长度1秒的音频数据,则第二装置2000所收到的第二笔音频数据有44100个采样值,而经过重采样后的第二笔音频数据仅有40000个采样值。原本以44.1千赫兹的采样率播放原始的第二笔音频数据所需花费的时间为1秒,如果以44.1千赫兹的采样率播放经过重采样的第二笔音频数据所需花费的时间为907毫秒,因此接下来应该要播放第三笔音频数据的节目参考时钟标签仅领先第三笔音频数据的显示时间戳3毫秒,这样的差异将不会被人所感知。

于再一实施例中,请参照图6,其是依据本发明再一实施例的影音播放时序图。首先于时间点T3,影音播放单元收到的第一笔音频数据的显示时间戳PTS标记了时间点T3’,且当前节目参考时钟标签PCR标记了时间点T3,其中时间点T3与时间点T3’的时钟差例如为40毫秒,因此根据前述图3的流程判断,无须对第一笔音频数据进行重采样。接着影音播放单元接收了第二笔音频数据,其中第二笔音频数据中的显示时间戳PTS标记了时间点T4’,且显示单元已知第一笔音频数据播放完准备要播放第二笔音频数据的对应节目参考时钟标签PCR标记时间点T4。于此,由于时间点T4与时间点T4’的时钟差为100毫秒,大于阈值(90毫秒),因此影音播放单元会判断需要对音频数据进行重采样。于此,假设节目参考时钟标签PCR定义的时间点T4为35秒,而第二笔音频数据的显示时间戳PTS定义的时间点T4’为35秒100毫秒,因此判断节目参考时钟标签PCR落后于显示时间戳PTS。于此,需要使得第二笔音频数据以较长的时间播放完成,以缩短第三笔音频数据来临时,节目参考时钟标签PCR与显示时间戳PTS的时钟差。因此影音播放单元选择以第三采样率来对第二笔音频数据进行重采样。以前述第一采样率为44.1千赫兹而第三采样率为48千赫兹为例。假设第二笔音频数据为长度1秒的音频数据,则第二装置2000所收到的第二笔音频数据有44100个采样值,而经过重采样后的第二笔音频数据共有48000个采样值。原本以44.1千赫兹的采样率播放原始的第二笔音频数据所需花费的时间为1秒,如果以44.1千赫兹的采样率播放经过重采样的第二笔音频数据所需花费的时间为1.088秒,因此接下来应该要播放第三笔音频数据的节目参考时钟标签仅落后第三笔音频数据的显示时间戳12毫秒,这样的差异将不会被人所感知。

其中,于步骤S270中,由于重采样率(第二采样率或第三采样率)不同于原本音频数据的采样率,因此需要以插值法来对音频数据进行重采样。具体来说,请参照图7,其是依据本发明一实施例的线性插值法(linear interpolation)重采样示意图。如图7所示,原始的音频数据在时间点t1有采样值A1,而在时间点t2有次一个采样值A2。此时如果在重采样时需要取得时间点t1与时间点t2之间的一个时间点t3的采样值A3,则依据下列公式可以得到采样值A3:

通过这样的方法,可以对音频数据进行重采样。虽然上述以线性插值法来进行重采样,然而所属领域普通技术人员经阅读本发明揭示的实施例后,当能以其他的插值法例如多项式插值法、三角内插法、或是其他适合的插值法进行音频数据的重采样。

综上所述,本发明一实施例中所揭示的影音串流的音频同步方法通过比较节目参考时钟标签与显示时间戳,来选择性地对音频数据进行重采样,并以预设的采样率来播放处理后的音频数据,借以使音频数据与节目播放的时间差缩小至不为人耳所感知。

以上所述仅为本发明较佳实施例,然其并非用以限定本发明的范围,任何熟悉本项技术的人员,在不脱离本发明的精神和范围内,可在此基础上做进一步的改进和变化,因此本发明的保护范围当以本申请的权利要求书所界定的范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1