0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于ARM11处理器和Linux操作系统的无线音视频通信系统的设计

电子设计 来源:郭婷 作者:电子设计 2018-12-24 08:12 次阅读

随着数字化和网络化时代的到来,尤其是宽带无线网络的发展,为音视频这样大数据量传输业务在无线网络上的应用提供了契机。同时由于音视频独特的感官特性,使其相关的应用需求也变得越来越迫切。无线多媒体是多媒体和移动通信这两个领域的技术相互融合的产物,成为当今通信领域的一个热点。鉴于Linux内核的开源性,采用其作为操作系统,从而使整个系统具有更好的实时性和稳定性。整个系统以ARM11为核心处理器、采用新一代视频编解码标准H.264进行编译码,并通过无线网络传输音视频。它充分利用S3C6410微处理器内部集成的多媒体编解码器(Multi-Formatvideo Codec,MFC),有效提高了系统的性价比。整个系统为无线多媒体音视频的传输提供了一个好的解决方案,可广泛应用在远程监控、视频电话等各种领域,具有较好的实用价值和推广应用前景。

1 系统总体方案设计

通信双方系统中音频和视频采集模块负责采集模拟信号,并将采集到的音视频数据送到音视频管理模块,经过压缩处理,再加上数据包头一起由WiFi发送到对方;对方接收到数据后,经过相关处理,判断音视频帧类型,再送往解压缩处理模块,恢复出音视频数据。通信双方设备均包含嵌入式音视频管理模块和无线收发模块。无线WiFi 收发模块运行在2.4 GHz 频段,符合IEEE 802.11b无线局域网协议标准。

2 系统硬件设计

系统硬件设计以ARM11 为核心微处理器,主频为532 MHz,能够满足实时处理的要求,其内部集成有256 MB SDRAM、2 GB FLASH、音频录、放音接口、Camera视频接口、无线WiFi接口、LCD接口、SD卡接口等,同时以开源的Linux 2.6.28 为内核,yaffs2 为根文件系统,Qtopia 4.4.3 作为用户界面,为开发调试和系统设计提供了良好的平台。

2.1 音视频采集模块

音频采用处理器内部集成的IIS(Inter-IC SoundBus)音频接口和WM9714音频芯片。IIS是飞利浦公司为数字音频设备之间的音频数据传输而定制的一种总线标准。在飞利浦公司的IIS标准中,既规定了硬件接口系统,也规范了音频数据的格式。基于此硬件及接口规范,实现了集成音频输出、Linein输入和Mic输入功能。

视频采集使用的是OV9650CMOS摄像头模块,分辨率高达130万像素,可直接与OK6410开发板的Camera接口相接。适用于高端消费类电子产品工业控制、车载导航、多媒体终端、行业PDA、嵌入式教育培训、个人学习等。其结构较简单,提供硬件驱动程序,便于使用和调试。

2.2 无线传输模块

本系统的无线传输模块采用工作在2.4 GHz 公共频段的WiFi模块来实现,它遵循IEEE 802.11b/g网络标准,可用于在后期开发中将终端接入Internet,其最高数据率为54 Mb/s,支持WinCE、Linux 系统。室内通信距离可达100 m,室外开阔地可达300 m。只需要对ARM-Linux操作系统进行简单的配置就可以由以太网连接模式转化为双机通信AD-HOC模式,在系统启动之后,设计了基于Qt的窗口设计,方便切换连接模式。

选用WiFi具有很好的可扩展性,可以通过无线路由器的WiFi连接到广域网,具有很好的应用前景。同时大多数手机等终端设备具有WiFi功能,后期还可以将软件升级至Andriod系统,方便开发和移植。它减少了音视频实时传输的开发成本和周期,也给现代移动通信提供了一种新的音视频通信方式。

WiFi的驱动配置好后,应用层和以太网接口模式编程完全相同。由于此设计音视频数据量较大,不宜采用UDP,因为当数据量过大或传输信号不好时,UDP会严重丢包,所以最终选择面向连接的TCP传输协议,保证了系统音视频有效传输。由于TCP是应答时式传输数据,在局域网内,无需考虑TCP丢包问题,为实现系统功能提供了可靠的保障。

3 软件设计

软件分为用户界面设计和数据处理、传输等模块的设计。

