CN101212690B - 多媒体视音频流唇音同步的调测方法 - Google Patents

多媒体视音频流唇音同步的调测方法 Download PDF

Info

Publication number
CN101212690B
CN101212690B CN2006101702736A CN200610170273A CN101212690B CN 101212690 B CN101212690 B CN 101212690B CN 2006101702736 A CN2006101702736 A CN 2006101702736A CN 200610170273 A CN200610170273 A CN 200610170273A CN 101212690 B CN101212690 B CN 101212690B
Authority
CN
China
Prior art keywords
stream
media data
data units
time
video
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
Application number
CN2006101702736A
Other languages
English (en)
Other versions
CN101212690A (zh
Inventor
薛尧舜
张学英
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN2006101702736A priority Critical patent/CN101212690B/zh
Publication of CN101212690A publication Critical patent/CN101212690A/zh
Application granted granted Critical
Publication of CN101212690B publication Critical patent/CN101212690B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开一种多媒体视音频流唇音同步的调测方法,涉及唇音同步的调测方法,为解决现有方法不能很好实现多媒体流的唇音同步的问题而发明。本发明通过在多媒体视音频流解码端真实时钟的基础上建立虚拟时钟模型;根据自适应延迟算法和同步控制算法的计算结果,调整所述虚拟时钟,获得多媒体视音频流唇音同步。极大提高了互联网多媒体应用唇音同步性能。

Description

多媒体视音频流唇音同步的调测方法
技术领域
本发明涉及唇音同步的调测方法,尤其涉及多媒体通讯视音频流唇音同步的调测方法。
背景技术
因特网作为包交换网络,不能如E1或者ISDN这些基于电路交换的网络那样提供及时的传送,对于多媒体应用,如果不采用正确的控制方法,会导致原始数据的时间关系严重扭曲,具体表现为唇音不同步,大的延迟导致用户交互的不适应和困难。如何通过自适应算法,有效地通过回放缓冲区控制来抵消网络抖动带来的影响,并且同时做到端与端的延迟最小化,是一个值得探讨并且具有重大实践意义的课题,已经引起了很多学术和工程上的关注,也提出了很多相关的算法,这些算法对网络延迟和抖动进行了建模,根据一定的准则建立了一些目标,并给出了一定的计算机模拟,但这些算法直接用于工程实践存在一定的问题,不能满足工程上的简单合理并且鲁棒的要求。下面对工程上常用的一些控制算法做简单回顾并给出优缺点分析。
传统的互联网多媒体唇音同步调测方法主要有以下几种:
1、手动调整唇音同步
这种算法依赖用户的主观感受,在很多媒体播放器中都提供了该选项,用户通过手工调整音频缓冲区长度来获得一定程度的唇音同步。该方法的优点是简单易行,并且人为判断比算法判断更能符合人的主观感受。在一些场合下,这种算法很有优势,比如在网络延迟固定的情况下,一次调整基本就能够使得唇音同步最佳化。缺点是该方法需要人工干预,并且在IP网络下,由于延迟的变化,调整值很容易失效。
2、通过音频缓冲区调整来获得唇音同步
这种方法在简单的多媒体应用中,可以根据经验值调整音频缓冲区长度来获得近似的唇音同步。在媒体播放过程中,由于视频可以在一帧的时间内播放几帧内容,而音频必须播放满一定时间,所以可以通过把音频缓冲控制在一定范围内来获得近似同步,比如缓冲80ms~160ms的数据,并且在监测到网络状态不好的情况下,通过增加缓冲区长度以消除网络抖动的影响,在网络好的情况下,减少缓冲区长度以降低端到端的延迟。网络状态的判断可以根据所使用的协议提供的探测或者反馈功能(RTP实时传输协议中规定的抖动计算过程)来评估。该方法是目前互联网多媒体播放中比较常用的方法,简单易行,易于编程,缺点就是比较盲目,在一些特殊情况下鲁棒性不够,而且没有综合考虑视频信息,是一种“伪同步”。
3、根据全局时钟调整唇音同步
视音频同步,主要依赖于原始视音频信号时间关系的复现,如何记录或者获得这一原始时间关系,有以下几种方法:
A)在媒体流或封装中嵌入时钟信息。
在视音频生成的时候就在码流中嵌入时钟信息,在解码侧只要按照原始的时间对应关系恢复就可以了,这种方法被一些编解码器所采用,比如MPEG2就采用了PTS的概念,在播放的时候就基本不存在唇音同步问题。这种方法的缺点就是并非其他媒体编码规范也会嵌入时钟信息,如果视频和音频编码过程中相对于系统时钟的偏移是独立的,那么很难在解码侧建立这种媒体间的时间对应关系。
B)在额外信道发送同步信息
某些协议可以在带外数据中指明全局时钟相关的同步信息。比如针对RTP传输的RTCP(实时传输控制协议)规范中采用了发送者报告SR的方式给出了视音频同步信息,解码侧收到了一个SR报告后,就可以根据相关信息调整缓冲区来达到同步的目的。缺点就是可能有些协议不实现或者不强制实现这种同步机制,协议实现并不发送这种包含同步信息的带外数据,这种方法就无法使用。
发明内容
为了解决现有技术中存在的问题,本发明的目的在于提供一种多媒体视音频流唇音同步的调测方法,该方法能够有效控制多媒体流的唇音同步,同时为系统的Qos性能提供一个规范的量化标准。
为达到上述目的,本发明多媒体视音频流唇音同步的调测方法,包括如下步骤:
(1)在多媒体视音频流解码端真实时钟的基础上建立虚拟时钟模型;
(2)根据自适应延迟算法和同步控制算法的计算结果,调整所述虚拟时钟,获得多媒体视音频流唇音同步。
所述步骤(1)中建立虚拟时钟模型的方法为:
(11)设置虚拟时钟的初始值为收到的多媒体流的第一个MDU(媒体数据单元)的时戳;
(12)获取每一个抵达的MDU的生成时间和抵达时间;
(13)解码端将所述每一个抵达的MDU的生成时间作为其回放时间,将每一个抵达的MDU的抵达时间作为虚拟时钟采样,比较所述生成时间和抵达时间并重新调度回放时间,获得自适应的回放期限。
所述步骤(2)中,自适应延迟算法包括:
(21)计算媒体流内的同步相位扭曲;
所述媒体流内的同步相位扭曲通过计算流内的MDU的回放时间以及采样时间的均方根误差来获得,计算公式如下:
τ i = Σ n = 2 N i [ ( T p i ( n ) - T p i ( n - 1 ) ) - ( T g i ( n ) - T g i ( n - 1 ) ) ] 2 N i - 1
其中,Tg i(n)为流i的第n个MDU的生成时间,Tp i(n)为流i的第n个MDU的播放的时间,Ni是流i的被播放的所有MDU数量;
(22)计算媒体流间的同步相位扭曲;
所述媒体流间的同步相位扭曲通过计算配对的相应流间MDU的回放时间以及采样时间的均方根误差来获得,具体公式如下:
τ a , v = Σ n = 2 N a [ ( T p a ( m ) - T p v ( n ) ) - ( T g a ( m ) - T g v ( n ) ) ] 2 N a - 1
其中,音频的第m个MDU对应于视频的第n个MDU,Tg a(m)为音频的第m个MDU的生成时间,Tp a(m)为音频的第m个MDU的播放时间;Tg v(n)为视频的第n个MDU的生成时间,Tp v(n)为视频的第n个MDU的播放时间,Na是所有音频MDU的数量。
所述自适应延迟算法还可以包括:计算包损失率,采用如下公式计算:
Figure GSB00000036533400033
其中,Mi为接收的总包数,Ni为能够播放的包数。
所述自适应延迟算法还可以包括:计算端间平均延迟,采用如下公式计算:
Figure GSB00000036533400034
其中,oi(n)为第n个包相对于源时钟的偏移。
所述步骤(2)中,同步控制算法包括:计算MDU播放时间,计算方法为:
对于流i的第n个MDU,如果成立,且
Figure GSB00000036533400036
成立,则数据落入播放区并被渲染;如果
Figure GSB00000036533400037
成立,则抛弃该数据;
如果流i的第n个MDU到达较早,则该MDU在调度时间播放出来;否则,如果第n-1个MDU被及时渲染,则第n个MDU在抵达时就立即被播放,如果第n-1个MDU晚于调度时间,则利用平滑因子使相位扭曲最小;
其中,Tg i(n-1)为流i的第n-1个MDU的生成时间,Tg i(n)为流i的第n个MDU的生成时间,Ta i(n)为流i的第n个MDU的抵达时间,δi为设置的抛弃边界值。
所述平滑因子对于音频设定为10ms,对于视频设定为16ms。
所述同步控制算法还可以包括:媒体流内和媒体流间的同步控制,其方法具体为:
(23)为每一路流引入同步窗口来监测同步误差;
对于流i,被测量的同步相位扭曲由下面的公式计算:
τ ^ i = Σ n = 2 W i [ ( T p i ( n ) - T p i ( n - 1 ) ) - ( T g i ( n ) - T g i ( n - 1 ) ) ] 2 W ‾ i - 1
其中,Wi是当前监测窗口长度,Wi为最大监测窗口长度,对于每个MDU的播放,滑动窗口长度每次增加1,范围是从2到Wi
测量的丢包率如下:
其中ψi是当前监测窗口的丢包数;
(24)选择两个媒体流中配对的MDU,视频n和音频m,利用下述公式计算媒体流间同步误差: e int = [ T p v ( n ) - T p a ( m ) ] - [ T g v ( n ) - T g a ( m ) ]
如果|eint|<τa,v,那么视频播放时间Tp v(n)不变;
如果eint>τa,v,则视频播放时间Tp v(n)由公式计算;否则视频播放时间由公式
Figure GSB00000036533400045
计算;
其中,Tp v(n)为视频的第n个MDU的播放时间,Tp a(m)为音频的第m个MDU的播放时间;Tg v(n)为视频的第n个MDU的生成时间,Tg a(m)为音频的第m个MDU的生成时间;τa,v为流间均方根误差。
本发明提供的方法通过对虚拟时钟的自适应调整,在媒体流内同步的同时还可以达到媒体流间的唇音同步,同时提供了监测系统Qos性能的量化标准,极大提高了互联网多媒体应用唇音同步性能。
附图说明
图1是本发明MDU抵达的时间分区图;
图2是本发明同步控制算法的闭环同步控制图;
图3是本发明MDU回放时间算法流程图;
图4是本发明音频延迟和同步控制流程图;
图5是本发明视频延迟和同步控制流程图;
图6是本发明网络延迟服从对数正态分布的示意图;
图7是本发明特定参数下的一次唇音同步仿真示意图。
具体实施方式
本发明是在提出虚拟时钟模型的基础上,通过自适应延迟算法和同步控制算法来获得媒体流内的媒体流间的同步。具体地说,是根据媒体流内和媒体流间的均方误差最小并且丢包满足一定阈值的要求下,并假设互联网延迟服从长尾分布(对数正态分布),推导出一些评估同步性能的公式,然后阐述了具体算法,包括:自适应延迟算法和同步控制算法以及虚拟时钟的调整等。其中,自适应延迟算法包括:同步相位扭曲(SPD)的计算,包损失率的计算,以及端到端平均延迟(ED)的计算;同步控制算法包括:MDU(Media Data Units,媒体数据单元)的播放时间的决定,媒体流内和媒体流间的同步控制以及虚拟时钟调整。
虚拟时钟模型:
一个典型的互联网多媒体实时播放系统包括一路音频和一路视频对象,在源端,音频和视频信号被周期性采集并被编码,然后分成附加了一定同步信息的MDU(比如,时戳和序号),然后被打成包发送到目的地址。对端收到的MDU首先被放入接收缓冲区,然后解码并渲染。
这个过程中,全部延迟包括:
1)采集延迟,在源端的采集编码和分片所需要的时间;
2)传输延迟,网络传输所需要的时间;
3)缓冲延迟,或者称为补偿延迟,为补偿网络抖动而人为引入的时间;
4)处理延迟,解码MDU并渲染所花费的时间。
在本发明中,端到端的延迟被定义为MDU从发送侧进入传输层至从接收侧补偿缓冲区输出耗费的时间,也就是上述2)传输延迟和3)缓冲延迟所占用的时间和。
在互联网多媒体应用中,由于视音频数据通常是分别进行编码和传输的,如果不加以同步控制,会出现严重的不同步现象。为了获得自适应的延迟控制,一个直接的解决方案是将两个端同步到一个时钟上(比如,通过使用网络时间协议NTP),然后测量传输延迟并且根据该时钟调整缓冲区延迟。事实上,许多唇音同步方案采用了这个假定(比如,RTP/RTCP方案)。然而,实际上并非能灵活地做到将两个不同的端同步到一个时钟上。
在本发明中,采用虚拟时钟的概念来解决这个问题,固有的分布虚拟时钟有以下几个优点:1)方便同时获得防御性控制和交互控制;2)能以很低的开销实现;3)不需要同步网络情况下实现了局部同步控制。
虚拟时钟模型在解码端真实时钟的基础上添加了虚拟时钟。对互联网多媒体应用来说,虚拟时钟的初始值被初始化成为流的第一个收到的MDU的时戳,然后对于每一个抵达的MDU,生成时间以及抵达时间是可用的。生成时间在采样的时候获得并且被用时戳表示,抵达时间则是包抵达的虚拟时钟采样。目标系统把生成时间看作是MDU的被调度的回放时间,通过比较这两个值并且重新调度回放时间来获得自适应的回放期限。因此,一个同步的网络时钟就不再必要了,同步可以通过操纵虚拟时钟来获得。
本发明中提出的自适应延迟算法的性能包括:
1)同步相位扭曲(SPD)
媒体流内的SPD可以通过流内的MDU的回放时间以及采样时间的均方根误差来获得,媒体流间的SPD可以通过最近的相应流间的MDU的回放时间以及采样时间的均方根误差来获得。
下面给出流内的均方根误差公式:
τ i = Σ n = 2 N i [ ( T p i ( n ) - T p i ( n - 1 ) ) - ( T g i ( n ) - T g i ( n - 1 ) ) ] 2 N i - 1 - - - ( 1.1 )
其中,Tg i(n)为流i的第n个MDU被生成时间,Tp i(n)为流i的第n个MDU被播放的时间,Ni是流i的被播放的整个MDU数量。
对于包含一路音频和一路视频的媒体,流间的均方根误差公式为:
τ a , v = Σ n = 2 N a [ ( T p a ( m ) - T p v ( n ) ) - ( T g a ( m ) - T g v ( n ) ) ] 2 N a - 1 - - - ( 1.2 )
其中,音频的第m个MDU对应于视频的第n个MDU,Tp a(m)为音频的第m个MDU的播放时间,Tp v(n)为视频的第n个MDU的播放时间;Tg a(m)为音频的第m个MDU的生成时间,Tg v(n)为视频的第n个MDU的生成时间;Na是全部音频MDU的数量。
2)包损失率(LR),包损失率的定义为:
Figure GSB00000036533400072
其中,Mi是总接收包数,Ni是可以播放的包数。
3)端间平均延迟(ED);
Figure GSB00000036533400073
其中,oi(n)为第n个包的相对于源时钟的偏移。
同步控制算法包括:
1)MDU播放时间计算
一定程度的渲染抖动,比如相位扭曲,对于人的感知系统来说是可以接受的,这就意味着只要MDU调度时间没拖太久,在正确的控制算法下,仍然可以正常的渲染而不会导致显著相位的显著扭曲。对于每一个MDU,设置一个抛弃边界值δi,这样就将流内的MDU抵达时间分成播放和抛弃两个区间,如附图1所示,对于流i的第n个MDU,如果
Figure GSB00000036533400074
那么数据就落入播放区并将被渲染。如果那么就简单的抛弃该数据以避免错误。注意,下面的条件必须成立如果流i的第n个MDU到达较早,那么就会被在调度时间播放出来,否则依赖于n-1的MDU是如何播放的,如果n-1的MDU被及时渲染了,那么第n个MDU在抵达时就立即被播放;如果第n-1个MDU晚于调度时间,那么将应用一个平滑因子来保证SPD最小。具体算法参见说明书附图2。包括:
对于音频流(基准)来说:
第一步,首先在流内误差的约束下计算播放时间,该播放时间由虚拟时钟控制;
第二步,计算系统误差,并将该误差返回虚拟时钟;
第三步,将系统误差解码和播放。
对于视频流(从属)来说:
第一步,首先在流内误差约束下计算播放时间,该播放时间由虚拟时钟控制;
第二步,在流间误差约束下计算播放时间;
第三步,计算系统误差,并将该误差返回虚拟时钟,
第四步,将系统误差解码和播放。
2)媒体流内和媒体流间的同步控制
多媒体编解码设备不仅需要流内同步,也需要流间同步来保证表现质量。由于播放时间策略能引入大的相位扭曲,在本文的同步算法中,为每一路流引入了同步窗口来监测同步误差(包括SPD和丢包率)。对于流i,被测量的SPD由下面的公式给出:
τ ^ i = Σ n = 2 W i [ ( T p i ( n ) - T p i ( n - 1 ) ) - ( T g i ( n ) - T g i ( n - 1 ) ) ] 2 W ‾ i - 1 - - - ( 1.5 )
其中,其中Wi是当前窗口长度,Wi是最大窗口长度。注意,对于每个MDU的播放,滑动窗口长度每次增加1,范围是从2到Wi
测量的丢包率如下:
l ^ i = ψ i W ‾ i - - - ( 1.6 )
其中ψi是当前监测窗口的丢包数。本发明的控制算法的实时计算同步误差由(1.8)和(1.9)定义。在本发明中选择了对于延迟的变化更加敏感的音频作为基准流,并将流间同步约束应用到作为从属流的视频上,算法的本质就是由基准流和从属流的流内误差驱动计算,并逐包调整端到端的延时来满足应用要求的误差阈值。算法参见说明书附图3。
对于视频流,到达的MDU的播放时间首先由流内同步约束决定,然后再根据流间同步约束调整,同步误差在该步骤之后计算。对于音频流,到达的MDU的播放时间仅仅由自己的流内同步约束决定。整个处理过程中,两个流的同步误差被监测,一旦任何一个流的同步误差(或者均方根误差或者丢包率)超过阈值,虚拟时钟将要被相应减慢。当基准流的误差在一段时间内为0的时候,虚拟时钟才可以被加快。
具体的算法参见附图4和附图5,附图5中媒体流间同步对视频MDU播放时间的修正如下:
选择两个媒体流中最近配对的MDU,比如视频n和音频m,利用下述公式计算媒体流间同步误差: e int = [ T p v ( n ) - T p a ( m ) ] - [ T g v ( n ) - T g a ( m ) ] - - - ( 1.7 )
如果|eint|<τa,v,那么视频播放时间Tp v(n)不变。
如果eint>τa,v,则视频播放时间Tp v(n)由(1.8)决定:
T p v ( n ) = max [ ( T p a ( m ) + T g v ( n ) - T g a ( m ) + τ ‾ a , v ) , T a v ] - - - ( 1.8 )
否则视频播放时间由(1.9)决定:
T p v ( n ) = T p a ( m ) + T g v ( n ) - T g a ( m ) - τ ‾ a , v - - - ( 1.9 )
其中,Tp v(n)为视频的第n个MDU的播放时间,Tp a(m)为音频的第m个MDU的播放时间;Tg v(n)为视频的第n个MDU的生成时间,Tg a(m)为音频的第m个MDU的生成时间;τa,v为流间均方根误差。
3)虚拟时钟调整:
当同步误差被测量到的时候,时钟调整用于扩大或者缩小MDU回放的时间,或者提前跳过接收MDU,以便过量误差被观察到的时候减少同步误差,或者在MDU过缓冲的时候减少等价延迟。但由于时钟频率的调整产生了额外的误差,一个自适应的算法应当避免这种情况发生,时钟加速调整非常保守,只有在测量到流i的同步误差相对于最大监测窗口Wi都是0的时候才使用。调整量为:
Δ 1 i = min n ∈ W ‾ i | [ T a i ( n ) - T g i ( n ) ] | - - - ( 1.10 )
其中,Δ1 i是流MDU的监测窗口中最小缓冲延迟。在调整后,下一个监测周期内预期的MDU到达会满足流内同步约束。
当同步误差超过阈值的时候,虚拟时钟需要减慢,按如下方法计算调整量。假定网络延迟的分布是如图7所示的对数正态分布的长尾分布,调整发生在原时钟和虚拟时钟偏差Oi的时候。根据推导可得:
Δ 2 i = ( 1 - W i - 1 W ‾ i - 1 ) * δ i - - - ( 1.11 )
Δ 3 i = max n ∈ W i [ T a i ( n ) - T g i ( n ) ] ( 1 - W i W ‾ i ) + δ i * W i W ‾ i - - - ( 1.12 )
其中,Wi是当前监测窗口长度,Wi为最大监测窗口长度,δi为设置的抛弃边界值,Ta i(n)为流i的第n个MDU的抵达时间,Tg i(n)为流i的第n个MDU的生成时间。
上述的自适应延迟算法和同步控制算法可以应用于多媒体编解码设备,媒体传送采用RTP协议,每一个媒体包都有一个序号和对应于生成时间的时戳,在算法运行之前,首先要设定一些参数:
媒体流内SPD阈值:对于音频一般为2~5ms,设定为2ms;对于视频设定为5ms;
丢包率阈值:对于音频一般为1%~2%,设定为0.02。对于视频设定为0.03;
平滑因子:对于音频设定为10ms,对于视频设定为16ms;
媒体流间最大斜扭:设定为80ms;
最大监测窗口长度:对于音频和视频皆设定为900;
丢包阈值:假定网络延迟服从对数正态分布,根据相关参数,可以通过算法进行仿真,然后根据性能指标在仿真得出的曲面上选择合适的音频和视频丢包阈值。
当算法运行的时候,对于每一个媒体MDU,按照自适应延迟算法和同步控制算法计算出相关数据,然后动态调整虚拟时钟,同时将实时获得的性能参数传递给调试日志客户端进行记录,通过该记录,可以在主观测试唇音同步的基础上提供有力的量化数据,为系统级唇音同步测试提供了有效数据。
本发明根据网络延迟分布的特点,利用相关传输协议中相关的同步信息,在同步误差的均方根意义下通过自适应的同步控制算法获得互联网多媒体应用的唇音同步。相关性能参数可以通过网络连接逐包发送到监测的PC机,对于每一个终端,媒体流内和媒体流间的SPD以及丢包率和平均端到端的延迟都可以用趋势图动态显示出来。并且用户的监测端可以随时将相关阈值参数设置到对应的终端,以方便调试。而且,在未来的应用中,这些控制算法可以换用其他的算法,但是这些性能参数的即时值同样可以作为系统QoS性能以及唇音同步的性能的度量,用于系统性能的评价。仿真以及绘图可以用sciPy以及matplotlib得到,见说明书附图7。图7为特定参数下的一次唇音同步仿真,所用参数如下:
仿真点数500次;
网络延迟的误差服从对数正态分布,mu=1,sigma=2;
音频流内同步误差阈值10ms,视频同步误差20ms,音视频流间同步误差80ms;
音频最大窗口400,视频最大窗口400;
音频平滑因子10ms,视频平滑因子10ms;
音频丢包率阈值3%,视频丢包率阈值3%;
音频包抛弃阈值20ms,视频包抛弃阈值20ms;
仿真效果图的横坐标为时间,每单位40ms,对于视频,将一帧的最后一个包到达时间作为帧抵达时间。各个子图从上到下分别为:
1.音频包抵达时间误差,也就是每个音频包得抵达时间(基于虚拟时钟)减去生成时间(基于对方时钟),由于算法调整减慢了虚拟时钟的缘故,音频抵达误差为很多为负值;
2.音频播放时间误差,也就是每个音频包播放的时间(基于虚拟时钟)减去生成时间,可以看出误差很多趋近于0,表明算法调控效果很好;
3.视频帧抵达时间误差,效果基本同子图1;
4.视频帧播放时间误差,效果基本同子图2;
5.音频和视频的同步误差,在算法调控下,同步误差基本是收敛的,某些变大的值是由于相应视频和音频抵达时间误差比较大所导致,但是这种突变后的收敛说明了算法的有效性。
本发明的方法通过对虚拟时钟的自适应调整,在媒体流内同步的同时还可以达到媒体流间的唇音同步,同时提供了监测系统QoS性能的量化指标,对于互联网多媒体应用唇音同步性能的提高有很大帮助。

