ubutnu18.04/20.04 接入HDMI显示器后,在 root用户下不能播放声音之解决方案

环境:安装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退出,重启

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值