本帖最后由 kjjuhfv 于 2023-12-3 21:38 编辑
前几天 大佬放出新玩法 https://bbs.hassbian.com/forum.p ... ypeid%26typeid%3D30我发现了squeezelite这个新玩意 折腾几天后成功接入ha
先说下必须条件
1 一个openwrt路由 不限构架 x86或者非x86都可以 (我的x86和一个mips的mt7620都成功了)
2 这个路由必须要有一个usb接口
3 一个免驱的usb声卡 (某宝价格10块钱以内)
=========================================================
开始前先说一下个人遇到的最大难点
那就是安装usb声卡的驱动和squeezelite
玩openwrt以来
我发现我几乎没能成功在openwrt上安装ipk
不是缺这个就是缺那个
最终只能找别人编译好的固件
后来知道了有在线编译才解决了这些问题
各位遇到安装不上的问题可以采用这个方法
地址 https://openwrt.ai/
这个网站免费版每天只可以编译一次 大家在决定前先考虑好要什么再开始编译
在定制软件包那里的后面
添加上这些
kmod-sound-core
kmod-usb-audio
squeezelite-full
alsa-utils
记得每个软件包之间加空格
===========================================================
开始
插上usb声卡 接上音响线 路由开机
使用ssh进入openwrt的后台
1 检查usb声卡是否正常
ls /dev 需要存在 dsp audio mixer 这三样
2 检测squeezelite服务是否运行
ps|grep squeeze
正常会显示下面这种信息
root@OpenWrt:~# ps|grep squeeze
21132 root 41832 S /usr/bin/squeezelite -n SqueezeWrt1 -M SqueezeLite -o hw:0,3 -a 200
28370 root 1124 S grep squeeze
3 查看声卡顺序
aplay -l
正常会显示出usb声卡的信息
root@OpenWrt:~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 9: HDMI 3 [HDMI 3]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Device [USB Audio Device], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
带有 USB Audio Device 的就是usb声卡了
记录下声卡的信息 card 1: Device [USB Audio Device], device 0: USB Audio [USB Audio]
4 编译squeezelite配置文件
vi /etc/config/squeezelite
config options 'options'
option name 'SqueezeWrt' # 这个是ha里面显示的名字
option model_name 'SqueezeLite'
option close_delay '0'
option priority '0'
option max_sr '0'
option device 'hw:0,0' #需要修改成usb声卡
option dsd_over_pcm '0'
option ircontrol '0'
option enabled '1'
注意修改的是 option device 'hw:0,0' 这一行
修改成第三步获取到的usb声卡的信息
hw:0,0 第一个0对应card 1 第二个0对应device 0
修改后就是
option device 'hw:1,0'
5 重启SqueezeLite并检查
/etc/init.d/squeezelite restart && ps|grep squeeze
root@OpenWrt:~# /etc/init.d/squeezelite restart && ps|grep squeeze
29849 root 35148 R /usr/bin/squeezelite -n SqueezeWrt1 -M SqueezeLite -o hw:1,0 -a 200:
29850 root 1252 R {squeezelite} /bin/sh /etc/rc.common /etc/init.d/squeezelite running
29852 root 1124 R grep squeeze
6 在ha添加squeezelite
配置--添加集成---SlimProto
添加完成后刷新几次网页 会自动发现squeezelite 可以愉快的使用了
7 默认音量可能会有点低的问题 可以使用alsamixer设置音量
在ssh输入alsamixer
进入alsamixer后按f6选择usb声卡
按左右选择接口 按上下调整音量 可以先播放一首歌再根据现场调整
据说有的usb声卡调整到最大可能会爆音
最后的一些感想
x86主机一般都自带极为先进的3.5mm音响接口
然而我折腾几天都没能驱动它们
期待有大佬可以解决这个问题
这样的话x86主机就可以省下另外购买usb声卡的费用
|