Я пытался воспроизвести .wav
из 7 минут, 17 минут, 20 минут, работает нормально, но при попытке воспроизвести аудио продолжительностью 1,04 часа это не работает.
И я уверен, что это так.Используемый мной wav-файл не поврежден, так как он используется приложением для Android, и они могут получить длительность.
При воспроизведении аудио продолжительностью 1,04 часа это приводит к .failed
, код ниже
if let url = URL(string: urlString) {
audioAsset = AVURLAsset.init(url: url)
if let audioAsset = audioAsset {
let keys = ["playable"]
audioAsset.loadValuesAsynchronously(forKeys: keys, completionHandler: {
let playableStatus = audioAsset.statusOfValue(forKey: keys[0], error: nil)
switch playableStatus {
case .unknown, .loading, .failed, .cancelled:
return
case .loaded:
DispatchQueue.main.async {
let playerItem = AVPlayerItem.init(asset: audioAsset)
self.audioPlayer.insert(playerItem, after: nil)
self.audioPlayer.play()
})
}
break
}
})
}
}
Я пытался воспроизвести аудио 1 час без AVURLAsset
, как показано ниже. Код не воспроизводился.
let playerItem = AVPlayerItem.init(url: url)
self.audioPlayer.insert(playerItem, after: nil)
self.audioPlayer.play()
Было бы очень полезно, если бы я нашел решение для моей проблемы.или возможная причина, почему это происходит?