视频处理——添加滤镜效果

视频处理——添加滤镜效果

前段时间学习了视频编解码,感觉比较枯燥,因为实际应用的少且偏理论,导致学习效果比较差。
后来思考了一下,怎么去提高学习效果。得出一个结论,先设定一个目标,然后全力去把这个东西做出来,之后再自上到下的去吃透效果会好一些。有反馈有趣才会有动力去继续学习。

一.问题导向

这篇博客的目的是基于GpuImage库实现给视频增加滤镜效果的功能。

解决方案:

  1. 对视频文件进行解码
  2. 对解码后的每一帧画面通过GpuImage进行处理
  3. 最后把每一帧画面再编码成视频文件

遇到的一些挫折:

  1. GpuImage这个库只能给图片添加滤镜,并不支持给视频添加滤镜。
  2. 网络上基于GpuImage的库有一些,运行时总会报错。

二.资料

CameraRecorder-android库

地址:http://p.codekk.com/detail/5b629d86fd1c9b26e2fcbadd

缺点:最小可支持的版本也很高

优点:支持实时滤镜

直接clone项目无法运行,引入库,自己写demo可以运行

android-gpuimage-videorecording

地址:https://github.com/proghjy/android-gpuimage-videorecording

优点:支持实时滤镜,且可支持的最小版本也满足需求

直接clone项目无法运行,引入库,自己写demo可以运行

TestGpuImageFilter

地址:https://github.com/houshunwei/TestGpuImageFilter

优点:代码简单,适合初学者学习

缺点:在某些型号的手机上会出现错误 OutputSurface: before updateTexImage: glError 1282

项目直接clone即可运行

Android-RTSP

地址:https://github.com/dingjikerbo/Android-RTSP

三.android-gpuimage-videorecording项目分析

下一篇文章会详细讲解

你可能感兴趣的:(音视频)