首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >也许是宏碁Swift 3 [Realtek ALC256]上声音问题的一个解决方案?

也许是宏碁Swift 3 [Realtek ALC256]上声音问题的一个解决方案?
EN

Ask Ubuntu用户
提问于 2021-10-29 10:50:07
回答 1查看 1.2K关注 0票数 2

众所周知,宏碁Swift 3,以及一般使用Realtek 256音箱的设备,对扬声器、耳机和内部麦克风都有问题。

不过,我是来找你帮忙的,也许,我想找个解决办法。

我和我的一个朋友有一台笔记本电脑:在他的笔记本上的扬声器,耳机,特别是内部麦克风工作!唯一的问题是,当耳机插入时,必须手动选择耳机输出,而不是扬声器输出。

在我的笔记本电脑中,情况完全不同:最初我只有‘虚拟输出’作为输出设备,而空白作为输入设备。然后,添加了options snd-hda-intel model = genericoptions snd-hda-intel dmic_detected = 0,我终于能够看到Seaker,耳机和内部麦克风,但没有工作。只有从蓝牙设备我可以听到声音,但内部扬声器,千斤顶耳机和内部麦克风不工作!当然,我用alsamixerpavucontrolhdajackretask尝试了很多东西,至少可以让演讲者工作,但没有成功。

我们都在运行Ubuntu 20。

我不是Linux专家,但我尝试搜索这两种设备的不同之处。我发现了pacmd list-cards输出和Alsamixer的不同之处。N

在工作装置上,pacmd list-cards的输出是

代码语言:javascript
运行
复制
    index: 0
    name: <alsa_card.pci-0000_00_1f.3-platform-skl_hda_dsp_generic>
    driver: <module-alsa-card.c>
    owner module: 23
    properties:
        alsa.card = "0"
        alsa.card_name = "sof-hda-dsp"
        alsa.long_card_name = "sof-hda-dsp"
        alsa.driver_name = "snd_soc_skl_hda_dsp"
        device.bus_path = "pci-0000:00:1f.3-platform-skl_hda_dsp_generic"
        sysfs.path = "/devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0"
        device.bus = "pci"
        device.vendor.id = "8086"
        device.vendor.name = "Intel Corporation"
        device.product.id = "9dc8"
        device.product.name = "Cannon Point-LP High Definition Audio Controller"
        device.string = "0"
        device.description = "Cannon Point-LP High Definition Audio Controller"
        module-udev-detect.discovered = "1"
        device.icon_name = "audio-card-pci"
    profiles:
        HiFi: Play HiFi quality Music (priority 40768, available: unknown)
        off: Spento (priority 0, available: unknown)
    active profile: <HiFi>
    sinks:
        alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp_5__sink/#1: Cannon Point-LP High Definition Audio Controller HDMI3/DP3 Output
        alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp_4__sink/#2: Cannon Point-LP High Definition Audio Controller HDMI2/DP2 Output
        alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp_3__sink/#3: Cannon Point-LP High Definition Audio Controller HDMI1/DP1 Output
        alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp__sink/#4: Cannon Point-LP High Definition Audio Controller Speaker + Headphones
    sources:
        alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp_5__sink.monitor/#1: Monitor of Cannon Point-LP High Definition Audio Controller HDMI3/DP3 Output
        alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp_4__sink.monitor/#2: Monitor of Cannon Point-LP High Definition Audio Controller HDMI2/DP2 Output
        alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp_3__sink.monitor/#3: Monitor of Cannon Point-LP High Definition Audio Controller HDMI1/DP1 Output
        alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp__sink.monitor/#4: Monitor of Cannon Point-LP High Definition Audio Controller Speaker + Headphones
        alsa_input.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp__source/#5: Cannon Point-LP High Definition Audio Controller Headphones Stereo Microphone
        alsa_input.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp_6__source/#6: Cannon Point-LP High Definition Audio Controller Digital Microphone
    ports:
        [Out] HDMI3: HDMI3/DP3 Output (priority 700, latency offset 0 usec, available: no)
            properties:
                
        [Out] HDMI2: HDMI2/DP2 Output (priority 600, latency offset 0 usec, available: no)
            properties:
                
        [Out] HDMI1: HDMI1/DP1 Output (priority 500, latency offset 0 usec, available: no)
            properties:
                
        [Out] Speaker: Speaker (priority 100, latency offset 0 usec, available: unknown)
            properties:
                
        [Out] Headphones: Headphones (priority 200, latency offset 0 usec, available: unknown)
            properties:
                
        [In] Mic2: Headphones Stereo Microphone (priority 200, latency offset 0 usec, available: unknown)
            properties:
                
        [In] Mic1: Digital Microphone (priority 100, latency offset 0 usec, available: unknown)
            properties:

在没有工作的设备上,这样的输出是:

