我support 众多voice/audio codecs中,最近有不少客户要EVRC,以及此系列中最新的Codec, 在这就把这系列的Codec 理一下,好能更好的给客户进行相关的说明。
随着3G的业务开发,与3G通信相关的Codec也倍受关注。作为CDMA首先voice codec EVRC family也得到了空前的关注和应用。
与CDMA 或 CDMA2000相关Codec,大多是Qualcomm公司开发,种类众多,关系有点复杂。
QCELP8K, QCELP13k, 介于这中间的又出现了EVRC, EVRC的升级版有EVRC-B, SMV, 还有 EVRC-WB
然后又重合一下成了4GV, which include EVRC-B and EVRC-WB.
大家先看一下Qualcomm家族图:
大家学习这些Codec首先要知道他们在国际标准中的编号,因为你有时直接用EVRC做关键词可能搜不到更详细的文档,但你用相关组织的协议号就能得到更详细的文档。
如: QCELP 语音压缩编码算法包抱8k 和13K二种, 1993年4月,TIA/EIA 公布了TIA/EIA/IS-96协议。如你们在google搜IS-96可能会得到更多有关QCELP的文档。
EVRC 是为了解决QCELP8k 音质不好的,但QCELP13K 码率又太高而推出来的Codec。 其中也有很多独特的功能模块。如在编码器中加了降噪模块。
技术总是不断发展中,在语音编解码中,更是百花齐放,绝大数Codec算法都极大的相似,但各大公司或组织不想向其它组织交Codec licensce费,同时也想自己去主导某一技术,都推出自己的Codec,同时也在Codec中加入自己的特色的东西。
Qualcomm也在不断的创新和升级中,在EVRC后又提出了EVRC-B。
EVRC-B is a speech codec used by the CDMA networks as an enhancement to the earlier Enhanced Variable Rate Codec (EVRC).
One significant enhancement in EVRC-B is the use of 1/4 rate frames that were not used in EVRC. This provides lower average data rates (ADRs) compared to EVRC, for a given voice quality.
由于EVRC-B 引入了1/4码率模式,综合情况下会在较低的码率下取得比EVRC要好一点的音质。
An upgrade of the EVRC vocoder, known as EVRC-B, was recently introduced by 3GPP2 The EVRC-B speech codec is based on the 4GV concept and is the newest and most advanced speech codec for cellular applications. In addition to the Relaxed Code Excitation Linear Prediction (RCELP) used by EVRC, EVRC-B uses Prototype Pitch Period (PPP) approach for coding of stationary voice frames and Noise Excitation Linear Prediction (NELP) for efficient coding of unvoiced or noise frames. Using NELP and PPP coding at 2.0 kbit/s provides EVRC-B with superior flexibility in rate assignment, allowing it to operate at several operating points, each with a different trade-off between speech quality and system capacity. EVRC-B will replace EVRC as the main speech codec for cdma2000 and its first network commercial deployment is planned to start in 2007. A wideband extension, EVRC-WB, will provide speech quality that exceeds regular wireline telephony and its standardization process is planned to be completed at the summer of 2007.
EVRC-B can be also used in 3GPP2 container file format
在一论坛上看到这样的EVRC与EVRC-B的比较数据,在这引用一下:
EVRC(Enhanced Variable Rate Codec)增强型变速率语音编解码,建立在RCELP编码器的基础上,加入了VAD检测,差错隐藏等技术,对语音信号进行变速率编码从而达到节约带宽,保持语音质量的目的。
EVRC有三种编码速率:全速率,1/2速率和1/8速率。对于噪声用1/8速率编码,语音用全速率或者1/2速率。
至于EVRC-B,实际是使用了EVRC不使用的1/4码率(时隙?CDMA不应该叫时隙吧,hoho)部分,所以在同等通话质量下,理论容量应该提高了至少20%以上。
下面是电信方面谈到的一段关于EVRC和EVRC-B的应用差别的描述:
如果CDMA网采用的是EVRC声码器和单天线接收,每扇区的容量是35个同时通话;如采用的是EVRC-B声码器和单天线接收,每扇区的容量是49个同时通话;如采用的是EVRC-B声码器和双天线接收,则每扇区的容量是55个同时通话。更进一步,如聪明地利用1/8空白速率帧,使用更有效的闭环功控、反向链路提早结束(earlytermination)、前向链路提早结束(earlytermination)、前向链路干扰抵消(QLIC)、QOF等技术,并采用双天线接收的话,则每扇区的容量可高达120个同时通话。总之,1X增强版显著增加了语音容量,同时让网络和频谱投资最大化。
关于通话质量的格式问题,我看到网上有关适用的是下面的一段话:
EVRC是一个旧的音频编码格式,超过10年(我想开始于1995年)。我猜想旧的格式存在的时间太长了,现在运营商都已经换了新的设置支持新的编码格式了,这些新的编码格式音质更好,效率更高。我做了一些测试,Sprint至少已经支持SMV格式。看起来好像SMV格式比EVRC格式音质更好,效率更高。4GV是高通最新的编码,所以我不太确定是否支持。 4GV有2种格式,NB(Narrowband)和WB(Wideband)。 我猜想WB在相同带宽成本下提供更好的质量。你可以在QPST里面看到这些设置。如果你有电话的SPC码,希望某人能有一个敏锐的耳朵来测试一下这些标准并且报告这些结果。
上述观点,我基本同意。
现在都往高清发展,与之相关的Voice也开始采用WB进行编解码。Qualcomm是3G,4G的主导者必然其voice codec也是走在人的前面,Qualcomm推出下,3GPP2标准化组织推出了EVRC-WB算法,这个算法达到了3GPP2要求的质量和编码效率。EVRC-WB是EVRC扩展,将处理窄带语音信号转成处理宽带语音信号。
EVRC-WB 亮点: 现已应用于CDMA2000标准实体3GPP2。该编码器实现了宽带语音(16KHz)编码,最大码率也为8.55kpbs,这个可是很有吸引力的数据啊。
SMV与EVRC-B十分相似, 有多种工作模式,其中模式0与模式4没有选用1/4速率,这是为了和当前的CDMA语音编码标准IS-127兼容。
对SMV我接触不是很多,在不久的将来我会涉及到这个Codec,到时再细说。
linking: http://en.wikipedia.org/wiki/EVRC-B
http://droidcn.com/viewthread.php?tid=1002