3.1 基于多线程的软件总体设计

系统软件架构如图1 所示,它是音视频单向采集、压缩、传输、接收、解压缩、处理回放音视频流控制过程,各个模块采用线程处理,由信号量处理线程间优先级构成循环的线程,有效地处理了音视频数据流。系统各功能模块化,便于修改和移植,代码简短精悍。

基于ARM11处理器和Linux操作系统的无线音视频通信系统的设计

3.2 回音消除

系统开始时出现回音和延时问题,延时是由于采集传输过程中造成的,所以只能尽量缩短延时,而无法做到即时播放,这也是此系统的缺陷之一。回音是由于延时造成的,文中最后采用开源的Speex算法消除了回音。具体做法:将该算法编译成库文件,加入到Linux内核,即可以使用Speex 的API函数,实现音频的回音消除。

3.3 嵌入式音视频的同步

本文的基本思想是以视频流为主媒体流,音频流为从媒体流,视频的播放速率保持不变,根据本地系统时钟确定实际时间,通过调整音频播放速度来达到音视频同步。

首先选择一个本地系统时钟参考(LSCR),然后将LSCR发送到视频解码器和音频解码器,由这两个解码器根据各帧的PTS值对照本地系统时钟,参考产生各帧准确的显示或回放的时间。也就是说,生成输出数据流时依据本地参考时钟上的时间给每个数据块都打上时间戳(一般包括开始时间和结束时间)。在播放时,读取数据块上的时间戳,同时根据本地系统时钟参考上的时间来安排播放。

整个系统的音视频同步数据流程如图2所示。

基于ARM11处理器和Linux操作系统的无线音视频通信系统的设计

4 音视频通道管理

为了节约内存资源,便于通道的管理,本设计采用分通道的线程池管理,音、视频分别由自己的通道完成任务。

音视频采集使用同一个线程处理,采用select系统调用,每执行到此线程,就判断音视频设备是否就绪,若就绪即采集音频或视频到音视频缓冲区,再交给音视频采集压缩线程,最后再交给发送线程打包后采用TCP发送。需要说明的是本设计线程之间均采用信号量完成线程间基于TCP的音视频软件架构的同步管理。发送完以后进入接收线程等待对方发音视频数据。在接受端由接收线程接收到数据以后,判断数据的包头,再交由解压缩处理线程处理,然后播放音视频,再等待对方发数据到本机。

由于处理器的高速处理和高效率视频硬件H.264解压缩,使得整个系统实时性基本达到要求。嵌入式音视频管理模块实现了整个系统的统筹控制和实时处理,为音视频数据管理提供可靠的保证。

5 结语

目前基于嵌入式无线终端的视频监控产品由于无需布线、传输距离远、环境适应能力强,性能稳定及通信便利等优势而倍受青睐,在安全监察、巡查通信、施工联络、人员调配等场合发挥着不可替代的作用。本系统是基于嵌入式Linux的无线音视频通信手持式终端,其体积较小、携带方便,采用锂电池经过开关电源芯片降压的方式给整个系统供电,其效率较传统直流稳压大大提高。在户外可视化娱乐、施工现场监控、大型安保联络等场合均可使用,具有广泛的应用前景。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    18175

    浏览量

    221892
  • 嵌入式
    +关注

    关注

    4974

    文章

    18225

    浏览量

    287629
  • 无线
    +关注

    关注

    31

    文章

    5298

    浏览量

    171378
  • 操作系统
    +关注

    关注

    37

    文章

    6248

    浏览量

    121814
