阳泉市 车险 壶关县 红河县 连南 西藏 星子县 大埔区 靖宇县 盐亭县 达日县 海林市 女性 城固县 博罗县 锦屏县
国内 >

江诗丹顿_基于Orangpi Zero和Linux ALSA实现WIFI无线音箱(一)

标签:脾性 武汉棋牌游戏

作品已经完成,先上源码:

https://files.cnblogs.com/files/qzrzq1/WIFISpeaker.zip

全文包含三篇,这是第一篇,作为前言和概述。

第二篇:基于Orang天使之路_2018年最新新闻网pi Zero和Linux ALSA实现WIFI无线音箱(二)

第三篇:基于Orangpi Zero和Linux ALSA实现WIFI无线音箱(三)

以下是正文:

一、前言

  先说为什么要做这个作品。作者手头上有一闲置的蓝牙音箱,可恨的是笔记本电脑没有蓝牙功能,而USB口只有两个,即使买个蓝牙适配器也不够用USB口用,也不考虑用USB Hub,看着这么多线就让人觉得糟心。刚好还有一块OrangPi Zero,突发奇想,打算利用它和家里的WIFI无线网络实现无线音箱的功能。其实类似功能音箱某宝上也有,不过大部分都是打着云音箱、智能音箱的旗号,个人觉得这类音箱都有一个很大问题:只能播放网络音乐或者使用DLNA、Airplay等协议从手机或电脑推送音频,可是实际上很多浏览器、播放器并不支持DLNA或Airplay推送,这就很大的限制了这种音箱的使用范围。例如作者习惯使用Potplayer(不支持DLNA和Airplay)作为PC端的音乐播放器和视频播放器,这种情况下,这些智能音箱就完全没用了。另外,在安卓上也有一些类似的app,类似Soundwire、wifiaudio等,能实现电灵域_2018年最新新闻网脑声卡输出的音频实时录音并传输到安卓手机上,把手机充当wifi音箱,但在Linux环境上目前没发现类似软件。

二、硬件连接

  说干就干,先说硬件:OrangPi Zero硬件引出了音频接口,如下图所天才医生_2018年最新新闻网示。本作品直接使用耳机接口的LINEOUTR、LINEOUTL和GND引脚,分别代表左右声道,这样硬件环境就搭建好了。

  

三、软件运行环境

  发送端:Windows7,开发工具Visual Studio 2012,C++语言。根据微软MSDN,Core Audio APIs只支持Windows Vista以上操作系统,所以发送端软件也只能在Vista以上系统运行。

  接收端:Orangpi Zer诡案组_2018年最新新闻网o,运行Armbian 5.38,python3.5

四、系统原理图

  发送端和接收端通过底层socket进行数据的发送和接受。so29.6万买事故车_2018年最新新闻网cket意为套接字,是实现TCP/IP协议的一种最常用的方式,在各种编程环境下都有成熟的应用。了解网络通讯的人都知道,网络通讯最主要的两种通讯协议是TCP协议和UDP协议,以下是我对这两种协议的理解:

1、TCP协议是建立连接的通讯,是可靠的通讯,能保证发出去的数据包不丢失、不重复。

2、UDP协议是无连接的通讯,是不可靠的通讯,UDP尽最大努力保证数据可靠传输,但不保证一定能不出差错、不丢包。

  这两种通讯方式的优缺点也很明显,TCP要建立连接、麻烦、效率低,一般使用在对数据准确率要求高而实时性不高的情况。相反,UDP协议不建立连接,操作简单,不管对方能否收到,发送端都不停地发送,UDP协议在实时性要求比较高的场合非常合适,例如传输视频、音频数据时,一两帧数据丢失、拼团网_2018年最新新闻网错误并不会影响用户的体验。所以,在本作品中,使用UDP协议的socket接口进行网络通讯。系统框图如下所示:

  发送端原理看似较简单,但实际上作者花的最多的时间就在调试发送端上,在下一节将详细讲述发送端的原理和过程。以下是发送端和接收端运行界面:

当前文章:http://nmg6-liaojiede-com.denmotorcycle.cn/3mr13f/a1919_153165.html

发布时间:2019-10-18 11:22:39

澳门银河娱乐送彩金网站  2288银河主站线路检测  澳门银河2949所有网址  澳门银河真人yh163am.com  澳门银河娱乐官网下载  银河娱乐在线官方网址至少获7位省部级调研的公司  澳门银河娱乐送彩金网站雷军香港见李嘉诚 长和与小米达成合作  银河娱乐手机官网  澳门银河2949所有网址  澳门银河官网真人娱乐赵又廷蜡像入驻上海杜莎夫人蜡像馆  

相关文章
推荐图文
最热文章