【问题标题】:iOS Swift - Not able to use video from LibraryiOS Swift - 无法使用库中的视频
【发布时间】:2017-02-19 00:40:31
【问题描述】:

我正在尝试从我的 swift 应用程序中的库中获取视频。 我正在使用以下代码 sn-p :

 print("ChatDetailsController - imgaction - Vid from Lib pressed")
        self.selection = "videoLib";
        self.imgSelection = "vidFromLib"
        self.imagePicker.sourceType = .PhotoLibrary
        self.imagePicker.delegate = self
        self.imagePicker.mediaTypes = ["public.movie"]
        self.presentViewController(self.imagePicker!, animated: true, completion: nil)

然后在委托方法中:

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


            print("imagePickerController - reached for video - from Lib - \(videoURL)")
            let videoData = NSData(contentsOfURL: videoURL)

         }   
   }

}

运行应用程序时,它显示库,我可以选择一个视频,然后它说正在压缩视频.. 但随后应用程序崩溃了。

当我尝试访问 videoData 变量时发生崩溃,因为它无法获取实际数据,因为路径是资产路径而不是视频路径。

日志显示与此类似的内容:

fatal error: unexpectedly found nil while unwrapping an Optional value

打印功能显示:

imagePickerController - reached for video - from Lib - assets-library://asset/asset.MOV?id=7D3BFA00-A7CB-470C-8899-F82FCC2CBC54&ext=MOV

另外,在选择/选择视频后,控制台/日志中会显示一条类似的消息:

[Generic] video path /var/mobile/Media/PhotoData/CPLAssets/group419/A2901DD1-FDEF-423B-B4A3-E808B9AC45E1.MOV for PLPreviewImageAndDurationForVideoAtPath does not exist

当然,每次运行时文件名都会改变。

我能够从相机中获取视频和图像,并从库中获取图像,我只是在使用库中的视频时遇到了问题。我希望看到类似于以下内容的视频 URL:

/var/mobile/Containers/Data/Application/BEDDC883-B20E-496D-8C9A-A40EC0A29214/Documents/63ea24932c101b76c72fcbae3993fc9b.mov 例如;视频文件在应用程序中的位置,并且未显示为不可用的资产 URL。 任何帮助将不胜感激。

【问题讨论】:

  • 这方面有什么更新吗?

标签: ios swift video-library


【解决方案1】:

问题是您尝试获取错误的视频。您正在尝试使用info[UIImagePickerControllerReferenceURL]。你想要的是info[UIImagePickerControllerMediaURL]

【讨论】:

  • 你说的完全正确!我已经从相机中选择了它,但认为视频库部分不一样。一旦我得到更多的代表点,我会接受你的回答。非常感谢!
猜你喜欢
  • 2017-02-10
  • 2019-05-06
  • 2017-09-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-31
  • 2015-12-30
相关资源
最近更新 更多