Audio für unterschiedliche Prozesse/Programme regeln

Du suchst ein Programm für einen bestimmten Zweck?
Antworten
mirrowwinger
Beiträge: 19
Registriert: 29.07.2014 14:12:48

Audio für unterschiedliche Prozesse/Programme regeln

Beitrag von mirrowwinger » 08.02.2016 12:50:24

Hallo Debian-Community,

ich suche ein Programm, mit dem ich 2 unterschiedlichen Programmen (z.B. Iceweasle und ePSXe) unterschiedliche Lautstärken zuweise. Ziel ist es, dass ich über Iceweasle Surfen/Zeitung lesen/Youtube schauen und eins meiner Kinder ein Spiel über ePSXe (auf dem 2. Bildschirm) spielen kann. Leider haben die ePSXe-Spiele meist einen auf Dauer nervtötenden Sound. Also möchte ich nicht über den Lautstärkeregler den Sound komplett abstellen, sondern möglichst nur für den Prozess in dem ePSXe läuft. Ich habe für Ubuntu earcandy gefunden, was es aber anscheinend nicht in den Quellen für Debian gibt.

gibt es hier ein vergleichbares Programm?

Vielen Dank

mirrowwinger

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Audio für unterschiedliche Prozesse/Programme regeln

Beitrag von smutbert » 08.02.2016 13:28:08

Die Lautstärke soll sich also autoamtisch verändern?

Genau das wäre dann earcandy, das es auch in Debian squeeze gab: Debianearcandy. Der Sinn wäre also, dass sich zB bei einem eingehenden Anruf, automatisch die Lautstärke aller anderen Anwendungen verringern → Ducking:
Das ist soweit ich weiß aber (inzwsichen?) auch ohne earcandy möglich. Pulseaudio bringt ein passendes Modul mit, das man wohl nur laden müsste. Ich glaube es scheitert erst einmal daran, dass die Anwendungen nicht unbedingt „verraten“ wofür sie gut sind, also zB niemandem mitteilen, dass sie einen eingehenden Anruf wiedergeben und damit das Modul nicht weiß, dass und welche anderen Lautstärken es herunterregeln soll. Immerhin sollte das ganze auch manuell möglich sein, indem man das Modul lädt und den einzelnen Anwendungen beim Starten ihren Zweck (ihre Rollen) zuteilt:

Code: Alles auswählen

$ pactl load-module module-role-ducking trigger_roles=browser ducking_roles=spiele
$ PULSE_PROP="media.role=browser" iceweasel
$ PULSE_PROP="media.role=spiele" epsxe
Ob das jetzt genau so wirklich funktioniert habe ich nicht getestet, aber ich denke so ungefähr sollte es laufen…


…wenn du allerdings nur grundsätzlich die Lautstärke der Spiele herunterschrauben willst bzw. es dir genügt einen eigenen Lautstärkeregler für die Spiele zu haben, ohne dass der sich im laufenden Betrieb automatisch verstellt, zB eben beim Starten des Browsers, dann brauchst du diesen Aufwand gar nicht zu treiben. Pulseaudio bringt bereits für jede Anwendung einen eigenen Lautstärkeregler mit, den man unter anderem mit Debianveromix, diversen Gnome-Shell-Extensions und Debianpavucontrol bedienen kann.


Wenn du Pulseaudio weder installiert hast noch verwendest, dann wäre vielleicht das softvol Plugin von Alsa eine Lösung. Du kannst dann in der »/etc/asound.conf« eine Art virtuelle Soundkarte definieren, die einen neuen und eigenen Lautstärkeregler "erzeugt". Dann musst du nur noch dafür sorgen, dass epsxe den Ton auch tatsächlich über diese "virtuelle Soundkarte" wiedergibt. Wie man das bewerkstelligt hängt auch von epsxe (kenne ich nicht), deiner momentanen Alsakonfiguration und gegebenenfalls anderen speziellen Konfigurationswünschen/-vorlieben ab.
(Hast du bereits eine »/etc/asound.conf« oder »~/.asoundrc«?)

Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: Audio für unterschiedliche Prozesse/Programme regeln

Beitrag von Lord_Carlos » 08.02.2016 13:44:55

