Когда я пытаюсь использовать AVURLAsset.init
для аудио, имеющего URL-адрес, похожий на приведенный ниже. Ниже приведен пример URL.
https://web -web.test.net / media / abcdefghijklmnopqrst? Sr = abcdefghijklmnopqrst
Calling
audioAsset.statusOfValue()
возвращается как .failed
. Пожалуйста, дайте мне знать, если есть какие-либо sugesions. Ниже приведен полный код, который я написал.
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
}
})
}
}