Bibliothek zum Lesen vom Sounddevice gesucht (wenn möglich, sollte das ganze unter Linux und Windows laufen)
-
Hi,
Ich bin eigentlich ein perl-Programmierer, will nun aber was in C coden, was recht schnell werden muss und es darf nicht zu viel Ressourcen wegnehmen (daher kommt perl leider nicht in Frage). Der erste Schritt ist, dass ich vom Sounddevice lesen will und (zum Testen) das ganze auch wieder auf den Lautsprechern ausgeben will. Ich könnt natürlich jetzt eine Dauerschleife machen und ständig auf das Sound-Device schauen, ob was ankommt. Aber das find ich nicht sehr schön, da die CPU da voll ausgelastet wird. Mir würde es besser gefallen, wenn das Programm wie ein Deamon vor sich hin schläft und erst dann was tut, wenn vom Line In Daten ankommen. Ich denke da an eine Bibliothek, mit der ich mein C-Programm anweisen kann, auf einen Interrupt von der Soundkarte zu warten oder irgend eine ähnliche Lösung.
Ich hab jetzt schon den ganzen Abend nach so eine Bibliothek gesucht, aber ich find nur Möglichkeiten, bei denen ich selbst das Sounddevice ansprechen muss (also direkt und nicht über eine Funktion, die mir eine Bibliothek zur Verfügun stellt). Das könnt ich natürlich auch machen, bloß seh ich mich da einer Vielzahl von Problemen gegenüber. So muss ich zum Beispiel den Interrupt raussuchen, da der ja bei jedem System anders ist. Und unter Windows weiss ich eh noch nicht, wie ich das implemntieren soll (das Programm soll später sowohl unter Linux als auch unter Windows laufen. Wenn dass nicht geht, dann muss es wenigstens unter Windows laufen, aber da hab ich mal gar keine Ahnung, wie die Architektur aufgebaut ist. Eine Bibliothek, die mir diese ganzen Probleme abnimmt, wär mir also sehr recht)
vielen Danke für eure Hilfe
-
Crosspost! Bitte nach rudpf verschieben.
-
Dieser Thread wurde von Moderator/in flenders aus dem Forum WinAPI in das Forum Rund um die Programmierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.