Android 12(S) MultiMedia Learning(五)NuPlayer
之前几节看到MediaPlayer的java接口最终会调用到native层中的NuPlayer,NuPlayer由Render,DecoderBase,Source三部分组成。
Render:负责AVSync
DecoderBase:负责解码
Source:负责数据的读取
之前以为这三部分相互独立,都由NuPlayer来操作,但是实际看代码会发现创建DecoderBase时会把Render和Source作为参数传给它,由DecoderBase控制数据的读取以及Render数据的写入。
由于代码很长,所以接下来更多的应该是以时序图的形式来记录,搭配必要的理解文字,这样应该会对整个过程有更加清晰的理解。