最近在做一个需要给已有视频加滤镜的app,不是实时滤镜,而是给已经存在的视频加滤镜。

虽然网上有很多关于GPUImage的博客,但大多都是给图片加上滤镜或者是直接在摄像头上加上的实时滤镜,找了很久之后.....

发现在github上本来就有.....

但是在网上找,却没有说很多人给出这样的滤镜教程,这里简单给分享一下下。

1. 首先,什么是GPUImage?详细请度娘之,简单点来说,就是一个用GPU来处理图片和视频的第三方库。

2. 给图像加滤镜,如果是只加滤镜,那么网上有很多的教程,这里就不细说了,这里主要说一下怎么找要用的滤镜和这个滤镜需要设定什么参数。

2.1 寻找要用的滤镜, 其实在无论是很多人推荐的GPUImage还是苹果官方的CoreImage,滤镜的名字本身就已经很能说明这个滤镜的作用了:

另外,在GPUImage里面,每个滤镜类Filter,都会有详细的注释来说明这个Filter的作用

当然,全是英文就是了。。。。。

2.2 配置参数。

在GPUImage中,其实没有CoreImage可以直接用方法来获取当前滤镜需要用的参数那么方便,而是要通过点击进入对应filter的.h文件里面查询。

如图,里面的red、green和blue就是要设定的配置参数。

3. 给已有视频加上滤镜,这个在GPUImage的github上就有官方的实例。。。。大家可以去看看。

/* 下面尝试使用GPUImage来给视频加上滤镜。*/GPUImageContrastFilter *secondFilter = [[GPUImageContrastFilter alloc] init];[secondFilter setContrast:1.80];GPUImageBrightnessFilter *firstFilter = [[GPUImageBrightnessFilter alloc] init];[firstFilter setBrightness:0.1];//GPUImageColorBurnBlendFilterGPUImageRGBFilter *filter = [[GPUImageRGBFilter alloc] init];filter.red = 0.8;filter.green = 1;filter.blue = 1.2;NSURL *vedioURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"s2" ofType:@"mp4"]];GPUImageMovie *movie = [[GPUImageMovie alloc] initWithURL:vedioURL];movie.runBenchmark = YES;//[movie addTarget:filter];[movie addTarget:secondFilter];GPUImageMovieWriter *vedioWriter = [[GPUImageMovieWriter alloc] initWithMovieURL:[NSURL fileURLWithPath:@"/Users/huazai/Desktop/t/t16.mov"] size:CGSizeMake(1280, 800)];movie.audioEncodingTarget = nil;vedioWriter.shouldPassthroughAudio = YES;movie.playAtActualSpeed = NO;[movie startProcessing];[filter addTarget:vedioWriter];//[secondFilter addTarget:vedioWriter];[vedioWriter startRecording];[vedioWriter setCompletionBlock:^{NSLog(@"已完成!!!");}];

往后我会再写几篇博客,关于怎么用GPUImage写水印,混合滤镜,敬请期待。。。。。

iOS上用GPUImage给视频加滤镜相关推荐

  1. OpenGL ES:视频加滤镜后导出

    视频加滤镜播放: MediaCodec解码-->OpenGL es--> GLSurfaceView 视频滤镜合成导出: MediaCodec解码-->OpenGL es--> ...

  2. 两分钟让你知道哪些可以给视频加滤镜的软件

    视频与图片一样,前期拍摄的时候我们会进行画面的构造,并且还会寻找合适的拍摄角度,后期还要对视频进行剪辑,让它的画面更加有质感,当然这其中就少不了给视频加上滤镜了,如今市面上的视频加滤镜软件也是越来越多 ...

  3. html5 手机拍视频滤镜,如何给手机里拍摄的视频添加滤镜效果?在手机上给视频加滤镜|手机视频编辑器...

    狸窝是帮助用户解决问题 提供教程解决方案 在这个过程中有使用我们自己开发的软件 也有网上找的工具 只要帮助用户解决问题就好!同意即往下继续了解下载 ... 眼看着2018快要结束啦,今日气温骤降,小编 ...

  4. 趁着同事下午茶的时间,我们都学会了怎么批量给视频加滤镜

    剪辑制作视频时,如果用户想要实现视频与某张特定图片一样的滤镜风格,怎么提取呢? 华为视频编辑服务(Video Editor Kit)全新上线"专属滤镜"功能,集成后即可使应用拥有复 ...

  5. 手机上如何批量给视频加水印

    手机如何批量给视频加水印,在手机上安装并启动"王者剪辑app",进入一键剪辑中的"加水印"功能, 批量导入或导入一个需要添加水印的视频, 接着导入水印素材并调整 ...

  6. python 视频加滤镜 moviepy opencv

    使用moviepy给视频加上滤镜 def cyberpunk(image):# 反转色相image_hls = cv2.cvtColor(image, cv2.COLOR_BGR2HLS)image_ ...

  7. 在iOS上使用ffmpeg播放视频

    国外靠谱的有这几个: 1.Mooncatventures grouphttps://github.com/mooncatventures-group 2.KxMoviePlayer (use Open ...

  8. OpenGL ES:配合MediaCodec硬解码渲染(视频加滤镜播放)

    注意点: MediaCodec 解码后的原始数据,格式为yuv,而OpenGL所能渲染的格式为rgb,因此我们需要使用扩展库中的扩展纹理 GLES11Ext.GL_TEXTURE_EXTERNAL_O ...

  9. 使用ffmpeg给视频加滤镜技巧

    ffmpeg -i tmp.mp4 -aspect 1.77 -vf "split[main][tmp];[tmp]crop=ih*1.777:ih,scale=800:450,boxblu ...

最新文章

  1. 如何编写数据库存储过程?
  2. CentoS 下安装gitlab
  3. 对三层架构的简单改进
  4. 高中计算机网络安全教案,浙教版高中信息技术教案信息安全
  5. 11步提高代码质量和整体工作效率
  6. SmartGit 过期解决方案之 非商业版本安装使用
  7. python简单爬虫课题_VS2019python爬虫入门
  8. 我也发软件开发团队的思考(侧重点是人员)
  9. BitMap的原理介绍与实现
  10. session相关知识的收集于整理
  11. [Python爬虫] 3-数据解析(lxml/bs4/正则)
  12. redis 默认过期策略_redis 过期策略
  13. Illustrator CS3自学实例高清视频教程
  14. 激光雷达--C16镭神16线三维激光雷达介绍
  15. Domain Adaptation
  16. 【BFS】lydsy3161 孤舟蓑笠翁
  17. 为什么大学生活这么充实(累)
  18. [R语言] WGCNA入门教程
  19. 京东,想说爱你,并不容易!
  20. 内存虚拟化EPT技术简介

热门文章

  1. [资料共享] 用细分控制步进电机,原理图+程序
  2. 高新技术企业政策有哪些
  3. 人工神经网络与深度学习学习历程,心得及资料分享
  4. 小森生活手游服务器维护,小森生活无可用游戏服务器解决教程
  5. 获取同花顺数据接口_如何获取价值信息?数据分析“神器”pandas了解一下!
  6. Not Found - GET https://registry.npmmirror.com/4.5.17 - [NOT_FOUND] 4.5.17 not found
  7. 图解操作系统-cpu cache
  8. 关于融合软件运行unity程序被闪退解决方案
  9. 求渐近线的流水线(/手动滑稽)
  10. TBB、OpenMP对比