Claims (6)

1.一种多媒体视音频流唇音同步的调测方法,包括如下步骤:
(1)在多媒体视音频流解码端真实时钟的基础上建立虚拟时钟模型;
(2)根据自适应延迟算法和同步控制算法的计算结果,调整所述虚拟时钟,获得多媒体视音频流唇音同步;
其中,所述步骤(1)中建立虚拟时钟模型的方法为:
(11)设置虚拟时钟的初始值为收到的多媒体流的第一个媒体数据单元的时戳;
(12)获取每一个抵达的媒体数据单元的生成时间和抵达时间;
(13)解码端将所述每一个抵达的媒体数据单元的生成时间作为其回放时间,将每一个抵达的媒体数据单元的抵达时间作为虚拟时钟采样,比较所述生成时间和抵达时间并重新调度回放时间,获得自适应的回放期限;
所述步骤(2)中,自适应延迟算法包括:
(21)计算媒体流内的同步相位扭曲;
所述媒体流内的同步相位扭曲通过计算流内的媒体数据单元的回放时间以及采样时间的均方根误差来获得,计算公式如下:
τ i = Σ n = 2 N i [ ( T p i ( n ) - T p i ( n - 1 ) ) - ( T g i ( n ) - T g i ( n - 1 ) ) ] 2 N i - 1
其中,
Figure FSB00000355827800012
为流i的第n个媒体数据单元的生成时间,
Figure FSB00000355827800013
为流i的第n个媒体数据单元的播放的时间,Ni是流i的被播放的所有媒体数据单元的数量;
(22)计算媒体流间的同步相位扭曲;
所述媒体流间的同步相位扭曲通过计算配对的相应流间媒体数据单元的回放时间以及采样时间的均方根误差来获得,计算公式如下:
τ a , v = Σ n = 1 N a [ ( T p a ( m ) - T p v ( n ) ) - ( T g a ( m ) - T g v ( n ) ) ] 2 N a - 1
其中,音频的第m个媒体数据单元对应于视频的第n个媒体数据单元,
Figure FSB00000355827800015
为音频的第m个媒体数据单元的生成时间,
Figure FSB00000355827800016
为音频的第m个媒体数据单元的播放时间;为视频的第n个媒体数据单元的生成时间,
Figure FSB00000355827800018
为视频的第n个媒体数据单元的播放时间,Na是所有音频媒体数据单元的数量。
2.根据权利要求1所述的多媒体视音频流唇音同步的调测方法,其特征在于,所述自适应延迟算法还包括:计算包损失率,采用如下公式计算:
Figure FSB00000355827800021
其中,Mi为接收的总包数,Ni为能够播放的包数。
3.根据权利要求2所述的多媒体视音频流唇音同步的调测方法,其特征在于,所述自适应延迟算法还包括:计算端间平均延迟,采用如下公式计算:
其中,oi(n)为第n个包相对于源时钟的偏移。
4.根据权利要求1或2所述的多媒体视音频流唇音同步的调测方法,其特征在于,所述步骤(2)中,同步控制算法包括:计算媒体数据单元播放时间,计算方法为:
对于流i的第n个媒体数据单元,如果
Figure FSB00000355827800023
成立,且
Figure FSB00000355827800024
成立,则数据落入播放区被渲染;如果成立,则抛弃该数据;
如果流i的第n个媒体数据单元到达较早,则该媒体数据单元在调度时间播放出来;否则,如果第n-1个媒体数据单元被及时渲染,则第n个媒体数据单元在抵达时就立即被播放,如果第n-1个媒体数据单元晚于调度时间,则利用平滑因子使相位扭曲最小;
其中,为流i的第n-1个媒体数据单元的生成时间,
Figure FSB00000355827800027
为流i的第n个媒体数据单元的生成时间,
Figure FSB00000355827800028
为流i的第n个媒体数据单元的抵达时间,δi为设置的抛弃边界值。
5.根据权利要求4所述的多媒体视音频流唇音同步的调测方法,其特征在于,所述平滑因子对于音频设定为10ms,对于视频设定为16ms。
6.根据权利要求4所述的多媒体视音频流唇音同步的调测方法,其特征在于,所述同步控制算法还包括:媒体流内和媒体流间的同步控制,其方法具体为:
(23)为每一路流引入同步窗口来监测同步误差;
对于流i,被测量的同步相位扭曲由下面的公式计算:
τ ^ i = Σ n = 2 W i [ ( T p i ( n ) - T p i ( n - 1 ) ) - ( T g i ( n ) - T g i ( n - 1 ) ) ] 2 W ‾ i - 1
其中,Wi是当前窗口长度,
Figure FSB000003558278000210
为最大窗口长度,对于每个媒体数据单元的播放,滑动窗口长度每次增加1,范围是从2到
Figure FSB000003558278000211
测量的丢包率如下:
,其中ψi是当前监测窗口的丢包数;
(24)选择两个媒体流中配对的媒体数据单元,视频n和音频m,利用下述公式计算媒体流间同步误差:
Figure FSB00000355827800032
如果|eint|<τa,v,那么视频播放时间
Figure FSB00000355827800033
不变;
如果eint>τa,v,则视频播放时间由公式
Figure FSB00000355827800035
计算;
否则视频播放时间由公式
Figure FSB00000355827800036
计算;
其中,
Figure FSB00000355827800037
为视频的第n个媒体数据单元的播放时间,
Figure FSB00000355827800038
为音频的第m个媒体数据单元的播放时间;
Figure FSB00000355827800039
为视频的第n个媒体数据单元的生成时间,
Figure FSB000003558278000310
为音频的第m个媒体数据单元的生成时间;τa,v为流间均方根误差。
CN2006101702736A 2006-12-26 2006-12-26 多媒体视音频流唇音同步的调测方法 Active CN101212690B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2006101702736A CN101212690B (zh) 2006-12-26 2006-12-26 多媒体视音频流唇音同步的调测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2006101702736A CN101212690B (zh) 2006-12-26 2006-12-26 多媒体视音频流唇音同步的调测方法

