Skip to content

Instantly share code, notes, and snippets.

View gaelfoppolo's full-sized avatar

Gaël Foppolo gaelfoppolo

View GitHub Profile
pip install virtualenv
virtualenv --python=/usr/bin/python2.7 python27
source python27/bin/activate
@IBAction func recordButtonTapped() {
if (self.recognitionTask?.state == .running) {
self.recognitionTask?.finish()
self.recognitionRequest = nil
self.recordButton.isEnabled = false
} else {
try! startRecording()
}
}
private func startRecording() throws {
if let recognitionTask = recognitionTask {
recognitionTask.cancel()
self.recognitionTask = nil
}
let path = Bundle.main.path(forResource: "your-file", ofType: "mp3")
if let path = path {
let url = URL(fileURLWithPath: path)
recognitionRequest = SFSpeechURLRecognitionRequest(url: url)
private var recognitionRequest: SFSpeechURLRecognitionRequest?
@IBAction func recordButtonTapped() {
if audioEngine.isRunning {
audioEngine.stop()
recognitionRequest?.endAudio()
recordButton.isEnabled = false
} else {
try! startRecording()
}
}
private func startRecording() throws {
// 1
if let recognitionTask = self.recognitionTask {
recognitionTask.cancel()
self.recognitionTask = nil
}
// 2
let audioSession = AVAudioSession.sharedInstance()
try audioSession.setCategory(AVAudioSessionCategoryRecord)
private var recognitionRequest: SFSpeechAudioBufferRecognitionRequest?
private let audioEngine = AVAudioEngine()