超哥是声网的老朋友了,也是我们的社区 MVP。
相信音视频领域的从业者哪怕不认识超哥,也一定听说过他写的这本名为《WebRTC 音视频实时互动技术 —— 原理、实现与源码分析》的书,或者看过超哥的课程、极客时间专栏、博客文章…
之所以对超哥做这次的专访,源于被超哥“拖延了几个月”的一顿约饭,而拖延的原因,用超哥的话来说,他在“用错误的商业行为,做一门没人能超过的课程”。

我目前是一名内容行业的创业者,主要围绕音视频技术做一些知识、课程的输出,拔高点儿也可以说是一名“音视频行业的布道师”。
从 2010 年开始,我便一直专注在音视频直播领域,从一名一线开发者慢慢成为项目负责人、技术负责人,在这个过程中积累了大量音视频领域的知识和行业理解。2017 年,我正式开始全职做音视频方向的技术课程和布道,目前已经出了 8 门相关课程,包含《WebRTC 源码深入剖析》、《FFmpeg 音视频核心技术精讲与实战》等,累计有近三万学员报名学习过我的课程。
除了课程外,还有很多朋友应该是通过《WebRTC 音视频实时互动技术 —— 原理、实现与源码分析》这本书认识的我,平时我也会在各种博客、媒体平台做一些关于音视频相关经验的分享和问题的解答。
首先这一定是一件我热爱并且擅长的事情,才会放弃一些东西来尝试这样的一条路。
其次我觉得每个人在社会中,都是有意义的。我经常会思考人生的意义是什么,是每天工作挣钱?是养家糊口?我觉得不应该只是这些。我希望能通过我的能力和努力,帮助到更多的人,在他们的世界中产生一些影响,产生一些知识或者能量的传递。
这是我想做布道师的初衷。我觉得这种布道相比于单纯的技术开发,有可能可以产生更大的能量。毕竟我们个人的能量是有限的,一个人不太可能改变世界,但我们可以将能量传递、复制给更多的人,发挥更多人的能力来一起改变世界。
从一线开发到技术管理是一条大家都非常认可的职业发展路径,但从技术管理转型搞内容创业,确实是一个蛮大的变化。
作为一名开发者,大部分时间都在追求在某一个专项技能上更深更强,体现出在公司的价值。当在公司业务的某一些技术范畴具备不可替代的能力时,基本就在公司待稳了。一名技术管理者,则需要对公司的技术方向、架构、团队以及业绩负责,要能带领团队打硬仗、打胜仗。
而内容创业的逻辑是完全不同的。目前我是单兵作战,如果我只关注某一个具体的技术栈或者技术能力,会让课程的覆盖面很窄,那么符合我课程的受众就会很少,很难通过这种方式养活自己。所以这是我面临的一个转变,也就是在保证够深够强的基础上,扩大自身的技术面。
我的第一门课是在 2017 年制作的,课程名称是《FFmpeg 音视频核心技术精讲与实战》。之所以选择这个主题有两个原因,一是 FFmpeg 的需求量比较大,只要搞音视频基本就避不开这个领域。第二点是做出来一个播放器,始终是音视频领域中技术能力的一个体现和标志。
判断一个人音视频技术厉不厉害,其实没有特别明确的标准,但如果能做出来一个播放器,那就代表这个人肯定错不了。这就像大学毕业要做一个毕业设计,作为毕业前的一个门槛,做个播放器可能就是音视频工程师的一个门槛。
现在回顾我的第一门课,虽然整体质量还是觉得很不错,但在内容的表述和表达层面确实还有待提高。
在我刚开始做课的时候,因为没有任何的经验,需要参加平台的一个前期试讲,试讲一门 4-6 小时的课程。我当时选择的课题也是与音视频技术相关的,但因为基本没做过公开的课程分享,整体的语调非常平缓,就像念书一样。并且录制的过程非常缓慢且煎熬,原本觉得两周的准备时间充裕的很,但一天下来录的成片连 10 分钟都不到。
并且当时真的很可笑,甚至都不知道录课可以提前准备一份大纲或者逐字稿,也没有做任何的提词提示,完全就是靠脑子来记住要讲什么内容。
不过我也很佩服自己,凭着一腔热血和不知道哪儿来的自信,在长时间高频次的训练后,顺利通过了平台的考试。平台的反馈是虽然语速比较慢,但讲的很清楚很有条理,这对我来说算是打了一针强心剂,让我更加坚信自己能搞好这件事情。
关于做课程和内容分享,确实没想过放弃。过程中确实遇到过很多困难,但这些困难在我看来并不是问题,而是一个进行刻意练习的机会。
“练习一万小时成天才”这个口号现在是尽人皆知,在我看来,遇到的困难和痛苦是每一位从业者都要经历的过程。作为一名“大龄”创业者,相比年轻人的一个优势就是能够享受痛苦。
并且在进入这个领域后,慢慢发现自己经历的痛苦可能真的算不上什么。
刚成为讲师的时候,参加过一个同行的聚会,大家相谈甚欢也聊的很深入。有一位课程卖的很好的讲师,分享到他的课程是按秒剪辑的,也就是每说一句话就剪辑一下,最终把一句句的话剪辑成一门十多分钟的课。
这种方式大家看起来可能很笨,但其实很巧。当时大部分人都没有剪辑的意识,说错一句话就意味着要从头开始重新录。相比之下,按秒剪辑的效率简直是高出了一个数量级。
但他也提到刚开始剪辑的时候非常痛苦,据他说第一门课录了一两个月的时间,那段时间基本就没睡过一个好觉。但最终的效果也值得他所做的付出。
人最怕比,他下的这种苦功夫可以说苦到极致了,这么想的话,我当时那点儿痛苦就不算什么了哈哈。
讲好内容其实有几个方面。第一个方面是大纲的设计,要从学生的视角来考虑问题。我们以最近很火的短视频拍摄为例,如果想拍一条短视频,需要买哪些器材?要如何剪辑?镜头如何切换?类似这些拍摄者非常容易忽略掉但实际上非常重要的问题,只有切换视角之后才能发现。
另外就是对市场和行业的分析。如果我是一个面试者,我会考什么?我想学什么?市面上在招收哪些人才?他们需要的技能是什么?这些技能背后对应的技术是什么?想掌握这套技能需要拆分成几步?
通过这样的分析和拆分,把知识打散后重新梳理成一个完整的体系,从而形成一门即易学又实用的课程。
以我最近做的一门课程为例,其实我在用一种错误的商业行为,实现我个人的一个小目标 —— 做一门垂直领域内没有人能超过的课程。换句话说就是任何人都可以来讲音视频的课程,但大家的课程质量都无法超过我的这门课程。
从商业角度出发,做一门课程一定要有一个相对严格的制作周期,在周期内要完成课程的制作,保证时间和精力层面的投入产出比。但我最近做的这门《WebRTC 源码深入剖析》,严重超过了我原定的制作周期,不过这也是刻意而为之,目的就是为了把这门课打造成一个标杆,在我能力范围内做到极致。
所以投入产出比、挣不挣钱不是我关注的重点,能够打造出这么一门课程,真的很有成就感。当然也只有自由职业者或者我这样的“光杆创业者”才能干出这种事儿。
之所以敢说“没人能超过”,在于这门课程的两个门槛。
第一个门槛是我这个人。音视频领域从业十多年,我的经验和积累能够保证我对这个行业的认知和理解是有保障的。第二个门槛是我投入的时间和精力,相信不太会有第二个人来做这么“傻”的一件事。
在我看来,音视频是一项门槛不低且天花板很高的技术。
大家都知道音视频技术有着非常强的市场需求,有着很长期的生命力,这背后的原因是音视频技术有一个特点 —— 跨学科性,这个特点同样也让音视频技术变得难于掌握。
我们举个例子,无论是直播、短视频,还是最近大家讨论的实时互动概念,都属于音视频领域的技术。随着近几年音视频资料的不断增多,入门相对容易了很多,但落到具体的工作中,想成为音视频技术的专家仅了解音频或视频是不够的,还要熟悉跨平台、性能优化、各种算法等等。你很难想象一个音视频产品只支持某一个平台,它一定是跨平台的,同时支持 Windows、Android、iOS 等系统,而且要适配大部分的终端...
这些跨学科、跨领域的能力要求,让音视频技术有着广泛的应用场景和能力外,确实也提高了这项技术的天花板。
我觉得一项技术是否繁荣,和商业价值密切相关。只要我们的应用中需要使用音视频技术,那么市场就对音视频人才有需求。此前音视频技术的使用场景相对匮乏且单一,主要是因为技术不过关。随着技术的发展,我们已经可以借助音频和视频技术来实现各种各样的应用了。
关于音视频技术的发展,我觉得有两个比较重要的方向,也是我现在特别关注的。第一个是浏览器领域,以浏览器为核心,承载各种媒体应用。
另一个就是从浏览器到深度学习的延伸。这里的延伸,指得就是借助深度学习等新兴技术产生的新应用。业界有句话“深度学习当中能解决的问题都解决了,剩下的问题就是不能解决的问题。”
不能解决的问题有很多,比如给出一段文字,让 AI 通过对文字的理解生成一幅图片;通过对人脸微表情的识别,生成更具真实感、能传递更多信息的虚拟人形象等等,这个需求和现在最热的元宇宙应用有着很直接的关系。
和我们更近的,比如我们每个人摄像头的设备质量不一,有的高清有的低清,能不能通过一系列深度学习的算法,提升视频的清晰度?能否给黑白的老视频渲染成彩色的?这些应用和场景都离不开深度学习,所以我觉得深度学习和音视频会是高密度结合的场景,也是突破问题的方向。
在音视频领域中,FFmpeg 和 WebRTC 是两个最顶级的开源项目,而我个人觉得 WebRTC 更是音视频王冠上最亮的那颗明珠。
WebRTC 最核心的是其服务质量,包括 3A 算法(回音消除、降噪、自动增益)、网络拥塞控制(防抖动、自动判断带宽的大小......)。除此之外,还有很多值得借鉴的算法和技术,比如不同格式音视频的互通,电话中声音的编码格式是 G.711 和而网络中我们通常用的编码格式是 Opus,通过 WebRTC 可以实现这两种格式的互通,这是非常有想象力的一项能力。
并且 WebRTC 是一个跨平台的技术,Android、iOS、PC、Linux 等等系统都可以用;WebRTC 还可以借助各种不同的硬件来进行硬件加速等等。这些不是一个小公司通过自研就能搞定的,这里涉及的技术和能力太大太复杂了,毕竟 WebRTC 从 2011 年到现在已经用了 10 年的时间,才做出了现在这样的一个库。
写书对我来说是一件蛮有挑战的事情,并且也是一个机缘巧合。早几年可能没有足够的知识来支撑一本书,再过几年,可能没有足够的心气儿来支撑写完一本书。
当时出书的想法就是打造个人的品牌。出版界有一个“立言立德立行”的说法,我觉得这么多年的积累也应该立言一下,和别人说话的时候也能有一本自己的著作。
并且出完书别人看你肯定是不一样的,会更加容易获得认可。就像发过论文、发过 paper 和没发过的人的区别。
但写书在经济价值上是一个性价比不高,甚至有可能赔本的事情,不过从“立言”的角度,或者个人影响力打造的层面,我觉得仍然是个相当不错的思路。
有一本书对我影响特别大,《Linux 内核完全注释》,同济大学赵炯博士写的。知道这本书的契机,是 2005 年刚毕业的时候一个同事给我推荐的,这本书给我真正打下了坚实的基础,也给我打开了一个新的世界。
赵炯博士这本书几乎涉及到了 Linux 内核所有的原理和相关知识,把每一行代码都做了注释。当时赵炯博士还开了一个论坛,大家买完书后聚集在那个论坛里相互交流,在那个论坛里能看到各种各样的操作系统,比如古老的 DOS 系统,以及国内开发者自己写的很多系统,很多人都是看完这本书后自己一行行代码撸出来的。
当然这本书中介绍的操作系统是比较早期的,但讲的很全面很详细,从机器一开机启动 BIOS,将硬盘/软盘中的操作系统加载到内存,然后开始运行操作系统,切换模式,再到后面的内容管理、进程管理等等,只要想学,你都能自己实现一个小型的操作系统。
那个时候我天天都在论坛泡着,关注大家讨论的话题和经验,跟大家互动交流,最后也成为了其中一个版面的版主。我的毕业设计也和这本书相关,因为当时正好不太了解操作系统,所以干脆以操作系统为题,做了《80386 保护模式与 Linux 内核引导分析》的毕设。
毕设的论文写完后我发给了导师一份,也发到了这本书的读者群中,大家普遍反馈写的还挺不错,我也因此被选为了版主。现在想想都觉得挺有意思的。
这本书我现在有时候还会翻开看看,很多内容哪怕现在看都不过时。
想要帮助他人的人,大概率都曾接受过他人的帮助。
在采访中,超哥提到了他的老同事、老领导李彦涛,这是他在全时云时期公司的首席架构师。在刚去全时云时,超哥认为自己是一个还不错的开发者,直到接触到李彦涛后,他对于优秀开发者有了一个新的定义。
“他是 90 年代初上的北大,北大毕业后先去了中科院搞航天导弹发射,后来去摩托罗拉做了级别非常高的架构师。和塞班同期的智能手机系统就是他带头做的。并且他对 Linux 内核研究特别深,可能是我见过所有技术人里最牛的了。”
但超哥话锋一转,表示技术能力对于优秀开发者而言只是一个必要不充分条件,乐于且善于借助自身的技术能力来帮助别人可能是更加重要的一点。
“在全时云的时候,几乎任何问题他都能帮大家解决,而且特别平易近人,愿意花时间认真了解问题、带你分析问题、手把手帮你解决问题。这对我产生了很深远的影响。”
—— @阿遂
关于 声网开发者 x 人物专访
「声网开发者」系列人物专访是声网推出的文字类访谈节目。区别于纯粹的技术分享,我们相信开发者本身的思想与经验具备更加丰盈的价值。希望通过这个栏目链接优秀开发者,挖掘技术黄金时代背后,源于每一位开发者个体的力量。
往期回顾:
关注「声网开发者」
关注实时互动领域的
技术实践、行业洞察、人物观点
☟☟☟



