我如何使用Stephen Celis的精彩SCListener单身人士?
(http://stephencelis.com/2009/03/02/now-i-just-need-an-audience.html)
我想从非常简单的事情开始......比如在textview中显示输入音量或者只是在侦听器检测到某些内容时显示UIImage。
非常感谢任何帮助!
谢谢!
答案 0 :(得分:1)
你不明白,SCListener是一个非常简单的课程。
将AudioToolbox框架添加到您的项目中,然后将Stephen的示例代码包含在您的源文件中。
我怀疑你的问题实际上是“如何让我的应用响应SCListener的返回值?” SCListerner并非异步。你需要轮询它以获得peakValues。
为了您的使用,我建议您设置一个计时器,或者扩展SCListener,以便在达到峰值时生成回调。
答案 1 :(得分:1)
blowTimer = [NSTimer timerWithTimeInterval: 1
target: self
selector: @selctor(checkBlow)
userInfo: nil
repeats: YES];
[[NSRunLoop currentRunLoop] addTimer: blowTimer
forMode: NSDefaultRunLoopMode];
[[SCListener sharedListener] listen];
这段代码基本上会启动监听器,并且每秒调用checkBlow方法。
checkBlow的代码如下所示:
- (void) checkBlow
{
if ([SCListener sharedListener] != nil)
{
Float32 volume = [[SCListener sharedListener] peakPower];
if (volume > BlowingTriggerThreshold)
{
//DO SOMETHING AWESOME HERE
}
}
}
答案 2 :(得分:1)
SCListener现已过时。它早于AVAudioRecorder,它现在是SDK的一部分。请查看本教程中的音频级别:
http://www.mobileorchard.com/tutorial-detecting-when-a-user-blows-into-the-mic/