🌓

RecyclerView自定义LayoutManager从0到1实践

此前大部分涉及到 RecyclerView 页面的 LayoutManager基本上用系统提供的 LinearLayoutManager 、GridLayoutManager 就能解决,但在一些特殊场景上还是需要我们自定义 LayoutManager。之前基本上没有自己写过,在网上看各种源码各种文章,刚开始花了好多时间去理解整体流程,因为它们都给我一种非常...

阅读全文

Android 基于 J2V8 运行 JavasScript 实践

V8 引擎是由 Google 开源的 JavaScript 引擎,Chrome 就是基于 V8 开发,V8 是跨平台的,J2V8 基于 V8 进行开发,使得 js 代码能够在 Android 平台上脱离 WebView 运行。目前,也有很多关于 Android J2V8 的文章,不过讲解不是特别细(可能也是我太菜了,看完了之后,依然遇到很多问题),自己在调研...

阅读全文

(转)OpenGL黑屏及渲染不出来的常见原因总结

最近在做 Unitiy 与原生渲染相关的研究学习,对于OpenGL这块自己也是接触不多,有很多的坑需要自己去踩,做的过程中遇到最多的问题是:渲染黑屏 在掘金上搜到这篇文章《OpenGL黑屏及渲染不出来的常见原因总结》很不错,于是记录转载过来,方便日后学习以及问题排查。 原文链接:https://juejin.cn/post/68449039107426877...

阅读全文

FFmpeg.so 编译总结

此前项目一直使用的 FFmpeg.so 是我从其他团队项目中直接复制过来的,但原来的项目团队不再维护这个库,其中 x264 模块由于一些版权问题需要剔除,所以需要自己重新编译。在编译的过程中踩了很多坑,以及编译 congfigure 有太多的配置,如何减少整体编译出来的大小也是需要花点精力的,本文主要记录编译流程以及相关配置介绍。 编译介绍自己编译主要参考《...

阅读全文

3D LUT 滤镜 shader 源码分析

最近在做滤镜相关的渲染学习,目前大部分 LUT 滤镜代码实现都是参考由 GPUImage 提供的 LookupFilter 的逻辑,整个代码实现不多。参考网上的博文也有各种解释,参考了大量博文之后终于理解了,所以自己重新整理了一份,方便以后阅读理解,对整体代码的实现过程结合LUT的原理进行一个简单整理。 GPUImageLookupFilter shader...

阅读全文