最近帮朋友做了个给视频加模糊的功能,毛玻璃效果,思路很简单,首先要先知道哪些参数能修改模糊度,我在动态调节模糊里说了sigma,blurRadius和图片尺寸都会影响模糊效果,在画面清晰时sigma对模糊的效果影响特别小,而blurRadius必须很大的时候才能达到效果,可是blurRadius太大会照成视频卡顿,所以最简单的方法是先降低画面尺寸,在设置blurRadius和sigma。

思路有了,接下来是原理,缩小画面尺寸,先想到的应该是改变视频的长宽,但我们不能去改原文件的长宽,所以只能对解码出来的视频画面进行缩小,这里我们就用到了opengl的fbo,讲真的fbo是真好用

首先创建一个缩小视频的frameBuffer和一个模糊用的frameBuffer

GLES20.glGenFramebuffers(frameBuffers.length,frameBuffers,0);

在frameBuffer绑定纹理时设置纹理大小,这样就可以更改视频画面的大小了

GLES20.glBindFramebuffer(GLES20.GL_FRAMEBUFFER, frameBuffers[0]);GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, textures[0]);GLES20.glTexImage2D(GLES20.GL_TEXTURE_2D, 0, GLES20.GL_RGBA, width, height, 0, GLES20.GL_RGBA, GLES20.GL_UNSIGNED_BYTE, null);GLES20.glFramebufferTexture2D(GLES20.GL_FRAMEBUFFER, GLES20.GL_COLOR_ATTACHMENT0, GLES20.GL_TEXTURE_2D, textures[0], 0);GLES20.glBindFramebuffer(GLES20.GL_FRAMEBUFFER, 0);

然后把视频渲染进这个frameBuffer内,这时的视频画面的大小就会变成上边绑定的纹理大小,接下来就是进行模糊处理,最后将模糊后的画面渲染到屏幕上

下边是调节参数用的SeekBar

写文章越来越不走心了,还是贴demo吧

GitHub

Android OpenGLES视频模糊,毛玻璃效果相关推荐

  1. android 录制视频模糊,安卓手机录制视频不清晰是什么原因?_科技数码通

    你好,很高兴回答你的问题!安卓手机录制视频不清晰的问题是多方面的,可以从以下角度进行检查: 一.手机的像素配置低 其实以现在主流的手机来讲,录制视频并不应该会不清晰,如果存在不清晰的情况,大概就是手机 ...

  2. android 仿ios毛玻璃,类 iOS 毛玻璃效果控件 BlurView

    软件介绍 BlurView 是Android下类似 iOS 毛玻璃效果控件. 使用: android:id="@+id/blurView" android:layout_width ...

  3. android动态毛玻璃,Android模糊处理实现图片毛玻璃效果

    本文实例讲解了Android 虚化图片.模糊图片.图片毛玻璃效果的实现方法,具体内容如下 效果如图: 在Android可以用RenderScript方便的实现这个方法: private void bl ...

  4. android毛玻璃遮罩效果_css3毛玻璃效果[模糊图片]

    希望有一天大家都能在借鉴中创新 实现图片遮罩的毛玻璃效果代码段很少,这里直接放效果视屏: https://www.zhihu.com/video/1222879519775842304 牵涉关键代码: ...

  5. 毛玻璃效果在Android的实现

     本文已授权「玉刚说」微信公众号独家发布 毛玻璃效果实际上是对原图片的严重劣化,突出朦胧感,一般都是通过图片的缩放+模糊算法来实现,从性能角度考虑,模糊半径不能大于25,所以要更高的模糊效果则需要进行 ...

  6. android qq毛玻璃,腾讯电脑管家桌面整理重磅更新!支持毛玻璃效果!

    原标题:腾讯电脑管家桌面整理重磅更新!支持毛玻璃效果! 桌面杂乱不但影响工作效率,还会影响工作心情.在年初腾讯电脑管家发布12.0后正式推出了桌面整理工具,从而取代了停更近两年的小Q桌面. 对于有强迫 ...

  7. Android毛玻璃效果实现

    原由 UI妹子那个IOS的手机,说要我做这个效果,一乍看,以为是设置透明度,做出来说需要的是毛玻璃效果,百度才知道... 资料 自从iOS系统引入了Blur效果,也就是所谓的毛玻璃.模糊化效果,磨砂效 ...

  8. Android毛玻璃效果的实现(本文系转载一种快速毛玻璃虚化效果实现)

    看到这篇文章感觉不错转载一下,且自己做了一个小demo:链接 在iOS设备上我们随处可见毛玻璃效果,而且最近越来越多的场合应用到了这种美观的虚化效果,包括本人的一个开源项目BlureImageView ...

  9. Android高斯模糊(毛玻璃效果)蒙层库

    ShapeBlurView ShapeBlurView库是一个高斯模糊(毛玻璃效果)蒙层库.Like iOS UIVisualEffectView 不知大家做需求的时候是否有这样的效果要求: 需求示例 ...

最新文章

  1. gpio引脚介绍 树莓派3b_如何让LabVIEW程序运行在树莓派3B(此处有坑)
  2. C# .net中cookie值为中文时的乱码解决方法
  3. GAN不只会造假:捕获数据中额外显著特征,提高表征学习可解释性,效果超越InfoGAN | IJCAI 2020...
  4. Java专家系列:CPU Cache与高性能编程
  5. MongoDB服务启动与停止命令(Windows环境)
  6. 星宿UI V1.1-后台优化激励视频判断插件
  7. html手机端富文本,pc端富文本编辑的字符串在手机端适配
  8. myeclipse 实现框架 spring+springmvc+springsecurity+myibatis+mysql用户认证和人员增删改查
  9. 转化cad_PDF一键转CAD
  10. 力扣题目系列:1370. 上升下降字符串(Python题解)
  11. 神经网络动态可视化工具
  12. windows 7 旗舰版 失效key
  13. ”今日校园“App用户体验分析
  14. 校园网多拨网速叠加思路
  15. vue中脚手架设置自动打开浏览器打开后地址为http://0.0.0.0:8080/
  16. 北漂三年多 我选择离开,眼神更加坚定!
  17. [Mysql] 防御和检查SQL注入攻击的手段
  18. java公路车为什么便宜_JAVA公路车真的很垃圾吗?
  19. 201671010434 王雯涵《英文文本统计分析》结对项目报告
  20. 2020-09-24

热门文章

  1. mysql rpo是什么意思_揭开数据库RPO等于0的秘密(下)
  2. 分数阶神经网络matlab,分数阶神经网络的稳定性分析
  3. 【Vue.js】全局状态管理模式插件vuex
  4. 数据结构三级项目c++代码,基于有向有权图的信息管理系统
  5. 运用wechaty在群聊中生成对联
  6. Objective-C动态特性
  7. 校园网无法拨号的一些解决方案
  8. [Error]校赛/ACM初级纸质备战资料——刷题大总结
  9. 解除加密的PDF文件密码有什么办法?
  10. Verilog 实现数码管显视驱动【附源码】