1.一种基于基于嵌入式VoIP电话系统实现嵌入式VoIP电话语音质量管理的方法,所述的基于嵌入式VoIP电话系统包括:SOCKET API网络处理单元,用以连接外部网络;
呼叫业务控制模块,用以处理H248协议栈启动、注册对应回调,负责终端系统的初始化、收发媒体包任务以及事件检测任务的启动;
SIP/H248协议栈,连接于所述的呼叫业务控制模块,负责H248协议包的收发及重传;
底层处理模块,用以处理底层事件上报、媒体处理和声音播放;
底层摘挂机事件轮询模块,连接于所述的底层处理模块和呼叫业务控制模块之间,用以在轮询到事件,将其并放入队列中后,等待呼叫业务控制模块中的一个任务从队列中取出事件进行上层处理;
轮询底层媒体报文模块,连接于所述的底层处理模块和SOCKET API网络处理单元之间,用以将底层媒体报文通过SOCKET API网络处理单元发送;
RTP协议处理模块,连接于所述的SOCKET API网络处理单元,用以负责接收RTP协议包,并将其通过所述的底层处理模块发送至DSP语音硬件;
语音质量管理模块,连接于所述的RTP协议处理模块与所述的底层处理模块之间,用以对从RTP协议处理模块获得的RTP协议报文进行纠错和弥补;
所述的语音质量管理模块包括:
高速缓存区,用以存储从所述的RTP协议处理模块获得的报文;
报文校验模块,用以检测所述的高速缓存区内存储的报文是否为RTP协议报文,摒弃其中的非RTP协议报文;
RTP差错处理模块,用以检测出存在差错的RTP协议报文;
RTP语音弥补模块,用以对存在差错的RTP协议报文进行修补;
RTP协议报文发送模块,用以将经过修补的RTP协议报文通过所述的底层处理模块发送至DSP语音硬件;
其特征在于,所述的方法包括以下步骤:
(1)所述的高速缓存区存储从所述的RTP协议处理模块获得的报文;
(2)所述的报文校验模块检测所述的高速缓存区内存储的报文是否为RTP协议报文,摒弃其中的非RTP协议报文;
(3)所述的RTP差错处理模块检测出存在差错的RTP协议报文;
(4)所述的RTP语音弥补模块对存在差错的RTP协议报文进行修补;
(5)所述的RTP协议报文发送模块将经过修补的RTP协议报文通过所述的底层处理模块发送至DSP语音硬件;
所述的步骤(2)具体包括以下步骤:
(21)所述的报文校验模块利用增量哈希方法,利用哈希表作为索引检测所述的高速缓存区内存储的报文是否为RTP协议报文;
(22)所述的报文校验模块摒弃非RTP协议报文;
(23)所述的报文校验模块将RTP协议报文哈希表存入所述的高速缓存区。
2.根据权利要求1所述的基于嵌入式VoIP电话系统实现嵌入式VoIP电话语音质量管理的方法,其特征在于,所述的RTP差错处理模块检测出存在差错的RTP协议报文,具体为:所述的RTP差错处理模块轮询所述的哈希表中的RTP协议报文,检测出存在差错的RTP协议报文。
3.根据权利要求2所述的基于嵌入式VoIP电话系统实现嵌入式VoIP电话语音质量管理的方法,其特征在于,所述的RTP语音弥补模块对存在差错的RTP协议报文进行修补,具体为:所述的RTP语音弥补模块利用平衡语音包弥补存在差错的RTP协议报文。
4.根据权利要求3所述的基于嵌入式VoIP电话系统实现嵌入式VoIP电话语音质量管理的方法,其特征在于,所述的RTP协议报文发送模块将经过修补的RTP协议报文通过所述的底层处理模块发送至DSP语音硬件,具体为:所述的RTP协议报文发送模块将经过修补的RTP协议报文归并到哈希表后,通过所述的底层处理模块发送至DSP语音硬件。