ITU-TG.729算法及其实时实现
据的交互不会影响到其他工作的正常进行。
本系统的数据采集与播放采用双缓冲的工作方式。采集时采用cod-ad和cod-work两个缓冲区,播放时采用decod-work和decod-work两个缓冲区。cod-ad用于ADSP-2181的串口数据采集,cod-work用于ADSP-2181的编码。当cod-ad采完一帧数据后与cod-work互换。decod-work用于ADSP-2181的串口数据播放,decod-work用于ADSP-2181的解码。当播放完一帧数据后,decod-ad与decod-work互换。采集与播放程序放在ADSP-2181的中断服务程序中。本系统只开放ADSP-2181的接收中断,ADSP-2181每接收一个数据,同时就播放一个数据。
另外G.729的编码器的编码数据和解码器的解码数据都有两个缓冲区,缓冲区的工作原理与数据采集和播放的双缓冲区的工作原理相同。
综上所述,ITU-T的G.729协议是一个ITU-T的8Kbps语音编解码协议,它具有高音质和低延时的特点。软件设计主要包括三个部分:命令解释器、G.729数据引擎、接口功能模块。我们用ADSP-2181实时实现了G.729协议,在ADSP-2181的数据采集/播放和ADSP-2181与主CPU接口的数据交互方面都采用了双缓冲方式。硬件设计主要是通过ADSP-2181的IDMA口,来实现主CPU与ADSP-2181的数据交互。
针对实时实现G.729的一些难点,我们提出了一系列解决的方法,通过这些解决方法,我们已经在Analog Device的定点数字处理芯片ADSP-2181上实时实现了符合ITU-T G.729的全部功能,并且已经通过了ITU-T G.729的全部测试矢量。该编解码器已经在数字语音记录仪和H.323网上多媒体通信系统中推广应用。
- 3DES算法的FPGA高速实现(06-21)
- 基于DSP的Max-Log-MAP算法实现与优化(05-27)
- DSP中DMA操作的无阻塞请求实现(06-18)
- 二维DCT编码的DSP实现与优化(09-08)
- 基于DSP处理器上并行实现ATR算法(01-29)
- 基于DSP的H.324终端设计(05-27)