iphone - "Cannot convert ' float ' to float**"错误

标签 iphone objective-c ios audio core-audio

我已将来自麦克风输入的样本写入 Float32 数组,现在我想将该样本数组转换为 WAV 文件。

Apparently a good way to do it是使用 the DIRAC library 中的实用程序类,因为它的 EAFWrite 类有一个 writeFloats 方法应该可以解决这个问题。

当我调用 EAFWrite 的 writeFloats 方法时,出现“无法将‘float’转换为 float**”错误。这是调用:

[mWriter writeFloats:128 fromArray:mySession];

数组是这样初始化的: Float32 mySession[10000000] = {0};

你觉得哪里不对?这是关于指针的问题吗?

最佳答案

看一下 writeFloats:fromArray: 源代码(它包含在库中,doncha kno)表明 data 参数实际上应该是一个数组指针数组, 每个 channel 有一个数组指针。假设您在之前发送给 mWriter 的消息中指定了一个 channel ,所以现在您可以这样做:

Float32 *channelsData[1] = { mySession };
[mWriter writeFloats:128 fromArray:channelsData];

或者如果你想变得非常棘手:

[mWriter writeFloats:128 fromArray:(Float32 *[]){ mySession }];

关于iphone - "Cannot convert ' float ' to float**"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8322919/

相关文章:

iphone - SentTestCase 不会将 UnitTest 失败突出显示为代码中的错误

iphone - <BTSViewController : 0x865c520> 的开始/结束外观转换调用不平衡

iphone - 将对象从NSMutableDictionary添加到NSMutableArray

iphone - 如何在持续时间后更改UIImageView的UIImage(闪烁效果)

ios - 索引 iCarousel 中 UIView 的多选

iOS - 可编辑表单(联系应用程序样式)

iOS:-[__NSCFString allKeys]:无法识别的选择器发送到实例 0x7976c750

objective-c 二进制表达式的无效操作数 double 到 double

objective-c - cocoa 左栏菜单

iOS 8.4 MPNowPlayingInfoCenter 跳过/上一个消失