MOV_TO_MP4
【摘要】
-(void)MovToMp4{ AVURLAsset *avAsset = [AVURLAsset URLAssetWithURL:[NSURL fileURLWithPath:screenFilePath] options:nil]; NSArray *compatiblePresets = [AVAssetEx...
-
-(void)MovToMp4
-
{
-
AVURLAsset *avAsset = [AVURLAsset URLAssetWithURL:[NSURL fileURLWithPath:screenFilePath] options:nil];
-
-
NSArray *compatiblePresets = [AVAssetExportSession exportPresetsCompatibleWithAsset:avAsset];
-
-
if ([compatiblePresets containsObject:AVAssetExportPresetLowQuality])
-
-
{
-
-
AVAssetExportSession *exportSession = [[AVAssetExportSession alloc]initWithAsset:avAsset presetName:AVAssetExportPresetHighestQuality];
-
-
NSDateFormatter* formater = [[NSDateFormatter alloc] init];
-
[formater setDateFormat:@"yyyyMMddHHmmss"];
-
NSString *_mp4Path = [[NSHomeDirectory() stringByAppendingFormat:@"/Documents/%@.mp4", [formater stringFromDate:[NSDate date]]] retain];
-
[formater release];
-
exportSession.outputURL = [NSURL fileURLWithPath:_mp4Path];
-
-
exportSession.outputFileType = AVFileTypeMPEG4;
-
-
CMTime start = CMTimeMakeWithSeconds(1.0, 600);
-
-
CMTime duration = CMTimeMakeWithSeconds(3.0, 600);
-
-
CMTimeRange range = CMTimeRangeMake(start, duration);
-
-
exportSession.timeRange = range;
-
-
[exportSession exportAsynchronouslyWithCompletionHandler:^{
-
-
switch ([exportSession status]) {
-
-
case AVAssetExportSessionStatusFailed:
-
NSLog(@"Export failed: %@", [[exportSession error] localizedDescription]);
-
-
break;
-
-
case AVAssetExportSessionStatusCancelled:
-
-
NSLog(@"Export canceled");
-
-
break;
-
case AVAssetExportSessionStatusCompleted:
-
{
-
NSLog(@"开始上传屏幕快照");
-
[g_api UpdateScreen:_mp4Path];
-
}
-
break;
-
default:
-
-
break;
-
-
}
-
-
[exportSession release];
-
-
}];
-
-
}
-
-
}
文章来源: zzzili.blog.csdn.net,作者:清雨小竹,版权归原作者所有,如需转载,请联系作者。
原文链接:zzzili.blog.csdn.net/article/details/15028645
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)