Ich verwende eine Multimedia-Anwendung (XBMC Frodo RC3), mit der ich kein benutzerdefiniertes PCM-Gerät auswählen kann. Es fragt nur nach dem Hardwaregerät (in diesem Fall ist es hw:0,0).
Angesichts dieser Einschränkung muss ich eine asoundrc- (oder asound.conf-) Datei schreiben, in der ich das hw:0,0-Gerät konfigurieren kann.
Ich teste die Konfiguration, indem ich Folgendes ausführe:
speaker-test -D hw:0,0 -c6
Dies simuliert, wie der XBMC Surround-Sound erzeugt.
Meine asound.conf sieht im Moment so aus:
pcm.surroundsw {
type route
slave {
pcm surround51
}
ttable {
0.2 1
1.3 1
2.1 8
3.0 8
4.4 1
5.5 1
}
}
Dies ist die funktionierende Routing-Tabelle, wenn ich speaker-test -Dsurroundsw -c6
ausführe Ich bekomme das gewünschte Verhalten.
Welche Art von asound.conf sollte ich schreiben, um das gewünschte Verhalten zu erhalten, wenn ich speaker-test -D hw:0,0 -c6
ausführe ? Dies ist ein reines ALSA-Konfigurationsproblem.
Akzeptierte Antwort:
Definieren Sie einfach ein Gerät namens hw
, aber verwenden Sie !
um sicherzustellen, dass die eingebaute Definition außer Kraft gesetzt wird, und verwenden Sie @args
um Parameter zuzulassen (die ignoriert werden, wenn Sie sie nicht in der Definition verwenden):
pcm.!hw {
@args [ CARD DEV SUBDEV ]
@args.CARD { type string }
@args.DEV { type integer }
@args.SUBDEV { type integer }
# normal definition here:
type route
...
}