环境:安装ubuntu20.04,在安装过程中需要输入用户名,输入用户名为admin,安装完成后,以admin登录,在设置----声音----输出里面可以看到HDMI输出口(耳机是插在显示器后面)
关机重启以root用户名登录(配置root密码、ssh等略过),在设置----声音----输出未发现HDMI相关信息
解决办法:
第一种.以命令行播放
aplay -D plughw:0,3 /opt/THANKS_EN.wav
第二种:调用pulseaudio
第一步:编辑文件,将Element的任何实例 从switch = off更改为switch = on
gedit /usr/share/pulseaudio/alsa-mixer/paths/analog-output-lineout.conf
然后设置后如下
# This file is part of PulseAudio.
#
# PulseAudio is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as
# published by the Free Software Foundation; either version 2.1 of the
# License, or (at your option) any later version.
#
# PulseAudio is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
[General]
priority = 90
description-key = analog-output-lineout
[Jack Line Out]
required-any = any
[Jack Line Out Phantom]
state.plugged = unknown
state.unplugged = unknown
required-any = any
[Jack Front Line Out]
required-any = any
[Jack Front Line Out Phantom]
state.plugged = unknown
state.unplugged = unknown
required-any = any
[Jack Rear Line Out]
required-any = any
[Jack Rear Line Out Phantom]
state.plugged = unknown
state.unplugged = unknown
required-any = any
[Jack Line Out Front]
required-any = any
[Jack Line Out Front Phantom]
state.plugged = unknown
state.unplugged = unknown
required-any = any
[Jack Line Out CLFE]
state.plugged = unknown
state.unplugged = unknown
required-any = any
[Jack Line Out CLFE Phantom]
state.plugged = unknown
state.unplugged = unknown
required-any = any
[Jack Line Out Surround]
state.plugged = unknown
state.unplugged = unknown
required-any = any
[Jack Line Out Surround Phantom]
state.plugged = unknown
state.unplugged = unknown
required-any = any
[Jack Line Out Side]
state.plugged = unknown
state.unplugged = unknown
required-any = any
[Jack Line Out Side Phantom]
state.plugged = unknown
state.unplugged = unknown
required-any = any
[Jack Dock Line Out]
required-any = any
[Jack Dock Line Out Phantom]
state.plugged = unknown
state.unplugged = unknown
required-any = any
[Element Hardware Master]
switch = mute
volume = merge
override-map.1 = all
override-map.2 = all-left,all-right
[Element Master]
switch = mute
volume = merge
override-map.1 = all
override-map.2 = all-left,all-right
[Element Speaker+LO]
switch = mute
volume = merge
override-map.1 = all
override-map.2 = all-left,all-right
required-any = any
[Element Headphone+LO]
switch = mute
volume = merge
override-map.1 = all
override-map.2 = all-left,all-right
required-any = any
[Element Master Mono]
switch = on
volume = on
[Element Line HP Swap]
switch = on
required-any = any
; This profile path is intended to control line out, let's mute headphones
; else there will be a spike when plugging in headphones
[Element Headphone]
switch = on
volume = on
[Element Headphone2]
switch = on
volume = on
[Element Speaker]
switch = on
volume = on
[Element Desktop Speaker]
switch = on
volume = on
[Element Front]
switch = mute
volume = merge
override-map.1 = all-front
override-map.2 = front-left,front-right
[Element Rear]
switch = mute
volume = merge
override-map.1 = all-rear
override-map.2 = rear-left,rear-right
[Element Surround]
switch = mute
volume = merge
override-map.1 = all-rear
override-map.2 = rear-left,rear-right
[Element Side]
switch = mute
volume = merge
override-map.1 = all-side
override-map.2 = side-left,side-right
[Element Center]
switch = mute
volume = merge
override-map.1 = all-center
override-map.2 = all-center,all-center
[Element LFE]
switch = mute
volume = merge
override-map.1 = lfe
override-map.2 = lfe,lfe
[Element CLFE]
switch = mute
volume = merge
override-map.1 = all-center
override-map.2 = all-center,lfe
[Element Bass Speaker]
switch = on
volume = on
[Element Speaker Front]
switch = on
volume = on
[Element Speaker Surround]
switch = on
volume = on
[Element Speaker Side]
switch = on
volume = on
[Element Speaker CLFE]
switch = on
volume = on
.include analog-output.conf.common
第二步:登录root后,安装pulseaudio:
sudo apt update
sudo apt-get install pulseaudio
snap install pulseaudio
sudo apt install pavucontrol
reboot
第三步:启动pulseaudio
直接输入:
pulseaudio
在设置----声音----输出 就可以看到HDMI了(如图1所示)。
声音没有启动的解决:
systemctl --user enable pulseaudio && systemctl --user start pulseaudio
切换HDMI输出音频或本地输出音频
HDMI1输出命令:
pactl set-card-profile 0 "output:hdmi-stereo+input:analog-stereo"
或:
pacmd set-card-profile 0 "output:hdmi-stereo+input:analog-stereo"
或
sudo -u root pactl set-card-profile 0 output:hdmi-stereo+input:analog-stereo
HDMI2输出命令:
pactl set-card-profile 0 "output:hdmi-stereo-extra1+input:analog-stereo"
或
pacmd set-card-profile 0 "output:hdmi-stereo-extra1+input:analog-stereo"
或
sudo -u root pactl set-card-profile 0 output:hdmi-stereo-extra1+input:analog-stereo
本地输出音频:
pactl set-card-profile 0 "output:analog-stereo+input:analog-stereo"
或
pacmd set-card-profile 0 "output:analog-stereo+input:analog-stereo"
或
sudo -u root pactl set-card-profile 0 output:analog-stereo+input:analog-stereo
如果设置后本地没有声音,可以Ctl+alt+f4打开命令模式,输入alsamixer,
打开speaker和S/PDIF,然后esc退出,重启