阅读 375

音视频已强势崛起,我们该如何快速入门音视频技术?

作者: 李超 曾在 跟谁学 负责直播平台技术的管理工作;在 新东方集团 任职音视频技术专家; 在音视频会议行业工作 6年,在线教育行业工作 4年,一直聚焦在多人互动实时通讯领域。

最近经常遇到一些同学问我如何学习音视频,怎样才能快速上手?还有一些对音视频不了解的同学问我该不该学习音视频?作为一名音视频行业的10年老兵,我有一些思考分享给大家,希望能对你有所帮助。

大背景

2020年真的是一个多灾、多难的年份,冠状病毒的爆发使得本该举国欢庆的春节变得尤为沉闷。不能走亲,不能访友,除了呆在家里,那儿也不能去。正如张文宏大夫向我们劝解的,我们要将病毒给闷死

大家都盼着疫情可以赶紧过去,早点恢复正常的生活。但从目前的情况看,短时间内这个疫情是很难结束的。这不刚从中国消停了一阵,又跑到海外大爆发了,谁知道它会不会又转回来呢?

可我们还得生活!还得工作!还要学习!

好时代

幸运的是我们生活在一个好时代,科技在这几十年得到了迅猛的发展。在疫情肆虐的当下,我们可以通过音视频会议进行远程办公;我们还有在线教育系统,对于大多数学生来说,完全可以在家进行在线学习。

从某个角度看,这次疫情虽然导致很多行业处于崩溃边缘,但也催生了新的行业发展,其中音视频会议和在线教育就是因而起的行业。在疫情短时间内难以结束的情况下,音视频会议和在线教育的重要性马上体现了出来,新的沟通方式和教育方式被越来越多的人所认知,所接纳。

甚至我们可以判定,在线教育行业和音视频会议行业会在今年崛起,并在未来十年得到迅猛发展。

目前,各大巨头公司(如阿里、腾讯、今日头条,新东方等),纷纷在这两个方向上谋篇布局,进行了大量的投资,笼络技术人才,也可以间接佐证这个判断了。

大趋势

从未来大的趋势来看,随着5G时代的到来,音视频慢慢变成人们日常生活中的必须品。除了在线教育、音视频会议、即时通讯这些必须使用音视频技术的产品外,其它的产品也需要加入音频、视频元素。比如说将现在的网站注册与登陆的图文方式全部改为语音方式是否更加安全?相信随着音视频技术的普及,更加有创意的产品会如雨后春笋般孕育而生。

目前,音视频技术从之前的**“象牙塔”逐渐走向“百姓家”**已是不争的事实。正是因为这样一个大的趋势,现在除了各大厂之外,其它一些小厂也开始寻找音视频人才。一名稍好点的音视频人才现在可能会有3-4家公司抢着要、挣着要。

对音视频人才的需求从小众变成了大众,这更多的是大家对未来市场预期的结果。做个不恰当的比喻,3G/4G的出现,促成了移动互联网10年繁荣。而5G的出现,也会促成至少10年音视频行业的繁荣。

**除了5G的到来可以让音视频得到更广范的应用外,音视频技术在未来还有更重要的作用。**事实上,在人类可以识别的信息中,音视频包含的信息是最丰富的,但人类并没有很好的将它们利用起来。

究其原因,是因为这些信息都是非结构化的数据,而人类善长的是处理结构化数据(比如数据库)。而对于这些非结构化的数据却无从下手的,所以这些音视频数据都被白白浪费掉了。

但随着计算机视觉、人工智能的发展,人们开始撑握了如何将音视频这类非结构化数据转化为结构化数据的方法。一旦我们将音视频数据转为结构化数据后,我们就可以利用现有的技术(如搜索引擎、大数据,数据挖掘等)对这些数据进行各种分析了,这个价值是不是更加惊人呢?而这一切的基础都是音视频技术。

所以,音视频研发的未来是极为广阔的。目前可以说是学习音视频的最佳时机,及早的加入音视频研发的队伍,才能使自己在未来的职场上更有作为。

有钱景

正如我上面所说的,各大厂为了争夺未来,抢占先机,不惜重金笼络人才。通过招聘市场我们可以了解到,一名合格的音视频开发人员,少则年薪 30 万起,多则可以达 100万以上。

出现这种情况的原因主要有两个,一是音视频方面的人才不好培养,二是现有的优秀人才太少了。

