1
我有一個簡單的應用程序,允許用戶錄製聲音然後播放。但是,我發現保存和刪除的錄音次數越多,音頻播放越慢。這是發生了什麼音質的例子:Swift:Audio播放/停止播放時間越來越遲緩
如果在Xcode我在模擬器退出應用程序,並重新打開它,音頻質量恢復正常,但無論出於什麼原因轉到應用程序中的不同UIViewController,然後回到主屏幕(所以它完全重新加載,並且viewDidLoad()再次運行等)將不會使音頻質量恢復正常。
我不知道是什麼原因導致音頻變得越來越滯後,因爲越來越多的錄音被製作和刪除,我想知道是否有一些代碼可以完全重置音頻設置。
這基本上是我如何錄製音頻:
session.setCategory(AVAudioSessionCategoryPlayback,error:nil)
和錄製音頻回放的正常方式:
var recordSettings = [
// AVFormatIDKey: kAudioFormatAppleLossless,
AVEncoderAudioQualityKey : AVAudioQuality.Max.rawValue,
AVEncoderBitRateKey : 320000,
AVNumberOfChannelsKey: 2,
AVSampleRateKey : 44100.0
]
var session=AVAudioSession.sharedInstance()
session.setCategory(AVAudioSessionCategoryPlayAndRecord,error:nil)
audioRecorder = AVAudioRecorder(URL: filePathForRecordedAudio, settings: recordSettings, error:nil)
audioRecorder.delegate = self
audioRecorder.meteringEnabled=true
audioRecorder.prepareToRecord()
audioRecorder.record()
然後,當記錄是由我運行該用戶停止:
var player:AVAudioPlayer = AVAudioPlayer()
player = AVAudioPlayer(contentsOfURL: NSURL(string: "\(locationOfRecordedAudio)"), error: nil)
player.play()
您是如何解決您的問題的? – SwiftArchitect