驱动环境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