【问题标题】:Swift: Parse does not load a video from URLSwift:Parse 不会从 URL 加载视频
【发布时间】:2021-11-02 23:38:41
【问题描述】:

我正在尝试将视频从后端流式传输到我的设备。我有一个来自后端的视频 url,但屏幕没有显示任何内容。但是,它的 youtube 网址有效。谁能指导我为什么该视频无法播放以及如何播放?我正在使用 pod 'YouTubePlayer' 播放视频。

 let cell: VideoTableViewCell = tableView.dequeueReusableCell(withIdentifier: "VideoTableViewCell") as! VideoTableViewCell
    var query = PFQuery(className:"Videos")

   query.getObjectInBackground(withId: "83kli72i62") { (parseObject, error) -> Void in
      let videoFile = parseObject!["Question"] as! PFFileObject
      self.videoUrl = videoFile.url
    let url = NSURL(string: self.videoUrl! )
    cell.playerView.loadVideoURL(url as! URL)

    }

 

【问题讨论】:

  • 可能是您的视频链接的内容类型。您能否检查一下您拥有和/或共享链接的内容类型是什么?

标签: swift parse-platform pfobject pffile pbjvision


【解决方案1】:

我有一个应用程序从 firebase 提取视频并使用 avplayer 播放它们,请查看下面的代码并了解它是如何工作的

class IsoLateralLowRowViewController: UIViewController {
    @IBOutlet weak var playv: UIButton!
    
  
    let avPlayerViewController = AVPlayerViewController()
    var avPlayer:AVPlayer?


    override func viewDidLoad() {
        super.viewDidLoad()
        self.view.addBackground()
      
        let movieUrl:NSURL? = NSURL(string: "https://firebasestorage.googleapis.com/v0/b/messenger-test-d225b.appspot.com/o/test%2FTestVideo.mov?alt=media&token=bd4ccba3-b446-43bc-809e-b1152aa3c2ff")
        if let url = movieUrl {
        self.avPlayer = AVPlayer(url: url as URL)
        self.avPlayerViewController.player = self.avPlayer
        }
        NotificationCenter.default.addObserver(self, selector: #selector(playerDidFinishPlaying), name: NSNotification.Name.AVPlayerItemDidPlayToEndTime, object: avPlayerViewController.player?.currentItem)
        
        
        self.present(self.avPlayerViewController, animated: true) { () -> Void in
                self.avPlayerViewController.player?.play()        // Do any additional setup after loading the view.
        }
    }
    
    @objc func playerDidFinishPlaying(note: NSNotification) {
            self.avPlayerViewController.dismiss(animated: true)
        }
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()

    }
   

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-15
    • 1970-01-01
    • 2023-03-02
    • 1970-01-01
    • 1970-01-01
    • 2012-10-06
    • 2013-12-04
    • 1970-01-01
    相关资源
    最近更新 更多