2016-05-13 11 views
0

Ich arbeite mit iOS mit Swift. Ich möchte eine Videodatei mit AVPlayer in Swift laden.
Ich konnte ein Bild und eine Textdatei vom lokalen Server laden. Aber ich konnte keine Videodatei laden. Dies ist der Code, den ich verwende.Ich kann keine Videodatei vom lokalen Server in Swift laden

let movieUrl = NSURL(string: "http://akjfsjf/ajdfl/ajkf/car.mp4") 
let player = AVPlayer(URL: movieUrl!) 
let playerController = AVPlayerViewController() 

playerController.player = player 
self.addChildViewController(playerController) 
self.view.addSubview(playerController.view) 
playerController.view.frame = self.view.frame 

player.play() 

Antwort

0

Ich habe versucht, mit folgenden URL und function

func playvideo(){ 

     let movieUrl = NSURL(string: "http://www.w3schools.com/html/movie.mp4") 
     let player = AVPlayer(URL: movieUrl!) 
     let playerController = AVPlayerViewController() 
     playerController.player = player 
     player.play() 
     self.addChildViewController(playerController) 
     self.view.addSubview(playerController.view) 
     playerController.view.frame = self.view.frame 
    } 

auch von Ihrem code ich fand Sie verwenden http statt https so müssen Sie folgende property in plist Datei hinzufügen.

enter image description here

+0

danke für anwser! eigentlich habe ich bereits eine Eigenschaft hinzugefügt, die du erwähnt hast .. es funktioniert nicht. Als ich meine URL auf Crome geschrieben habe, kann ich das Video sehen. aber als ich es auf Safari geschrieben habe .... es hat nicht funktioniert ... dann .. der lokale Server hat ein Problem ?? Ich weiß nicht, welches Problem ist .... – shin

+0

hast du versucht mit 'url', die ich in meiner' answer' hinzugefügt habe.? –

+0

@ Abhishek Sharma ja deine URL Arbeit. aber deine URL ist eine öffentliche URL. nicht wahr? Mein Fall ist privater Server, meine eigene Server-URL funktioniert nicht. Was ist anders zwischen meiner URL-Breite? – shin

0

Versuchen Sie dieses,

import UIKit 
import AVKit 
import AVFoundation 


class ViewController: UIViewController { 

var playerVC : AVPlayerViewController! 
var playerItem : AVPlayerItem! 
var player : AVPlayer! 
var playerLayer: AVPlayerLayer! 

override func viewDidAppear(animated: Bool) { 

      let url = NSURL.init(fileURLWithPath: "your file path") 

      self.playerItem = AVPlayerItem.init(URL: url!) 
      self.player = AVPlayer.init(playerItem: self.playerItem) 
      self.playerVC = AVPlayerViewController.init(); 
      self.playerVC.player = self.player; 
      self.player.currentItem!.playbackLikelyToKeepUp 

      self.presentViewController(self.playerVC, animated: true) {() -> Void in 
       self.playerVC.player?.play() 
     } 

    } 
} 

hoffe, das hilft!

+0

hast du überprüft, ob dein Code funktioniert oder nicht? Als ich deinen Code kompiliert habe, hat es nicht funktioniert. Bitte überprüfe deinen Code und ändere deinen Code ... danke – shin

+0

Ich habe deinen Code geändert und kompiliert .. aber leider hat es nicht funktioniert ... obwohl ich "http://clips.vorwaerts-gmbh.de/big_buck_bunny" verwende .mp4 ", Ihr Code hat nicht funktioniert – shin

Verwandte Themen