2009-07-09 8 views
7

J'essaye de construire ce que je pense est une application de base. Eh bien, deux applications une pour Windows et une pour OS X. Je voudrais capturer le signal audio qui joue (c'est-à-dire si l'utilisateur joue de la musique sur ses haut-parleurs). Ensuite, prenez ce signal et diffusez-le afin qu'un autre ordinateur puisse "écouter". L'autre ordinateur serait Windows ou OS X.Obtenir le signal audio du haut-parleur, puis le diffuser

  1. Des idées sur la façon d'obtenir le signal audio?
  2. Quel est le moyen le plus efficace de diffuser de l'audio sans plug-in tiers? S'il y a une solution open-source, je serais intéressé.

Merci!

Chris

+0

Je suis intéressé par la réponse et – Tim

Répondre

3

Sous Windows XP ce n'est pas trivial du tout parce qu'il n'y a aucun moyen d'intercepter le signal de sortie sans écrire un pilote de filtre audio (non somethign pour les faibles de cœur). Sur Windows Vista et versions ultérieures, vous pouvez capturer la sortie du moteur audio en utilisant les API WASAPI (intégrées à Windows pour qu'elles soient gratuites) et en initialisant un client audio avec l'indicateur AUDCLNT_STREAMFLAGS_LOOPBACK. Cela vous donnera un flux de capture qui est accroché à la sortie du moteur audio.

Vous pouvez ensuite emballer cet audio et l'envoyer à l'autre ordinateur et le restituer avec l'API de rendu audio que vous souhaitez.

Je ne sais pas comment faire la equivilant sur OSX si :(.

+0

cool. Je suis ok avec Vista exigeant. Savez-vous si cela est encore disponible dans Windows 7? – chrishomer

+0

Bien sûr, il est –

+0

Il semble que les API WASAP requièrent une source gratuite DRM, ce qui est logique, mais espérait être capable de diffuser des fichiers protégés par DRM, car ce n'est pas une diffusion pour beaucoup, juste pour vous. – chrishomer

Questions connexes