隔空播放。不显示本地视频

时间:2021-02-27 07:50:52

标签: swift airplay

我必须支持一个现成的项目。 任务是实现 AirPlay 按钮以将视频从应用程序广播到外部电视。 视频从服务器下载并存储在设备上。

默认情况下,翻译是通过以下代码实现的:

player?.allowsExternalPlayback = true
        player?.usesExternalPlaybackWhileExternalScreenIsActive = true
        
        if #available(iOS 11.0, *) {
            let routerPickerView = AVRoutePickerView(frame: CGRect(x: 100, y: 30, width: 20, height: 20))
            self.addSubview(routerPickerView)
            routerPickerView.tintColor = .red
            routerPickerView.activeTintColor = .green

            if #available(iOS 13.0, *) {
                routerPickerView.prioritizesVideoDevices = true
            }
        } else {
            // Fallback on earlier versions
        }

这是我们发现的: 如果你这样做:(从链接中获取视频)

    let url = URL(string: "https://content.jwplatform.com/manifests/vM7nH0Kl.m3u8")!
player = AVPlayer(url: url2)

电视节目如期而至, 如果是这样:(视频在设备本地托管)

let urlPath = Bundle.main.path(forResource: "IMG_0781", ofType: "MOV")!
let urlPath = Bundle.main.path(forResource: "MOV09057", ofType: "mpg")!
let urlPath = Bundle.main.path(forResource: " 1. Intro (0609) ", ofType: "mp4")!

let url2 = URL(fileURLWithPath: urlPath)
player = AVPlayer(url: url2)

那么电视就不会显示任何指定的 urlPaths。 有什么想法吗?

项目here

0 个答案:

没有答案