电子发烧友App

硬声App

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

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

3天内不再提示
创作
电子发烧友网>电子资料下载>电子资料>RPi Z2W USB声卡开源分享

RPi Z2W USB声卡开源分享

2023-06-13 | zip | 0.06 MB | 次下载 | 免费

资料介绍

描述

这个项目是我之前的 RPi Zero 2 W Audio Gadget 项目的延续

该项目的目标是将 RPi Zero 2 W 用作功能齐全的 DAC 和 DSP。这将通过使用 CamillaDSP 以及其他一些有用的软件将 Pi 上的 USB 捕获设备连接到 Allo miniBOSS DAC 来实现。CamillaDSP 的 DSP 功能不会真正涵盖,但本指南提供的基本配置可以很容易地扩展,以添加过滤器、混合器、处理管道等。基本配置也可以适用于其他输入/输出设备。

该项目还添加了从 USB 主机设备调整的音量和静音控制。在这种情况下,使用 Windows 计算机作为主机,可以使用 Windows 中的音量控制和静音按钮来调整 RPi 上的音量和静音。

本指南有一些假设:

  • 您遵循了上一个指南并拥有一个正常工作的 g_audio 设备
  • 您的用户名是“pi” :这可以更改,但您需要更改配置文件和 .service 文件中的每个“pi”实例
  • 您要用于 CamillaDSP websocket 的端口是“1234” :这也可以通过编辑各种配置文件和启动命令camilladsp.service以及 websocket 端口轻松更改usb-control.py
  • 您在 RPi 上运行内核 5.18-rc3 或更高版本:较旧的内核可能工作,但 5.18 包括对 g_audio 驱动程序的改进,并且根据我的测试,与以前的版本相比,Windows 主机的工作效果要好得多。

第 1 步:启用 Allo miniBOSS

首先,必须添加 Allo miniBOSS 作为叠加层:

sudo nano /boot/config.txt

更改dtparam=audio参数如下,禁用板载声卡:

dtparam=audio=off

然后将此行添加到文件末尾:

dtoverlay=allo-boss-dac-pcm512x-audio

现在重新启动您的 RPi 并检查 DAC 是否显示:

sudo reboot
aplay -l && arecord -l

输出应该与此类似:

pYYBAGSGd12AYOYkAABwInINuRc207.png
 

您可能拥有更多或更少的设备,具体取决于当前插入到您的 pi 的音频设备,但 BossDAC (pcm512x-hifi-0) 应该在播放设备列表中。

第 2 步:重新配置 g_audio

现在需要重新配置 UAC2 声卡。miniBOSS 是一个 384kHz/32 位 DAC,因此 USB 捕获设备将被设置为这样。为简单起见,仅使用一种采样率。在撰写本文时,CamillaDSP 无法轻松处理更改采样率。

为 g_audio 创建一个新的配置文件,以便在启动时读取。

sudo nano /etc/modprobe.d/g_audio.conf

然后将适当的设置添加到文件中:

options g_audio c_srate=384000 c_ssize=4 p_chmask=0 iProduct="RPi USB DAC"
  • c_srate- 以赫兹为单位的捕获采样率
  • c_ssize- 样本的大小(以字节为单位)
  • p_chmask- 将播放通道掩码设置为 0 禁用 USB 播放
  • iProduct- 描述设备的字符串

有关这些设置的作用的更多信息,请参阅我之前的指南。这些可用于进一步定制 USB 音频设备以满足您的需求。

如果您想测试它是否正常工作,请重新启动并检查当前加载的设置:

grep -H '' /sys/module/g_audio/parameters/*

第 3 步:设置 CamillaDSP

首先,安装依赖项:

sudo apt install alsa-utils python3 python3-pip python3-websocket python3-aiohttp python3-jsonschema python3-numpy python3-matplotlib unzip git -y

创建文件夹结构:

mkdir camilladsp
cd camilladsp
mkdir coeffs configs

注意:从现在开始,本指南假定您在目录中。~/camilladsp/

现在为此设备添加 CamillaDSP 配置文件:

wget https://raw.githubusercontent.com/Masonrf/RPi-Z2W-USB-Soundcard/main/camilladsp.yml -P configs

制作日志文件:

touch camilladsp.log

现在下载最新版本的 CamillaDSP。此命令取决于将在其上运行的设备的体系结构。

对于 64 位 RPi:

wget https://github.com/HEnquist/camilladsp/releases/latest/download/camilladsp-linux-aarch64.tar.gz

对于 32 位 RPi:

wget https://github.com/HEnquist/camilladsp/releases/latest/download/camilladsp-linux-armv7.tar.gz

提取压缩包:

tar -xvf camilladsp-linux-*.tar.gz

现在尝试启动 CamillaDSP:

./camilladsp -g-10 -p 1234 configs/camilladsp.yml

它应该(希望)在没有任何错误的情况下启动。如果您没有从主机播放任何音频,您可能会收到有关等待超时的警告:

poYBAGSGd1-AbN1oAACeZOcSsiQ184.png
 

如果您想做一些测试,但只需要错误,请将 start 命令更改为仅显示错误:

./camilladsp -g-10 -p 1234 configs/camilladsp.yml -l error

现在我们可以在启动时作为服务启动 CamillaDSP。

下载服务文件并在启动时启用它:

sudo wget https://raw.githubusercontent.com/Masonrf/RPi-Z2W-USB-Soundcard/main/camilladsp.service -P /lib/systemd/system
sudo systemctl enable camilladsp

确保你得到最后一行“创建的符号链接...”

pYYBAGSGd2OAccVtAAEZa9cU_IE247.png
 

第 4 步:设置 CamillaGUI 服务器

安装 pycamilladsp 及其绘图功能:

sudo git clone https://github.com/HEnquist/pycamilladsp
cd pycamilladsp
sudo pip3 install .
cd ..
sudo git clone https://github.com/HEnquist/pycamilladsp-plot
cd pycamilladsp-plot
sudo pip3 install .
cd ..

安装 camillagui:

wget https://github.com/HEnquist/camillagui-backend/releases/latest/download/camillagui.zip
unzip camillagui.zip -d camillagui

接下来,我们需要重新配置 camillagui:

nano ~/camilladsp/camillagui/config/camillagui.yml

更改camillaDSP 设备配置的路径default_configactive_config

default_config: "~/camilladsp/configs/camilladsp.yml"
active_config: "~/camilladsp/configs/camilladsp.yml"

现在将 CamillaGUI 添加为服务并在启动时启用:

sudo wget https://raw.githubusercontent.com/Masonrf/RPi-Z2W-USB-Soundcard/main/camillagui.service -P /lib/systemd/system
sudo systemctl enable camillagui

现在重新启动并进入http://(your pi ip):5000/您的浏览器

您应该会看到 CamillaDSP 的 gui 界面

poYBAGSGd2aACnS4AAC-aTDpdII879.png
 

如果没有,请检查服务是否处于活动状态:

sudo systemctl status camilladsp.service
sudo systemctl status camillagui.service
pYYBAGSGd2mAb9CjAAEv243Pemk266.png
 

如果您遇到任何问题,请直接向我发送有关 hackster 的消息。

第 5 步:添加主机音量控制/静音

最后一步是添加一个python程序,将主机发送的USB音量和静音控制信号连接到CamillaDSP。

安装依赖项:

sudo apt install libasound2-dev
pip install pyalsaaudio

下载python程序并测试它:

wget https://raw.githubusercontent.com/Masonrf/RPi-Z2W-USB-Soundcard/main/usb-control.py
python3 usb-control.py

当您更改主机音量和静音选择时,您应该会看到值发生变化。您还应该能够在 python 程序运行时听到更改,并且您可以通过 USB 连接播放声音。

pYYBAGSGd2yAZwiJAADOw44PH84967.png
 

现在将此功能添加为启动时的服务:

sudo wget https://raw.githubusercontent.com/Masonrf/RPi-Z2W-USB-Soundcard/main/usb-control.service -P /lib/systemd/system
sudo systemctl enable usb-control

最后,重新启动以使更改生效。

您现在应该可以从您的主机静音和更改音量了!


下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1使用单片机实现七人表决器的程序和仿真资料免费下载
  2. 2.96 MB   |  44次下载  |  免费
  3. 2Keysight B1500A 半导体器件分析仪用户手册、说明书 (中文)
  4. 19.00 MB  |  4次下载  |  免费
  5. 3BT134双向可控硅手册
  6. 1.74 MB   |  2次下载  |  1 积分
  7. 4一种新型高效率的服务器电源系统
  8. 0.85 MB   |  1次下载  |  1 积分
  9. 5PR735,使用UCC28060的600W交错式PFC转换器
  10. 540.03KB   |  1次下载  |  免费
  11. 6WTS-100(1.1) UWB 信标定位系统 彩页
  12. 540.48 KB  |  1次下载  |  免费
  13. 7DV2004S1/ES1/HS1快速充电开发系统
  14. 2.08MB   |  1次下载  |  免费
  15. 8MATLAB绘图合集
  16. 27.12 MB   |  1次下载  |  5 积分

本月

  1. 1使用单片机实现七人表决器的程序和仿真资料免费下载
  2. 2.96 MB   |  44次下载  |  免费
  3. 2UC3842/3/4/5电源管理芯片中文手册
  4. 1.75 MB   |  15次下载  |  免费
  5. 3DMT0660数字万用表产品说明书
  6. 0.70 MB   |  13次下载  |  免费
  7. 4ST7789V2单芯片控制器/驱动器英文手册
  8. 3.07 MB   |  11次下载  |  1 积分
  9. 5TPS54202H降压转换器评估模块用户指南
  10. 1.02MB   |  8次下载  |  免费
  11. 6STM32F101x8/STM32F101xB手册
  12. 1.69 MB   |  8次下载  |  1 积分
  13. 7TPS92682-Q1帧定义和示例
  14. 891.71KB   |  6次下载  |  免费
  15. 8HY12P65/HY12P66数字万用表芯片规格书
  16. 0.69 MB   |  6次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935119次下载  |  10 积分
  3. 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
  4. 1.48MB  |  420061次下载  |  10 积分
  5. 3Altium DXP2002下载入口
  6. 未知  |  233084次下载  |  10 积分
  7. 4电路仿真软件multisim 10.0免费下载
  8. 340992  |  191367次下载  |  10 积分
  9. 5十天学会AVR单片机与C语言视频教程 下载
  10. 158M  |  183335次下载  |  10 积分
  11. 6labview8.5下载
  12. 未知  |  81581次下载  |  10 积分
  13. 7Keil工具MDK-Arm免费下载
  14. 0.02 MB  |  73807次下载  |  10 积分
  15. 8LabVIEW 8.6下载
  16. 未知  |  65987次下载  |  10 积分