När pulseaudio-demon är inte igång, kan jag använda aplay för att skicka ljud till högtalarna med

aplay -Dhw:1,0 sample.wav 

alsamixer verkar göra vad jag förväntar mig med att kontrollera volymen på kortet när jag spelar som ovan; i synnerhet master- och frontkanaler påverkar volymen på samplet som spelas med ovan.

När jag spelar upp -L listas det ett antal PCM. När jag väljer en av dessa PCM: er för ljud, hörs inget ljud alls. Om pulseaudio körs misslyckas spelningen tyst. Om pulseaudio inte körs misslyckas det med ett fel 2, det går inte att öppna filen.

De flesta ljudappar verkar inte tillåta lågnivåspecifikation av ljudhårdvaran, så jag kan inte få något ljud alls utom genom aplay. Jag tror att problemet är att PCM-namnen på högre nivå inte kartläggs korrekt till hårdvaruenheter.

Jag kommer att notera att en äldre kärna utan pulseaudio inte hade några ljudproblem på den här maskinen.

Dessa producerar inget ljud:

aplay -Dfront sample.wav aplay -Dpulse sample.wav 

aplay -L output:

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-utgång

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 

Kommentarer

  • Om du kan spela upp ljud direkt till hw, Pulseaudio körs inte (eller kunde ' inte ta tag i den här enheten för explosiv användning), så spelar du till pulse kan ' t fungerar.
  • @dirkt – Du har rätt– Jag lade till mer information i frågan
  • För pulseaudio, starta pavucontrol och se till att din ström går till rätt utgång (inte HDMI). Använd också paplay istället för aplay för att ta bort komplexitet (och källor till fel). Utan pulsea udio, har du testat aplay -D front:CARD=PCH,DEV=0 som föreslagits? Jag förstod aldrig att ALSA-enhetsnamnet matchade helt, men möjligen front ensam kan matcha något annat.

Svar

Svaret för mig var att Pulseaudio antingen misstolkade udev eller att udev lämnade fel konfiguration – jag vet inte tillräckligt om någon av dem för att avgöra frågan. Om jag ändrar pulsljudet default.pa för att uttryckligen ställa in hårdvarukonfigurationen istället för att hämta den från udev, den fungerar.

I default.pa var jag tvungen att avmarkera dessa två rader:

load-module module-alsa-sink device=hw:1,0 load-module module-alsa-source device=hw:1,0 

och kommentera dessa rader:

### 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 

Svar

Du måste använda hela enhetsnamnet för att välja rätt kort:

aplay -D front:CARD=PCH,DEV=0 sample.wav 

Om du vill ändra standardkortet lägger du till något liknande detta till det globala /etc/asound.conf eller till din ~/.asoundrc:

 defaults.ctl.card "PCH" defaults.pcm.card "PCH"   

För att få PulseAudio att använda rätt kort måste du konfigurera det (prova pavucontrol).

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *