У меня есть обратный вызов аудиоввода, который принимает входной звуковой буфер и выполняет fft в буфере для использования в других частях приложения. Выходной буфер не изменяется. Я хотел бы поймать звук, записанный на выходное аудиоустройство по умолчанию другими приложениями. Однако при инициализации потока с устройством вывода в качестве входного сигнала звук порта вызывает ошибку «недопустимое количество каналов». Можно ли поймать все аудио, записанные на устройство вывода, используя аудио порт? Код инициализации потока ниже:Вывод аудиовыхода, записанный на выходное аудиоустройство из порта Audio
PaStreamParameters inputParams;
inputParams.device = Pa_GetDefaultOutputDevice();
inputParams.channelCount = 2;
inputParams.sampleFormat = paFloat32;
const PaDeviceInfo * inputInfo = Pa_GetDeviceInfo(inputParams.device);
inputParams.suggestedLatency = inputInfo->defaultLowOutputLatency;
inputParams.hostApiSpecificStreamInfo = NULL;
error = Pa_OpenStream(&_pInputStream,
&inputParams,
NULL,
inputInfo->defaultSampleRate,
paFramesPerBufferUnspecified,
0,
coreAudioCallback,
this);
if(error != paNoError){
printf("Port audio error = %s", Pa_GetErrorText(error));
}