2009-05-30 9 views
7

J'ai une énigme:enregistrement sonore envoyé par programmation à la sortie intégrée, Mac OS X

Je dois trouver un moyen de capturer les données audio brutes qui est canalisée vers la sortie intégrée sur Mac OS X. Core Audio, HAL, etc.

Je peux "écouter" la sortie intégrée et le micro, mais aucun d'entre eux semble offrir le flux de données correct - le flux exact (toutes les données combinées de tous sources d'entrée) qui va aux haut-parleurs/sortie intégrée.

Tout conseil est accueilli avec satisfaction.

+0

Avez-vous trouvé un moyen d'y arriver depuis 2009? – Olwaro

+0

J'aimerais savoir comment vous obtenez toutes les données combinées de toutes les sources d'entrée – Charlie

Répondre

0

Avez-vous besoin d'accéder à ce flux à partir de votre programme, ou voulez-vous simplement en extraire l'audio? Dans le second cas, une recherche rapide sur Google est apparue http://www.ambrosiasw.com/utilities/wiretap/ et http://www.rogueamoeba.com/audiohijackpro/. Aucun d'entre eux sont open-source ou gratuit cependant.

Modifier - whoops, vous voulez accéder à par programmation, qui répond à ma propre question, désolé. Je pense que je vais garder ma réponse ici au cas où des gens trébucheraient sur cette page voulant enregistrer de l'audio sans programmation.

+1

Wiretap est comme ce que j'ai besoin de mettre en œuvre - il capture le flux sortant. J'ai juste besoin d'un aperçu approfondi de la façon dont une application telle que l'écoute électronique interagit avec Core Audio et/ou HAL. – Demi

0

Vous aurez besoin de votre application pour installer une extension système. Soundflower est une implémentation open-source d'une telle extension.

+0

expliquer plus loin, s'il vous plaît. J'ai vu Soundflower et je l'ai compris comme un pont entre différents périphériques audio. Je ne comprends pas comment cela s'applique à ce scénario particulier ... – Demi

+0

si je vous comprends bien, vous voulez enregistrer l'audio du système mixte. Avec soundflower, vous pouvez faire exactement cela. Pour autant que je me souvienne, c'est comme ça que l'enregistrement audio fonctionne dans Rogue Amoebas Audio Hijack Pro. Si vous sélectionnez "System Audio" comme source d'entrée, il vous demande si l'extension du système soundflower doit être installée. Bien sûr, nous avons besoin de code qui fait l'enregistrement réel. (Comme nous avons répondu à votre question SO ici: http://stackoverflow.com/questions/871819/code-sample-for-capturing-audio-from-a-mac-in-cocoa-and-saving-to-file/ 874855 # 874855) –

+0

Voici la chose qui me dérange, cependant. Si SoundFlower est installé, il nécessite un redémarrage. Toutefois, lorsque vous utilisez une application telle que WireTap, elle ne nécessite aucune installation supplémentaire - vous la copiez dans le répertoire Applications et vous pouvez simplement l'exécuter. Ce que j'ai besoin de savoir, c'est la "magie" qui permet à une telle application d'obtenir l'audio du système mixte sans installation supplémentaire. – Demi