视频压缩

AVFoundation框架中提供了视频压缩的功能,有一些应用场景,对像素要求不高,但是需要看到视频的,可以对视频进行压缩,比如微信的小视频功能。

//压缩
- (void)compression
{NSLog(@"压缩前大小 %f MB",[self fileSize:_videoUrl]);//    创建AVAsset对象AVAsset* asset = [AVAsset assetWithURL:_videoUrl];/*   创建AVAssetExportSession对象压缩的质量AVAssetExportPresetLowQuality   最low的画质最好不要选择实在是看不清楚AVAssetExportPresetMediumQuality  使用到压缩的话都说用这个AVAssetExportPresetHighestQuality  最清晰的画质*/AVAssetExportSession * session = [[AVAssetExportSession alloc] initWithAsset:asset presetName:AVAssetExportPresetMediumQuality];//优化网络session.shouldOptimizeForNetworkUse = YES;//转换后的格式//拼接输出文件路径 为了防止同名 可以根据日期拼接名字 或者对名字进行MD5加密NSString* path = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject] stringByAppendingPathComponent:@"hello.mp4"];//判断文件是否存在,如果已经存在删除[[NSFileManager defaultManager]removeItemAtPath:path error:nil];//设置输出路径session.outputURL = [NSURL fileURLWithPath:path];//设置输出类型  这里可以更改输出的类型 具体可以看文档描述session.outputFileType = AVFileTypeMPEG4;[session exportAsynchronouslyWithCompletionHandler:^{NSLog(@"%@",[NSThread currentThread]);//压缩完成if (session.status==AVAssetExportSessionStatusCompleted) {//在主线程中刷新UI界面,弹出控制器通知用户压缩完成dispatch_async(dispatch_get_main_queue(), ^{NSLog(@"导出完成");CompressURL = session.outputURL;NSLog(@"压缩完毕,压缩后大小 %f MB",[self fileSize:CompressURL]);});}}];   }

Demo地址

系统自带功能之视频压缩相关推荐

  1. Win10系统自带功能,提高办公效率

    win10自带功能: 1.抖动窗口(Aero Shake) 我们的桌面经常堆积着很多窗口,看着比较凌乱,这时我们只需在使用的窗口顶部,按住鼠标左键左右晃动,就可以最小化其他窗口只保留当前窗口.如果想要 ...

  2. 无需第三方软件,巧用系统自带功能开启共享WIFI

    相信很多人都曾买过USB无线网卡吧,很便宜的一个小东西.但是基本上这些网卡都只能用自带的管理软件进行连接,很不方便.其实Windows自带了共享WIFI的功能,无需第三方软件即可使用WIFI共享功能. ...

  3. 录屏:mac系统自带功能录制屏幕的方法

    Mac自带的QuickTime Player也可以录制Mac屏幕.如何录制呢?来看看吧. 具体方法如下 1.通过按Command(⌘)和空格键打开Spotlight搜索 2.在这里搜索QuickTim ...

  4. 调用android系统自带功能

    2019独角兽企业重金招聘Python工程师标准>>> Intent应该算是Android中特有的东西.你可以在Intent中指定程序要执行的动作(比如:view,edit,dial ...

  5. 用excel和window系统自带功能给文件批量改名(超详细小白教程!)

    目录 一.批量改名过程 在excel里导入名称 在excel里调整成合适的名称,拼接语句字符串 新建文本文档,输入语句,修改文本文档后缀,双击批处理文件修改完成 二.实际例子-有规定格式的批量改名 e ...

  6. # 利用Win10自带功能,玩转系统备份恢复 -- 系统备份

    利用Win10自带功能,玩转系统备份&恢复 – 系统备份 不知不觉,Windows 10系统已经进入秋季创意者更新版本(1709)了, 之前类似一键还原精灵之类的软件,对win10及SSD硬盘 ...

  7. 系统自带测试软件,用Windows自带工具给电脑检测的方法

    电脑使用时间久了渐渐出现了各种小毛病.不喜欢重装Windows系统的伙伴们会用第三方软件去检测.清理.修复,各种修修补补.电脑检测工具,大家最常用的估计就是鲁大师,但下载第三方软件会给电脑增加担负.其 ...

  8. [转]mpvue中的小程序调用系统自带查看图片的功能

    mpvue中的小程序调用系统自带查看图片的功能 这里举个栗子: <template><div class="keting"><div class=&q ...

  9. win10 c语言 语音功能,win10系统自带录音功能在哪?windows10开启录音功能的方法-系统城...

    现在,大多数win10系统用户在进行录音之前,都会下载一些第三方的录音软件.殊不知,下载录音软件不仅会给系统增加负担,而且很有可能会带来一些病毒.事实上,win10系统本身就自带了一个录音功能,我们只 ...

最新文章

  1. python识别文字并且提示_python脚本:检测字符串标识符
  2. android中对sd卡的 操作文件问题 创建目录 创建文件到指定目录
  3. sparkSQL操作hiveSQL
  4. 利用继承和组合实现软件复用
  5. linux ls 目录结构,linux 系统目录结构 ls命令 文件类型 alias命令
  6. 微信小程序 环形进度条_微信小程序:实时圆形进度条实现
  7. java decompiler 使用_是否有任何Java Decompiler可以正确地反编译对重载方法的调用?...
  8. 第一周-第11章节-Python3.5-if else流程判断
  9. shell学习笔记 (9.1)
  10. CCNA考试题库中英文翻译版及答案15
  11. 【Windows账户名修改】win10家庭版更改中文账户名
  12. 超声波传感器模块原理
  13. 基于JavaEE的开放平台出租车系统_JSP网站设计_MySQL数据库设计
  14. 调起APP功能的实现
  15. vector(向量)的简单操作
  16. 社交网络分析的 R 基础:(三)向量、矩阵与列表
  17. 常用工具:IDEA、vs code、Navicat、Postman、HBuilderX、微信开发者工具
  18. DCOS之k8s的secret
  19. mysql odbc c语言_C语言ODBC操作MySQL数据库(示例代码)
  20. ps2022自学教程:使用Photoshop Mac软件创建动画和音频

热门文章

  1. Linux系统结构与虚拟机使用
  2. static 和 automatic 修饰(systemverilog)
  3. 改变命运的早上三分钟 之 三
  4. stackoverflow愚人节彩蛋效果
  5. 能吃的东西还有多少!!!!
  6. Linux内核入门: UL(x)、ULL(x)
  7. c语言写plc程序正反转,西门子PLC控制电机正反转编程实例!
  8. 从零维到十维空间如何在纸上用手绘出来
  9. Android 利用MediaPlayer实现音乐播放
  10. GitHub下载加速网站