在虎牙工作已经两年了,一开始做的事情杂且乱,左边看一点,右边看一点,最近好多了,可能是领导氛围和能力都优质了不少吧。在这过去的一年里,我从一个连c/cpp都不一定写的完整的人,到如今,ObjectiveC/Java/C/Cpp/Python都会的人,其实才知道,技术从来都不是问题,产品的核心价值才是关键。(好像扯远了)

思考一下,这篇就主要来说下,音视频该怎么学,主要工作内容是什么。
简单来说,贯穿整个直播和点播体系,音视频最基础的,就是播放器。市面上有很多播放器:

  • IJKPlayer的轻量级播放器:移动端类似bilibili,斗鱼,快手目前使用的。
  • Vlc全能播放器: PC端类似过去虎牙使用的。
  • flv.js:一款Web简易播放器

音视频开发工程师,就是做播放器的,其实也不假,高端点的,别人叫媒体开发工程师。这也只是宏观上来看的,类似和一款电商产品一样,也分为很多岗位:

  • SDK开发工程师: 主要负责端上SDK开发和维护,提供接口层,把控质量等作用。
  • 传输开发工程师: 涉及网络相关的,一般就有这么一堆调用网络Api来开发的人,他们主要负责前后台的负载均衡,卡顿优化,加速播放等能力,致力于挖掘网络低延时音视频传输的工作。
  • 编解码开发工程师: 涉及音视频的相关的,他们主要负责音视频编解码,音视频渲染,内核层优化,制作高画质低流量的直播视频流相关的。致力于将画质做到最好,将流量做到最低。
  • 图像ai开发工程师: 由于音视频的压缩,必然带来画质的亏损,如何增强画质,或者超分,就是这岗位需要负责的一件事了。

看到这,有没有对音视频开发有一个新的了解。当然,之所以音视频人才难以招,主要的原因在于,设计的方面太广了,做音视频的人,往往从Web/iOS/Android/Pc都需要略懂皮毛,不仅如此,对音视频相关更需要去理解。

既然各位都理解了本职位该做的事情,那么就来说说如何学吧。我也是一路摸过来,也不好说学的怎么样,但我想从现在开始,一点一点的从过去里面积累经验。

  • 《音视频开发进阶指南》

这本书可以说是音视频入门必备,内部笼盖了从iOS/Android采集->iOS/Android编码->iOS/Android解码->iOS/Android渲染的大部分细节,读完做一款播放器,杠杠的。(目前我也打算继续读完,然后写一个专刊,专门用于介绍这本书的细节。)
推荐指数: ✨✨✨✨✨

  • 《OpenGLES 3.0编程指南》


这本书的作用在于学习OpenGL相关的知识点,但是对于iOS来说,目前大部分使用的是Metal,资料甚少,但是OpenGL和其很像,举一而推三,也是程序员需要具备的。
推荐指数: ✨✨✨✨✨

  • 《FFmpeg从入门到精通》

学音视频的都知道,所有的日常开发,都离不开FFmpeg的使用,学好ffmpeg,行遍天下都不怕。这本书唯一的缺点就是,命令行的部分偏多,但是实际代码行数偏少,如果有需要继承到app里面的人,建议直接网上搜索相关模块,后续有时间我也想去好好读读源码。
推荐指数:✨✨✨✨

看完以上三本,你基本上有了音视频开发工程师的基本能力,你还需要一些主观的学习路线:
直播路线:

  • 网络层相关,包括前后台的传输优化+网络提速
  • 解封转/封转模块,包括mp4,hls,Dash,mov等格式的解析和封转。
  • 音频的解码,包括软解码,硬解码。
  • 音频的渲染,包括各平台音频的渲染。
  • 视频的解码,包括软解码和各平台的硬解码。
  • 视频的渲染,包括各平台视频的渲染。

额外:

  • 视频加工
  • 音频混音
  • 端上音视频增强

你们可以对着这个列表学习,全部弄完毕之后,差不多你们就可以找到一份满意的offer了。


杨先生
QQ: 694622692
*mail: hatsunemikufans@163.com

音视频开发工程师学习之路相关推荐

  1. 微信多媒体团队访谈:音视频开发的学习、微信的音视频技术和挑战等

    内容概述 腾讯多媒体内核中心高级研究员时永方接受了LiveVideoStack的邮件采访,谈及了个人成长中的关键时刻,学习多媒体开发的三点核心,以及在5G和高清时代下,微信多媒体团队面临的挑战. Q: ...

  2. 记一次音视频开发工程师面试

    最近也是有想进行一些工作上的变动,所以也在四处投递简历,主要的岗位还是音视频开发的岗位,毕竟在这个岗位上自己还是会有一点点技术壁垒的.不过其实说实在的,C++方向上我觉得有几个方向真的很不错:流媒体相 ...

  3. 毕业五年的音视频开发工程师过得怎么样了?

    "5年的时光对于互联网从业者而言,足够去了解互联网产品的璀璨生命力了,有些产品和公司在这五年间从默默无闻走向家喻户晓,这也振奋了我们这群从业者的激情和信念." 采访讲师:鲁林俊 网 ...

  4. Android 深入Http(4)从OkHttp源码来看Http,音视频开发工程师前景

    想必最重要的是哪几行,大家都知道了. Response response = getResponseWithInterceptorChain() 这行代码就突然Response了,这说明getResp ...

  5. AndroidBAT高级面试合集——Binder 通信原理与机制,音视频开发工程师

    Binder 驱动运行在内核空间,它就是那个内核模块了.Binder 驱动很重要,承 担了进程间通信的数据转发等.一提到驱动,也是比较熟悉,你插个 U 盘,需 要驱动吧.而 Binder 驱动也差不多 ...

  6. Android自定义照相机实现(拍照、保存到SD卡,音视频开发工程师需要具备的知识

    @author wwj @date 2013/4/29 */ public class MainActivity extends Activity { private View layout; pri ...

  7. 谈谈对Android音视频开发的探究

    ​ 在日常生活中,视频类应用占据了我们越来越多的时间,各大公司也纷纷杀入这个战场,不管是抖音.快手等短视频类型,虎牙.斗鱼等直播类型,腾讯视频.爱奇艺.优酷等长视频类型,还是Vue.美拍等视频编辑美颜 ...

  8. 企业级Android音视频开发笔记分享,快来get正确的学习姿势

    随着传统的图文媒体向以音视频为主的新媒体转变,音视频开发逐渐成为Android领域内的小热门.但音视频开发涉及的层面较广,相关的技术繁多且复杂,想要深入确有一定难度.且目前网络上关于Android 音 ...

  9. 音视频开发调研和学习路线

    以下内容是对网上多个博主以及音视频大佬发布的内容进行的总结. 1.音视频开发 1.1音视频开发是做什么的 音视频开发就是将我们摄像机.麦克风采集到的画面(视频像素数据,YUV格式)和声音(音频采用数据 ...

最新文章

  1. 订单×××的算法研究与实现
  2. Win10双系统设置默认启动系统的图文教程
  3. Lync 2013部署(1)—AD准备
  4. 幼儿园带括号算式口诀_这么全的小学数学速算技巧、口诀不多见,教给孩子挺不错!...
  5. 【017】◀▶ C#学习(九) - ADO.NET
  6. linux内核 默认路由表,Linux 默认路由表 0.0.0.0
  7. parted命令 Linux 分区超过2TB硬盘
  8. SQL反模式学习笔记15 分组
  9. File Finder pro Mac版重复文件查找器使用方法
  10. 软件测试的标准操作流程
  11. 这些好玩的 GitHub 项目,你知道几个?
  12. configure: error: Package requirements (oniguruma) were not met: No package ‘oniguruma‘ found
  13. 超微服务器X11DAi-N主板简介及实际应用
  14. 常见随身WiFi设备总结
  15. Python 魔法方法与属性
  16. DataX系列8-HdfsWriter介绍
  17. 第十章分治算法(大数相乘)
  18. 交流直流电压检测电路
  19. 了解流式加密(CK)(二)
  20. 和谐敏感词(百度2017秋招真题)

热门文章

  1. 双十一之后,留给证券区块链转型的时间不多了……
  2. 亚马逊云服务器防火墙,Amazon WAF | Web 应用程序防火墙 | 亚马逊云科技
  3. H3CNE考试模拟试题
  4. 怎么把PS界面语言变成英文方法教程
  5. 【CV】MobileNet:使用深度可分离卷积实现用于嵌入式设备的 CNN 架构
  6. 复习笔记1-java基础
  7. python snmp_cmds库snmpwalk 中文正常显示方法
  8. 每日阅读:你如何过一天,你就如何过一生
  9. Qt sender()用法详解
  10. 微信永久封号怎么解封?微信社交场景被限制解决办法