拉流的过程:
- 首先观众客户端获取音视频数据流;
- 对获取到的音视频数据进行解复用,根据音视频数据的封装格式,将数据流分解为音频流和视频流;
- 然后,将音频流送入音频解码器进行解码,将视频流送入视频解码器进行解码;
- 最后,将解码好的音频和视频同步输出。
- 调用播放器播放就ok了。
在Android上,第三方的播放器对外提供的接口都是从Android的MediaPlayer接口扩展而来的。
在对音频和视频解码时,软解码和硬解码:
硬解码
优点:功耗低。
缺点:不同型号对编解码的实现都不同,可控性差,所以要做很多设备适配的工作。
软解码
优点:
- 兼容性好,对系统版本要求低
- 解码色彩较柔和
- 编码可操作空间大,自由度高
缺点: - CPU消耗大
- 机器容易发热
- 功耗高
谢谢阅读