阅读 129

iOS GPUImage研究六:为视频添加图片水印

iOS GPUImage研究六:为视频添加图片水印

前言:


我们在前面已经做了关于、GPUImage导入方式、滤镜介绍、性能对比、图片处理、捕获照片处理、实时滤镜以及一个比较完整地Demo。

1

今天:


我们来给摄像头添加一个实时视频水印,很简单,大概有60行代码。

1

关于如何导入GPUImage,请看这里: 

http://blog.csdn.net/xoxo_x/article/details/60323297


效果图:


使用一张美女图片作为图片水印,然后获取摄像头数据。将二者组合,可以看到颜色的叠加,但又似乎不是简单地叠加。

1



代码概览如下:




原理如下:


GPUImagePicture、GPUImageVideoCamera均可作为纹理来源,我们将两个纹理来源交给混合滤镜,混合滤镜将两种纹理按相乘颜色照矩阵的方式组合成新的纹理。

1

GPUImageView可作为输出源,将纹理展现给我们。


首先我们需要了解GPUImage提供的滤镜: 

http://blog.csdn.net/xoxo_x/article/details/57082804


视频水印用到的是混合滤镜


    1、Color adjustments: 31 filters, 颜色处理相关

    2、Image processing: 40 filters, 图像处理相关.

    3、Blending modes: 29 filters, 混合模式相关.

    4、Visual effects: 25 filters, 视觉效果相关.

1

2

3

4

5

原理图:




那么,换一种情况:为已经现有视频A添加图片水印


使用的是GPUImageMovie作为输入源,来代替GPUImageVideoCamera,其余不变。

1

那么,换一种情况:使用现有视频A作为实时视频水印


GPUImageVideoCamera不变,通过改变纹理来源,即通过使用GPUImageVideoFile来获取视频水印,作为纹理,代替使用GPUImagePicture。这样,我们就可以制作关于视频的视频水印了。

1

那么,换一种情况:使用现有视频A 作为 现有视频B 的 水印


二者均使用的是GPUImageMovie作为输入源

1

那么,换一种情况:使用现有图片A 作为 现有图片B 的 水印


二者均使用的是GPUImagePicture作为输入源

不过,这个似乎有些奇怪,实验结果,就是两张照片融合到了一起,有点像换场动画

————————————————

版权声明:本文为CSDN博主「Quinn士魁」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/Xoxo_x/article/details/71055867


文章分类
后端
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