收藏 人收藏

    评论

    相关推荐

    基于ARM11为微处理器无线网络传输音视频系统

    和移动通信这两个领域的技术相互融合的产物,成为当今通信领域的一个热点。鉴于Linux内核的开源性,采用其作为操作系统,从而使整个系统具有更好
    的头像 发表于 05-24 17:02 2606次阅读
    基于<b class='flag-5'>ARM11</b>为微<b class='flag-5'>处理器</b>的<b class='flag-5'>无线</b>网络传输<b class='flag-5'>音视频</b><b class='flag-5'>系统</b>

    【飞凌S5PV210开发板知识分享】Cortex-A8和ARM11区别

    功耗低于300毫瓦,而性能却高达2000MIPS。 ARM Cortex-A8处理器是一款适用于复杂操作系统及用户应用的应用处理器 。在不到ARM1
    发表于 07-02 09:15

    Cortex-A8和ARM11区别

    2000MIPS。 ARM Cortex-A8处理器是一款适用于复杂操作系统及用户应用的应用处理器在不到ARM11一半功耗的情况下可提供比基
    发表于 08-22 13:55

    Cortex-A8和ARM11区别

    工艺下,其功耗低于300毫瓦,而性能却高达2000MIPS。 ARM Cortex-A8处理器是一款适用于复杂操作系统及用户应用的应用处理器在不到A
    发表于 05-20 14:30

    【OK210申请】基于嵌入式ARMLinux的手持设备的音视频无线通信系统

    ARMLinux系统开发一款可以音视频同步传输的手持终端产品。本设计首先从移动互联网近几年的发展状况出发,分析高昂的3G/4G移动通信费用
    发表于 07-06 19:35

    基于ARM Linux无线音视频对讲系统

    和移动通信这两个领域的技术相互融合的产物,成为当今通信领域的一个热点。鉴于Linux内核的开源性,采用其作为操作系统,从而使整个系统具有更好
    发表于 07-24 13:48

    请问类似UCOS的系统能在ARM11处理上运行吗?

    通过玩STM32知道了UCOS操作系统,目前我手里还有一块儿ARM11的板子,主控是三星OK6410处理器,不知道这类的处理器能否跑UCOS系统
    发表于 04-11 22:34

    ARM11处理器的内核有哪些特点 可以应用哪些领域

    无线产品。这一处理器采用 ARM Java 加速技术、ARM TrustZone 技术以及一个矢量浮 点(VFP)协处理器,为嵌入式 3D
    发表于 09-27 09:28

    ARM为核心的嵌入式音视频设备

    选用的三星S3C6410处理器作为硬件的核心,该处理器基于ARM11CPU内核,具有高性能低功耗的特点,同时它是一款SoC芯片,片内集成了多种常用的外设,这使得外围电路的设计变得非常容易,而且能够降低成...
    发表于 12-24 06:06

    基于ARM-Linux无线音视频传输系统

    本文设计了一种基于S3C2410X微处理器Linux操作系统无线多媒体传输系统。论文首先介绍了系统
    发表于 06-25 14:11 101次下载

    基于ARM11+Linux无线视频监控系统

    本文设计了一种基于ARM11+Linux 系统组成的无线视频监控系统。为提高运算速度,系统采用
    发表于 08-07 14:37 1.3w次阅读
    基于<b class='flag-5'>ARM11+Linux</b>的<b class='flag-5'>无线</b><b class='flag-5'>视频</b>监控<b class='flag-5'>系统</b>

    ARM11无线视频监控系统分析

    摘 要:设计了一种基于ARM11+Linux 系统组成的无线视频监控系统。为提高运算速度,系统
    发表于 10-23 14:59 1次下载
    <b class='flag-5'>ARM11</b><b class='flag-5'>无线</b><b class='flag-5'>视频</b>监控<b class='flag-5'>系统</b>分析

    基于ARM11和RFID技术的物流会有什么不同

    本设计以ARM11处理器为核心,结合了Linux操作系统和TX125系列射频读卡模块实现了智能物流的货品管理系统
    发表于 04-23 15:05 472次阅读
    基于<b class='flag-5'>ARM11</b>和RFID技术的物流会有什么不同

    基于ARM11的嵌入式通信系统

    基于ARM11的嵌入式通信系统(嵌入式开发设计需要什么软件)-基于ARM11的嵌入式通信系统 
    发表于 07-30 14:40 20次下载
    基于<b class='flag-5'>ARM11</b>的嵌入式<b class='flag-5'>通信</b><b class='flag-5'>系统</b>

    ARM11嵌入式系统Linux下LCD的驱动的设计

    ARM11嵌入式系统Linux下LCD的驱动的设计(嵌入式开发啥意思)-ARM11嵌入式系统Linux
    发表于 07-30 14:53 24次下载
    <b class='flag-5'>ARM11</b>嵌入式<b class='flag-5'>系统</b><b class='flag-5'>Linux</b>下LCD的驱动的设计