Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 使用Superpowered SDK从缓冲区播放音频_Android_C++_Superpowered - Fatal编程技术网

Android 使用Superpowered SDK从缓冲区播放音频

Android 使用Superpowered SDK从缓冲区播放音频,android,c++,superpowered,Android,C++,Superpowered,我一直在尝试使用Superpowered audio SDK从缓冲区(短int)播放音频文件。目前,在每次调用process函数时,我都会传入输出缓冲区并按如下方式编写: getBufferData(short int *output, unsigned int samples) { memcpy(output, buffer + bufferPtr, samples * sizeOf(short int)); bufferPtr += samples; } 产生的音频可以识别

我一直在尝试使用Superpowered audio SDK从缓冲区(短int)播放音频文件。目前,在每次调用process函数时,我都会传入输出缓冲区并按如下方式编写:

getBufferData(short int *output, unsigned int samples) {
    memcpy(output, buffer + bufferPtr, samples * sizeOf(short int));
    bufferPtr += samples;
}
产生的音频可以识别为我试图播放的歌曲,但严重失真

通过将缓冲区中的数据写入wav文件并以这种方式测试播放,我检查了缓冲区中的数据是否符合预期

我有一种预感,memcpy程序可能过于密集,无法如此频繁地调用,但我还没有找到替代方案

我也明白,这种播放方法不是使用superpowered播放音频文件的适当方式,但对于我的用例来说是必需的


任何指导都将不胜感激

可能您有立体声/单声道问题。 您描述的示例非常适合mono