2016-08-23 20 views
5

Bir UIImagePicker'dan video görüntülemeye ve onu restkit API'mın verileri olarak göndermeye çalışıyorum. Ben Aygıt video nasıl ele BuradaNSData'yı bir video url'den nasıl alabilirim?

Error Domain=NSCocoaErrorDomain Code=256 "The file “asset.MOV” couldn’t be opened." UserInfo={NSURL=assets-library://asset/asset.MOV?id=B906AB1B-F311-47BA-8FE9-EE7AADDB7796&ext=MOV}

+0

Olası kopyalar [ NSCocoaErrorDomain Code = 256] (http://stackoverflow.com/questions/10106 087/nscocoaerrordomain-code-256) – JAL

+0

'NSURL (dosyaURLWithPath: videoPath)' –

cevap

1

edilir:

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

var movieData: NSData? 
     do { 
      movieData = try NSData(contentsOfURL: videoPath, options: .DataReadingMappedIfSafe) 
     } catch { 
      print(error) 
      movieData = nil 
      return 
     } 

// Multipart Form Request for RestKit POST goes here 

     imagePickerController.dismissViewControllerAnimated(true, completion: nil) 
    } 

aşağıdaki hatayı alınıyor

@IBAction func addVideoFromDevice(_ sender: AnyObject) { 
    let mediaUI = UIImagePickerController() 
    mediaUI.sourceType = .savedPhotosAlbum 
    mediaUI.mediaTypes = [kUTTypeMovie as NSString as String] 
    mediaUI.allowsEditing = true 
    mediaUI.delegate = self 
    present(mediaUI, animated: true, completion: nil) 
} 

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) { 
    let mediaType = info[UIImagePickerControllerMediaType] as! NSString 
    if mediaType == kUTTypeMovie { 
     let videoURL = info[UIImagePickerControllerMediaURL] as! NSURL 
     let avAsset = AVAsset(url: videoURL as URL) //>selected video 
    } else{ 
     print("error @ mediaType-didFinishPickingMediaWithInfo") 
    } 
    dismiss(animated: true, completion: nil) 
} 

yardımcı olur :) Umut

4
func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) { 
      let videoURL = info["UIImagePickerControllerMediaURL"] as? NSURL 
      do { 
       let video = try NSData(contentsOfURL: videoPath, options: .DataReadingMappedIfSafe) 
      } catch { 
       print(error) 
       return 
      } 
      imagePickerController.dismissViewControllerAnimated(true, completion: nil) 
    } 
ait
İlgili konular