Im пытается отобразить локальное записанное видео в AVPlayerLayer, который работает иногда. Я слышу звук из записанного видео, но не вижу видео. Иногда работают как видео, так и аудио, иногда только аудио.AVPlayerLayer показывает черный экран, но звук работает
Я пробовал как с AVPlayerLayer и AVPlayerViewController, но та же проблема возникает в обоих случаях. Так что это не из-за неправильной работы фреймов.
Пример кода AVPlayerViewController:
let player = AVPlayer(url: url)
let playerController = AVPlayerViewController()
playerController.player = player
self.present(playerController, animated: true) {
player.play()
}
Пример кода AVPlayerLayer:
let asset = AVAsset(url: url)
let item = AVPlayerItem(asset: asset)
self.player = AVPlayer(playerItem: item)
self.player?.addObserver(self, forKeyPath: "status", options: NSKeyValueObservingOptions(), context: nil)
self.playerLayer = AVPlayerLayer(player: self.player!)
self.playerLayer?.frame = imageView.bounds
imageView.layer.addSublayer(self.playerLayer!)
Редактировать 1:
При наблюдении статус игрока, ошибка является nil
и статус является readyToPlay
Edit 2:
работает хорошо, если URL является маловероятной.
Edit 3:
Кажется работать, если я подожду пару секунд после того, как видео завершила экспорт. Может ли быть что-то иметь с файлом, не написанным на 100% файловой системой?
Редактировать 4: Video проблемы, в этом случае он играл в третий раз.
Показать код экспорта. – matt
Экспортный код можно найти здесь. http://pastebin.com/aiSvV6i8 –
Итак, есть _multiple_ видео? – matt