0

从 读取低级音频时QAudioInput,生成的数据是QByteArray. 设置时QAudioInput,您可以从数据中告诉它您想要的样本类型。如果你在那里指定浮点数,这是否意味着其中的数据QByteArray已经是这种格式?如果是,您是否只是将输出数据转换为读取浮点数组?如果不是如何存储以获取预期的浮点数?

4

1 回答 1

0

所有计算机内存都是单独的字节,但您可以在这些字节中存储任何您想要的内容。不要误认为QByteArray,QVector<char>QByteArrayQt 的“通用内存缓冲区”类。

如果记录格式是浮点数,那么只需从字节数组中读取浮点数,无需转换,事实上它会给你更多的样本,因为浮点数大于一个字节,你会得到垃圾。

您可以直接访问字节数组data指针并size() / sizeof(float)从中读取浮点数。

于 2014-11-14T12:53:57.547 回答