An HTTP client for Android, Kotlin, and Java.
OkHttp源码解析
2019年7月7日
...阅读全文音频和视频是在独自线程中进行解码播放的,需要一个同步的操作来保证时间节点的一致性
IjkMediaPlayer 通过 prepareAsync()
之后去加载数据、解码数据,调用 start()
之后去渲染
从本文开始讲解 ijkplayer 相关的,本篇主要将播放器从初始化到 onPrepared
回调回来之间的操作
avcodec_decode_video2()
的作用是解码一帧视频数据,输入一个压缩编码的结构体 AVPacket,输出一个解码后的结构体 AVFrame
av_read_frame()
的作用是读取码流中的音频若干帧或者视频一帧
avcodec_open2()
主要作用是初始化一个视音频编解码器的 AVCodecContext
avformat_find_stream_info()
主要是读媒体文件的 packet ,然后从中提取出流的信息