前言
在数字化浪潮的推动下,音视频技术已成为信息时代不可或缺的一部分,从在线教育、远程办公到娱乐直播,音视频的应用场景日益丰富。然而,随着技术的不断演进,音视频领域的知识体系也变得纷繁复杂,对从业者提出了更高的要求。
一方面,扎实的理论基础是理解音视频技术的基石;
另一方面,丰富的工程实践经验则是将理论转化为现实应用的关键。
面对这一现状,音视频从业者的成长之路充满了挑战与机遇。
音视频技术的双面性
音视频技术的复杂性主要体现在两个层面:一是理论知识的深度与广度,二是工程实践的多样性和灵活性。理论知识涵盖了信号处理、编码解码算法、网络传输等多个学科,要求从业者具备坚实的数学和计算机科学基础。工程实践则涉及设备调试、网络优化、故障排查等环节,需要在实践中不断积累经验,形成解决实际问题的能力。
如何学习音视频
音视频技术学起来并不容易,要懂的东西太多:音视频的采集、编码、传输、解码、渲染… 等等,网上也少见体系化的资料。
为了帮助大家能够系统的学习音视频,特地分享一份由字节内部大佬整理的音视频开发教程含面试题的资料,文章内容,图文代码结合,知识点讲解透彻,更易掌握,适合初/中学者以及转行的人学习。
有需要的朋友,扫描下方二维码,免费领取!!!
音视频开发教程含面试题
第一章、WebRTC 发送方码率预估实现解析
- 1.基于延迟的拥塞控制原理
- 2.Pacing和包组
- 3.TransportFeedback RTCP报文
- 4.发送方码率预估
- 5.根据探测的网络情况, 预估码率
- 6.发送方码率预估的算法流程
第二章、码率控制基本概念
- 1.X264 中码率控制
- 2.X264 中关于 QP设置
第三章、Speex回声消除代码分析
第四章、房间声学原理与Schroeder混响算法实现
第五章、H264系列–压缩编码技术
- 1.宏块
- 2.帧分组(即GOP)
- 3.运动估计与运动补偿
- 4.帧内压缩(这部分也看不懂,后面补充)
- 5.帧内预测,计数残差值
第六章、RTSP 媒体协议流的录制方案及其覆盖策略详解
- 1.录制视频格式调研
- 2.录制方案选择
- 3.异常处理
- 4.覆盖策略
第七章、webrtc建立连接之ICE框架
- 1.ICE介绍
- 2.ICE架构
- 3.ICE基本功能
- 4.连通性检查
第八章、流媒体协议介绍(rtp/rtcp/rtsp/rtmp/mms/hls)
- 1.RTP
- 2.RTCP
- 3.SRTP & SRTCP
- 4.RTSP
第九章、音视频同步原理及实现
- 1.音视频同步简单介绍
- 2.DTS和PTS简介
- 3.常用同步策略
- 4.音视频同步简单示例代码
第十章、直播概念和流程框架
- 1.直播初始
-
- 流媒体(直播需要用到流媒体)
-
- 直播基础知识介绍
- 4 如何快速的开发一个完整的直播app
第十一章、CDN在直播中的运用
- 1.CDN技术原理
- 2.CDN的常用架构
- 3.采用CDN的缺点
第十二章、常见音视频编码格式
- 1.常见的音频编码格式
- 2.各种编码比较
- 3.常见的视频编码格式
第十三章、H.264官方软件JM源代码分析-编码器lencod
- 1.函数调用关系图
- 2.下面解释一下图中关键标记的含义。
- 3.下文记录结构图中几个关键的部分。
第十四章、H.264官方软件JM源代码分析-解码器ldecod
- 1.函数调用关系图
- 2.普通内部函数
- 3.解析函数(Parser)
- 4.熵解码函数(Entropy Decoding)
- 5.解码函数(Decode)
第十五章、Android 音视频技术
- 1.整体流程
- 2.数据采集
- 3.数据处理
- 4.数据编码
第十六章、Web前端WebRTC攻略-媒体协商与SDP简析
- 1.媒体协商
- 2.SDP
- 3.参考文章
第十七章、基于FFmpeg的AVfilter的例子-纯净版
- 1.流程图
- 2.代码
- 3.结果
- 4.下载
第十八章、WebRTC 传输安全机制第二话:深入显出 SRTP 协议
- 1.要解决的问题
- 2.SRTP/SRTCP结构
- 3.Key管理
- 4.序列号管理
第十九章、WebRTC能给我带来什么?
第二十章、视音频数据处理:RGB、YUV像素数据处理
- 1.函数列表
- 2.项目主页
第二十一章、视音频数据处理:PCM音频采样数据处理
- 1.函数列表
- 2.项目主页
第二十二章、视音频数据处理:H.264视频码流解析
第二十三章、视音频数据处理:AAC音频码流解析
第二十四章、视音频数据处理:FLV封装格式解析
- 1.原理
- 2.代码
- 3.结果
- 4.项目主页
第二十五章、视音频数据处理:UDP-RTP协议解析
- 1.原理
- 2.代码
- 3.结果
- 4.项目主页
第二十六章、如何生成mp4文件
- 1.创建文件
- 2.写入视频数据
- 3.结束
- 4.代码
第二十七章、ffmpeg滤镜的基本使用
- 1.滤镜
- 2.简单滤镜
- 3.复杂滤镜
第二十八章、webRTC是如何实现音视频的录制
- 1.什么是webRTC
- 2.webRTC音视频数据采集
- 3.webRTC获取约束
第二十九章、音视频同步算法
- 1.ffplay简介
- 2.为什么要做音视频同步
- 3.音视频同步算法
- 4.音视频时间偏差计算
第三十章、房间声学原理与Schroeder混响算法实现
第三十一章、一个频域语音降噪算法实现及改进方法
第三十二章、HEVC官方软件HM源代码分析-编码器TAppEncoder
- 1.函数调用关系图
- 2.普通内部函数
- 3.CU编码函数
- 4.熵编码函数
第三十三章、HEVC官方软件HM源代码分析-解码器TAppDecoder
- 1.函数调用关系图
- 2.普通内部函数
- 3.解析函数(Parser)
- 4.熵解码函数(Entropy Decoding)
第三十四章、音视频编解码常用知识点
- 1.视频播放器原理
- 2.流媒体协议
- 3.封装格式(容器)
- 4.编解码
第三十五章、微信小程序集成实时音视频通话功能
- 1.背景
- 2.腾讯云——实时音视频
- 3.使用前提
- 4.快速入门
第三十六章、视音频编解码技术零基础学习方法
- 1.生活中的视音频技术
- 2.视频播放器原理
- 3.流媒体协议
- 4.封装格式
第三十七章、RTSP协议学习
- 1.RTSP简介
- 2.RTSP和HTTP RTP(RTCP)的关系
- 3.简单的rtsp交互过程
- 4.RTSP中常用方法
第三十八章、HEVC码流分析
第三十九章、H.264简单码流分析
第四十章、MPEG2简单码流分析
第四十一章、视频码流分析工具
第四十二章、视音频编解码学习工程:H.264分析器
- 1.项目主页
- 2.软件使用介绍
- 3.软件源代码简析
第四十三章、FFmpeg架构之I/O模块分析
- 1.概述
- 2.相关数据结构介绍
第四十四章、[Video and Audio Data Processing] UDP-RTP协议解析
- 1.概念
- 2.代码
第四十五章、RTSP协议实例分析
- 1.前言
-
- RTSP的请求方法
-
- RTSP的实例抓包分析
-
- RTP音视频数据的载体
第四十六章、RTSP协议之TCP/UDP问题
- 1.前言
- 2.RTSP之TCP与UDP方式区别
- 3.总结
第四十七章、ffplay工具命令使用技巧
- 1.前言
- 2.使用技巧
- 3.番外篇
- 4.总结
第四十八章、VLC RTSP网络串流播放失败
- 1.问题描述
- 2.解决方法
- 3.解决效果
第四十九章、RTMP协议详解
- 1.RTMP协议介绍
- 2.包结构
- 3.握手
- 4.发送顺序
第五十章、STUN 原理理解
- 1.STUN简介
- 2.为什么需要STUN?
- 3.STUN主要功能
- 4.stun 的NAT 类型探测流程
开源框架
- 实时音视频开源项目
- 其他音视频开源项目
实践项目
- 音视频通话项目
- Android/iOS视频播放器
- 仿网易云音乐安卓版客户端
- …