时光荏苒,岁月如梭。
又到了回顾过去,展望未来的(chui)高(niu)光(bi)时刻了~~
职业回顾
去年年底准备跑路,然后年前面试,拿了头条的 offer,年后就入职了~~~
应聘的岗位是 Android-多媒体开发工程师,具体招聘岗位见官网:多媒体平台研发工程师-Android — 抖音火山
工作内容简单说就是做音视频 SDK,支持头条的一些业务。
[阅读全文]时光荏苒,岁月如梭。
又到了回顾过去,展望未来的(chui)高(niu)光(bi)时刻了~~
去年年底准备跑路,然后年前面试,拿了头条的 offer,年后就入职了~~~
应聘的岗位是 Android-多媒体开发工程师,具体招聘岗位见官网:多媒体平台研发工程师-Android — 抖音火山
工作内容简单说就是做音视频 SDK,支持头条的一些业务。
[阅读全文]前段时间在慕课网上体验了一把做讲师的感觉,录制了一套免费技术视频~~
如下图所示:

在慕课网上通过如下路径就可以找到啦
[阅读全文]免费课程 -> 课程 -> 移动开发 -> Android -> Android CMake 以及 NDK 实践基础
避免图片丢失,建议阅读微信原文:
转场效果是什么?
转场效果,简单来说就是两段视频之间的衔接过渡效果。
现在拍摄 vlog 的玩家越来越多,要是视频没有一两个炫酷的转场效果,都不好意思拿出来炫酷了。

那么如何在视频编辑软件中实现转场效果呢?
这里提供使用 OpenGL 实现视频转场的一个小示例,我们可以通过自定义 GLSL 来实现不同的转场效果。
以在 Android 平台上作为演示,但其实不管是 Android 还是 iOS,实现的原理都是一样的。
首先要有两段视频,视频 A 和视频 B,先播放视频 A 后播放视频 B,中间有一段过程称为 C ,C 就是视频 A、B 做转场动画的时间段。
如下所示:

播放器按照时间顺序,从 A -> C -> B 的播放,这样就有了转场的效果。
[阅读全文]避免图片丢失,建议阅读微信原文:
说到贝塞尔曲线,大家肯定都不陌生,网上有很多关于介绍和理解贝塞尔曲线的优秀文章和动态图。
以下两个是比较经典的动图了。
二阶贝塞尔曲线:

三阶贝塞尔曲线:

由于在工作中经常要和贝塞尔曲线打交道,所以简单说一下自己的理解:
[阅读全文]在之前的文章中介绍了 stb_image 图像库,还顺带提到了 libpng 和 libjpeg ,这篇文章就是介绍如何在 Android 平台上用 CMake 编译 libpng 动态库以及 libpng 使用实践。
https://glumes.com/post/android/stb-image-introduce/
[阅读全文]
最近关注了一波 rust,一门目前还比较小众但却很强大的编程语言,官网地址如下:
rust 的学习曲线比较陡峭,在开始学习之前建议看看王垠的这篇文章 《如何掌握所有的编程语言》,地址如下:
学习语言,重要的是掌握其语言特性。
王垠举了一些语言特性的例子:
看着这些特性是不是很像一些编程语言书的目录🤔
在学习 rust 的时候也可以照着这些语言特性去对比自己是否掌握了。
[阅读全文]在 OpenGL 开发中,我们要渲染一张图片,通常先是得到一张图片对应的 Bitmap ,然后将该 Bitmap 作为纹理上传到 OpenGL 中。在 Android 中有封装好的 GLUtils 类的 texImage2D 方法供我们调用。
public static void texImage2D(int target, int level, int internalformat,
Bitmap bitmap, int type, int border)
该方法的底层原理实际上也是解析了该 Bitmap ,得到了 Bitmap 所有的像素数据,类似于 Android NDK 关于 Bitmap 操作的 AndroidBitmap_lockPixels 方法,如果你不太了解该方法,可以参考这篇文章:Android JNI 之 Bitmap 操作。
得到了所有像素数据之后,实际最终还是调用了 OpenGL 的 glTexImage2D 来实现纹理上传。当然,如果可以直接得到所有数据,也不需要走解析 Bitmap 这一步了,这种场景最常见的就是把相机作为输入了。
避免图片丢失,建议阅读微信原文:
说到图像解码库,最容易想起的就是 libpng 和 libjpeg 这两个老牌图像解码库了。
libpng 和 libjpeg 分别各自对应 png 和 jpeg 两种图像格式。这两种格式的区别如下:
png 支持透明度,无损压缩的图片格式,能在保证不失真的情况下尽可能压缩图像文件的大小,因此图像质量高,在一些贴纸应用中也大部分用的是 png 图片。
jpg 不支持透明度,有损压缩的图片格式,有损压缩会使得原始图片数据质量下载,也因此它占用的内存小,在网页应用中加速速度快。
要想在工程中同时解码 png 和 jpeg 格式图片,就必须同时引用这两种库,而且还得经过一系列编译步骤才行。
在这里,介绍一个简单易用的图像库:stb_image 。Github 地址为:https://github.com/nothings/stb ,目前已经有了 9600+ Star 。它的使用非常简单,看看 README 可能你就会了。
微博图床一时爽,迁移火葬场
前几天在群里看到说新浪微博图床挂掉了,图床上的图片链接单独访问还可以,但是在博客文章上就显示不出来了。
去自己网站上看一下,果然,连博客首页图片都加载不出来了,极大地影响了阅读体验呀。
还好图片链接是可以访问的,这就意味着图片还在,还来得及做迁移和备份。
回顾之前用了好多免(hao)费(yang)图(mao)床,从最早的 七牛,到 Cloudinary,再到 微博图床。七牛由于是临时域名,没有及时备份图片,导致图都没了,而 Cloudinary 和 微博图床 倒还是可以继续访问的。不过这种薅羊毛总不是个办法,万一服务商政策变了,又得再迁移图片了。
果然,免费的才是最贵的。
[阅读全文]