【硬创邦】跟hoowa学做智能路由(十二):网络音箱之声卡驱动

简介:
   题记:忽闻水上琵琶声,主人忘归客不发。转轴拨弦三两声,未成曲调先有情。

对于大多数年轻的女性来说,她们最关心的是生活和自己的男人。男人应该更多的关系自己身边的女人,人生是苦比乐多的,因此要乐观的面对自己好好的对家人。尤其是IT男们,不要因为只顾自娱自乐的这种自私而忽略了身边人。为什么不为你的女朋友准备一台网络音箱?在她繁忙工作下班回来,可以一边开心的听音乐一边给你烧菜呢?

从这章开始我们将花费一些时间介绍下使用路由器实现网络音箱的功能,这些功能都有一个特点"只需要软件包修改和配置",在不需要接触嵌入式编程的情况下即可实现。"网络音箱"一共有四章,其中包括安卓播放器,苹果播放器,DLNA媒体播放器。

与此相关的存储和电流

这章我们要介绍关于播放了,请调整好你的存储器,如果你只使用系统内部的FLASH作为存储器,那么作为媒体设备显然容量就太小了,所以建议开始启用外部存储器。

电流方面,我们采用的是USB外置设备方式实现的播放,这种情况下对电流要求会增大。在M150的开发板上,如果你接入了外置硬盘那一定要给硬盘提供独立的供电。否则建议使用TF卡。

存储与播放的关系:

存储器类型 优势 缺点 补救
内部SPI FLASH 不用外接设备 容量不够 接个设备
TF卡 供电要求低 写速度慢 凑合能用也可以
USB硬盘 写速度快 供电不足 外接电源

播放实现原理

在M150上实现播放音乐主要依靠这么几点实现的:

  1. 具备USB总线,可以驱动我们x86电脑常用的声卡。
  2. 一大部分普通声卡在Linux下都支持ALSA和OSS两个驱动框架,可以不用自己编译驱动,只需要在内核里启用即可。
  3. OpenWRT下具备了一大批关于音乐播放的软件库,即使本文也只介绍了其中一小部分而已。

声卡驱动产生/dev/下的设备,而播放软件将MP3音乐文件转换成为PCM码流送入驱动,驱动处理后导入声卡芯片中实现音乐播放。

选择声卡和音箱

跟设备首先连接的是声卡,支持标准驱动的声卡芯片非常繁多,而且有很多价格也很便宜。但是在购买的时候很难知道是否支持标准驱动,而卖声卡的也不知道什么芯片的他们也不懂,所以讲芯片没有用,所以hoowa给大家一个这么建议如何选择到可以用的。

而如果你的房间不大,或是并不追求HIFI音质,那么而市面上还有很多带声卡的音箱,便宜的10几块钱,好一点的要100左右也是可以选择的,不过要注意这些音箱的供电问题啊。

如果你是现场购买,那么将你的M150开发板带过去测试一下,这个是最靠谱的;如果你是在淘宝上购买的,那么就问下卖家声卡是否支持“Windows XP即插即用无需驱动”。

所以, 选择一个合适的声卡其实挺重要的。

安装声卡驱动

现在我们开始具体操作了,确保你的开发板连接外网正常。

第一步:首先安装驱动和软件包

root@SmartRouter:/# opkg update
root@SmartRouter:/# opkg install kmod-usb-audio
root@SmartRouter:/# opkg install alsa-utils

第二步:插入声卡。因为在工作状态下插入你的声卡如果供电有问题会导致USB HUB重启,这个时候可能外置磁盘就异常系统崩溃了。

关闭掉设备电源
插入声卡设备
再开启电源

第三步:测试声卡是否识别并且驱动

在没有插入任何外置USB设备的时候,lsusb看起来是这样:

root@SmartRouter:/# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 058f:6254 Alcor Micro Corp. USB Hub
Bus 001 Device 005: ID 058f:6366 Alcor Micro Corp. Multi Flash Reader

当插入USB设备的时候,会多出来一个设备,hoowa的这个声卡看起来是这样:

root@SmartRouter:/# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 058f:6254 Alcor Micro Corp. USB Hub
Bus 001 Device 005: ID 058f:6366 Alcor Micro Corp. Multi Flash Reader
Bus 001 Device 006: ID 19a8:2036 Biforst Technology Inc.

查看声卡的设备驱动符号是否创建,这个标准用来识别声卡是否被驱动:

root@SmartRouter:/# ls /dev/dsp
root@SmartRouter:/# ls /dev/audio
root@SmartRouter:/# ls /dev/mixer

如果以上信息都正确,那么恭喜你安装声卡成功了。

第四步:设置音量

默认音量比较大,可能首次播放会吓到我们。写个默认音量程序吧。

使用vi编辑器编辑/etc/rc.local文件。在exit 0的前面增加这句:amixer set PCM 35%

修改后的rc.local文件内容如下:

第五步:重启。设置全都完毕了现在要重启下让第四步的配置生效。

root@SmartRouter:/# reboot

测试播放音乐

第一步:安装一个madplay作为测试播放器

