Speexmanul手册中文版.doc
《Speexmanul手册中文版.doc》由会员分享,可在线阅读,更多相关《Speexmanul手册中文版.doc(10页珍藏版)》请在咨信网上搜索。
1、在VOIP的音频算法中,回音处理已经成为一个关系通话质量的主要问题。回声的产生在IP网络主要有两种:1.声学回声2.电路回声声学回声主要又分成以下几种:a ) 直接回声:由扬声器产生的声音未经任何反射直接进入麦克风b ) 间接回声: 由扬声器发出的声音经过多次反射后,再进入Mic对于第二种回声,拥有多路径,时变性的特点.是比较难处理的.由于IP网络下的传输的延迟较大,而一般情况下,对于人耳,如果声音延迟达到了10ms以上的话,那么回声就会越来越明显.一般来讲,VOIP中的声音延迟主要来自于几个方面:1. 编码延迟: 一般情况下编码算法在声音压缩时都会产生延迟,就我们采用的Speex来讲,延迟大
2、概在20ms左右2. 处理延迟, 封装时延, 缓冲时延等3. 在IP网络中数据的传输过程也会照成延时.这由当前的网络状况决定.回声消除的模型:a) 建立远端声音模型,进行回声估计, 从采集的值中减去估计值b) 声学模型Speex是一套专门用于压缩声音的库,由于其专门针对声音,所以压缩声音的性能非常高.Speex由于其压缩性能,及0.80版后的跨平台的性能,所以在网络声音的传输中有很大的价值.但是需要注意的是speex只能对声音进行压缩,不支持音乐的压缩,如果你需要音乐的压缩你或许需要用vorbis库.但是的speex资料像其它大都数专用库一样,并没有大多的中文资料.所以在这里我决定将里面最核心
3、的编程技术翻译出来.一来是练习练习自己翻译资料的能力,二来是方便一些英语水平较差的朋友.由于本人能力有限,有些感觉有出入或难理解的地方可以去speex的官方网站www.speex.org找到英文原版的说明.1,speex的介绍(略)2特征描述这个章节展示了speex的主要特征,以衣一些关于对话(speech)编码的一个概念,以便帮助我们更好的了解下一章节.取样率(Sampling rate)Speex主要是设计了三种不同的取样率:8kHz,16kHz,32kHz.这些分别代表了窄宽(narrowband),多频率,超声.质量Speex编码大都数时间是被一个范围为0到10的质量参数来控制的.在一
4、个比特率为常量(CBR)的操作中,质量参数是一个整数,而对于变动的比特率(VBR)参数是一个float;复杂性(变量)用speex,你可以将编码设置成允许的复杂度.这由一个范围为1到10的整数来控制完成,就像你用选项-1到-9来控制gzip和bzip2的压缩质量.在通常的运用中,噪声级别的复杂度1是在1到2dB之间,比复杂度10要高,但是CPU需要复杂度10大概5倍高行复杂度1.在实践中,最好的是设置在2到4之间,尽管更高的设定通常有用,当编码一个非对话声音(non-speech sounds)像DTMF语调(tones).变波特率(VBRVariable bit-rate (VBR) all
5、ows a codec to change its bit-rate dynamically to adapt to变波特率(VBR)允许编码动态地改变它的波特率以适应声音编码的”难度”.在speex举例来说,像元音(vowel)和瞬间高音(high-enenrg transients)需要个高的比特率来取得一个不错的质量,而摩擦音(fricative)可以被充分地用相对较少的字节来进行编码.由于上面这个原因,VBR可以调节到一个低的比特率却达到一个同样的质量,或者用某个比特率达到更好的质量.尽管有上面这些优点,但是VBR也有两个主要的缺点.首先,仅仅靠指定质量值,这里没有一个关于最后平均比特
6、率的保证.(译者注:作者大概是想说没有什么明确的方法知道质量值)此外,对一些即时通信,像IP电话(VoIP)这种包含着最大的比特率的,必须把比特率设为足够低以适应传输通道.平均比特率(ABR)平均比特率通过动态地调节VBR质量去得到一个确定的目标的比特率,从而解决了VBR中的一个问题.因为质量/比特率被即时的调整了,整体质量将会稍稍低于由VBR对一个设置得和目标平均比特率非常接近的质量数编码得到的结果.声音生动性检测(VAD)声音生动性检测将会发觉音频正在被编码成对话,静音,或背景噪音.VAD总在用VBR进行编码时暗中起作用,因此选项仅仅对一个不是VBR的操作起作用.对于不是VBR的操作来说,
7、speex察觉出一个不属于对话的周期,然后对它用足够的字节重新生成为背景噪音.不这叫做舒适的噪音生成(CNG).不连续传输(DTX)不连续传输是VAD/VBR操作的一个额外选项,当背景噪音一定时,它可以完整地传输.因为在基于文件的操作中,我们不能停止对文件进行写入,所以只有5字节被这种帧所运用.(给250bps通信)Algorithmic delay迟时算法每一个声音编码导致了在传输上的延时.对于speex,这种延时等于frame的大小加上一些数量的需要对每一帧进行的前瞻(”look-adhead”).在窄宽操作中(8kHz),迟时是30ms,而对于多频率(2-44Hz),迟时是34ms.这些
8、值不包括CPU编码,解码帧的时间.4.1 Encoding4.1压缩为了用Speex压缩对话,你首先需要引用头文件:#include 然后你需要定义一个Speex的位采集(bit-packing)结构SpeexBits bits;and a Speex encoder state以及定义一个speex编码器状态量void *enc_state;上面定义的这样被初始化:The two are initialized by:speex_bits_init(&bits);enc_state = speex_encoder_init(&speex_nb_mode);为了支持多频率的压缩,speex_n
9、b_mode将被sppex_wb_mode取代.在大都数情况下,你需要知道你用的模式(mode)的帧(frame)的大小,你可以得到在frame_size变量里得到这值:speex_encoder_ctl(enc_state,SPEEX_GET_FRAME_SIZE,&frame_size);一但初始化完毕,对于每一个输入帧:speex_bits_reset(&bits);speex_encode(enc_state, input_frame, &bits);nbBytes = speex_bits_write(&bits, byte_ptr, MAX_NB_BYTES);上面input_fr
10、ame是一个指向对话(speech)帧(frame)的float指针(pointing);byte_ptr是指向编码帧开始写的地方的char指针,MAX_NB_BYTES是能写进byte_ptr而不会造成溢出的最大数.nbBytes是一个实际写入btye_ptr的数,即编码的实际大小在调用speex_bits_write前,可能你需要调用speex_bits_nbytes(&bits)得到需要写入(write)的字节大小.在你已经编码后,释放所有的资源.speex_bits_destroy(&bits);speex_encoder_destroy(enc_state);Thats about
11、it for the encoder.这就是关于编码的方面.Speex manul中文版三附源代码的翻译:B Sample codeB例程源代码这个章节演示了一段用speex编码,解码对话(speech)的源代码.可以如下用api命令来编码并解码一个文件:译者注:这里说的api命令是指unix的用”|”进行管道写入读出.在windows下这样并不能实现.% sampleenc in_file.sw | sampledec out_file.sw这里这两段代码都没有引用其它的头文件,并以16比特率(bits)进行编码natural endianness).B.1 sampleenc.cSamel
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Speexmanul 手册 中文版
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。