Android音视频学习路线

Android音视频学习路线

茫茫人海中,与别人有一点点不同

关于Android

  • 学习Java语言。
  • 初步了解Android基础组件,调用简单的API,实现简单功能。
  • 研究Android常用组件原理,自定义空间,网络以及广为流传的三方空间原理。
  • 可以搞定市面上大部分项目,解决疑难杂症。

以上,大概就是我在Android学习上,所经历的四个不同的阶段。这四个递进的阶段,相信大多Android猿们都是这么过来的吧。大概进入第四个阶段后期,遇到了瓶颈。太多的同行到了这个阶段,为了区别,为了更棒的money,是时候选择一个业务领域,专精下去了。
大概是因为懒吧,我选择的音视频,听说这个技术更新没那么快,哈哈哈。

音视频

据了解,音视频大概会涉及以下四个方面:
1. 音视频的采集
2. 音视频的渲染
3. 音视频数据处理
4. 音视频的传输

采集解决数据从哪里来,渲染解决数据如何展示,数据处理就是对音视频数据的再加工过程,传输解决数据共享。对于Android而言,采集数据涉及Camera、AudioRecorder,渲染数据涉及SurfaceView,GLSurfaceView,TextuerView,MediaPlayer、AudioTrack,ffmpeg等,数据处理目前了解的的有原生mediacodec以及ffmpeg,当然一定还有其他的三方库,但人生苦短,ffmpeg就够了,视频的传输主要会涉及到传输协议。

为了避免学习纯理论的枯燥无味,将从实例出发。先利用第三方应用完成一次从推流到服务器,客户端拉流到Android端的过程。然后主要从Android平台出发,逐步从上面四个方面渐进学习。所以,我的路线大概会是:

  1. 使用SRS+OBS+FLV搭建一个流媒体直播系统
  2. 学习基本的ffmepg命令
  3. 用Android端替换掉OBS,实现数据的推流
  4. 用Android端替换FLV,实现数据的展示
  5. 在Android端实现基本的图像、音频数据处理
  6. 基于ffmpeg和完成直播开源SDK(Android)
  7. 学习音视频编解码理论知识
  8. 学习常用的流媒体传输协议
  9. 基于视频数据,使用opencv进行图像识别

参考文章:
音视频知识概况
搭建直播系统
不只是ffmpeg

猜你喜欢

转载自blog.csdn.net/qq_25333681/article/details/79562818