pulseaudioデーモンいいえ実行時にaplayを使ってスピーカーに音を送ることができます
aplay -Dhw:1,0 sample.wav
上記のように再生すると、alsamixerは期待どおりにカードの音量を制御しているようです。特に、マスターおよびフロントチャンネルは、上で再生されるサンプルのボリュームに影響を与えます。
aplay -Lを実行すると、多くのPCMが一覧表示されます。再生のためにPCMの1つを選択すると、音はまったく聞こえません。 pulseaudioが実行中の場合、aplayは自動的に失敗します。 pulseaudio が実行されていない場合、エラー 2 で失敗し、ファイルを開くことができません。
ほとんどのサウンドアプリケーションはサウンドハードウェアの低レベル仕様を受け入れないようで、aplayを介して他にはまったくサウンドを得ることはできません。問題は、親PCM名がハードウェアデバイスに正しくマップされないことです。
pulseaudioのない古いカーネルには、このシステムではサウンドの問題がないことに注意してください。
音が出ない場合:
aplay -Dfront sample.wav
aplay -Dpulse sample.wav
aplay -L 出力:
null
Discard all samples (playback) or generate zero samples (capture)
pulse
PulseAudio Sound Server
hdmi:CARD=HDMI,DEV=0
HDA Intel HDMI, HDMI 0
HDMI Audio Output
hdmi:CARD=HDMI,DEV=1
HDA Intel HDMI, HDMI 1
HDMI Audio Output
hdmi:CARD=HDMI,DEV=2
HDA Intel HDMI, HDMI 2
HDMI Audio Output
default:CARD=PCH
HDA Intel PCH, ALC892 Analog
Default Audio Device
sysdefault:CARD=PCH
HDA Intel PCH, ALC892 Analog
Default Audio Device
front:CARD=PCH,DEV=0
HDA Intel PCH, ALC892 Analog
Front speakers
surround21:CARD=PCH,DEV=0
HDA Intel PCH, ALC892 Analog
2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=PCH,DEV=0
HDA Intel PCH, ALC892 Analog
4.0 Surround output to Front and Rear speakers
surround41:CARD=PCH,DEV=0
HDA Intel PCH, ALC892 Analog
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=PCH,DEV=0
HDA Intel PCH, ALC892 Analog
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=PCH,DEV=0
HDA Intel PCH, ALC892 Analog
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=PCH,DEV=0
HDA Intel PCH, ALC892 Analog
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=PCH,DEV=0
HDA Intel PCH, ALC892 Digital
IEC958 (S/PDIF) Digital Audio Output
aplay -l 出力
card 0: HDMI [HDA Intel HDMI], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel HDMI], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel HDMI], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 1: PCH [HDA Intel PCH], device 1: ALC892 Digital [ALC892 Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
答え1
私にとって答えは、Pulseaudioがudevを誤解したか、udevが間違った設定を提供したことです。私はこの質問を決定するのに十分な知識がありません。 udevからインポートするのではなく、ハードウェア構成を明示的に設定するためにPulse audio default.paを変更すると機能します。
default.paでは、次の2行のコメントを削除する必要がありました。
load-module module-alsa-sink device=hw:1,0
load-module module-alsa-source device=hw:1,0
そして次の行にコメントを付けてください:
### Automatically load driver modules depending on the hardware available
#.ifexists module-udev-detect.so
#load-module module-udev-detect
#.else
### Use the static hardware detection module (for systems that lack udev support)
#load-module module-detect
#.endif
答え2
正しいカードを選択するには、完全なデバイス名を使用する必要があります。
aplay -D front:CARD=PCH,DEV=0 sample.wav
ベースカードを変更するには、次の内容をグローバル/etc/asound.conf
または次のエントリに追加します~/.asoundrc
。
defaults.ctl.card "PCH"
defaults.pcm.card "PCH"
PulseAudioが正しいカードを使用できるようにするには、カードを設定する必要があります(試してみてくださいpavucontrol
)。