Publications (2)

Publication Number Publication Date
CN101212690A CN101212690A (zh) 2008-07-02
CN101212690B true CN101212690B (zh) 2011-04-20

Family

ID=39612289

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006101702736A Active CN101212690B (zh) 2006-12-26 2006-12-26 多媒体视音频流唇音同步的调测方法

Country Status (1)

Country Link
CN (1) CN101212690B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102082657B (zh) * 2009-11-27 2013-07-24 Tcl集团股份有限公司 一种对讲系统中时钟频率的处理方法和装置
KR101582436B1 (ko) * 2010-05-04 2016-01-04 샤잠 엔터테인먼트 리미티드 미디어의 동기화 방법 및 시스템
CN103828381B (zh) * 2011-09-27 2017-02-22 英特尔公司 用于音频/视频时钟恢复的自适应pid控制器
KR101945812B1 (ko) * 2012-06-08 2019-02-08 엘지전자 주식회사 이동 단말기, 및 그 동작방법
US20150062353A1 (en) * 2013-08-30 2015-03-05 Microsoft Corporation Audio video playback synchronization for encoded media
CN107431845B (zh) * 2015-03-31 2021-03-26 松下电器(美国)知识产权公司 发送方法、接收方法、发送装置以及接收装置
CN105847926A (zh) * 2016-03-31 2016-08-10 乐视控股(北京)有限公司 一种多媒体数据的同步播放方法及装置
KR101853441B1 (ko) * 2016-09-23 2018-05-02 재단법인 실감교류인체감응솔루션연구단 클라이언트 장치 및 그 로컬 클럭 스큐 보정 방법
CN108962293B (zh) * 2018-07-10 2021-11-05 武汉轻工大学 录像修正方法、系统、终端设备及存储介质
CN113286184B (zh) * 2018-10-17 2024-01-30 上海赛连信息科技有限公司 一种在不同设备上分别播放音频与视频的唇音同步方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6249319B1 (en) * 1998-03-30 2001-06-19 International Business Machines Corporation Method and apparatus for finding a correct synchronization point within a data stream
CN1489356A (zh) * 2002-09-06 2004-04-14 ������ʣ�ŷ�ޣ��ɷ����޹�˾ 媒体数据包的同步播放
CN1607815A (zh) * 2003-10-15 2005-04-20 松下电器产业株式会社 Av同步系统
CN1703723A (zh) * 2002-11-07 2005-11-30 汤姆森许可贸易公司 应用缓冲计算在数字化环境中确定音频和视频之间的声像吻合的系统和方法
CN1720749A (zh) * 2002-12-04 2006-01-11 皇家飞利浦电子股份有限公司 自动测试音频/视频同步的方法
CN1726678A (zh) * 2002-12-12 2006-01-25 皇家飞利浦电子股份有限公司 使用“虚拟时钟”适配多媒体流送服务器的传输速率的系统和方法
CN1745526A (zh) * 2002-04-19 2006-03-08 汤姆森许可公司 用于同步音频和视频流的设备和方法
CN1832568A (zh) * 2005-03-11 2006-09-13 乐金电子(中国)研究开发中心有限公司 便携终端的影像和语音信号的同步装置及其方法
CN1868213A (zh) * 2003-09-02 2006-11-22 索尼株式会社 内容接收设备、视频/音频输出定时控制方法及内容提供系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6249319B1 (en) * 1998-03-30 2001-06-19 International Business Machines Corporation Method and apparatus for finding a correct synchronization point within a data stream
CN1745526A (zh) * 2002-04-19 2006-03-08 汤姆森许可公司 用于同步音频和视频流的设备和方法
CN1489356A (zh) * 2002-09-06 2004-04-14 ������ʣ�ŷ�ޣ��ɷ����޹�˾ 媒体数据包的同步播放
CN1703723A (zh) * 2002-11-07 2005-11-30 汤姆森许可贸易公司 应用缓冲计算在数字化环境中确定音频和视频之间的声像吻合的系统和方法
CN1720749A (zh) * 2002-12-04 2006-01-11 皇家飞利浦电子股份有限公司 自动测试音频/视频同步的方法
CN1726678A (zh) * 2002-12-12 2006-01-25 皇家飞利浦电子股份有限公司 使用“虚拟时钟”适配多媒体流送服务器的传输速率的系统和方法
CN1868213A (zh) * 2003-09-02 2006-11-22 索尼株式会社 内容接收设备、视频/音频输出定时控制方法及内容提供系统
CN1607815A (zh) * 2003-10-15 2005-04-20 松下电器产业株式会社 Av同步系统
CN1832568A (zh) * 2005-03-11 2006-09-13 乐金电子(中国)研究开发中心有限公司 便携终端的影像和语音信号的同步装置及其方法

