如何让我的笔记本电脑扬声器工作?

Vru*_*Nix 5 sound alsa 12.04

我的笔记本电脑是运行 Ubuntu 12.04 的 Toshiba Satellite A215-S7422。命令

cat /proc/asound/card0/codec#* | grep Codec

给出结果

Codec: LSI ID 1040
Codec: Realtek ALC268
Run Code Online (Sandbox Code Playgroud)

我的耳机可以用,但扬声器不行。我在 /etc/modprobe.d/alsa-base 中尝试了几种不同的模型选项,但我不确定我是否得到了正确的选择,因为我无法弄清楚如何在 Alsa 文档中找到我的声卡。我已经按照此处的建议下载并编译了最新的 alsa 驱动程序。当耳机未插入时,声音首选项屏幕会显示扬声器,它会适当地在耳机之间切换,因此系统似乎可以很好地识别内部声卡和扬声器。系统通知栏或 alsamixer 中的扬声器未静音。我还应该做什么来排除故障/修复问题?

如果 alsa 不是最简单的方法,我愿意接受让我的扬声器工作同时保持耳机插孔功能的答案。

dav*_*id6 0

用于Ubuntu 10.04(2010 年 7 月)


声音:内置扬声器(桌面、单声道)

查找“主”标签:(对于卡 0,或更改为 1、2 等)

amixer -c 0 | grep Master
Run Code Online (Sandbox Code Playgroud)

(寻找“单声道”控制,用于内部扬声器)

简单的混音器控制'Master',0

简单的混音器控制'Master Mono',0

读回设置:(使用之前的标签)

amixer -c 0 sget 'Master Mono',0
Run Code Online (Sandbox Code Playgroud)

简单的混音器控制“Master Mono”,0 功能:pvolume

pvolume-joined pswitch pswitch-joined penum 播放通道:单声道

限制:播放 0 - 31 单声道:播放 0 [0%] [-46.50dB] [关闭]

设置为启用中性增益:(例如+-0dB)(注意: “0dB”区分大小写!)

amixer -c 0 sset 'Master Mono',0 0dB,0dB unmute
Run Code Online (Sandbox Code Playgroud)

验证设置:(可选,但推荐)

amixer -c 0 sget 'Master Mono',0
Run Code Online (Sandbox Code Playgroud)

简单的混音器控制“Master Mono”,0 功能:pvolume

pvolume-joined pswitch pswitch-joined penum 播放通道:单声道

限制:播放 0 - 31 单声道:播放 31 [100%] [0.00dB] [on]

保存设置:(非易失性)

sudo alsactl store
Run Code Online (Sandbox Code Playgroud)

更新

找到正确的标签(针对左/右内置扬声器):

amixer -c 0 | grep Simple
Run Code Online (Sandbox Code Playgroud)

例如(在我的桌面上,Ubuntu 12.04 LTS)

Simple mixer control 'Master',0
Simple mixer control 'Headphone',0
Simple mixer control 'Speaker',0
Simple mixer control 'PCM',0
Simple mixer control 'Line',0
Simple mixer control 'Mic',0
Simple mixer control 'Mic Boost',0
Simple mixer control 'Capture',0
Simple mixer control 'Capture',1
Simple mixer control 'Auto-Mute Mode',0
Simple mixer control 'Input Source',0
Simple mixer control 'Input Source',1
Run Code Online (Sandbox Code Playgroud)


小智 0

转到声音设置并将输出更改为内置扬声器。每次连接时,您都必须将其改回耳机。我正在尝试想出一个永久的解决方案,但这暂时对我有用。