【问题标题】:UIImagePickerController videoMaximumDuration not workingUIImagePickerController videoMaximumDuration 不起作用
【发布时间】:2018-10-05 17:11:37
【问题描述】:

我从相机中获取video,在选择视频后,只需检查didFinishPickingMediaWithInfo 方法中的视频持续时间,如果视频持续时间小于 15 秒,则关闭 UIImagePickerController 并开始使用视频,但是视频持续时间超过 15 秒,只是显示裁剪视频的警报。在这里,我不会关闭 UIImagePickerController 只是在警报解除后显示警报 UIImagePickerController 不可操作它的禁用(重拍和播放和用户视频)按钮被禁用。

    imageController.mediaTypes = ["public.movie"]
    imageController.sourceType = UIImagePickerControllerSourceType.camera
    imageController.allowsEditing = true
    self.present(imageController, animated: true, completion: nil)

    func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any])
    {
               let outputFileURL = info[UIImagePickerControllerMediaURL] as! URL
               let asset = AVURLAsset(url: outputFileURL)
               let durationInSeconds = asset.duration.seconds

        if(durationInSeconds < 15)
             {
                // Here my upload process
             }
               else {
                   Constants.showErrorAlertView(message: "15 seconds only allowed please trim the video and upload ")
               }
     }

【问题讨论】:

标签: ios iphone swift3 xcode8


【解决方案1】:

我不确定"public.movie" 是什么意思,但问题可能出在.mediaTypes

Apple: videoMaximumDuration

这个属性只有在 mediaTypes 属性的值是可用的 数组包含 kUTTypeMovie 媒体类型。

您的使用:imageController.mediaTypes = ["public.movie"]

尝试使用:imageController.mediaTypes = [kUTTypeMovie as String]

请务必将MobileCoreServices 添加到您的头文件中,以便能够使用kUTTypeMovie

#import MobileCoreServices

【讨论】:

  • 谢谢,但我的实际问题是在 didFinishPickingMediaWithInfo 方法中接收视频时,如果持续时间超过 15 秒,只需检查持续时间相机我不会关闭 UIImagePickerController 而不关闭只是显示要修剪的警报视频,然后重试。警报解除后 UIImagePickerController 按钮不可操作,这是我的问题。
  • 所以问题是,如果视频超过 15 秒,则会显示警报,并且在解除警报并且图像选择器被解除后,您的按钮不再接收触摸事件?
  • 不,我不会关闭 imagePicker,如果持续时间少于 15 秒,则仅关闭 imagePicker,如果不显示警报,则仅关闭 imagePicker。
  • 如果视频超过 15 秒,在显示警报后,解除警报后 imagePicker 会发生什么情况?我不明白确切的问题是什么。我不认为我可以提供帮助,因为我不明白这个问题。祝你好运,希望你能解决它! ?
猜你喜欢
  • 2014-01-28
  • 2013-12-04
  • 2018-10-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多