AVAsset的MPEG-4视频远远大于原始视频

时间:2017-10-05 20:38:58

标签: ios video uiimagepickercontroller avasset

当我从UIImagePickerController或我们的自定义图片选择器中选择MPEG-4 / MP4视频时,请求的AVAsset文件大小远远大于原始视频,即使它是显示在设备上和iCloud Photo Library中的尺寸较小。

例如,我保存到设备的测试MP4视频在照片中列为73.5MB,但AVAsset显示为大约437MB。

我们的自定义图片选择器不对视频进行处理; UIImagePickerController显示编辑视图,之后需要几秒钟“压缩”视频。这两种方法最终都显示了437MB的文件大小。

我们应该在图像选择器完成后单独处理视频,还是在此处进行其他操作?

编辑:这是我们用来确定文件大小的代码:

@objc var fileSize: Int64 {
    guard let exportSession = AVAssetExportSession(asset: asset, presetName: AVAssetExportPresetHighestQuality) else {
        return 0
    }

    exportSession.outputFileType = AVFileType.mov

    let duration: CMTime = CMTimeMultiplyByFloat64(exportSession.asset.duration, 1)

    exportSession.timeRange = CMTimeRangeMake(kCMTimeZero, duration)

    return exportSession.estimatedOutputFileLength
}

触发问题的here's a sample video

0 个答案:

没有答案
相关问题