这一两年因为该死的疫情,让短视频、超高清视频和实时音视频反而成为需求风口。
我的看法当然是觉得音视频这个行业还可以,而且从我自己的观察来看,做音视频的现在普遍年龄都在 30+ 了,我 94 年的在组里有可能还是年龄最小的那一批人了。
有很多想从事这方面的开发者经常会有一个误区,把音视频开发认为是安卓的一个分支,我是非常不认同这个观念的。
我的观点是 音视频开发也可以是一个独立的分支,不一定要和 Android 、iOS 联系上的。和信息安全行业一样,也分移动安全、Web 安全、云安全等,不同的安全领域有可能差异很大,但还是都属于信息安全范畴,音视频同样如此。
做客户端上的音视频、服务端上的、嵌入式的、系统底层的都是音视频的范围,另外从事音视频编解码算法、网络通信协议、视频超分、音频降噪等等,也是音视频的领域范围内,所以说音视频也可以是一个很大的范围体系,每个人处在其中的位置不同而已。
如果你很熟练 FFmpeg ,熟悉播放器,或者很懂 OpenGL 渲染,那么不懂 JVM ,不懂 Android Framework 一点也不妨碍你找高薪工作。
从1G语音、2G短信、3G图片语音、4G视频到5G未来可期的新时代,见证了音视频行业的磅礴发展。
技术更新慢,技术门槛高,大部分技术沿用至今,依然保持生命力,技术人员成型时间较长。以音视频常见的协议标准和开源项目为例:
部分音视频相关的技术标准发布时间年鉴(供参考)
1. 1980年 UDP用户数据报文协议(User Datagram Protocol)
2. 1981年 TCP传输控制协议(Transmission Control Protocol)
3. 1996年 RTP实时传输协议(Real-time Transport Protocol)
4. 1996年 RTCP控制协议(RTP Control Protocol)
5. 2003年 H264视频编解码
6. 2006年 NACK负向反馈(Negative Acknowledgement),接收方只有在没有收到数据的时候才通知发送方 rfc4585
7. 2008年 FLV流媒体格式 (Flash Video)
8. 2009年 HLS基于HTTP的自适应码率流媒体传输协议(HTTP Live Streaming)
9. 2009年 WebRTC网页即时通信(Web Real-Time Communication)
10. 2012年 RTMP实时消息传输协议 (Real Time Messaging Protocol)
11. 2013年 H265视频编解码
12. 2020年 H266视频编解码
部分音视频开源项目发布时间,每个开源项目之所以能成功都是经过了开发者长期的时间投入。
1. 2001年 FFmpeg多媒体视频处理开源项目
2. 2009年 WebRTC开源项目发布
3. 2013年 SRS流媒体服务器(Simple-RTMP-Server)发布版本
4. 2013年 ijkplayer手机播放器发布
5. 2014年 OBS开源项目(支持webrtc,早期支持的是RTMP)(GitHub可查最早时间)
6. 2015年 Janus WebRTC流媒体服务器发布版本
7. 2015年 QMPlay2 PC QT(调用FFmpeg的接口,硬解接口,OpenGL)播放器发布
8. 2017年 ZLMediaKit流媒体服务器发布版本
音视频自学非常困难,网上通俗易懂的难找到
网上部分资源是对应的开源版本较低,比如雷霄骅(雷神)博客的FFmpeg版本较低
音视频涉及大量的开源库和协议
比如ffmpeg的编译,如果不熟悉各种编译报错
Janus编译涉及各种开源组件编译不通过
比如WebRTC涉及的RTP RTCP SDP STUN等协议
部分嵌入式音视频的朋友技术面窄,技术不深入
比如有同学做了2年的音视频驱动,一帧音频能持续播放多久都不明白
常见招聘音视频的大公司
本路线涵盖最主流的音视频全栈开发技术,适合嵌入式开发、桌面开发、Android/IOS移动开发、后台开发、IT行业人员往音视频领域发展,适合音视频从业人员进一步系统提升音视频技术。学完具备全栈的音视频技术体系思维和视野,能够结合企业实际场景业务,进行播放器、录屏器、推拉流直播、视频监控、音视频通话、流媒体服务器等实际项目的开发。
音视频开发学习地址:FFmpeg/WebRTC/RTMP/NDK/Android音视频流媒体高级开发
【文章福利】:小编整理了一些个人觉得比较好的学习书籍、视频资料共享在群文件里面,有需要的可以自行添加哦!~点击832218493加入(需要自取)