我有一個應用程序需要使用麥克風錄製用戶語音。我正在嘗試製作一個speech to text
。檢測輸入音頻的電平?
我的工作與SpeechKit.framework
以下是用我的代碼:
-(void)starRecording{
self.voiceSearch = [[SKRecognizer alloc] initWithType:SKSearchRecognizerType
detection:SKShortEndOfSpeechDetection
language:[[USER_DEFAULT valueForKey:LANGUAGE_SPEECH_DIC] valueForKey:@"record"]
delegate:self];
}
- (void)recognizer:(SKRecognizer *)recognizer didFinishWithResults:(SKRecognition *)results {
long numOfResults = [results.results count];
if (numOfResults > 0) {
// update the text of text field with best result from SpeechKit
self.recordString = [results firstResult];
[self sendChatWithMediaType:@"messageCall" MediaUrl:@"" ContactDetail:@"{}" LocationDetail:@"{}"];
[self.voiceSearch stopRecording];
}
if (self.voiceSearch) {
[self.voiceSearch cancel];
}
[self starRecording];
}
這使得SKRecognizer
是一直開放,那件事降低應用程序的性能。
我想在麥克風檢測到輸入音頻時啓動SKRecognizer
。
我有一個方法呢?麥克風爲我輸入聲音時調用的方法還是總是返回檢測到的音頻電平的方法?
謝謝!
您是否使用AvsudioRecorder類錄製音頻? – Jageen