如何从音频插孔输出获得更好的音频质量


19

我已经阅读并体验到通过音频夹套播放的音乐(mp3等)效果不佳(在歌曲之间弹出声音)。这已经解决了吗,还是减少此问题的最佳方法(设置)是什么?


尝试新的实验性的音频固件:raspberrypi.org/forums/viewtopic.php?f=29&t=136445

在/boot/config.txt中设置audio_pwm_mode = 2可以解决我最近发行的发行版(2016-)中的问题
smarques

Answers:


12

这是一个已知的问题,你可以读到这里,看到了错误报告在这里

Broadcom VideoCore固件似乎存在问题,并且弹出是由启用和禁用音频时的电压跳变引起的。

当前没有解决该问题的方法,但是您可以通过连续播放音频来减轻它的影响,而不是在歌曲之间留缝隙。我之前发布ski522的同一论坛主题中提供了执行此操作的脚本。

创建一个shell脚本:

sudo nano mpgapless.sh

然后将以下内容输入到shell脚本中。

#!/bin/bash
# mpgapless

case "$@" in
   *.m3u) PL="-playlist"
   ;;
esac
rm /tmp/audiofifo
mkfifo /tmp/audiofifo
aplay -t raw -c 2 -f S16_LE -r 48000 /tmp/audiofifo &> \
/tmp/aplayfifo.log & mplayer -noconfig all -nolirc -nojoystick \
-novideo -benchmark -vc null -vo null -ao pcm:fast -af resample=48000 -nocache \
-ao pcm:nowaveheader:file=/tmp/audiofifo $PL "$@"

使文件可执行:

chmod 555 ./mpgapless.sh

如果您有音乐文件目录,则可以按以下方式使用它:

./mpgapless.sh *

此脚本的全部功劳都归功于ski522


1
您也可以通过使用USB音频适配器来解决此问题。
TomG

5

我放弃了集成音频插孔,对此感到很高兴。我花了几美元买了以下USB音频接口:

http://www.amazon.com/dp/B001MSS6CS/ref=pe_175190_21431760_3p_M3T1_ST1_dp_1

这样一来,Pi就能完成其擅长的工作(发射数字数据),并将D / A转换留给接口。听起来不错。这是我如何使其工作的方法:

  1. 编辑 /etc/modprobe.d/alsa-base.conf

  2. 注释掉以下行/etc/modprobe.d/alsa-base.conf(不加注释,我认为它为USB声卡提供了成为默认声音设备的最低优先级)options snd-usb-audio index=-2

参考:http : //forums.linuxmint.com/viewtopic.php?f=48&t=95337

唯一的缺点是增加了加密狗的体积,并且丢失了USB端口。


3

弹出问题现已修复,但您需要升级Raspberry Pi的固件才能利用此修复程序。我在运行Linux raspberrypi 3.6.11+#399(2013-02-09-wheezy-raspbian)的全新Pi上遇到了这个问题。如上所述,这是音频弹出声音问题的历史记录:

这是我用来了解如何更新Pi固件的网站:

对于不熟悉Bash中“ &&”语法的用户,可以使用以下特定命令来更新Pi(请注意sudo前缀以确保命令以root特权运行)。

更新到最新版本的Raspbian OS:

sudo apt-get update
sudo apt-get upgrade

安装git版本控制系统:

sudo apt-get install git

安装Hexxeh的rpi-update固件更新脚本:

sudo wget http://goo.gl/1BOfJ -O /usr/bin/rpi-update
sudo sudo chmod +x /usr/bin/rpi-update

运行固件更新过程,然后重新引导:

sudo rpi-update
sudo shutdown -r now

之后,我的Pi在播放音频文件之前和之后都不再单击。重新启动并再次登录后,请使用以下命令在您的Pi上尝试:

omxplayer /usr/share/scratch/Media/Sounds/Vocals/Hey-yay-hey.mp3 

1

看来您可以使用脉冲音频,然后在音频中没有活动之间禁用睡眠。(在/etc/pulse/default.pa中禁用一行)。它应该可以解决音频弹出问题。



0

除了解决这些问题外,您还提到。通常,Pi的音频质量很差。

我认为最好使用USB声卡或类似其中之一的 GPIO头声卡。原因是它们使用的音频编解码器比Pi使用的脉冲宽度调制(PWM)策略线性得多。这种线性意味着更好的声音质量。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.