← Back to team overview

sslug-teknik team mailing list archive

ALSA - .asoundrc der giver mono output ønskes.

 

Hej,

Jeg har også postet dette spørgsmål på

http://www.raspberrypi.org/phpBB3/viewtopic.php?f=29&t=33431&p=0&e=0&sid=d176a10bc07e174ca6a0ec1cd823cf56


men tænkte om der var nogle lokale ALSA-specialister der kan hjælpe mig på vej.


Jeg bruger en Raspberry som internet radio. Det skal ikke fylde meget så den er koblet til en enkelt højttaler der er forbundet til venstre kanal. I det store og hele fungerer det fint men i nogle få udsendelser er DR så frække at udnytte at de sender i stereo - og så er det altså lidt svært at høre hvad der foregår i højre kanal :-).

Der er selvfølgelig "den simple løsning" som er at svinge loddekolben og lave en passiv mixning af stereokanalerne til mono vha. to modstande. Men det burde jo for søren kunne lade sig gøre ved i stedet at konfigurere ALSA til at downmixe. Jeg har derfor prøvet følgende .asoundrc for at definere et nyt device der hedder "monocard":

pcm.card0 {
  type hw
  card 0
}

ctl.card0 {
  type hw
  card 0
}

pcm.monocard {
  slave.pcm card0
  slave.channels 2
  type plug
}

ctl.monocard {
  type hw
  card 0
}

pcm.!default monocard

Og så kan jeg da også spille en testfil vha. dette:

aplay -D monocard Front_Left_And_Right.wav

Men det er selvfølgelig stadig i stereo så jeg kan ikke høre det der bliver spillet i højre kanal. Så ændrer jeg "monocard" definitionen til at være af type "route" og tilføjer et "ttable" så alt mixes til mono og kun afspilles i venstre kanal:

pcm.monocard {
  slave.pcm card0
  slave.channels 2
#  type plug
  type route
  ttable {
    # Copy both input channels to output channel 0 (Left).
    0.0 1
    1.0 1
    # Send nothing to output channel 1 (Right).
    0.1 0
    1.1 0
  }
}


Men når jeg nu prøver at spille vha. "aplay" så får jeg denne fejl:

pi@pi-radio ~ $ aplay -D monocard Front_Left_And_Right.wav
Playing WAVE 'Front_Left_And_Right.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
aplay: set_params:1059: Broken configuration for this PCM: no configurations available
pi@pi-radio ~ $


Og så er man lidt lost synes jeg. Iflg. de eksempler jeg kan finde på nettet om ALSA og .asoundrc burde det her fungere, men det kan måske være noget driver-relateret der gør at det ikke fungerer. Jeg ved bare ikke hvilke værktøjer man skal bruge for at få lidt flere detaljer om hvad det er der er "broken" i denne konfiguration.

Forsøger jeg mig med

aplay -D card0  Front_Left_And_Right.wav

afspilles filen fint. Så min .asoundrc kan åbenbart godt parses (?).


Mvh
-- Jan

Follow ups