0

我在这里尝试做的是连接到 IP 摄像机并使用 AVPlayView 显示流/提要。

如果我播放本地视频,一切正常:

 let path = NSBundle.mainBundle().pathForResource("video-bg", ofType: "mp4")
 let url = NSURL.fileURLWithPath(path!)
 playerItem = AVPlayerItem(URL: url)
 player = AVPlayer(playerItem: playerItem!)
//Display Stream on AVPlayerView 
self.avPlayerView.player = player

但是当我尝试使用以下代码连接到相机时,它不起作用:

let url = NSURL.fileURLWithPath("http://96.10.1.168/")
playerItem = AVPlayerItem(URL: url)
player = AVPlayer(playerItem: playerItem!)
//Display the stream       
self.avPlayerView.player = player
  • 这是从Google找到的公共 IP 摄像机,它可以在我的浏览器上运行。
  • 编辑 info.plist 以允许连接:

    <key>NSAllowsArbitraryLoads</key>
    <true/>
    <key>NSExceptionDomains</key>
    <dict>
        <key>http://96.10.1.168/</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
            <true/>
            <key>NSTemporaryExceptionMinimumTLSVersion</key>
            <string>TLSv1.1</string>
        </dict>
    </dict>
    

似乎我正在接近这个错误,所以有人可以指出我正确的方向并告诉我正确的方法是什么?

4

1 回答 1

0

页面http://96.10.1.168/返回 HTML,它不返回视频流。

页面的 HTML 中有 JavaScript,而这个 JavaScript 是在您的浏览器中加载视频的内容。

您不能http://96.10.1.168/直接与 AVPlayer 一起使用。

于 2016-05-27T11:38:50.017 回答