Получение аудиосигнала динамика и последующая его потоковая передача

StackOverflow https://stackoverflow.com/questions/1104217

Вопрос

Я пытаюсь создать то, что я считаю базовым приложением.Ну, два приложения: одно для Windows и одно для OS X.Я хотел бы захватить воспроизводимый аудиосигнал (т. е. если пользователь воспроизводит музыку через свои динамики).Затем возьмите этот сигнал и передайте его в потоковом режиме, чтобы другой компьютер мог «прослушивать».На другом компьютере будет Windows или OS X.

  1. Есть идеи, как получить аудиосигнал?
  2. Какой наиболее эффективный способ потоковой передачи звука без стороннего плагина?Если существует решение с открытым исходным кодом, мне было бы интересно.

Спасибо!

Крис

Это было полезно?

Решение

В Windows XP это совсем не тривиально, поскольку невозможно перехватить выходной сигнал без написания драйвера аудиофильтра (что не для слабонервных).

В Windows Vista и более поздних версиях вы можете захватить выходные данные аудиообработчика, используя API-интерфейсы WASAPI (встроенные в Windows, поэтому они бесплатны) и инициализируя аудиоклиент с флагом AUDCLNT_STREAMFLAGS_LOOPBACK.Это даст вам поток захвата, подключенный к выходу аудиодвижка.

Затем вы можете упаковать этот звук, отправить его на другой компьютер и обработать его с помощью любого API рендеринга звука, который вам нужен.

Хотя я не знаю, как сделать эквивалент на OSX :(.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top