Standardtonlautstärke für alle ALSA-Geräte

10

Ich möchte die Standard-Lautstärke ein für allemal für alle ALSA-Geräte einstellen, die jemals angeschlossen werden.

Natürlich könnte ich die Lautstärke der derzeit verfügbaren Soundkarten ändern amixer ...oder sogar alsamixerändern . Aber ich möchte die Standardlautstärke auch für zukünftige Soundkarten, die später hinzugefügt werden, wirklich ändern .

In welcher Konfigurationsdatei soll ich diese Standardlautstärke einstellen?

Ich habe gesehen, /var/lib/alsa/asound.stateaber der Inhalt ist spezifisch für aktuell verbundene Soundkarten. Was ich möchte, ist eine Lösung, die für jede Soundkarte gilt, die angeschlossen wird.


Kontext : Warum will ich das? Ich stelle ein gebrauchsfertiges Debian-Image für mein Projekt SamplerBox zur Verfügung . Benutzer Nr. 1 verwendet möglicherweise die integrierte Soundkarte des Computers, Benutzer Nr. 2 verfügt möglicherweise über einen USB-DAC, Benutzer Nr. 3 verfügt möglicherweise über eine andere Soundkarte ...
Ich möchte eine Standardlautstärke von -3 dB bereitstellen, die für alle ALSA-Soundkartenbenutzer geeignet ist könnte haben...


Hinweis: Ich habe ein neues System neu installiert und es scheint, dass das Volume standardmäßig für alle Geräte -20 dB beträgt:

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Basj
quelle
Es gibt einige generische und treiberspezifische Konfigurationsdateien /usr/share/alsa/init/, aber Einstellungen wie ENV{ppercent}:="75%"und ENV{pvolume}:="-20dB"(pvolume = Wiedergabevolumen, cvolume = Erfassungsvolumen) scheinen ignoriert zu werden, selbst wenn explizit eine der Dateien mit alsactl -i /usr/share/alsa/init/default init
n.st
Hum das ist seltsam @ n.st ... Sehen Sie dann, wie wir damit umgehen könnten?
Basj
@ n.st Es scheint, dass -20 dB die Standardlautstärke für alle Soundkarten ist, als ich eine neue Debian Jessie mitalsa-utils
Basj
@ n.st Diese Konfigurationsdatei funktioniert für mich! Auf allen Geräten habe ich getestet! Sie können als Antwort posten, wenn Sie wollen :)
Basj

Antworten:

3

Es gibt einige generische und treiberspezifische Konfigurationsdateien, in /usr/share/alsa/init/denen Sie Einstellungen wie ENV{ppercent}:="75%"und ENV{pvolume}:="-20dB"( pvolume= Wiedergabelautstärke, cvolume= Aufnahmelautstärke usw.) festlegen können . /usr/share/alsa/init/defaultsollte diese Einstellungen bereits enthalten, damit Sie sie als Beispiel verwenden können.

Sie können ALSA zwingen, alle Geräte mit neu zu initialisieren, alsactl initund die Standardkonfigurationsdateien dafür mit überschreiben alsactl -i /usr/share/alsa/init/foo init.

Aus irgendeinem Grund scheint ALSA die ppercentund pvolumeEinstellungen auf meinem System zu ignorieren , aber aus Ihren Kommentaren geht hervor, dass sie für Sie funktioniert haben. Wenn mir jemand erklären kann, warum die Konfiguration möglicherweise ignoriert wird, würde ich diese Antwort gerne ändern.

n.st
quelle
Ich habe anscheinend das gleiche Problem. In habe /usr/share/alsa/init/defaultich ENV{ppercent}:="75%". Wenn ich jedoch einen USB-DAC anschließe, startet dieser immer mit der 0%Lautstärke. Irgendwelche Ideen, wie man das behebt?
Landroni
@landroni Ich habe dies nicht weiter untersucht, daher weiß ich immer noch nicht, warum ALSA diese Konfigurationsdateien auf einigen Systemen verwendet, sie aber auf anderen ignoriert…
n.st
Gibt es möglicherweise einige Konfigurationsdateien auf Benutzerebene, mit denen (nicht funktionierende) Standardeinstellungen überschrieben werden können?
Landroni
@landroni Keine Ahnung, sorry. :(
n.st
OK danke. Ich denke, dies rechtfertigt eine neue Frage ...
Landroni
12

Ich bin gerade auf diesen Beitrag gestoßen und habe gesehen, dass Sie mit der Antwort auf diese Frage so zu kämpfen haben, wie ich es war. Das hat es für mich behoben:

Gehen Sie in alsamixer und stellen Sie alles so ein, wie Sie es möchten. Beenden Sie dann und geben Sie Folgendes ein:

sudo alsactl store

Dadurch wird die aktuelle Konfiguration von alsamixer gespeichert und die Konfiguration sollte beibehalten werden.

John
quelle
Tatsächlich! Dies ist die Lösung, die ich auch endlich gefunden habe: samplerbox.org/faq#volume .
Basj