私が何をしても、私のArch Linuxインストールはサウンドの再生を拒否します。実行してみましたが、aplay -l
サウンドカードが認識されますね。出力は次のとおりです。
**** List of PLAYBACK Hardware Devices ****
card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: Generic [HD-Audio Generic], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Generic_1 [HD-Audio Generic], device 0: ALC245 Analog [ALC245 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
出力は次のとおりですlspci -k
。
Usage: lspci [<switches>]
Basic display modes:
-mm Produce machine-readable output (single -m for an obsolete format)
-t Show bus tree
Display options:
-v Be verbose (-vv or -vvv for higher verbosity)
-k Show kernel drivers handling each device
-x Show hex-dump of the standard part of the config space
-xxx Show hex-dump of the whole config space (dangerous; root only)
-xxxx Show hex-dump of the 4096-byte extended config space (root only)
-b Bus-centric view (addresses and IRQ's as seen by the bus)
-D Always show domain numbers
-P Display bridge path in addition to bus and device number
-PP Display bus path in addition to bus and device number
Resolving of device ID's to names:
-n Show numeric ID's
-nn Show both textual and numeric ID's (names & numbers)
-q Query the PCI ID database for unknown ID's via DNS
-qq As above, but re-query locally cached entries
-Q Query the PCI ID database for all ID's via DNS
Selection of devices:
-s [[[[<domain>]:]<bus>]:][<slot>][.[<func>]] Show only devices in selected slots
-d [<vendor>]:[<device>][:<class>] Show only devices with specified ID's
Other options:
-i <file> Use specified ID database instead of /usr/share/hwdata/pci.ids
-p <file> Look up kernel modules in a given file instead of default modules.pcimap
-M Enable `bus mapping' mode (dangerous; root only)
PCI access options:
-A <method> Use the specified PCI access method (see `-A help' for a list)
-O <par>=<val> Set PCI access parameter (see `-O help' for a list)
-G Enable PCI access debugging
-H <mode> Use direct hardware access (<mode> = 1 or 2)
-F <file> Read PCI configuration dump from a given file
これが出力ですsudo alsactl init
Found hardware: "HDA-Intel" "ATI R6xx HDMI" "HDA:1002aa01,00aa0100,00100700" "0x103c" "0x8a31"
Hardware is initialized using a generic method
Found hardware: "acp" "" "" "" ""
Hardware is initialized using a generic method
これが出力ですlspci -v | grep -A7 -i audio
04:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Renoir Radeon High Definition Audio Controller
Subsystem: Hewlett-Packard Company Device 8a31
Flags: bus master, fast devsel, latency 0, IRQ 87, IOMMU group 14
Memory at d05c8000 (32-bit, non-prefetchable) [size=16K]
Capabilities: <access denied>
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
--
04:00.5 Multimedia controller: Advanced Micro Devices, Inc. [AMD] ACP/ACP3X/ACP6x Audio Coprocessor (rev 01)
Subsystem: Hewlett-Packard Company Device 8a31
Flags: bus master, fast devsel, latency 0, IRQ 85, IOMMU group 18
Memory at d0580000 (32-bit, non-prefetchable) [size=256K]
Capabilities: <access denied>
Kernel driver in use: snd_rn_pci_acp3x
Kernel modules: snd_pci_acp3x, snd_rn_pci_acp3x, snd_pci_acp5x, snd_pci_acp6x, snd_acp_pci, snd_sof_amd_renoir
04:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h/19h HD Audio Controller
Subsystem: Hewlett-Packard Company Device 8a31
Flags: bus master, fast devsel, latency 0, IRQ 88, IOMMU group 19
Memory at d05c0000 (32-bit, non-prefetchable) [size=32K]
Capabilities: <access denied>
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
奇妙にサウンドカードがHDMIであるようですが、それは問題でしょうか?
これはHP Envy x360で、この小さな問題を除けばうまく機能します。サウンドを再生できるようにしたいので、この問題を解決するのに役立つことに感謝します。ありがとうございます!
答え1
私は以下を見つけましたUbuntuフォーラムの投稿OPが同じ問題を説明し、同じATI R6XX HDMI
デバイスを持っている場合。解決策は、次のようにradeon.audio=1
してカーネルフラグを設定することです。
/etc/default/grub
テキストエディタで開くアイテムが見つかりました
GRUB_CMDLINE_LINUX_DEFAULT
radeon.audio=1
二重引用符部分の末尾に追加ファイルを保存して実行します。
sudo update-grub
たとえば、
元のアイテムの変更/etc/default/grub
:
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet"
到着する:
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet radeon.audio=1"
/boot/grub/grub.cfg
このスレッドのユーザーの一人の指示に従って編集しないでください。
これがうまくいかないradeon.audio=1
場合、またはすでに設定されている場合は、どのデバイスをタイムリーalsamixer
にインストールして一覧表示したのかを報告してくださいF6
。 alsamixerを押すと、F6
システムが認識するカードを選択できます。
答え2
私の意見では、ALSAは基本的にHDMIを使ってサウンドを出力しているようです。 HDMIを使用してノートパソコンをテレビに接続してテストできます。
テストでaplayを他のサウンドデバイスを介して強制的に出力しようとすることもできますaplay -Dhw:1,0 /usr/share/sounds/alsa/Noise.wav
。動作している場合は、ここの指示を使用してカード1をデフォルトに設定できます。https://www.alsa-project.org/main/index.php/Setting_the_default_device。