从技术上来说,音视频从业者分成两个方向,一是搞算法的,另一个是搞工程的。搞音视频算法的这类人非常少,需要有深的数学能力和算法背景。相对来说,学习成本高,一般企业不需要,也养不起。这类人一般都会选择去大公司,薪水百万都是Low的。这些人一般只专注在一个领域上,因此就业面也窄。

搞工程的人相对多一些,他们有扎实的理论基础,很强的技术功底,对音频/视频都非常熟悉。这类人才工资要比同级别的其它开发人员薪资高20%以上。

因此,搞音视频技术的开发人员钱景还是非常乐观的。而且随着时间的推移,在未来几年音视频人才会更加炙手可热。

音视频好学吗?

说句实话,音视频自学起来困难重重,学习成本非常高,且效率低。主要有两方面的原因,一是音视频知识庞杂,通俗易懂的资料非常少;另一方面,网上充斥着大量的错误信息,使得很多初学者掉到坑里就爬不出来了。

我来举个例子,按照传统的音视频学习方法,学习音视频你首先要阅读大量的音视频规范/协议文档(如H264、MP4/FLV、RTP/RTCP等)。这些文档中的内容基本都以为单位的,即每个二进制位的变化都代表不同的含义,这种文档极其枯燥,很难阅读。

在对文档熟悉的前提下,再进行代码的开发难度就“更上一层楼”了。这时你会发现,如果你对 C/C++ 使用不熟练,没有专门进行过训练的话,你就进入了炼狱般的状况,那是一种折磨。

好在现在有FFMPG、WebRTC 等开源库,大大降低了研发成本。但即使这样,对于小白同学来说学习音视频依然是十分困难的。

小白如何学习音视频?

如上面所讲,音视频的入门难度还是蛮大的,我们该如何更快的入门呢?

我觉得最好的方式要找到非常好的课程,可以循序渐近,有条理、系统的学习。当然能有老师指导,遇到问题时老师能及时给予解答就更加锦上添花了。这样既可以快速入门,又可以系统的学习音视频知识,可以说这是最佳途径了。

对于能力强的同学也可以自学,但相对来说,这个时间成本就太高了。遇到一个坑卡几天是很正常的。网上音视频资料那么多坑,你想想要经历多长时间你才能真正学会它呢?即使你历尽千辛入门之后,你会发现离用人单位的要求还差着十万八千里呢。

对于各大厂来说,他们要招聘的人才既要有非常扎实的基础知识,又需要有一定的工程经验;如果你在学习的过程中没有实际做一些项目就很难达到它们的要求。

正是基于这样的考虑,我推出了一系列音视频的课程。这些课程中既有适合小白同学入门的课程(如音视频小白系统入门), 又有进阶的课程(如FFmpeg音视频核心技术精讲与实战)。

其中与ffmpeg相关的课程是音视频小白系统入门FFmpeg音视频核心技术精讲与实战。与 WebRTC 相关的课程是 WebRTC实时互动直播技术入门与实战WebRTC流媒体服务器设计与开发

如果你想学习音视频基础知识,音视频处理、编辑、特效相关的内容就学习ffmpeg的系列课程。如果你想学习音视频实时通讯(如音视频会议、在线教育)就学习WebRTC相关的课程。

入门音视频要学习哪些内容呢?

这里我简单列举一下入门音视频都要学哪些知识。对于已经学习了一些音视频知识而不知道自己目前水平的同学也可以作为一个参考,看看自己是否达到了入门水平。

  • ffmpeg在不同系统中的安装与简单裁剪
  • 音频基础知识,如频率、采样大小和通道数等
  • 音频的压缩原理
  • 如何从不同的设备上采集音频数据
  • 如何对音频进行不同的编解码
  • 视频的基础知识
  • H264编码原理
  • 如何从不同设备上采集视频数据
  • 熟悉YUV的一些常见格式(YUV420、NV21,YV12的不同)
  • 如何将YUV数据编码为H264/H265、VP8/VP9等
  • FLV/RTMP/HLS/MP4协议要十分清楚 ......

从上面的列表中你可能看到,要入门音视频要学的知识还是不少的。尤其是音视频的基础原理是最为重要的,否则你去面试人家问你为什么会产生花屏,为什么会产生卡顿,如何才能秒开这些简单的问题你都无法回答上来。

小结

总之,音视频已经强势崛起,相信未来的十年一定是音视频的十年。并且将音视频技术与计算机视觉和人工智能结合将引领未来二十年。

现在正是学习音视技术的最佳时机,大家一定要把握住机会,跟上时代的步伐,让自己可以在未来大有作为。

参考