Загрузка видео с URL-адреса в представление проблематично - PullRequest
0 голосов
/ 07 марта 2019

Так что я переключаю текущий код с загрузки живого канала из UIWebView в сам UIView с намерением перемещаться по Twitch / ESPN-подобному видео, я могу загрузить видео с URL, но не могу до сих пор, чтобы загрузить его в UIView, который будет встроенным. Это мой текущий код (я еще не пытался загрузить миниатюру или встроенный файл). Как мне двигаться дальше? будет ли загрузка UIWebView лучше в долгосрочной перспективе, но в то же время позволит мне расширить возможности позже?

import UIKit
import AVFoundation
import AVKit

class ViewController: UIViewController {
@IBOutlet weak var videoPreviewLayer: UIView!
var player: AVPlayer!
var avpController = AVPlayerViewController()

override func viewDidLoad() {
    super.viewDidLoad()
    let moviePath = Bundle.main.path(forResource: "http://hidden/index.m3u8", ofType: "m3u8")
    if let path = moviePath {
        let url = NSURL.fileURL(withPath: path)
        self.player = AVPlayer(url: url)
        self.avpController = AVPlayerViewController()
        self.avpController.player = self.player
        avpController.view.frame = videoPreviewLayer.frame
        self.addChildViewController(avpController)
        self.view.addSubview(avpController.view)
    }
    // Do any additional setup after loading the view.
}

}

1 Ответ

0 голосов
/ 07 марта 2019

Я думаю, что проблема здесь: "self.view.addSubview (avpController.view)".попробуйте свойство "AVPlayerLayer" следующим образом:

guard let videoURL = URL(string: urlString) else {
                return
            }
            let player = AVPlayer(url: videoURL)
            let playerLayer = AVPlayerLayer(player: player)
            playerLayer.frame = self.view.bounds
            self.view.layer.addSublayer(playerLayer)
            player.play()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...