Non-Patent Citations (9)

* Cited by examiner, † Cited by third party
Title
Changdong liu and etc..Multipoint Multimedia Teleconference System with AdaptiveSynchronization.IEEE on Selected Areas in Communications14 7.1996,14(7),第IV部分.
Changdong liu and etc..Multipoint Multimedia Teleconference System with AdaptiveSynchronization.IEEE on Selected Areas in Communications14 7.1996,14(7),第IV部分. *
刘汉斌 等.时序媒体间同步控制机制的时态模型.武汉大学学报45 5.1999,45(5),549-552.
刘汉斌等.时序媒体间同步控制机制的时态模型.武汉大学学报45 5.1999,45(5),549-552. *
朱卫峰.H.323协议栈中语音编码和媒体同步的设计与实现.2004,第42页第1行至至第48页第26行. *
胡毅 等.分布式多媒体通信系统中音频和视频同步算法.计算机工程与应用.2001,第2部分.
胡毅等.分布式多媒体通信系统中音频和视频同步算法.计算机工程与应用.2001,第2部分. *
魏旭升.面向Internet的实时多媒体同步机制的研究.数据通信 2.2000,(2),第二部分.
魏旭升.面向Internet的实时多媒体同步机制的研究.数据通信 2.2000,(2),第二部分. *

