ffmpeg实战教程(十三)iJKPlayer源码简析
发布时间
阅读量:
阅读量
若想对ijk进行封装优化,首先需要掌握ffmpeg的相关知识,接着再研究ijk对ffmpeg C层的封装方式!
以下是我阅读ijk源码时整理的一些笔记,内容较为零散,如有不足之处还望理解。
ijk源码结构解析
1.ijkplayer_jni.c 封装的播放器JNI层 API,对应java层调用。
2.ijkplayer.c 封装的播放器API,对应给JNI层调用
3.ff_ffplay_options.c 参数设置options
4.ijkplayer_android.c 创建播放器,对应Android系统的音视频
5..ff_ffplay.c ffmpeg主要封装类 含整个解码流程
初始阶段通过 JNI_OnLoad() 函数加载 .so 库,并执行各类初始化操作。RegisterNatives 注册了 g_methods 中的 native 方法,注册完成后,Java 层中声明为 native 的方法将与 C 层实现建立映射关系;例如,在 Java 中调用 _start() 方法时,实际上会调用 C 层中的 IjkMediaPlayer_start() 函数;与此同时,作者在 Java 层定义了一个用于修饰方法的注解,这些函数同样在此处完成注册,从而使得 C 层能够反向调用 Java 层的方法。
**随后还执行
全部评论 (0)
还没有任何评论哟~
