1
Durch Drücken der Taste ich sollte Audio für 4 Sekunden aufzeichnen und autoplay es und Schleife es für 2-mal. Ein weiterer Druckknopf Ich sollte das gleiche tun, aber vorher sollte ich vorherige Aufzeichnung löschen.Async Aufruf für Aufnahme als Autoplay als Löschen der Audio
Hier ist mein Code:
@IBAction func loopButton(_ sender: Any) {
if audioRecorder?.isRecording == false {
playButton.isEnabled = false
audioRecorder?.record(forDuration: 4.0)
audioRecorder?.stop()
audioPlayer?.stop()
do {
try audioPlayer = AVAudioPlayer(contentsOf: (audioRecorder?.url)!)
audioPlayer!.delegate = self
audioPlayer!.prepareToPlay()
audioPlayer!.numberOfLoops = 2
audioPlayer!.play()
} catch let error as NSError {
print("audioPlayer error: \(error.localizedDescription)")
}
} else {
audioRecorder?.deleteRecording()
audioRecorder?.record(forDuration: 4.0)
audioRecorder?.stop()
audioPlayer?.stop()
do {
try audioPlayer = AVAudioPlayer(contentsOf: (audioRecorder?.url)!)
audioPlayer!.delegate = self
audioPlayer!.prepareToPlay()
audioPlayer!.numberOfLoops = 2
audioPlayer!.play()
} catch let error as NSError {
print("audioPlayer error: \(error.localizedDescription)")
}
}
}
Ich sollte das asynchron tun, jemand mir mit diesem helfen könnte?
Dank