root@SmartRouter:/# update
root@SmartRouter:/# opkg install madplay

第二步:复制一个MP3过来

将你电脑里一个mp3文件更名为test.mp3并且复制到/mnt/extdisk下面。

第三步:测试播放

root@SmartRouter:/# madplay /mnt/extdisk/test.mp3

如果听到音乐说明测试成功,这个时候通过键盘组合键ctrl+c停止测试。

#测试播放
mkdir -p /mnt/extdisk/music
chmod -R 777 /mnt/extdisk/music
root@SmartRouter:/# amixer set PCM 35%

复制以个音乐文件到music下:

root@SmartRouter:/# madplay /mnt/extdisk/music/*.mp3

如果音箱能听到音乐说明测试成功,退出按键盘组合键Ctrl+c停止播放

章节结尾

到这里,声卡和驱动我们就完成了,并且已经测试成功了,下一章我们将介绍使用安卓系统下的一款MPDroid软件实现手机控制播放。到这里,大家还可以自己玩玩,用命令行播放下音乐看看。

  
  
 
  本文作者: 孙冰

本文转自雷锋网禁止二次转载, 原文链接
目录
相关文章
|
14天前
|
机器学习/深度学习 数据采集 人工智能
未来的守护神:AI驱动的网络安全之盾,如何用智慧的光芒驱散网络黑暗势力?揭秘高科技防御系统背后的惊天秘密!
【10月更文挑战第3天】随着网络技术的发展,网络安全问题日益严峻,传统防御手段已显不足。本文探讨了构建AI驱动的自适应网络安全防御系统的必要性及其关键环节:数据采集、行为分析、威胁识别、响应决策和执行。通过Python库(如scapy、scikit-learn和TensorFlow)的应用实例,展示了如何利用AI技术提升网络安全防护水平。这种系统能够实时监控、智能分析并自动化响应,显著提高防护效率与准确性,为数字世界提供更强大的安全保障。
34 2
|
7天前
|
存储 安全 5G
|
12天前
|
网络协议 网络虚拟化 网络架构
【网络实验】/主机/路由器/交换机/网关/路由协议/RIP+OSPF/DHCP(上)
【网络实验】/主机/路由器/交换机/网关/路由协议/RIP+OSPF/DHCP(上)
34 1
|
29天前
|
机器学习/深度学习 数据采集 网络安全
使用Python实现深度学习模型:智能网络安全威胁检测
使用Python实现深度学习模型:智能网络安全威胁检测
106 5
|
1月前
|
5G 网络安全 SDN
网络功能虚拟化(NFV)和软件定义网络(SDN):赋能5G网络灵活、智能演进的关键
网络功能虚拟化(NFV)和软件定义网络(SDN):赋能5G网络灵活、智能演进的关键
54 3
|
1月前
|
传感器 物联网 人机交互
物联网:物联网,作为新一代信息技术的重要组成部分,通过智能感知、识别技术与普适计算等通信感知技术,将各种信息传感设备与互联网结合起来而形成的一个巨大网络,实现了物物相连、人物相连,开启了万物互联的新时代。
在21世纪,物联网(IoT)作为新一代信息技术的核心,正以前所未有的速度重塑生活、工作和社会结构。本文首先介绍了物联网的概念及其在各领域的广泛应用,强调其技术融合性、广泛的应用范围以及数据驱动的特点。接着,详细阐述了物联网行业的现状和发展趋势,包括政策支持、关键技术突破和应用场景深化。此外,还探讨了物联网面临的挑战与机遇,并展望了其未来在技术创新和模式创新方面的潜力。物联网行业正以其独特魅力引领科技发展潮流,有望成为推动全球经济发展的新引擎。
|
12天前
|
网络协议 数据安全/隐私保护 网络虚拟化
【网络实验】/主机/路由器/交换机/网关/路由协议/RIP+OSPF/DHCP(下)
【网络实验】/主机/路由器/交换机/网关/路由协议/RIP+OSPF/DHCP(下)
33 0
|
12天前
|
网络架构
【第二期】计算机网络常识(端口/网段/路由)
【第二期】计算机网络常识(端口/网段/路由)
28 0
|
11天前
|
安全 网络安全 数据安全/隐私保护
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【10月更文挑战第6天】在数字化时代,网络安全和信息安全已成为我们生活中不可或缺的一部分。本文将探讨网络安全漏洞、加密技术和安全意识等方面的内容,以帮助读者更好地了解这些主题,并采取适当的措施保护自己的信息安全。我们将通过代码示例来演示一些常见的安全漏洞,并提供解决方案。最后,我们将强调培养良好的安全意识对于维护个人和组织的信息安全的重要性。
|
8天前
|
安全 网络安全 数据安全/隐私保护
网络安全与信息安全:守护数字世界的坚盾
在数字化浪潮中,网络安全已成为维系现代社会正常运转的关键。本文旨在探讨网络安全漏洞的成因、加密技术的应用及安全意识的提升,以期为广大用户和技术人员提供实用的知识分享。通过对这些方面的深入剖析,我们期望能够共同构建一个更加安全可靠的数字环境。