驱动环境VOICE-DSP说明
Version :0.1
简 介
本文档介绍了Voice中对DSP的资源的分配过程和通道的分配的过程,文章中给出的框图和编程实例,是对电话应用编程接口TAPI和Voip的功能的具体应用,是对今后的语音处理的应用具有一定的借鉴意义。篇一简要地说明了TAPI管理和配置DSP的内容,篇二主要是编程上TAPI对DSP资源的管理。
篇 一
篇一介绍了简要地TAPI利用DSP的硬件资源,使得驱动开发人员对GRX288的DSP进行一定的了解,有助于对驱动底层和上层的理解,同时也给出了Voice子系统TAPI的实例对通道的建立,设备FXS、FXO等应用分析。
1:TAPI的应用简介
大麦盒子需要的是既能够通过PSTN打电话,也能够通过IP网络打电话。具体实现过程如下:

下面是TAPI的电话通讯的状态:



2、GRX288的DSP的内部结构图

3、TAPI系统接口
- 两种类型的文件描述符
1.设备文件描述符:对设备的广泛的控制
2.通道文件描述符:对DSP进行分配资源和连接硬件的功能控制


2)通道资源
1.电话通道资源 视为数字语音的IO端口、PCM资源、ALM资源
2.数据通道资源 视为信号资源DTMF等、编解码资源
- DECT 暂时不用
3、设备和通道的建立过程
1)应用程序创建设备节点和通道节点

2)打开设备节点和通道节点

- Channel链接DATA资源进行数据资源映射

- Channel链接ALM进行通道线路资源(FXS或FXO)

- Channel链接PCM通道进行通讯
在配置PCM接口之后,应用需要IFX_TAPI_PCM_CFG_SET.配置PCM通道通讯。
-读写时隙编号
-PCM高速通道链接通道
-A-law Mu-law,Liner 16-bir
一旦PCM通道配置之后,激活PCM通讯,设备开始在编程时隙和高数公路的传输和接收。
在关闭通道之前,确保关闭了运行在PCM通道的LEC资源。
4、事件处理
1、TAPI HL和LL的事件处理过程

- 事件消息格式

- RTP配置
- SIP:对VOIP的呼叫的建立,和协商等的协议
- RTP: 在建立会话之后,直接传输的媒体流。

在开始进行RTP会话的时候,应用需要建立每个通道的RTP连接参数。
会话的参数:IFX_TAPI_PKT_RTP_PT_CFG_SET
- RTP的编码类型
选择合适的地区进行配置,以及编解码进行配置

6、模块连接

- 数据通道与其他类型的通道的配置

- PCM通道和任何一个PCM、PHONE通道的连接

- Phone通道和任何一个PCM、PHONE通道的连接

- 包处理
TAPI实现
-linux用户空间
通过读写的非阻塞系统调用
RTP和T 38 traffic
-linux内核空间
TAPI内核包接口,RTP Traffic


篇 二
篇二是对驱动对DSP资源的管理的说明,在openwrt下的对相关voice的程序的一些重要的地方的说明,先分析编译过程中加载的voice的模块,再分析每个模块的作用和对资源的管理情况,最后对接口的调用进行分析与说明。
一:编译加载的Voice模块及其分析
- 编译过程后加载的voice的package
1)先对voice的包进行编译
![]()


- 再对voice的包进行加载

- 各个包的说明


本文档详细介绍了在openWRT环境下,针对VOICE-DSP的资源分配和电话通信流程,包括TAPI对DSP硬件资源的管理、GRX288 DSP的内部结构、电话通道和数据通道的建立、事件处理机制以及驱动对DSP资源的管理。通过阅读,读者可以了解到如何在openWRT上实现电话应用,以及如何有效地管理和配置DSP资源。
最低0.47元/天 解锁文章
219

被折叠的 条评论
为什么被折叠?



