2016-03-08 29 views
1

我是iSpeech的新手,試圖在iPhone應用上實現此功能,並想知道如何識別用戶是否正在講話。例如,當麥克風處於活動狀態並且用戶說出某些內容時,我想捕獲該事件以顯示一些動畫,並在用戶靜音時停止播放動畫。iSpeech。識別用戶講話的時間

他們的api中是否有這樣的東西?或者當iSpeech已經嵌入到我的項目中時,我可以從AVaudioSession平行於iSpeech來做到這一點嗎?

請幫忙。

如果你想找出當用戶來說,你正在使用的框架一樣iSpeech,你可以設置一個計時器,找出體積謝謝

回答

0

。這將在AVAudioRecorderDelegate中發生。繼承這個類

helloWorldTimer = NSTimer.scheduledTimerWithTimeInterval(0.1, target: self, selector: Selector("sayHello"), userInfo: nil, repeats: true)

此計時器有助於保持監控量每0.1秒。因此,如果它是一陣聲音,它仍然會被檢測出來。

此函數顯示每0.1秒的音量。當麥克風處於活動狀態時,使用定時器使該功能有效,如上所示。

當麥克風關閉時,取消激活定時器。簡單

你想的任何其他動畫,寫他們

func sayHello() 
{ 
    if (soundRecorder?.recording == true) { 
     soundRecorder?.updateMeters(); 
     let power:Float = soundRecorder!.averagePowerForChannel(0) 
      write your animation etc based on the power (volume) here 
     print("Volume is \(power)"); 
    } 
}