在我的应用中,用户可以录制视频或从他的库中选择一个。当然,我使用 UIImagePickerController
并将其 sourceType
设置为 UIImagePickerControllerSourceTypeCamera
或 UIImagePickerControllerSourceTypePhotoLibrary
。
在这两种情况下,videoQuality
都设置为 UIImagePickerControllerQualityTypeMedium
。
现在,我执行了以下操作:我拍摄了一段 15 秒的视频,我的 iPhone 躺在它的背面,所以它是一片漆黑。当我从库中选择这个视频时,它大约有 0.6 MB 大。当我在我的应用程序中拍摄相同的视频时(15 秒,漆黑一片),我得到一个超过 4 MB 的文件。
谁能证实这一点?我简直不敢相信我是第一个注意到的人,但话又说回来,这里没有太多空间让我搞砸了(尽管如此,我可能还是搞砸了)。或者有人对此有解释/解决方案吗?
(我在 iOS 5.1 和 iPhone 4 上)
最佳答案
你知道了吗?
现在我遇到了同样的问题,PhotoLibrary 中的一个视频(多了 2 分钟);当我使用 UIImagePickerController 获取它时,它只有大约 30 Mb;但是我通过asset.defaultRepresentation(使用这种方式( Getting video from ALAsset ))得到了大约300Mb;也许 UIImagePickerController 以某种方式压缩了数据;我需要弄清楚,但没有任何进展......
================
编辑:UIVideoEditorController可以将视频压缩到小尺寸;您可以像 UIImagePickerController 一样设置视频质量。
可能是这样的:当你使用UIImagePickerController选择视频,并设置allowsEditing=YES时,它会弹出UIVideoEditorController来压缩视频,然后你得到压缩后的小视频。
关于iphone - UIImagePickerController:视频压缩的奇怪结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10965200/