其实这个问题在StackOverflow
上已经有类似的提问了,我遇到的问题也差不多和他差不多.
但是目前还没有完美的解决方案.
注意:
1. 不想使用`ffmpeg`,因为它会导致apk文件增大(比较多,3MB ~~ 30MB都是可能的),二是它的开源协议
2. 不想使用 `jcodec`,如果是很少量的图片确实是不错的选择
Android 已经有硬解码的类供我们使用, MediaCodec
为入口类,通过它我们可以调用系统的编解码,当然这有API限制(API>16or18)
我曾尝试通过它将多张图片转换 为视频,虽然是能合成视频,但是最后的视频损失了图片的质量,颜色缺失(显示为黑白),并多了些杂色.
希望有人提供比较好的实践,目前MediaCodec
的资料并不多.
我也尝试了medicodec,损失严重,但没有出现颜色丢失,就是效果差;
我现在有两种方案,一种直接使用你不喜欢但ffmpeg,二是放在服务器上进行运算处理。