Я основываю свой код на примере Portaudio paex_record_file.c. Одним из параметров обратного вызова является inputBuffer, и я хотел использовать его данные для вычисления других чисел с типом double/float. Я изменил файл с .raw на .txt, но блокнот по-прежнему не может его прочитать, что заставляет меня поверить, что его данные на самом деле не закодированы как число. Как данные хранятся в inputBuffer и как с ними выполнять арифметические действия (складывать, умножать, делить и т. д.)?
Вот как я инициализировал inputParameters:
inputParameters.device = Pa_GetDefaultInputDevice(); /* default input device */
if (inputParameters.device == paNoDevice) {
fprintf(stderr,"Error: No default input device.\n");
goto error;
}
inputParameters.channelCount = 2; /* stereo input */
inputParameters.sampleFormat = paFloat32;
inputParameters.suggestedLatency = Pa_GetDeviceInfo( inputParameters.device )->defaultLowInputLatency;
inputParameters.hostApiSpecificStreamInfo = NULL;
Этот вопрос в некоторой степени связан с печатью поплавков из функции обратного вызова аудиовхода ( без ответа).