博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS视频压缩
阅读量:6079 次
发布时间:2019-06-20

本文共 2598 字,大约阅读时间需要 8 分钟。

////  ViewController.m//  iOS视频测试////  Created by apple on 15/8/19.//  Copyright (c) 2015年 tqh. All rights reserved.//#import "ViewController.h"#import 
@interface ViewController ()@end@implementation ViewController//下载视频- (void)viewDidLoad { [super viewDidLoad]; NSString *path = NSHomeDirectory();//主目录 NSLog(@"NSHomeDirectory:%@",path); //获取沙盒中的路径 NSArray *storeFilePath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES); NSString *doucumentsDirectiory = [storeFilePath objectAtIndex:0]; NSString *plistPath =[doucumentsDirectiory stringByAppendingPathComponent:@"mp4Test.mp4"]; NSFileManager *file = [NSFileManager defaultManager]; if ([file fileExistsAtPath:plistPath]) { NSLog(@"沙盒中有视频"); } else //若沙盒中没有 { NSError *error; NSFileManager *fileManager = [NSFileManager defaultManager]; NSString *bundle = [[NSBundle mainBundle] pathForResource:@"mp4Test" ofType:@"mp4"]; [fileManager copyItemAtPath:bundle toPath:plistPath error:&error]; NSLog(@"写入没有%d",[fileManager copyItemAtPath:bundle toPath:plistPath error:&error]); } NSString *newPlistPath =[doucumentsDirectiory stringByAppendingPathComponent:@"mp4Test5.mp4"]; [self lowQuailtyWithInputURL:[NSURL fileURLWithPath:plistPath] outputURL:[NSURL fileURLWithPath:newPlistPath] blockHandler:^(AVAssetExportSession *session) { if (session.status == AVAssetExportSessionStatusCompleted) { NSLog(@"压缩完成"); }else if (session.status == AVAssetExportSessionStatusFailed) { NSLog(@"压缩失败"); } }];}#pragma mark - 视频压缩- (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:AVAssetExportPresetLowQuality]; session.outputURL = outputURL; session.outputFileType = AVFileTypeQuickTimeMovie; [session exportAsynchronouslyWithCompletionHandler:^(void) { handler(session); }];}@end

AVAssetExportPresetLowQuality:低质量压缩

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);

转载于:https://www.cnblogs.com/hxwj/p/4743088.html

你可能感兴趣的文章
VC中使用GetModuleFileName获取应用程序路径
查看>>
Ecshop 最小起订量如何设置
查看>>
简单JavaScript语句实现搜索关键字高亮功能
查看>>
CentOS 6上安装xfce桌面环境
查看>>
SharedPreferences的工具类
查看>>
屏幕适配那点事
查看>>
nyoj-----幸运三角形
查看>>
C166 Interfacing C to Assembler
查看>>
wcf服务编程(第3版)文摘
查看>>
T4批量生成多文件
查看>>
论述Android通过HttpURLConnection与HttpClient联网代理网关设置
查看>>
数据存储之ContentProvide
查看>>
九度 1455:珍惜现在,感恩生活(多重背包)
查看>>
同步机制
查看>>
玩了一下SDN:MININET+FLOODLIGHT,感觉这确实是一个趋势啊
查看>>
C语言printf()输出格式大全
查看>>
可执行文件(ELF)格式之讲解
查看>>
JAVA中获取当前系统时间 - Matrix54 - 博客园
查看>>
C#foreach的用法
查看>>
axure变量的使用
查看>>