目录

安卓音视频入门难,老司机分享音视频开发学习技巧与痛点

安卓音视频入门难,老司机分享音视频开发学习技巧与痛点

最近在写文章的时候, 发现很多读者给我私信提问,想了解安卓音视频这块, 很多同学也对音视频开发有点浓厚的兴趣,但奈何没有系统的学习知识, 仅靠自己苦苦钻研确实力不从心 ,今天就借这个机会分享一下我学习音视频开发的一点探索。

音视频需要掌握的基础知识点

- ffmpeg 强大的音视频处理库(cpu软编等)

- mediaCodec 安卓sdk自带的编解码器,(硬编)

- opengles 使用gpu进行图像处理

- h264,h265 图像编码压缩算法

- yuv420p ,nv21 ,yuv_420_888,I420 需要了解的视频编码格式

- yuv和rgb的相互转化

- ......

为什么要学音视频技术?

开发薪水: 在某招聘网站的公开统计当中, 音视频行业的工资10k-20k占12%,20k-30k占45%,30k-k占35%,35k以上占13%。主要分布在20k-35k之间为何音视频开发薪资这么高? 其实一个非常主要就是因为音视频技术人才非常稀缺,很少有人会完整的音视频开发。

就业机会: 就业场景分布广。

开发前景: 5G落地音视频在互联网中的比重越来越高,5G宽带的提速已经加速整个音视频领域的应用,音视频高端领域严重短缺!

目前行业现状

核心竞争力:

掌握音视频以后不用担心会被其他人替代,因为音视频的门槛性,注定竞争不会太大,所以也是与其他人拉开差距的分水岭。

高端人才相当缺乏:

BOOS直聘中,北上广深很多年薪50W-70W的音视频开发岗位,常年招不到人,而月薪2-3万大多是刚从事音视频的入门级开发者。

技术迭代慢:

音视频开发技术更新很慢虽然技术门槛很高 ,但大部分技术沿用很久却依然保持生命力,技术人员成型时间较长,很多公司从事音视频开发的都 35+ 了,这些人才却丝毫也 不用担心35岁被优化。

音视频自学的难点

1.  音视频自学非常困难,网上通俗易懂的难找到
2.  网上部分资源是对应的开源版本较低,比如雷霄骅(雷神)博客的FFmpeg版本较低
3.  音视频涉及大量的开源库和协议
4.  比如ffmpeg的编译,如果不熟悉各种编译报错
5.  Janus编译涉及各种开源组件编译不通过
6.  比如WebRTC涉及的RTP RTCP SDP STUN等协议
7.  部分嵌入式音视频的朋友技术面窄,技术不深入
8.  比如有同学做了2年的音视频驱动,一帧音频能持续播放多久都不明白
如需要音视频开发进阶文档 添加 ∨:maniu966

https://i-blog.csdnimg.cn/blog_migrate/e45462160a4d48eda77981885b99a21b.gif

在这我也 努力为大家解决这些学习痛点,整理了一份 音视频开发进阶文档 ,让初学者可以比较“柔顺丝滑”地入门 ,即使是老司机也能得到不少收获。

(此文档资料包括 C/C++,Linux,FFmpeg webRTC opengl rtmp hls rtsp ffplay 等等) ,留言或私信**【音视频】**即可获取。

强调一下:【因篇幅问题:文中只放技术点,需要完整版的的可找作者获取,留言:【音视频】即可】

此外Android进阶开发各类文档/资料,也可关注公众号<Android苦做舟>获取。

1.Android高级开发工程师必备基础技能
2.Android性能优化核心知识笔记
3.Android+音视频进阶开发面试题冲刺合集
4.Android 音视频开发入门到实战学习手册
5.Android Framework精编内核解析
6.Flutter实战进阶技术手册
7.近百个Android录播视频+音视频视频dome
以下是这份开发文档的部分章节:

音视频初级入门开发

https://i-blog.csdnimg.cn/blog_migrate/4659a44daffa1135937cefa3b5ad6531.png

  • 音视频入门开发(一):三种方式绘制图片
  • 音视频入门开发(二):AudioRecord 采集音频PCM并保存
  • 音视频入门开发(三):AudioTrack 播放PCM音频
  • 音视频入门开发(四):Camera API 采集视频数据
  • 音视频入门开发(五):MediaExtractor 和 MediaMuxer API 解析与封装
  • 音视频入门开发(六):MediaCodec API 详解
  • 音视频入门开发(七):音视频录制流程总结
  • ……

音视频中级进阶:OpenSL ES 学习

https://i-blog.csdnimg.cn/blog_migrate/ff8a77fd6e2770037455991fcbb7bac2.png

  • OpenGL ES 中级开发(一): OpenGL ES 介绍
  • OpenGL ES 中级开发(二): OpenGL ES 环境搭建
  • OpenGL ES 中级开发(三): OpenGL ES 定义形状
  • OpenGL ES 中级开发(四): OpenGL ES 绘制形状
  • OpenGL ES 中级开发(五): OpenGL ES 使用投影和相机视图
  • OpenGL ES 中级开发(六): OpenGL ES 添加运动效果
  • OpenGL ES 中级开发(七): OpenGL ES 响应触摸事件
  • OpenGL ES 中级开发(八): OpenGL ES 着色器语言GLSL
  • ……

Android音视频开发高级探究篇

https://i-blog.csdnimg.cn/blog_migrate/5bc986a27a13c473c998ba9ff64928f0.png

  • 音视频编解码技术: 音频编码技术
  • 流媒体协议
  • 多媒体文件格式
  • FFmpeg 学习

强调一下:【因篇幅问题:文中只放技术点,需要完整版的的可找作者获取,留言:【音视频】即可】

此外Android进阶开发各类文档/资料,也可关注公众号<Android苦做舟>获取。

1.Android高级开发工程师必备基础技能
2.Android性能优化核心知识笔记
3.Android+音视频进阶开发面试题冲刺合集
4.Android 音视频开发入门到实战学习手册
5.Android Framework精编内核解析
6.Flutter实战进阶技术手册
7.近百个Android录播视频+音视频视频dome