Sie haben Steam unter Linux installiert, dann einige Spiele aus Ihrer Bibliothek und die Spiele genießen. Sie haben Ihr Lieblingsspiel gestartet, Ihre Lautsprecher eingeschaltet oder Ihre Kopfhörer aufgesetzt und sind dann wegen des nervigen Knackens beeilt, sie stumm zu schalten. Ist das Ihre Erfahrung mit Steam-Spielen für Windows unter Linux?
Die Ursache des Problems ist ein falsch konfigurierter Parameter in Pulseaudio und kann in allen Linux-Distributionen auftauchen. Zum Glück gibt es eine einfache Lösung. Lesen Sie weiter, um zu erfahren, wie Sie das Problem mit dem knackenden Sound von Steam-Spielen in Linux mit einer einfachen Optimierung beheben können.
Optimiere den PulseAudio-Daemon
Die Lösung unseres Problems ist ein zweiteiliger Prozess, mit der Möglichkeit einer späteren Fehlerbehebung. Beginnen wir damit, den Daemon von PulseAudio zu optimieren.
Starten Sie Ihr Lieblingsterminal und geben Sie ein:
sudo nano /etc/pulse/daemon.conf
Suchen Sie nach den Parametern „default-fragments“ und „default-fragment-size-msec“. Beide sollten bereits vorhanden sein, aber wenn nicht, können Sie sie selbst hinzufügen. Setzen Sie ihre Werte auf 2 bzw. 4. Sie sollten ungefähr so aussehen:
default-fragments = 2 default-fragment-size-msec = 4

Speichern Sie die aktualisierte Datei und starten Sie PulseAudio neu, um die Änderungen zu übernehmen. Das kannst du machen mit:
pulseaudio -k
Damit ist der erste Teil unserer Optimierungen abgeschlossen. Machen Sie sich keine Sorgen, denn die folgende ist noch einfacher!
Optimieren Sie den Soundserver
Starten Sie Ihren bevorzugten Texteditor neu, aber bearbeiten Sie diesmal die Datei, die definiert, wie der PulseAudio-Soundserver gestartet werden soll, mit:
sudo nano /etc/pulse/default.pa

Suchen Sie den Abschnitt, der PulseAudio anweist, Treibermodule mit udev zu laden. Es wird so aussehen:
### 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
Aktualisieren Sie es, indem Sie hinzufügen tsched=0 am Ende von „load-module module-udev-detect“, sodass die neue Version wie folgt lautet:
### Automatically load driver modules depending on the hardware available .ifexists module-udev-detect.so load-module module-udev-detect tsched=0 .else ### Use the static hardware detection module (for systems that lack udev support) load-module module-detect .endif

Speichern Sie die Änderungen und starten Sie PulseAudio erneut mit:
pulseaudio -k

Und das war’s – hoffentlich ist das Problem weg.
Fehlerbehebung
Wenn die obigen Optimierungen Ihre Situation verbessert haben, aber immer noch nicht vollständig behoben ist, bearbeiten Sie die erste Datei erneut und erhöhen Sie die Werte der Parameter „default-fragments“ und „default-fragment-size-msec“. Probieren Sie Werte wie „3“ und „5“ bzw. „4“ und „8“ aus. Lassen Sie sich nicht von Anfang an verrückt machen, sondern erhöhen Sie die Werte schrittweise, bis das Problem behoben ist.
Auf der anderen Seite, wenn diese Optimierungen das Problem verschlimmern, lohnt es sich, umgekehrt zu gehen. Verringern Sie die Werte für diese beiden Parameter, gehen Sie dann zurück zur zweiten Datei und ändern Sie Ihre Optimierung auf tsched=1.
Starten Sie PulseAudio noch einmal neu und prüfen Sie, ob Ihr Problem diesmal behoben ist. Wenn dies nicht der Fall ist, gehen Sie zu beiden Dateien zurück und machen Sie alle Änderungen rückgängig. Leider liegt die Ursache des Problems in diesem Fall woanders.
Es lohnt sich, verschiedene Treiber für Ihr Audio-Subsystem auszuprobieren, aber da diese in der Regel im Kernel enthalten sind, würde dies bedeuten, den Kernel Ihrer Distribution gegen einen anderen auszutauschen. Überprüfen Sie, ob ein neueres verfügbar ist. Wenn nicht, kehren Sie entweder zu einem vorherigen zurück oder installieren Sie einen alternativen Kernel, wie Schnaps.
Treiber, Puffer, Zeitplanung
Sie fragen sich vielleicht, warum diese Parameter (möglicherweise) Ihr Problem behoben haben. Es hat alles mit der Hardware Ihres Audio-Subsystems, seinen Treibern und der Verwendung von PulseAudio zu tun.
Die ersten beiden Parameter, die wir geändert haben, teilen den Puffer des Audiogeräts in Fragmente auf. Abhängig von Ihrem Audio-Subsystem kann dies dem Betriebssystem helfen, Daten an Ihr Audio-Subsystem zu streamen, die dann in Ton umgewandelt werden.
Der zweite Parameter ändert den Planungsansatz von PulseAudio. Seit Version 0.9.11 verwendet PulseAudio ein System-Timer-basiertes Modell. Dies erfordert jedoch, dass Ihre Hardware und Ihr Treiber genaue Timing-Informationen zurückgeben. Einige tun dies, wie Intels Lösungen. Dies gilt als moderner und besserer Ansatz. Einige, wie viele Soundkarten von Creative, tun dies nicht. Abhängig von Ihrer Hardware und Ihren Treibern können Sie den Timer-Scheduler (der tsched Parameter, den wir eingeführt haben) on oder off (Werte 1 oder 0) kann einen großen Unterschied machen.
Wenn Sie stattdessen das Problem ohne Ton in Ubuntu haben, können Sie es wie folgt beheben.
Unterstützen Sie unsere Arbeit ❤️
Wenn Ihnen dieser Artikel gefallen hat, können Sie uns mit einem Trinkgeld unterstützen, damit wir weiterhin großartige Inhalte veröffentlichen können.

























