当前位置:问答库>论文摘要

题目:嵌入式Linux音频传输系统的设计与实现

关键词:嵌入式Linux;无线音频传输;DMA;RTP;流量控制

  摘要

在嵌入式无线音频系统的传输过程中,传输时延、抖动、乱序、超时等问题是影响播放质量的关键,特别是移动设备上的无线网络稳定性差,发送阻塞现象严重。本文针对嵌入式Linux平台上的无线音频传输过程,综合考虑减少延时和处理抖动、乱序、超时,设计并实现了一种音频传输系统。为减少传输时延,主要采取了以下几种措施。第一,将音频传输系统放在Linux内核空间实现,避免了音频传输系统中内核空间和用户空间的数据传输以及CPU内核态和用户态工作模式的切换。第二,在声音的采集和播放模块,使用DMA方式在内存和声卡之间传送数据,使得采集与发送、接收与播放可以同时进行,减少时延。第三,在音频发送模块,采用基于数据链路层最大传输单元限制的小包发送,减少了IP数据报的拆分,并在网络层进行流量控制,保证了音频数据的稳定带宽,使得音频数据能够尽快的发送出去,减少了延时。为处理抖动、乱序、超时问题,在传输层使用UDP协议,应用层利用RTP/RTCP实时传输协议。在音频接收模块,设立环形缓冲区存放RTP包,利用序号和时间戳信息进行入队、刷新、出队的一系列操作,处理抖动、乱序、超时。同时,根据网络状态的变化,对发送进行控制,减少无线网络发送阻塞现象的发生。基于以上设计和实现方案,通过实验测量表明,延时降低了40ms,降至70ms左右。10ms左右的抖动处理后低于1ms。能够处理乱序、超时。