合并 Ijkplayer 和 ffmpeg-metadata-retriever

ffmpeg-metadata-retriever(FMMR) 和 Ijkplayer 都是基于 ffmpeg, 因此应该能够合并两个项目。

果不其然, 将 FMMR 的 jni 源文件复制到 ijkplayer-android-ff4\ijkmedia\metadata 下, 参照 ijkplayer 的其他模块改写 FMMR 的 android.mk, 很容易就把库文件编译了出来。Ijk 的结构很科学,易于扩展。

嫁接在 ijkplayer 上的 FMMR 仅仅 50 kb 而已。

要说为什么需要 FMMR, 其实如今的安卓机大概不需要了, 只是以前的一些,比如 knidle hdx 7,系统自带的 metadata-retriever 并不能取得缩略图,这个时候就需要 FMMR。配合 Glide 来自定义模块,用起来极为方便。

还有一点就是,FMMR 可能比原生快一点。

github/Ijkplayer-metadata-retriever

最近遇到 ffmr+ffmpeg3.4 崩溃的 bug,已解决,记录一下。

https://github.com/wseemann/FFmpegMediaMetadataRetriever/issues/219

if(s->video_st->codec->pix_fmt==-1)
                s->video_st->codec->pix_fmt=0;

可能是 -1 的含义发生了变化吧。

你可能感兴趣的:(编译奇兵)