[iOS] 视频压缩
2016-08-09 14:16
323 查看
- (void) lowQuailtyWithInputURL:(NSURL*)inputURL outputURL:(NSURL*)outputURL blockHandler:(void (^)(AVAssetExportSession*))handler { AVURLAsset *asset = [AVURLAsset URLAssetWithURL:inputURL options:nil]; AVAssetExportSession *session = [[AVAssetExportSession alloc] initWithAsset:asset presetName:AVAssetExportPresetMediumQuality]; session.outputURL = outputURL; session.outputFileType = AVFileTypeQuickTimeMovie; [session exportAsynchronouslyWithCompletionHandler:^(void) { handler(session); }]; }
[self lowQuailtyWithInputURL:video outputURL:output blockHandler:^(AVAssetExportSession *session) { if (session.status == AVAssetExportSessionStatusCompleted) { } else { } }];
在block里面检测成功,失败,或者是取消,然后释放session.
期间可以通过不断的查看session的progress属性来获取转换的进度。
可以设置这些压缩质量
AVF_EXPORT NSString *const AVAssetExportPresetLowQuality NS_AVAILABLE_IOS(4_0);
AVF_EXPORT NSString *const AVAssetExportPresetMediumQuality NS_AVAILABLE_IOS(4_0);
AVF_EXPORT NSString *const AVAssetExportPresetHighestQuality NS_AVAILABLE_IOS(4_0);
相关文章推荐
- 买视频送图书-五月活动
- 如何在 Ubuntu Linux 中使用 RAR 文件
- DVI 视频接口图文解析
- C#使用DeflateStream解压缩数据文件的方法
- C#实现语音视频录制-附demo源码
- C# 利用ICSharpCode.SharpZipLib实现在线压缩和解压缩
- C#使用WinRar命令进行压缩和解压缩操作的实现方法
- C#调用WinRar执行rar、zip压缩的方法
- C语言压缩文件和用MD5算法校验文件完整性的实例教程
- 编写C++程序使DirectShow进行视频捕捉
- AnyChat的视频会议程序实例详解
- C#实现页面GZip或Deflate压缩的方法
- C#使用iCSharpcode进行文件压缩实现方法
- C#图片切割、图片压缩、缩略图生成代码汇总
- C#调用mmpeg进行各种视频转换的类实例
- C#实现压缩HTML代码的方法
- Asp.net在线备份、压缩和修复Access数据库示例代码
- C#获取视频某一帧的缩略图的方法
- 使用UglifyJS合并/压缩JavaScript的方法
- 高性能WEB开发 JS、CSS的合并、压缩、缓存管理