2016-07-10 11 views
4

Verwenden Sie UIImagePickerController, um ein Video aus meiner Bibliothek auszuwählen. Ich muss die NSData meiner Videodatei extrahieren. Ich benutze den folgenden Vorgang, um ein Video aus meiner Bibliothek auszuwählen, aber meine Daten scheinen nichts zu sein, aber mein AVPlayer spielt das Video von der resultierenden NSURL ab, also weiß ich, dass das Problem nicht mit der NSURL ist. Wie kann ich die NSData meiner ausgewählten Videodatei extrahieren?Swift get NSData eines Videos aus der Fotobibliothek

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) { 
    let fileURL = info[UIImagePickerControllerReferenceURL] as! NSURL! 

    let data = NSData(contentsOfURL: fileURL) 
    print(data) 

    player = AVPlayer(URL: fileURL) 
    let playerLayer = AVPlayerLayer(player: player) 
    playerLayer.frame = CGRectMake(0, 0, 300, 300) 
    self.view.layer.addSublayer(playerLayer) 
    player.play() 

    self.dismissViewControllerAnimated(true, completion: nil) 
} 
+0

Siehe diesen Link http://stackoverflow.com/questions/33189012/swift2-how-to-convert-video-in-gallary-to-nsdata- in-swift-2 – Arsalan

+0

Ich habe es schon gesehen, löste mein Problem nicht ... –

Antwort

7

Versuchen UIImagePickerControllerReferenceURL zu

UIImagePickerControllerMediaURL

Statt lassen data = NSData (contentsOfURL: fileURL) Ändern

let video3 = versuchen NSData (ContentsOfURL: videoDataURL, Optionen: .DataReadingMappedIfSafe)

+0

Arbeitete gut, vielen Dank :) –

+0

@NaciKurdoglu Bitte markieren Sie dies als die angenommene Antwort, wenn es Ihnen geholfen hat. –

+0

@NaciKurdoglu froh, dass es dir geholfen hat :) auch bitte als richtig markieren. – Arsalan