Posts


Vulkan 在 FFmpeg 中的支持

周末时候看到一篇推送说 FFmpeg 升级到 5.0 版本了。

其中提到 FFmpeg 引入了 Vulkan 驱动的新滤镜,用于视频水平、垂直翻转。

看到 FFmpeg 引入了 Vulkan ,想着这是要有什么大动作啊,直接利好 Vulkan 嘛?

后来又仔细看了下 FFmpeg 的 Changelog ,原来早在 4.3 版本就已经开始支持 Vulkan 了。

[阅读全文]
FFmpeg 

老生常谈-FFmpeg 的编译问题轻松搞定

前几天发了一篇 FFmpeg 调用 Android MediaCodec 进行硬解码 的文章,这里面的技术点不算太难,也还是调用 FFmpeg 的常用接口操作,但重点在于 FFmpeg 的版本选择以及编译选项要开启 MediaCodec 才行。

关于 FFmpeg 的编译,是个老生常谈的话题了,很多初学者都会卡在怎么编译动态库 so 的问题上,这其实也是 Android 开发转音视频的一大拦路虎,一行 FFmpeg 代码都没来得及写呢,就得先折腾好久编译问题。

[阅读全文]
FFmpeg 

WebRTC 系列1--创建相机预览

用 WebRTC 创建相机预览,不到 50 行核心代码就可以轻松搞定了。

WebRTC 依赖版本

直接使用官方给的版本就好了,不需要再去额外编译。

implementation 'org.webrtc:google-webrtc:1.0.30039'

后面都会使用该版本做测试的。

[阅读全文]
webrtc 

Unity Shader 光照基础之 Half Lambert 光照模型

Half Lambert 模型(也叫作半兰伯特模型)在 Lambert 模型的基础之上做了一些优化。

在 Lambert 模型中,光照无法到达的区域,比如模型的背面,模型外观通常是全黑的,没有任何明暗变化,而 Half Lambert 模型就是改善这一状况。

回顾 Lambert 模型的计算公式如下:

$c_{diffuse} = (c_{light} \cdot m_{diffuse}) \cdot max (0,n \cdot I)$

[阅读全文]
unity