代码语言:javascript
运行
复制
    index: 0
    name: <alsa_card.pci-0000_00_1f.3>
    driver: <module-alsa-card.c>
    owner module: 23
    properties:
        alsa.card = "0"
        alsa.card_name = "HDA Intel PCH"
        alsa.long_card_name = "HDA Intel PCH at 0xb1128000 irq 129"
        alsa.driver_name = "snd_hda_intel"
        device.bus_path = "pci-0000:00:1f.3"
        sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0"
        device.bus = "pci"
        device.vendor.id = "8086"
        device.vendor.name = "Intel Corporation"
        device.product.id = "9d71"
        device.product.name = "Sunrise Point-LP HD Audio"
        device.form_factor = "internal"
        device.string = "0"
        device.description = "Built-in Audio"
        module-udev-detect.discovered = "1"
        device.icon_name = "audio-card-pci"
    profiles:
        input:analog-stereo: Analog Stereo Input (priority 32833, available: unknown)
        output:analog-stereo: Analog Stereo Output (priority 39268, available: unknown)
        output:analog-stereo+input:analog-stereo: Analog Stereo Duplex (priority 39333, available: unknown)
        output:hdmi-stereo: Digital Stereo (HDMI) Output (priority 38668, available: unknown)
        output:hdmi-stereo+input:analog-stereo: Digital Stereo (HDMI) Output + Analog Stereo Input (priority 38733, available: unknown)
        off: Off (priority 0, available: unknown)
    active profile: <output:analog-stereo+input:analog-stereo>
    sinks:
        alsa_output.pci-0000_00_1f.3.analog-stereo/#1: Built-in Audio Analog Stereo
    sources:
        alsa_output.pci-0000_00_1f.3.analog-stereo.monitor/#1: Monitor of Built-in Audio Analog Stereo
        alsa_input.pci-0000_00_1f.3.analog-stereo/#2: Built-in Audio Analog Stereo
    ports:
        analog-input: Analog Input (priority 10000, latency offset 0 usec, available: unknown)
            properties:
                
        analog-output-speaker: Speakers (priority 10000, latency offset 0 usec, available: unknown)
            properties:
                device.icon_name = "audio-speakers"
        analog-output-headphones: Headphones (priority 9900, latency offset 0 usec, available: no)
            properties:
                device.icon_name = "audio-headphones"
        hdmi-output-0: HDMI / DisplayPort (priority 5900, latency offset 0 usec, available: unknown)
            properties:
                device.icon_name = "video-display"

此外,在工作设备上,alsamixer看起来像

,而在不工作的设备上

那么,现在的问题是:你们中有人知道问题是什么以及如何解决吗?如何使不工作设备具有与工作设备相同的设置?我看到他们不同的声卡设置和固件。

如果你需要任何其他输出,我会立即编辑这篇文章!

编辑:我给出两个命令的输出:cat /proc/asound/modulesdmesg | grep snd

1a.工作装置上的cat /proc/asound/modules0 snd_soc_skl_hda_dsp

1b。不工作设备上的cat /proc/asound/modules0 snd_hda_intel

2a。工作设备上的dmesg | grep snd返回

代码语言:javascript
运行
复制
[    3.423610] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[    3.423636] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[    3.699005] snd_hda_codec_realtek ehdaudio0D0: autoconfig for ALC256: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker
[    3.699008] snd_hda_codec_realtek ehdaudio0D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[    3.699010] snd_hda_codec_realtek ehdaudio0D0:    hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[    3.699011] snd_hda_codec_realtek ehdaudio0D0:    mono: mono_out=0x0
[    3.699012] snd_hda_codec_realtek ehdaudio0D0:    inputs:
[    3.699013] snd_hda_codec_realtek ehdaudio0D0:      Headset Mic=0x19
[    3.758163] snd_hda_codec_realtek ehdaudio0D0: ASoC: sink widget AIF1TX overwritten
[    3.758170] snd_hda_codec_realtek ehdaudio0D0: ASoC: source widget AIF1RX overwritten

2b。关于dmesg | grep snd给出的非工作设备

代码语言:javascript
运行
复制
[    5.489834] snd_hda_intel 0000:00:1f.3: dmic_detect option is deprecated, pass snd-intel-dspcfg.dsp_driver=1 option instead
[    5.490101] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[    5.541621] snd_hda_codec_realtek hdaudioC0D0: autoconfig for ALC256: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker
[    5.541642] snd_hda_codec_realtek hdaudioC0D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[    5.541645] snd_hda_codec_realtek hdaudioC0D0:    hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[    5.541647] snd_hda_codec_realtek hdaudioC0D0:    mono: mono_out=0x0
[    5.541649] snd_hda_codec_realtek hdaudioC0D0:    inputs:
EN

回答 1

Ask Ubuntu用户

发布于 2021-12-15 00:25:11

确保安装了声音开放固件包(Debian/Ubuntu上的firmware-sof-signed)。

如果Linux仍然坚持使用后备驱动程序(snd_hda_intel)而不是SOF驱动程序(snd_soc_skl_hda_dsp),则可以通过在/etc/modprobe.d中创建一个文件(如/etc/modprobe.d/alsa.conf )来请求后者,该文件的内容如下:

代码语言:javascript
运行
复制
options snd-intel-dspcfg dsp_driver=3

如果由于某些原因而不能工作,您可以更明确地:

代码语言:javascript
运行
复制
blacklist snd-hda-intel
options snd slots=snd_soc_skl_hda_dsp

更改应在下一次重新启动时生效。在更多有关HD-音频驱动程序的注释中有许多来自内核文档和博士的很好的故障排除信息。

另外,您可以尝试禁用Fast / Fast,以确保在Linux启动之前正确地重置音频硬件。

票数 0
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1372326

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档