Играем в HLS m3u8 на iOS 9

У меня проблема с воспроизведением видеопотоков HLS m3u8. Я создал новый проект с целевой iOS9 и использую AVPlayer для воспроизведения видеопотока. Пока тестовый поток работает, все остальные видеопотоки, которые я использую в своих приложениях для Windows и Android, не работают с классом iOS AVPlayer. Не могли бы вы посоветовать, можно ли настроить AVPlayer или какую стороннюю современную библиотеку можно использовать? Обновление: Пробовал демо-приложение Vitamio, оно работает.

Это код, который я использую:

    @IBAction func pressed(sender: AnyObject) {
// this url work, all others not
        let url = NSURL(string:"http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8")
        let player = AVPlayer(URL: url!)
        let playerController = AVPlayerViewController()

        playerController.player = player
        self.addChildViewController(playerController)
        self.myView.addSubview(playerController.view)
        playerController.view.frame = self.myView.frame

        player.play()
    }

person Anton    schedule 11.11.2015    source источник
comment
У меня работают другие потоки m3u8. Иногда я нахожу тот, который работает на iPhone 6, но не на 5S (той же версии iOS), что странно. Какую ошибку вы получаете с другими вашими потоками?   -  person Graham Perks    schedule 11.11.2015
comment
Здравствуйте, я открыл заявку в службу поддержки, инженер службы поддержки Apple сказал, какие потоки имеют нестандартный формат, когда я пытаюсь воспроизвести их, появляется просто черный экран с перечеркнутым знаком Play   -  person Anton    schedule 11.11.2015
comment
попробовал Vitamio с DFVideoPlayer, есть проблемы с производительностью на iPad Air, и многие потоки не воспроизводятся, но эти потоки работают на медиаплеере Android, есть ли альтернатива?   -  person Anton    schedule 12.11.2015
comment
Что было нестандартного в файлах, которые вы пытаетесь воспроизвести?   -  person Graham Perks    schedule 12.11.2015
comment
Я думаю, поскольку эти потоки (не файлы) могут воспроизводиться на всех других проигрывателях и платформах, они соответствуют какому-то стандарту, я не являюсь экспертом в HLS.   -  person Anton    schedule 13.11.2015
comment
Сначала проверьте свое видео с помощью: hlsplayer.net .. передать url m3u8 url и воспроизвести ... проверить его поток играет или нет   -  person Anny    schedule 06.04.2016


Ответы (1)


эта проблема была решена службой поддержки Apple:

"Служба безопасности транспорта приложений заблокировала загрузку ресурсов HTTP с открытым текстом, поскольку она небезопасна. Временные исключения можно настроить с помощью файла Info.plist вашего приложения.

Мы рекомендуем пройти сеансы 706, 711 из WWDC 2015 для получения более подробной информации. Также рекомендуется пройти через ресурс разработчика NSAppTransportSecurity "

person Anton    schedule 09.04.2016
comment
Обратите внимание, что NSAllowsArbitraryLoads не решает эту проблему, как и все остальное. С AVPlayer вы должны добавить явные домены исключений, чтобы разрешить небезопасное воспроизведение HTTP-видео. - person user3344977; 24.11.2016