|
' m3 y' F3 I; V. I1 b" o0 K' n无线音频延迟模型及经典蓝牙音频(HFP/A2DP)延迟分析(下); c4 }. u$ s" F- q0 U. L
3 }% c+ g' }1 }. t1 T8 O, v7 p
7 f7 b! T6 n: ?* V! E5 D: W) e# h
经典蓝牙音频延迟% T! E4 f: t* Z7 l8 N- v! `, Z0 S: n
7 b) i) O1 P* I7 _/ |9 o经典蓝牙音频是指基于经典蓝牙(BR/EDR)核心规范实现的音频传输应用,包括两个蓝牙应用层规范: 用于通话语音的免提应用-HFP (Hands-Free Profile)及用于音频流媒体传输的高级音频传输应用-A2DP (Advanced Audio Distribution Profile)。# t7 L) d( E. W+ ?( H- _: @
! U; g( z9 d% u* ]
HFP
" |0 K+ F& [+ y6 M& {2 U2 c' c5 ?7 W3 n/ T, r
HFP规范强制支持CVSD(连续可变斜率增量调制)编码,CVSD是一种延迟很低的编码格式,广泛应用于通话语音传输中。CVSD是最早的一批数字音频编码格式,诞生于1970年代。CVSD采样连续时域信号间的变化,并对相邻的时域模拟音频信号间的变化增量直接进行编码,与感知编码中需要累积一定帧时长才进行编码不同,CVSD无帧时长产生的延迟;但缺点是数字音频比特率较高,在比特率限制条件下仅能提供窄带音质(最高声音频率为3.4kHz)。采用CVSD编码的延迟低于20毫秒。: c+ `4 P: K: a3 B! F6 d' k
1 ?1 `, f# ]& P1 |( M( C) VHFP v1.6版本引入了修改版子带编码mSBC以支持宽带音质(最高声音频率为7kHz),mSBC是对A2DP中采用的SBC编解码器的修改版。mSBC采用16kHz采样频率,用于单声道语音编码。作为一种感知编码mSBC基于采样样本帧,因而其延迟比CVSD高,通常为30毫秒左右。
) n9 z3 M% c$ c' {' ~- f
' c9 k& z. ] U) r8 l经典蓝牙音频HFP的延迟完全能满足通话语音传输的需要。
6 a8 Q( O) u9 b$ y1 p7 s+ e' T
$ L- ^5 q& u' p4 c+ ^* P6 @, fA2DP
" J U& }9 J! l1 j( |2 [" c' D# Y6 A, n
与HFP不同,A2DP设计用于数字音频流传输,包括音乐、视频等各种包含音频的流媒体。A2DP强制支持SBC(子带编码)编解码器,SBC是一种基于心理声学效应的感知编解码器,诞生于1990年代。SBC可提供较好的音频质量,作为一种压缩编码人耳几乎不能察觉其与未压缩编码间的差异。
: B( T; e2 m, l* g% I0 k$ p) l' F _9 P4 U
A2DP中的数字音频编解码器产生高延迟的原因一方面是由于编码帧时长本身造成的延迟,另一方面是由于为了提高音频传输可靠性而采用的重复传输机制产生的传输延迟。经典蓝牙A2DP应用的音频延迟通常为100~200ms(取决于SBC编码参数),在纯音频应用(例如音乐播放)中延迟对用户体验没有影响,但在在音视频多媒体应用中延迟可能会影响用户体验,为了解决音视频同步的问题A2DP规范及其底层规范AVDTP中引入了延迟报告(Delay Reporting)功能,由音频接收设备将其延迟值报告给播放设备以实现音视频同步。
/ @) q$ a1 L0 `) C4 ?# M* q& v: Y, I# N: v% R) W: ~
A2DP规范也允许同时支持其他可选编解码器,例如AAC, MP3,aptX等。A2DP支持的这些数字音频编解码器都会产生比HFP高得多的音频延迟。* K# c! G8 _0 |6 ~9 S% t! P
! P- `, W: ^# ~% F5 d/ V
经典蓝牙音频A2DP的延迟基本能满足大部分应用场景的需要,在对延迟要求较高的应用中(例如游戏)需要采用低延迟的音频编解码器, 例如高通的aptX Low Latency音频编解码器,延迟为40ms左右。A2DP允许使用自定义的私有音频编解码器,但需要音频源(Source)和音频播放端(Sink)同时都支持才能实现基于私有音频编解码器的音频流传输。
! V3 y) M3 I4 W2 V/ q9 d4 `( h
( p/ n! @. Y7 O, H2 d4 V8 n普通人对于80ms以下的声音延迟是没有知觉的; 经过听力专门训练的人员(例如专业电竞人员)可识别50ms左右的延迟; 几乎没有人能识别35ms以下声音延迟。 |
|