17

Существует ли какой-либо (возможно бесплатный или с открытым исходным кодом) виртуальный аудиодрайвер WDM для Windows с дополнительными плагинами обработки, которые добавили бы еще один слой между приложениями Windows и реальным аудиодрайвером звуковой карты, позволяя:

  • Добавьте программные DSP к общему аудиовыходу. Я хотел бы иметь возможность использовать настраиваемые эффекты, такие как компрессор или стереофонический в бинауральный конвертер, для прослушивания потокового мультимедиа через наушники и т.д.

  • Подключите его выход к некоторому пользовательскому буферу вместо звуковой карты. Например, чтобы иметь возможность записывать звук или отправлять звук через беспроводное соединение на какой-либо другой беспроводной источник?

Я знаю только о драйвере VAC , но не знаю, как бы я использовал его для выполнения любой из этих задач. И к сожалению это не бесплатно.

Кроме того, аудио драйвер был просто моей идеей, как решить эти проблемы - если вы знаете другой путь, пожалуйста, поделитесь своими знаниями.

Мне это нужно для Windows 7 и / или Windows XP.

6 ответов6

8

Теперь есть бесплатная (пожертвованная) альтернатива VAC Virtual Audio Cable. Проверьте виртуальный кабель VB-Audio.

Скриншот виртуального кабеля VB-Audio

Для поддержки одного виртуального кабеля доступны 32-битные и 64-битные драйверы. Этот кабель поддерживает 8 каналов (7.1-канальный объемный звук), может обрабатывать частоту дискретизации 96 кГц и имеет регулируемый размер буфера.

5

Тогда есть несколько драйверов, работающих даже без физической звуковой карты:

но эти двое не имеют возможности применять эффекты, AFAIK.

2

Я нашел бесплатный API с открытым исходным кодом под названием Jack, который, по-видимому, учитывает оба ваших запроса.

Есть ряд приложений, которые используют Джек, которые предлагают то, что вы просили.

С их сайта:

JACK - это система для обработки звука в реальном времени с низким уровнем задержки (и MIDI). Он работает на GNU/Linux, Solaris, FreeBSD, OS X и Windows (и может быть перенесен на другие POSIX-совместимые платформы). Он может подключать несколько различных приложений к аудиоустройству, а также позволяет им обмениваться аудио между собой. Его клиенты могут работать в своих собственных процессах (то есть как обычные приложения) или могут работать на сервере JACK (то есть как "плагин"). JACK также поддерживает распределение обработки звука по сети, как в быстрых и надежных локальных сетях, так и в медленных, менее надежных глобальных сетях.

Мне интересно знать, работает ли это для того, что вы делаете.

1

Если вы можете иметь дело только с поддержкой Windows Vista и более поздних версий , вы можете запрограммировать пользовательские эффекты в стек аудио (график аудиоустройства, размещенный в audiodg.exe) напрямую для приложений, использующих следующие API:

  • WinMM (самый старый и самый совместимый звуковой API в Windows)
  • DirectSound
  • WASAPI в режиме совместного использования

Следующие файлы не поддерживаются:

  • Потоковое ядро (KS)
  • WASAPI в эксклюзивном режиме
  • ASIO

Функция , которая позволяет программировать собственные фильтры называются Audio Processing Objects и больше информации от корпорации Майкрософт здесь (должно быть стабильной связь) более подробно здесь.

Обратите внимание, что все это смехотворно легко с Gstreamer и Pulseaudio на Linux; если вы можете получить подобный стек, чтобы он стал бэкендом для всех аудиофайлов Windows, вам не придется делать все уродливые махинации реализации sAPO.

0

Один способ сделать то же самое; хотя технически это не то, о чем вы просите, это использовать виртуальное звуковое петлевое устройство, такое как Virtual Audio Cable. Такое программное обеспечение создает новые виртуальные отправляющие и принимающие устройства, которые можно использовать, например, для получения выходных данных звукового устройства Windows по умолчанию, установки виртуального устройства и отправки его в приложение обработки звука. Таким образом, плагин отсутствует в драйвере, но вы все равно можете получить его, отправив звук на звуковое устройство по умолчанию. Затем вы должны использовать драйвер ASIO для низкой задержки. Если ваша звуковая карта не является аудиофильным устройством, то, вероятно, она не поставляется с драйвером ASIO; хотя я предлагаю вам все равно проверить. Если это не так, используйте ASIO4ALL, который предоставляет драйвер ASIO практически для всех аудиоустройств. Затем вам понадобится платформа, которая говорит на ASIO и, вероятно, использует VST-эффекты. Возможно, также можно использовать Protools, но для этого приложения это излишне. Жнец - одна недорогая возможность; и у него есть демо-версия с неограниченным сроком действия. Есть и бесплатные. Здесь важно то, что он может создавать звуковые эффекты в режиме реального времени, например, не все редакторы волновых файлов. Затем вы запускаете приложение, создаете трек, выбираете свое петлевое устройство для входа и драйвер ASIO звуковой карты для выхода, подключаете свой VST-эффект (Reaper поставляется с хорошим набором простых эффектов) и включаете мониторинг на отслеживать (проверьте справку для получения информации о том, как это сделать). Звучит запутанно, но на самом деле можно начать довольно быстро. Reaper даже перезагружает последний использованный проект по умолчанию.

0

Несвободный, но, возможно, полезный для эффектов - DMMF Virtual Audio Stream. Также есть виртуальная звуковая карта Dante. Вы нашли что-нибудь полезное к этому времени?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .