当前位置:网站首页>为什么要做LiveVideoStack课程?
为什么要做LiveVideoStack课程?
2022-08-08 21:15:00 【LiveVideoStack】
文 / 包研
大家好,这里是LiveVideoStack包研,很久没有用这样的方式和大家聊天了。今天的主题是,我们要推出课程产品了,希望大家多多支持。我们会上线第一门课程——《轻松掌握WebAssembly视频播放器》轻松掌握WebAssembly视频播放器,由李超老师亲自打造。如果你希望学习如何在浏览器里通过WebAssembly实现视频播放等多媒体操作,请关注本课程。来,扫码掏钱。
李超其人
可能你是通过他的那本《WebRTC音视频实时互动技术:原理、实战与源码分析》书听到李超的。我第一次了解李超是2019年的RTC大会,虽然并未面对面交流,但我知道了一名来自来自新东方的专家。后来,郭蕾打算找李超做课程,问我对他的评价怎么样。能够同时被RTC大会和郭蕾看上,水平应该不差。转过年来就赶上了疫情,团队居家办公,线下活动全部暂停。焦虑、无奈中不得不进一步思考线上产品的计划了,于是再次想到了李超。
我记得在9月份的一天,我们约在车公庄附近的星巴克。我们聊了很多音视频课程的前景,聊了他的书,以及和LiveVideoStack可能的合作方式,这也是为我们的合作埋下了伏笔。虽然是第一次见面,李超给我的感觉是:热情,思路清晰,又有一些情怀。他说,目标是做一套最全的WebRTC课程。没想到他说到做到,2022年就把这套课程完结了。
前几天再次见到李超,我好奇问他做课、出书一年的收入有多少?他答道:“肯定没有在公司打工来的多。”毕竟,一些资深的音视频工程师可以拿到大几十万甚至百万级年薪。李超笑着说,“我喜欢现在做的事情,有几个同学给我反馈,说拿到了头条的offer。还有一个大专学历的同学,也拿到了很高的薪水,还是14薪,应该是超过了他的心理预期,所以特别高兴的和我描述了他面试的过程。”
第一门课为什么是WebAssembly + 多媒体?
关于做什么技术选题的课程,我一直有个原则,就是“不重复造轮子”。音视频技术栈本来就不大,卷起来害人害己。更何况,LiveVideoStack的优势就是对多媒体生态和趋势有独到的认识,完全有空间创造高质量、独创的内容。因此,我们首先排除了已经被广泛“曝光”的技术方向:WebRTC、FFmpeg等。最终,我们选定了WebAssembly + 多媒体这个方向。
浏览器是个不断演进的生态系统,其重要程度并没有因为iOS、Android等原生应用火爆而降低。任何公司都不可能忽视浏览器的价值,它直接、快速、低成本、安全、高度兼容。包括W3C在内的标准化组织,还在不断为浏览器注入新的能力、统一标准,如WebXR、WebCodec、WebTransport等等。被JavaScript严重制约的浏览器性能将得到越来越大的释放,尤其对于计算密集型的多媒体相关应用就更加重要了。
要想突破JavaScript的瓶颈,就不得不说WebAssembly。他就像一个容器,在浏览器可高效的运行二进制代码,调用硬件资源。比如,可以通过WebAssembly在浏览器中解码H.265的视频,这成为移动端实现H.265视频解码的主流方案。
JavaScript 和谁?
WebAssembly可以支持多种语言,如C/C++、Rust、Python、Go等。最终我们选择了Rust作为这门课程的语言。Rust有媲美C/C++的性能,学习曲线更友好。在Stack Overflow Developer Survey 2022报告中,Rust在开发语言用户量排名第14,但却以86.73%比例力压Go、Python成为最受开发者喜爱的语言,换句话说,Rust的用户对这门语言的满意度和忠诚度非常高。尽管这份报告的开发者主要来自海外,但却代表着一种趋势。当然,未来不排除提供其他语言版本的本课程。
音视频人才的需求与薪资
作为LiveVideoStack的读者,你应该了解音视频领域的技术人相对是比较硬核的,由于人才供给不足,薪资也比较坚挺。即便2021年经历了“双减”,大部分关键岗位的多媒体技术人都找到了不错的工作。尽管学习音视频的门槛不低,但回报也是正比于投入的。
迟到4年终出发
在2017年北京LiveVideoStackCon的开场环节,我就说过要探索新产品。没想到一晃已经过去了4年多。疫情给了我们非常好的反思的机会,也让我们意识到单一产品的局限和风险。LiveVideoStack课程只是我们摸索新产品的一次尝试,少不了问题和一厢情愿,欢迎各种吐槽和建议。如果你也有兴趣输出自己的系统经验,也欢迎邮件或加微信交流:[email protected]
参考:
边栏推荐
猜你喜欢
MATLAB综合实例:时域信号的频谱分析
分布式文件存储——文件秒传
Property or method “XXX“ is not defined on the instance but referenced during render.
js写一个搜索添加记录,点击记录删除内容
Redis之sorted set 命令
第十章 异常处理
微信小程序小说云开发免费源码
MySQL8.0设置远程访问权限
MySQL无法启用/etc/my.cnf配置文件,重启报错Warning: World-writable config file ‘/etc/my.cnf’ is ignored的解决方法
js写一个淘宝大小图轮播
随机推荐
C语言斐波那锲数列前n项求和
Introduction to GeoServer: 01-Introduction
oracle数据库的数据备份导出与数据导入恢复
C语言打印九九乘法表
用Multisim对振幅调制器进行仿真
classfile内容解析
SIGIR 2022 | MCCLK: 一个用于知识感知推荐的多层次的交叉视图对比框架
position的值,relative和absolute分别相对谁定位
中国石油大学(北京)-《 渗流力学》第二阶段在线作业
最近给公司撸了一个可视化大屏。
Socket (udp) console program under window
numpy基础
GeoServer introductory learning: 05-Multi-level MBTiles specification data release
day11 基于Rest的操作、查询聚合索引
【Oracle的NVL函数用法】
SQLite的简单应用
【Export PDF-Project Application】
pytorch实现数据集读取/下载
使用v-for完成图标单选三选一
3分钟写个VBA:Excel工作簿所有子表数据一键汇总