Sound-Programmierung: Ausgabequelle einstellen



  • Wie kann ich die Audio-Quelle(n) für den Audio-Ausgang einstellen, also z. B. CD, Mikrofon, Line-In usw.? 😕

    In "/usr/include/linux/soundcard.h" ist das ioctl()-Kommando "SOUND_MIXER_OUTSRC" für die Ausgabequellen und "SOUND_MIXER_OUTMASK" für die möglichen Ausgabequellen definiert. Meine Versuche, diese Kommandos genauso zu benutzen, wie den Pendants bezüglich der Aufnahmequelle (SOUND_MIXER_RECSRC und SOUND_MIXER_RECMASK) blieben bislang jedoch auf verschiedenen Linux-Kernels, Sound-Karten und Linux-Distributionen erfolglos.
    Teilweise liefert bereits MIXER_READ(SOUND_MIXER_RECMASK) einen ioctl()-Fehlermeldung ("Invalid argument"), auf anderen Systemen sind bei dem zurückgegebenen OUTMASK-Wert alle höherwertigen Bits gesetzt -- inkl. dem MSB --, was ebenso auf eine Fehlfunktion hindeutet. 😞
    Auf allen getesteten Systemen blieb jedenfalls MIXER_WRITE(SOUND_MIXER_OUTSRC) ohne jede Auswirkung auf die Ausgabequelle. 😞

    Hat jemand schon mal mit einem C-Programm erfolgreich die Ausgabequelle eingestellt? Wenn ja, wie?

    Martin



  • Warum schlägst Du Dich denn selbst mit sowas herum?
    Für derartige Dinge greift man auf fertige Libraries zu, dann spart man sich diese unportablen ioctl-Herumsch...ereien. 😉


Anmelden zum Antworten