我已经从 talkHere 示例中复制了 AQRecorder 以及所有其他所需的文件。这样做之后,由于编译错误,我将链中使用它的所有类重命名为 .mm,现在似乎已解决。
但是我仍然不知道如何使用 AQRecorder 类。该示例中还有另一个名为 SpeakHereController 的类,但它也不起作用。
这是我最近尝试的代码:
#import "AQRecorder.h"
AQRecorder recorder;
[recorder startRecord];
错误:接收器类型“AQRecorder”错误
我知道这不起作用有几个原因,一是它没有调用构造函数,而且我相信这应该是一个指针。
我有很多不同的变体,就像我说的,我也尝试使用 SpeakHereController:
SpeakHereController * recorder;
recorder = [[SpeakHereController alloc]init];
[recorder startRecord];
然而这给出了错误:
i386 架构的未定义符号:“AQPlayer::StopQueue()”,
参考自:
-SpeakHereController.o 中的[SpeakHereController stopPlayQueue]
“AQPlayer::PauseQueue()”,引用自:
-SpeakHereController.o 中的[SpeakHereController PausePlayQueue]
“AQPlayer::DisposeQueue(unsigned char)”,引用自:
-SpeakHereController.o 中的[SpeakHereController stopRecord]
“AQPlayer::CreateQueueForFile(__CFString const*)”,引用自:
-SpeakHereController.o 中的[SpeakHereController stopRecord]
“AQPlayer::StartQueue(signed char)”,引用自:
-SpeakHereController.o 中的[SpeakHereController 播放:]
SpeakHereController.o 中的interruptListener(void*, unsigned long)
“AQPlayer::AQPlayer()”,引用自:
-SpeakHereController.o 中的[SpeakHereController awakeFromNib]
“AQPlayer::~AQPlayer()”,引用自:
-SpeakHereController.o 中的[SpeakHereController dealloc]
我最终用了这个
SpeakHereController * recorder;
recorder = [[SpeakHereController alloc]init];
[recorder awakeFromNib];
然而,我只需要录音机,为了使其工作,我必须注释掉文件中的所有 AQPlayer 引用。不管出于什么原因,它的播放方法有一堆链接器错误。
调用awakeFromNib的原因是该方法很像init,初始化AQRecorder/AudioQueue的所有设置
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)