本文主要是介绍GPUImage简单实用及碰到的问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
正式开始之前先介绍一下GPUImage,这是一款基于OpenGL ES 2.0的开源图像处理库。在iOS上将OpenGL ES的使用封装成Objective-C接口,可以用来给图像、相机视频、视频等添加滤镜等渲染操作。GPUImage一代已经不再维护,OC只能给iOS和Mac使用;同时有GPUImage2使用Swift(基于Swift 3)开发,可以给Mac, iOS和Linux使用;最新的GPUImage3仍在开发完善中,基于Swift4,并且将OpenGL ES替换成苹果的Metal,由于是苹果官方封装GPU方法,可以预见会比使用OpenGL ES的性能效率更高。本文使用的仍是第一代GPUImage。
接入GPUImage使用cocoapods直接接入就行,就不再赘述。下面是一个简单的滤镜使用:
GPUImage使用有三个关键点,input, output, filter(filter也是output但主要实现了滤镜,所以分开说)。output一般是用来承载图像内容输出,可以是GPUImageUIElement(通过UIView来创建并承载整个UIView的内容), GPUImagePicture(使用UIImage或者CGImage之类的图像来创建);filter就是所使用的滤镜,可以使用GPUImage自带的比如GPUImageGaussianBlurFilter, GPUImageColorInvertFilter等等,当然也可以自建Filter来实现一些自
这篇关于GPUImage简单实用及碰到的问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!