Аудио: Как установить уровень микрофона по умолчанию? - PullRequest
0 голосов
/ 31 января 2012

Этот сводит меня с ума:

На компьютере Vista +, предназначенном для этого приложения воспроизведения / записи звука, мне нужно, чтобы мое приложение обеспечивало максимальный уровень микрофона (по умолчанию). Как мне это сделать?

Я нашел Core Audio lib , нашел, как подключить IMMDevice к микрофону по умолчанию. И что теперь?

Документы заставляют меня думать, что мне нужен указатель интерфейса ISimpleAudioVolume из моего IMMDevice , но как мне это сделать?

Обратите внимание, что меня интересует любой программный способ установки этого микроуровня (будь то Core Audio или что-то еще). Идеально для всей системы, но для всего приложения в порядке.

ТИА

1 Ответ

1 голос
/ 31 января 2012

Хитрость в том, что в Core Audio устройства записи (также называемые захватом) и рендеринга не считаются разными (если, конечно, вы не погружаетесь слишком глубоко), в отличие от прежних API, таких как waveXXX, где есть разныеAPI для устройств ввода и вывода.

Таким образом, этот полный пример от Ларри Остерман , который устанавливает громкость динамика, можно изменить, установив громкость микрофона, просто изменив eRender до eCapture в вызове перечислителя, который возвращает устройство по умолчанию.

Спасибо, Ларри!

...