Как изменить объем захвата петли WASAPI при изменении объема системы? - PullRequest
0 голосов
/ 23 февраля 2020

Я использую WASAPI с режимом захвата шлейфа для записи звука с моей звуковой карты ноутбука Windows 10. Я следовал примеру здесь: https://docs.microsoft.com/en-us/windows/win32/coreaudio/capturing-a-stream, и он отлично работает.

Однако, когда я выключаю компьютер или увеличиваю или уменьшаю громкость, громкость записи не изменяется , Я хотел бы, чтобы он изменился соответственно и был отключен соответствующим образом, вместо того, чтобы всегда играть. Я рассмотрел добавление IAudioEndpointVolume через функцию Activate (https://docs.microsoft.com/en-us/windows/win32/api/mmdeviceapi/nf-mmdeviceapi-immdevice-activate) к моему IMM_Device (который уже получает Activate с IAudioClient3), но код теперь падает при вызове Initialize.

Кто-нибудь был в состоянии сделать это? Любые советы о том, где go с этого момента?

Большое спасибо!

1 Ответ

0 голосов
/ 26 февраля 2020

Однако, когда я выключаю звук компьютера или увеличиваю или уменьшаю громкость, громкость записи не изменяется.

Регуляторы громкости

Как объяснено в Audio Sessions, Sndvol - это программа управления громкостью системы. Он отображает регуляторы громкости для конечных устройств аудио-рендеринга в системе. ( В настоящее время не отображаются элементы управления громкостью для конечных устройств захвата звука. ) Чтобы просмотреть элементы управления громкостью для определенного устройства, нажмите «Устройство» в строке меню и выберите имя устройства из списка доступных. устройства.

Возможно, проблема здесь. Вы отключаете звук, а не захватываете звук.

...