将PCM s16be阵列注入到奴佛卡因音频管理器中


致@alexbw和朋友们:首先感谢这段很棒的代码。我在字节数组中有pcm数据(signed 16位大端),我想用Novocaine AudioManager setOutputBlock来播放它。我明白我首先需要转换为浮点数组。或者有更快的方法吗?干杯菲利普

晚了,但对于其他正在阅读的人:

你可以在这里使用加速框架:

float *float_data = malloc(sizeof(float) * numFrames); vDSP_vflt16(my_s16_data, 1, float_data, 1, numFrames); //Scaling [-32768, 32768] to [-1, 1] float scale = 1.0 / (float)INT16_MAX; vDSP_vsmul(float_data, 1, &scale, float_data, 1, numFrames);

和"float_data"现在有了等价的float

最新更新