《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之72---BREW中的特殊语音处理

简介: 版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。 https://blog.csdn.net/wireless_com/article/details/5892552

BREW2.X 开始,针对语音处理提供了 IVocoder 接口。 IVocoder 接口使用默认的声音路径,以捕获和播放声码器帧。由于 IVocoder 使用的设备也可以用来执行语音呼叫,因此使用 IVocoder 的应用程序必须注意并集成 TAPI 通知,以便在启动语音呼叫时适时停止使用声码器。 IVocoder 接口实现的基本流程如下:

1 )创建 IVocoder 接口,从系统层面上来看,这是给 IVocoder 分配一段内存空间,内存空间的使用根据应用的需要来设置。

2 )配置 IVocoder 的用例,包括声码器算法、数据速率、回调参数等。

增强可变速率声码器 EVRC IS-127 )可以很好的提高语音质量。实时的数据速率实质上由手机底层的声码器根据信噪比和语音空闲度控制,在程序里无法强制其按某速率进行编码,但 BREW 仍要求设置上限和下限速率。

当与调用声码器相关的事件发生时,都要向系统注册一个相关的回调函数在系统执行队列中排队。当系统执行到该回调函数时,系统可以根据回调函数的内容来决定是否继续、中断或者结束声码器的操作,当然决定的过程也是新事件产生的过程,也就意味着又注册一个

回调函数。也就是说,声码器的回调函数是用户自定义但却是系统自动调用的函数。回调函

数的配置好坏,直接关系着整个语音的流程顺畅与否。

3 )启动并进行语音的编码。

由接口函数 IVOCODER_VocInStart() 启动声码器进行编码语音帧;如果成功则调用已经配置的回调函数 HavaDataCB 。回调函数 HavaDataCB 中,用接口函数 IVOCODER_VocInRead() 一帧帧的采集语音并把数据写入缓存区。然后打包准备发往服务器端。缓冲区大小必须足以支持声码器的最大帧速率,而不仅仅是当前速率限制所用的最大值。

由接口函数 IVOCODER_VocOutStop() 停止声码器的播放,然后停止语音的处理,并释放 IVocoder 接口。

目录
相关文章
|
测试技术 开发者 安全
《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之95——BREW中的典型上有测试TBT
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
771 0
《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之98——BREW中RUIM的相关问题
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
717 0
|
存储 搜索推荐 Windows
《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之100——BREW中绚丽多彩的应用
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
610 0
|
NoSQL 编译器 C语言
《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之91——BREW debuger的使用
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
871 0
|
API
《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之68---BREW 应用中的3维图像技术
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
877 0
|
Perl
《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之59---BREW toolsuite 工具
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
649 0
|
开发者 存储
《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之60---BREW 在线 工具
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
758 0
|
内存技术
《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之65---BREW 应用中的音频播放
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
663 0
|
C++ 编译器 开发工具
《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之63---BREW 应用的开发流程
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
759 0
|
存储 编解码 ice
《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之36---支持BREW的手机
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
744 0