Also Published As

Publication number Publication date
CN101212690A (zh) 2008-07-02

Similar Documents

Publication Publication Date Title
CN101212690B (zh) 多媒体视音频流唇音同步的调测方法
US8351762B2 (en) Adaptive media playout method and apparatus for intra-media synchronization
CN101583025B (zh) 一种流媒体播放方法及装置
CN101228748B (zh) 一种在数字广播传输系统中消费数据的方法及装置
CN101057439B (zh) 发送器
CN101971629B (zh) 用于适配视频信号的目标速率的设备和方法
KR101727450B1 (ko) 화상 전화에서의 지연 감소
SG146434A1 (en) Transmitting and receiving real-time data
CN108259964B (zh) 一种视频播放速率调整方法及系统
CN105393583B (zh) 具有媒体突发传送能力的媒体分发网络
KR20060065482A (ko) 스트리밍 미디어 데이터의 코딩 비트 레이트의 제어 시스템및 프로세스
JP2006115477A (ja) メディアストリームから得られるメディアの提示を行う方法およびシステム
KR100916505B1 (ko) 정상 재생 타임을 이용한 스케일러블 비디오 코딩 정보와어드밴스드 오디오 코딩 정보의 동기화 지원 방법 및 장치
US20130282871A1 (en) Streaming service transmitting/receiving device and method
CN101562615A (zh) 基于mpeg-4编码的多媒体数据流自适应网络带宽的传输方法
CN113099310A (zh) 基于安卓平台的实时媒体内视音频协调法
CN101951387A (zh) 流媒体传输方法及装置
CN105791735A (zh) 用于视频通话码流动态调整的方法和系统
CN109819312A (zh) 基于动态缓冲区的播放器系统及其控制方法
US20070177625A1 (en) Packet communication system, packet communication method, transmission apparatus, and storage medium having stored therein computer program
Van Beek et al. Delay-constrained rate adaptation for robust video transmission over home networks
US8854964B2 (en) Method and apparatus for determining a transport bit rate for a Multiprogram transport stream
CN102204249B (zh) Mpeg传输流的恒定比特率填充
US8339986B2 (en) Instrumentation of MPEG-2 transport streams for testing network performance
Qiao et al. Lip synchronization within an adaptive VOD system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant