通过板载耳机插孔使用 ALSA + Jackd2 时,Raspberry Pi 3 A+ 音频失真/尖叫

Posted

技术标签:

【中文标题】通过板载耳机插孔使用 ALSA + Jackd2 时,Raspberry Pi 3 A+ 音频失真/尖叫【英文标题】:Raspberry Pi 3 A+ distorted/screeching audio when using ALSA + Jackd2 through on-board headphone jack 【发布时间】:2021-04-21 13:23:04 【问题描述】:

我正在尝试使用this guide 在 Raspbian Lite 上的 Raspberry Pi 3 A+ 上设置 Supercollider。 Jackd2 和 Supercollider 都编译得很好,当我尝试运行 Supercollider 或 jack_simple_client 测试时没有错误。但是,无论在启动插孔服务器时使用不同的采样率、缓冲区大小、周期数等,音频总是会出现严重失真,伴随着响亮的高音尖啸和低爆音。

使用 ALSA 中的 speaker-test 命令可创建干净、不失真的测试音。如果我使用 Jack,以前尝试将 pyo 作为 DSP 模块也会遇到同样的问题,但否则会正常工作。这让我相信 Jack 和 ALSA 之间的通信存在一些问题。电源可能也不是问题。我安装的千斤顶版本是 1.9.17,ALSA 是 k5.4.83-v7+。我是使用 Linux 音频/Jack 的新手,非常感谢任何帮助!

【问题讨论】:

【参考方案1】:

我会尝试的事情:

    试试jack2

    获取一张新的 SD 卡,并使用 raspbian 附带的千斤顶版本,然后尝试重新构建或尝试通过 apt 获取 SuperCollider。

sudo apt-get install cmake libasound2-dev libsamplerate0-dev libsndfile1-dev libavahi-client-dev libicu-dev libreadline-dev libfftw3-dev libxt-dev libcwiid1 libcwiid-dev subversion libqt4-dev libqtwebkit-dev libjack-jackd2-dev
    检查 HDMI 端口或 USB 音频适配器或帽子的声音。无论如何,树莓派上的耳机插孔往往听起来很糟糕,所以如果其他方法有效,那就是你的答案。

【讨论】:

谢谢,刚刚从 raspiaudio 买了一顶完美运行的 DAC 帽子。耳机插孔一定有问题,奇怪的是某些音频可以工作,但插孔不会【参考方案2】:

大约 4 年前我一直在与 Alsa 合作,但请记住我遇到了问题。

首先我以为是我的设备造成的,结果发现噪音来自错误的频道,我不得不使用 cli 命令手动强制设置 alsa 频道,然后在配置文件中。

当 Jack 起床时,尝试检查 alsa 是否分配了错误的频道。

【讨论】:

以上是关于通过板载耳机插孔使用 ALSA + Jackd2 时,Raspberry Pi 3 A+ 音频失真/尖叫的主要内容,如果未能解决你的问题,请参考以下文章

通过耳机插孔(适配器?)

通过 Android 手机中的耳机插孔发送数据

耳机/麦克风插孔的带宽

耳机电话插孔信用卡刷卡与浏览器应用程序

在 iOS 中使用耳机插孔引脚同时播放和录制音频?

iOS 通过插孔端口捕获音频