首页 > 解决方案 > 为什么`UIImagePickerController`总是将视频文件转换为.MOV?

问题描述

我需要从照片库中选择 .mp4 文件。我UIImagePickerController用来从照片库中挑选视频文件。WhatsApp 或任何其他应用程序保存了很多 .mp4 视频。但是当我选择任何这些视频文件时,它会转换为.MOV文件。有没有办法避免它并获得简单的 .mp4 文件?

Xcode Version: 11.6 (11E708) Swift Version: 5.2 iOS version: 13.x

代码片段

let imagePickerController = UIImagePickerController()

imagePickerController.sourceType = .photoLibrary
imagePickerController.delegate = self
imagePickerController.videoExportPreset = AVAssetExportPresetPassthrough
imagePickerController.mediaTypes = ["public.movie"]

present(imagePickerController, animated: true, completion: nil)
extension ViewController: UINavigationControllerDelegate, UIImagePickerControllerDelegate {
    
    func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
        
        let videoURL = info[UIImagePickerController.InfoKey.mediaURL] as? NSURL
        print(videoURL?.lastPathComponent)
        imagePickerController.dismiss(animated: true, completion: nil)
    }
}

控制台输出 trim.798B4D00-0F09-4223-A937-44629D88C0C1.MOV

标签: iosswiftiphonexcodeuiimagepickercontroller

解决方案


推荐阅读