OrangePiPC2 升级 Armbian 后无法发声的解决方案

发布于 2023-02-05 00:15:01 字数 2585 浏览 94 评论 0

症状

某一次在对 OrangePiPC2 进行系统升级后,提示内核已更新,需要进行重启。然而在重启后发现播放音乐不再有声音了。

排查过程

1、怀疑是不是音量被调成0了,因此运行 alsamixer,发现提示 This sound device does not have any controls.

screenshot-01.png

2、注意到现在这张声卡是 hdmi 的,按下 F6 选择其他声卡,可以发现还有一张 H3 Audio Codec 声卡

screenshot-02.png

3、而选择 H3 Audio Codec 声卡可以看到熟悉的音量控制界面

screenshot-03.png

3、大致可以推测出,由于我的音响是接到 H3 Audio Codec 上的,而 alsa 默认声卡变成了 hdmi 从而导致了播放音乐没有声音

4、将 ALSA 默认声卡修改为 H3 Audio Codec,步骤为:

查看声卡极其对应的编号

cat /proc/asound/cards
echo 或者
aplay -l | awk -F \: '/,/{print $2}' | awk '{print $1}' | uniq
 0 [allwinnerhdmi  ]: allwinner_hdmi - allwinner,hdmi
                      allwinner,hdmi
 1 [Codec          ]: H3_Audio_Codec - H3 Audio Codec
                      H3 Audio Codec
或者
allwinnerhdmi
Codec

可以看到我想要的默认声卡名为 Codec,其编号为1,那么创建文件 /etc/asound.conf 填入下面内容

pcm.!default {
    type hw
    card 1
}

ctl.!default {
    type hw           
    card 1
}

其中的 1 就是声卡对应的编号,再次播放音乐,就可以正常发声了。

另一种解决方法

其实还有另一种解决方法就是控制声卡module的载入顺序,让 H3 Audio Codec 声卡成为第一顺位的声卡就行了. 方法如下:

1、查看加载的声卡驱动

lsmod |grep snd
snd_soc_hdmi_codec     16384  1
snd_soc_simple_card    16384  0
snd_soc_simple_card_utils    16384  1 snd_soc_simple_card
snd_soc_core          155648  6 sun4i_i2s,sun8i_codec_analog,snd_soc_hdmi_codec,sun4i_codec,snd_soc_simple_card_utils,snd_soc_simple_card
snd_pcm_dmaengine      16384  1 snd_soc_core
snd_pcm               106496  4 sun4i_i2s,snd_soc_hdmi_codec,snd_soc_core,snd_pcm_dmaengine
snd_timer              32768  1 snd_pcm

你会发现查出来了好多 module,但只有两个 module 是不被别人引用的:snd_soc_hdmi_codecsnd_soc_simple_card.

可以推测出 snd_soc_hdmi_codec 对应的是 hdmi 声卡, snd_soc_simple_card 对应的是 H3 Audio Codec 声卡

2、创建 /etc/modprobe.d/alsa-base.conf 文件,填入下面内容

options snd_soc_hdmi_codec index=-1
options snd_soc_simple_card index=-2

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

尾戒

暂无简介

文章
评论
27 人气
更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文