GPUImage之裁剪篇

在录制视频或者拍照的时候,我们经常要对视频或者照片的尺寸进行裁剪.比如微信小视频.在GPUImage中,给我们了一个非常友好的滤镜.GPUImageCropFilter 可以直接剪切视频的尺寸. 首先依旧是先定义设备.滤镜.一级GPUImageView.在拍照篇里面可以找到.这里就不做重复了.唯一不同的是GPUImageCropFilter的定义 代码如下:

    filter=[[GPUImageCropFilter alloc] initWithCropRegion:CGRectMake(0, 0, 1, 1080/1920.0)];
复制代码

这里的corpRegion介绍如下:

// The crop region is the rectangle within the image to crop. It is normalized to a coordinate space from 0.0 to 1.0, with 0.0, 0.0 being the upper left corner of the image
复制代码

所以可以看到,长和宽都是0.0到1.0;所以我们要用设备捕捉到的长和宽来截取视频.x轴和y轴都可以是初始点0. 显示到屏幕上的就是将来截取出来的.

视频设置也要修改一下. 改为:

    videoSettings = [[NSMutableDictionary alloc] init];
    [videoSettings setObject:AVVideoCodecH264 forKey:AVVideoCodecKey];
    [videoSettings setObject:[NSNumber numberWithInteger:1080] forKey:AVVideoWidthKey];
    [videoSettings setObject:[NSNumber numberWithInteger:1080] forKey:AVVideoHeightKey]; //如果修改了高度值.这里自然要修改.
复制代码

GPUImageMovieWriter的size也要改.

    movieWriter = [[GPUImageMovieWriter alloc] initWithMovieURL:movieURL size:CGSizeMake(1080, 1080) fileType:AVFileTypeQuickTimeMovie outputSettings:videoSettings];
复制代码

然后录像保存什么的,和摄像篇是一样的. 至此,GPUImage差不多就完了.如果有需要.后面会继续补充.

ps:裁剪对拍照也是一样的.如果照片不像裁剪.那就更换一下滤镜.其他滤镜释放方法几乎都是一样的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值