gpt4 book ai didi

ios - 如何从 iOS 中的 AudioBuffer 的 mData 字段中读取数据?

转载 作者:塔克拉玛干 更新时间:2023-11-02 10:19:19 25 4
gpt4 key购买 nike

我在 AudioBuffer 中有某些数据(来自录音)。在将此缓冲区写入文件之前,我想对 PCM 样本做一些处理。如何像使用 fread 读取一样从 AudioBuffer 的 mData 字段中读取?我可以在 .mm 或 .m 文件中使用 fread 吗?

最佳答案

AudioBuffer 结构将其数据保存在内存中,而不是文件中。因此 fread 不相关。mBuffer 只是一个指向数据开头的指针,您可以使用该结构的其他两个字段来正确读取数据。来自 this link :

struct AudioBuffer {
UInt32 mNumberChannels;
UInt32 mDataByteSize;
void *mData;
};

mDataByteSize 告诉你缓冲区有多少字节(所以你不会访问内存通过缓冲区的末尾),mNumberChannels 告诉你如何重新-订购您的数据,例如如果缓冲区包含两个 channel ,则数据是交错的,即样本 1,3,5,... 来自 channel 1,而 2,4,6,... 来自 channel 2。

请记住,您还负责将数据转换为正确的类型。

关于ios - 如何从 iOS 中的 AudioBuffer 的 mData 字段中读取数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5388711/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com