2016-07-10 2 views
4

Im используя UIImagePickerController, чтобы выбрать видео из моей библиотеки. Мне нужно извлечь NSData моего видеофайла. Я использую следующую операцию для выбора видео из моей библиотеки, но мои данные выглядят как ноль, но мой AVPlayer воспроизводит видео из полученного NSURL, поэтому я знаю, что проблема не в NSURL. Как я могу извлечь NSData моего выбранного видеофайла?Быстрое получение NSData видео из библиотеки фотографий

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

Посмотреть эту ссылку http://stackoverflow.com/questions/33189012/swift2-how-to-convert-video-in-gallary-to-nsdata- in-swift-2 – Arsalan

+0

Я уже видел это, не решил свою проблему ... –

ответ

7

Попробуйте изменить UIImagePickerControllerReferenceURL к

UIImagePickerControllerMediaURL

Вместо пусть данные = NSData (contentsOfURL: fileURL)

пусть VIDEO3 = попробовать NSData (contentsOfURL: videoDataURL, опции: .DataReadingMappedIfSafe)

+0

Работал отлично, большое вам спасибо :) –

+0

@NaciKurdoglu Просьба отметить это как принятый ответ, если он вам помог. –

+0

@ NaciKurdoglu рад, что это вам помогло :) также, пожалуйста, отметьте это как правильно. – Arsalan

Смежные вопросы