Я хочу записать звук из динамика с помощью Waveform Audio API
.
Я искал и нашел сообщения, в которых объясняется, как использовать Waveform Audio для захвата звука с микрофона и сохранения в файл или воспроизведения. Однако никто не объясняет, как записывать звук из динамика.
Насколько я понимаю, если я предоставлю дескриптор воспроизводящего устройства в waveInOpen()
, я могу записывать звук из динамика. Здесь мне нужна помощь. Как получить ручку устройства воспроизведения? Когда я предоставляю WAVE_MAPPER (or 0) for uDeviceID
, он всегда записывает с микрофона. Если я устанавливаю любое другое значение, я всегда выхожу за пределы допустимого диапазона.
РЕДАКТИРОВАТЬ:
Я провел еще несколько исследований с тех пор, как разместил вопрос. Я нашел другие варианты / API, которые я могу использовать для записи звука. Мне нужна помощь, чтобы указать мне правильное направление, которое следует использовать для захвата звука из динамика. Я не хочу ничего необычного, связанного с большим количеством кода. Моя целевая ОС - XP и выше.
waveInOpen и микшер:
Комментарии / обсуждения по этим ссылкам намекают, что waveInOpen()
можно использовать для захвата звука из динамика. В соответствии с ними необходимо открыть Mixer. Я использовал mixerOpen()
, чтобы получить дескриптор микшера, но не знаю, как использовать этот дескриптор с waveInOpen()
.
Как записать воспроизводимый звук? < / а>
Звук из микрофона против звука из динамика
XAudio2:
Могу ли я использовать XAudio2 для захвата звука из динамика? Если да, то, пожалуйста, поделитесь образцом кода.