Wie tausche ich Stereokanäle in Ubuntu?

29

Ich arbeite derzeit mit Ubuntu 9.04. Ich wollte die Stereokanäle tauschen, konnte diese Option jedoch in den Lautstärkeregelungseinstellungen nicht finden.

Gibt es eine Möglichkeit, dies zu tun, ohne eine Konfigurationsdatei zu berühren? (Ich darf mich auf diesem Computer nicht als root anmelden.)

Auron
quelle
1
Lautsprecher tauschen?
Grawity
4
Ich muss meine Lautsprecher tauschen lassen. Deshalb wollte ich die Stereokanäle umstellen: D
Auron

Antworten:

32

Die PulseAudio-Methode (getestet unter Ubuntu 10.04, sollte unter 9.04 funktionieren):

Kopieren Sie /etc/pulse/default.panach ~/.pulse/default.paund fügen Sie die folgenden zwei Zeilen am Ende hinzu:

load-module module-remap-sink sink_name=reverse-stereo master=0 channels=2 master_channel_map=front-right,front-left channel_map=front-left,front-right
set-default-sink reverse-stereo

Starten Sie PulseAudio neu, indem Sie pactl exitin der Befehlszeile ausführen.

Lassen Sie die zweite Zeile weg, wenn Sie das umgekehrte Stereo nicht standardmäßig verwenden möchten. Sie können in den Toneinstellungen auf der Registerkarte "Ausgabe" zwischen invertierter und normaler Stereoausgabe wechseln. Wenn Sie root haben und dieses System weiterverwenden möchten, können Sie die Zeilen einfach hinzufügen, /etc/pulse/default.paanstatt eine benutzerspezifische Konfiguration vorzunehmen.

Diese Konfiguration geht von folgenden Grundannahmen aus: Die Karte, deren Kanäle Sie umkehren, ist Karte 0; dass Sie sich nur mit 2 Kanälen befassen müssen; und dass diese Kanäle front-leftund genannt werden front-right.

Wenn Sie eine Videokarte mit HDMI-Ausgang haben, ist der analoge Ausgang Ihres Motherboards wahrscheinlich Karte 1, nicht 0; also master = 1. (Kopfhörer an der Vorderseite sind wahrscheinlich auf diesem analogen Kanal)

Weitere Informationen finden Sie in der PulseAudio-Dokumentation zur Modul-Remap-Senke .

Brian Gruber
quelle
Anfangs schien es den Trick am 14.04 zu tun. Aber nach dem Neustart konnte pulseaudio daemon nicht gestartet werden. musste den Anruf entfernen, um ihn zu beheben.
Amir Uval
Funktioniert auch über pacmd(dh Sie müssen die Konfiguration nicht kopieren und pulseaudio nicht neu starten).
ulidtko
1
Wenn Sie mehr Senken haben, können Sie damit pacmd list-sinkseine Liste der vorhandenen Senken und ihrer Indizes anzeigen. dann master=0mit demmaster=IndexOfTheSinkToSwap
user1182474
1
Dies funktioniert auch unter Ubuntu 16.04 einwandfrei. Bleibt wie erwartet durch Neustart erhalten.
Elder Geek
Gute Antwort! Das einzige Problem, das ich habe, ist, dass das Volumen der neu zugeordneten Senke auf der Basis-Senke basiert. Das bedeutet, wenn ich auf die Basissenke umschalte und die Lautstärke auf 50% stelle, kann die neu zugeordnete Spüle nur noch 50% der Lautstärke erreichen (100% sind die "echten" 50%). Irgendwie darum herum?
Freitag,
10

Im Wesentlichen derselbe Ansatz wie bei Brian, jedoch ohne eine Konfigurationsdatei zu berühren:

pactl load-module module-remap-sink \
    sink_name=reverse-stereo \
    master=0 \
    channels=2 \
    master_channel_map=front-right,front-left \
    channel_map=front-left,front-right

Dadurch wird im laufenden Betrieb eine zusätzliche PA-Senke mit umgekehrten Kanälen erstellt. (Es verschwindet nach einem Neustart von pulseaudio). Um dorthin zu wechseln:

pactl set-default-sink reverse-stereo

- ODER Sie können auch manuell über das Sound-Bedienfeld umschalten:

Fenster zur Lautstärkeregelung von pulseaudio

Natürlich ist es möglich, zB beim Experimentieren hin und her zu schalten.


Dieser Weg ist besser, wenn Sie etwas schnell ausprobieren möchten, anstatt das Setup dauerhaft zu speichern.

ulidtko
quelle
pactl set-default-sink reverse-stereofehlgeschlagen mit No valid command specified.auf einem Ubuntu 12.04.
Auron
1
@Auron funktioniert am 14.04.
ulidtko
Hmm, ich müsste es überprüfen.
Auron
1
@ Auron, siehe Update; Sie können auch manuell über das Soundpanel wechseln.
Ulidtko
6

Wenn Sie ALSA verwenden, fügen Sie Folgendes zu Ihrer ~/.asoundrcDatei hinzu:

pcm.swapped {
    type         route
    slave.pcm    "cards.pcm.default"
    ttable.0.1   1
    ttable.1.0   1
}

pcm.default      pcm.swapped

Über ALSA FAQ

Sathyajith Bhat
quelle
+1 hat mich sekundenlang geschlagen ... Hinweis: Ubuntu 9.04 installiert standardmäßig PulseAudio, was wahrscheinlich seine eigene Vorgehensweise hat.
Quack Quijote
@ ~ quack leitet PulseAudio die Sounds nicht an ALSA weiter?
Sathyajith Bhat
Ja, nur sagen, PA kann den Tausch nach dem Prinzip "Es gibt mehr als einen Weg, es zu tun" wahrscheinlich alleine machen. :)
Quack Quixote
@ ~ quack Ah, Gotcha;)
Sathyajith Bhat