- 岗位概况
下面是从BOSS直聘上搜集的音视频开发相关岗位,从中整理得出岗位需求。
2.岗位需求总结
基本要求:
- 掌握C++语言编程,具备良好的编程风格。
- 掌握Linux等嵌入式操作系统开发(网络通信、进程线程、数据库等);
- 掌握常用的框架及库,如ffmpeg、x265等。
- 掌握音视频处理基础,包括编解码、码流封装、多媒体框架等。
- 熟悉常见的音视频编解码和传输协议,如h264、h265等。
- 熟悉流媒体协议RTSP、RTP/TRCP、HLS、RTMP、WebRTC,
- 基础项目经验;
进阶要求
- 瑞芯微、海思等国产平台系统开发、项目经验、解决方案;
- 熟悉Qt开发;
- 对图像处理有一定的了解, 熟悉OpenCV图像增强及相关算法者优先。
- 跨平台开发(Linux、安卓、Windows等)、WebRTC等经验;
其他要求
- Linux驱动开发(Camara等)
- DSP、等嵌入式经验,有Movidius开发经验者优先。
- 了解Python、Bash等脚本语言的基本用法。
- 良好的英文技术文档阅读能力和中文文档写作能力
二、学习资源分享
C++编程语言基础
- 学习内容:
- C++基本语法;
- C++进阶STL;
- 现代C++11等标准;
- C++刷题与项目;
- C++设计模式;
- 学习资源:
- C++基本语法
【C++语法】《C++快速入门》_哔哩哔哩_bilibili
2.《c++语言程序设计》清华大学/郑莉
【清华大学】 第4章 类与对象 郑莉教授 C++语言程序设计_哔哩哔哩_bilibili
3.程序设计基础 华中科技大学(黄晓涛主讲)
4.《C++ Primer Plus》配套视频教程
《C++ Primer Plus》第六版 零基础从头学_哔哩哔哩_bilibili
- 书籍:
- 《C++ Primer Plus》
2.《C++编程思想》
嵌入式Linux开发
学习内容:
- 嵌入式Linux应用开发基础:GCC、makefile等;
- 嵌入式Linux应用开发进阶:网络通信、进程线程、文件IO;
- 嵌入式Linux底层驱动开发;
- 嵌入式Linux开发项目实战:
学习资源
- 正点原子系列视频;
- 北京迅为
-
- 韦东山系列视频:
-
- 爱编程的大丙视频与文档
项目推荐
Camera驱动源码学习
音视频框架与协议
- 学习内容
- 掌握常用的框架及库,如ffmpeg、x265等。
- 掌握音视频处理基础,包括编解码、码流封装、多媒体框架等。
- 熟悉常见的音视频编解码和传输协议,如h264、h265等。
- 熟悉流媒体协议RTSP、RTP/TRCP、HLS、RTMP、WebRTC
- 学习资源
1.音视频基础学习资源
- 音视频基础知识
音视频教学:(一) 音视频基础知识_哔哩哔哩_bilibili
2.音视频入门系列
音视频入门系列(图像、音频、字幕、视频封装格式,FFmpeg、ffplay源码分析,解码、编码、转码,流媒体协议,服务器部署)_哔哩哔哩_bilibili
3.音视频开发全套课程详细解析
音视频进阶-FFmpeg x264码率控制-h264码率控制-cqp-crf-cbr-abr-vbr-应用场景分析-包括阿里、腾讯推荐方式_哔哩哔哩_bilibili
4.音视频开发音频原理
- 书籍
- 《数字视频编码技术原理》
2.《数字音频信号处理》
3.《多媒体通信原理、技术及应用》
2.FFmpeg学习资源
- FFmpeg x264码率控制-h264码率控制-cqp-crf-cbr-abr-vbr-应用场景分析
音视频进阶-FFmpeg x264码率控制-h264码率控制-cqp-crf-cbr-abr-vbr-应用场景分析-包括阿里、腾讯推荐方式_哔哩哔哩_bilibili
2.FFmpeg音视频核心技术精讲与实战
【音视频】FFmpeg音视频入门到精通+实战课_哔哩哔哩_bilibili
3.常用ffmpeg使用方式
【FFmpeg 分P教学】转码、压制、录屏、裁切、合并、提取 … 统统不是问题。_哔哩哔哩_bilibili
4.音视频基础与ffmpeg原理
音视频基础与ffmpeg原理(一)_哔哩哔哩_bilibili
5.ffmpeg教学
6.FFmpeg推流讲解
- 书籍
1.《FFmpeg从入门到精通》
2.《WebRTC音视频实时互动技术:原理、实战与源码分析》
3.The H.264 Advanced Video Compression Standard
4.《新一代视频编码标准—H.264/AVC(第二版)》
- H264,H265音视频编解码和传输协议
1.飞一样的成长的个人空间-飞一样的成长个人主页-哔哩哔哩视频
2.【音视频处理】H264/H265详解
【音视频处理】H264/H265详解,为什么H264更常用?_哔哩哔哩_bilibili
3.H264和H265编码器工作原理
AI音视频应用开发课程7-1-2_H264和H265编码器工作原理_哔哩哔哩_bilibili
4.全网最详音视频入门-H264编码基础原理详解
全网最详音视频入门-H264编码基础原理详解_哔哩哔哩_bilibili
5.H264编码原理
- 书籍
1.《H.265/HEVC视频编码新标准及其扩展》
2.《H.264和MPEG-4视频压缩》
3.《新一代视频压缩编码标准:H.264\AVC》
- RTSP、HLS等学习资源
- RTSP协议讲解及代码实现
【音视频开发】《从零开始编写一个RTSP服务器》第1讲:RTSP协议讲解及代码实现_哔哩哔哩_bilibili
2.RTSP 模块源码分析
高性能运营级流媒体服务框架 ZLMediaKit RTSP 模块源码分析(二次开发)_哔哩哔哩_bilibili
3.用vlc插件搭建本地rtsp流服务器
01_用vlc插件搭建本地rtsp流服务器,用于监控,直播开发测试_哔哩哔哩_bilibili
4.Linux系统下搭建RTMP流媒体服务器
Linux系统下搭建RTMP流媒体服务器(完成推流、拉流、回放、转流等功能)_哔哩哔哩_bilibili
5.流媒体服务器开发项目
从零开发一个国标GB28181流媒体服务器,并实现大华摄像头国标协议推流_哔哩哔哩_bilibili
6.WebRTC原理与开发实战
WebRTC原理与开发实战【已完结】_哔哩哔哩_bilibili
- 书籍
- 《网络流媒体》
2.《流媒体技术应用教程》
3.《流媒体直播原理及应用》
- V4L2框架学习
- v4l2框架介绍及sensor源码窥探和datasheet解读、cci讲解
嵌入式音视频底层驱动学习第四期之v4l2框架介绍及sensor源码窥探和datasheet解读、cci讲解_哔哩哔哩_bilibili
2.V4L2采集视频显示
音视频处理与优化
- 学习内容
- 视频处理技术:学习视频的滤镜、特效处理技术(如去噪、锐化、模糊、色彩调整)。OpenCV 的使用,进行图像处理、目标跟踪、特征检测等。
- 音频处理技术:学习音频的滤波、回声消除、增益控制、噪声抑制等处理技术。
使用 OpenAL 或 PortAudio 进行音频输入输出处理。
- 性能优化:学习如何对音视频编码和解码进行性能优化。使用多线程和 SIMD(单指令多数据)加速编解码过程。了解 GPU 加速编解码(如 CUDA、OpenCL)的实现方法。
- 学习资源
- 视频
- OpenCV入门到实战
【B站最好的OpenCV课程推荐】OpenCV从入门到实战 全套课程(附带课程课件资料+课件笔记)图像处理|深度学习人工智能计算机视觉python+AI_哔哩哔哩_bilibili
2.OpenAL 3D Audio Tutorial OpenAL音效基础使用教程
OpenAL 3D Audio Tutorial OpenAL音效基础使用教程_哔哩哔哩_bilibili
3.音频原理
- 书籍
- 《OpenCV3编程入门》
2.《OpenCV3计算机视觉》
其他内容
RTOS系统开发
- 嵌入式系统与硬件加速:在嵌入式设备(如摄像头、智能家居、车载系统等)中进行音视频开发,学习如何与硬件交互、使用硬件加速进行编解码、图像处理等。
- 实时操作系统(RTOS):学习如何在实时操作系统中进行开发,处理音视频流的实时性要求。
Web在线视频会议与实时通信
- WebRTC:WebRTC是一个开源的Web实时通信框架,专为实时视频、音频通讯设计。掌握其架构、协议栈、信令机制以及如何将WebRTC集成到应用中。
- 视频会议系统架构:理解大规模视频会议的系统架构设计,包括服务端负载均衡、P2P通讯、媒体流转发等。
多平台开发
- 多平台播放器开发:学习如何开发跨平台的音视频播放器,掌握如VLC、MPlayer等开源播放器的工作原理,如何处理不同平台(Windows、Linux、Android、iOS)上的音视频播放。
- 用户界面(UI)开发:学习如何结合C++开发音视频播放器的图形界面,可以使用Qt、GTK、或其他图形界面库。
音视频与人工智能
- AI应用于音视频:学习如何将人工智能技术应用于音视频领域,如视频内容识别、语音识别、视频分析、音频生成等。
- 深度学习与计算机视觉:学习如何使用深度学习框架(如TensorFlow、PyTorch)来进行视频理解、图像分割、人脸识别等任务。
计算机图形学基础
- 图像基础:像素、分辨率、色彩空间(RGB、YUV)、图像格式(JPEG、PNG等)。
- 图像处理算法:如滤波、卷积、边缘检测、图像增强等
- 学习资源
- 视频
- 计算机图形学 (华中科技大/万琳)
2.现代计算机图形学入门 (加州大学/闫令琪)
3.数字图像处理 (上海交通大学/顾力栩 )
- 书籍
- 《计算机图形学原理及实践》
2.《OpenGL编程指南》
3.《物理渲染从理论到实现》
三、10个音视频开发项目推荐
1. FFmpeg视频缩略图与图像转换分析
2. 直播服务器 RTMP/HTTP-FLV/HLS
3.从零开发一个国标GB28181流媒体服务器,并实现大华摄像头国标协议推流
4.音视频开发-ffmpeg播放器项目实战
5.OBS录屏二次开发
6.webrtc一对一多对多音视频通话开发
7.MP3音乐播放器搜索引擎
8.FFmpeg与OpenCV联动项目
9.RTMP视频推流项目
10.Qt/C++音视频开发26-ffmpeg播放器
11.rk3568之IMX415摄像头驱动开发
音视频开发必备项目
四、一对一辅导,腾讯会议教学
五、同学故事&就业案例
1. 双非硕,成功面试音视频工作方向!
该学员在攻读硕士学位之前,已经积累了三年的后端开发工作经验。主要想学习基于我们的瑞芯微和海思项目。借了一套海思的开发板学习海思4K相机项目。
在了解音视频领域的就业机会后,他对该方向产生了浓厚的兴趣。在进一步深入了解了相关的工作岗位和行业需求后,他决定转向音视频技术领域,并成功找到了一份相关的工作。通过他之前的工作经验以及对音视频行业的学习和探索,他最终顺利实现了职业的转型与发展。
2. 【工资10-35万美刀】美国特斯拉Offer!
该学员想找嵌入式软件开发方面的工作,自己C++、Linux驱动接触较少,只有一些C#的软件开发经历,来我们这报名了Linux一对一辅导。
在学习的过程中遇到不会的问题时,在群里进行提问,老师会对所提的问题进行解答。同时,也会根据学生所学的阶段基础安排教学进度。
学员在制作简历过程中,老师会对学员所制作的简历进行细致入微的指导,对简历中的每一个细节进行完善。
在即将进行面试时,老师还会对学员进行模拟面试指导,帮助学员提前适应面试环境,增强自信心,并有效应对可能的面试场景。
最终,该学员不负努力,喜提美国特斯拉Offer!