C++ 播放波形时的Portaudio高音噪音

C++ 播放波形时的Portaudio高音噪音,c++,wave,portaudio,C++,Wave,Portaudio,我正在尝试使用portaudio库播放简单的wave文件 我认为它应该相当简单,所以我写了尽可能简单的回调。 我的波形是每采样16位,2个通道,所以我假设将整数粘贴到输出流是可以的(每整数采样) 这些是我的输出参数。也许可以先验证一下您的“假设”?我也尝试过,因为示例格式是paInt16。也许我不明白输出缓冲区是如何工作的 int *out = (int*)outputBuffer; for(int i=0; i<framesPerBuffer; i+=4 ) *out++ = *

我正在尝试使用portaudio库播放简单的wave文件

我认为它应该相当简单,所以我写了尽可能简单的回调。 我的波形是每采样16位,2个通道,所以我假设将整数粘贴到输出流是可以的(每整数采样)


这些是我的输出参数。

也许可以先验证一下您的“假设”?我也尝试过,因为示例格式是paInt16。也许我不明白输出缓冲区是如何工作的
int *out = (int*)outputBuffer;
for(int i=0; i<framesPerBuffer; i+=4 )
    *out++ = *(reinterpret_cast<int*>(&data->chunk[i]));
outputParameters.channelCount = 2;
outputParameters.sampleFormat = paInt16 ;
//    outputParameters.suggestedLatency = Pa_GetDeviceInfo( outputParameters.device )->defaultLowOutputLatency;
outputParameters.suggestedLatency = Pa_GetDeviceInfo( outputParameters.device )->defaultHighOutputLatency;
outputParameters.hostApiSpecificStreamInfo = NULL;