2016-02-05 28 views
1

我想知道用是否有可能使用HLS一个HTTPS流媒体服务器,使用下面的代码 -您可以使用HLS从HTTPS服务器进行流式传输吗?

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.view.addSubview(playerController.view) 
     playerController.view.frame = self.view.frame 

     player.play() 

我可以从HTTP服务器流式传输,但是当我改变了网址的URL我公司生产的这是行不通的服务器,唯一的区别是我公司的视频有HTTPS在它的URL和苹果的样品视频不,我在XCode中测试在模拟器上

回答

2

是的,你可以流来自HTTPS服务器的HLS。 HLS流通过HTTP进行传输,而HTTPS只是通过TLS进行HTTP传输,大部分时间对客户端来说都是透明的。您需要的唯一一件事就是支持所有主流游戏中的HTTPS。

https://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8不起作用,因为devimages.apple.com证书无效。只需使用浏览器浏览url即可。它会警告你,并告诉你有关错误的更多信息。

我想你的公司服务器的问题是相同的 - 错误或自签名证书。

验证https服务器的另一种快速方法是用户curl。例如:

curl "https://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8" 

抱怨有:

curl: (51) SSL: no alternative certificate subject name matches target host name 'devimages.apple.com' 
+0

苹果链路是否正常工作,我公司是不是,我将如何去为HTTPS的支持加入,我公司希望有一个内嵌的视频播放器,所以我必须创建一个内嵌播放器的应用程序,用于iPhone – Gerwin

+1

尝试运行'curl '并查看会发生什么。如果curl抱怨,那么你的公司服务器有一个错误的证书。 –

+0

立即安装CURL – Gerwin

相关问题