Das was Smurt sagt. "Standart" Debian installation hat Pulseaudio was es von sich aus kann.
Das grafische programm heist glaube ich Debianpavucontrol.

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

mirrowwinger
Beiträge: 19
Registriert: 29.07.2014 14:12:48

Re: Audio für unterschiedliche Prozesse/Programme regeln

Beitrag von mirrowwinger » 08.02.2016 14:24:43

Also erstmal vielen Dank. Eure Antwort sind voll super!!

Das Ziel wären wirklich 2 separate Regler, wo ich die Spiele permantent auf einen gewisse Lautstärke regulieren kann. Also manuell, damit ich normal andere Audio-Ausgaben von z.B. Firefox verstehen kann. Werde mir mal das mit PulsAudio anschauen. Eine automatische Regelung ist denke ich etwas "to much".

Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: Audio für unterschiedliche Prozesse/Programme regeln

Beitrag von Lord_Carlos » 08.02.2016 14:55:24

Hier ist ein Bild was ich gerade gefunden habe: http://i.stack.imgur.com/qf4jG.png
VLC ist auf 90% und Totem auf 100%.

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Audio für unterschiedliche Prozesse/Programme regeln

Beitrag von smutbert » 08.02.2016 15:04:40

Wenn du sagst, dass auf einem PC gleichzeitig mit epsxe gespielt und mit iceweasel gesurft wird, ist das dann eine Art Multiseat-Setup oder laufen iceweasel und epsxe gleichzeitig unter ein- und demselben Benutzeraccount?
Mir fallen zumindest zwei Dinge ein, die dein Vorhaben erschweren könnten:
  • epsxe weiß offensichtlich weder von Alsa noch von Pulseaudio etwas sondern verwendet noch OSS (zumindest glaube ich das nach der Lektüre des Artikels im Ubuntuusers-Wiki). Nun gibt es mindestens 3 verschiedene Möglichkeiten ein Programm, das noch nichts mit den "neueren" Soundsystemen anfangen kann, kompatibel zu machen:
    • Die OSS-Emulation von Alsa. Ich habe die nie verwendet und weiß auch nicht auswendig, wie man da die zu verwendenden Soundkarte (egal ob virtuell oder real) festlegen kann.
    • Das OSS-Wrapperskript aus Debianalsa-oss. Das verwendet vermutlich den Alsa-Default - zur getrennten Lautstärkeregelung ohne Pulseaudio müsste man sich also vermutlich etwas überlegen müssen.
    • Das OSS-Wrapperskript von pulseaudio (padsp aus Debianpulseaudio-utils). Damit verhält sich das OSS-Programm afaik wie eine Pulseaudioanwendung. Bei der Verwendung von Pulseaudio wäre das vermutlich die eleganteste Lösung.
  • Normalerweise ist es so, dass jeder Benutzer seinen eigenen Pulseaudio-Daemon startet und wenn mehrere Benutzer gleichzeitig angemeldet sind, kann nur einer diese Daemonen und damit auch nur ein Benutzer auf die Audiohardware zugreifen und das ist der "Inhaber" der momentan aktiven Sitzung.
    Dagegen könnte man statt den benutzereigenen Pulseaudioinstanzen einen systemweiten Pulseaudio starten, aber das hat wieder andere Nachteile. Bei einem Multiseatsetup mit Pulseaudio bleibt einem afaik gar nichts anderes übrig als Pulseaudio als systemweiten Daemon zu starten.

mirrowwinger
Beiträge: 19
Registriert: 29.07.2014 14:12:48

Re: Audio für unterschiedliche Prozesse/Programme regeln

Beitrag von mirrowwinger » 08.02.2016 15:49:33

Also ich hab jetzt den Audio-Controller von Debian nochmal angeschaut. Ich weiß nicht, ob es durch eine der Installationen (pavucontrol veromix) die ich vorgenommen habe funktioniert, aber ich habe jetzt folgenden Tab Anwendungen gefunden. In diesem ist ePSXe aufgeführt über ALSA plugin und ich kann dieses seperat von der Lautstärke für den PC steuern. Bin mir aber eigentlich sicher, dass dieser Tab vorher nicht da war.

Problem gelöst.

Vielen Dank

mirrowwinger

Antworten