《音视频开发技术:原理与实践》©
=[>> 关于作者© <<]=
=[>> 版权声明© <<]=
=[>> 难度向导© <<]=
=[>> 赞助本作© <<]=
一、音频的保存与还原
1.1 音频基础
1.2 声波三要素(Three Elements of Acoustics)
1.3 声音三要素(Three Elements of Sounds)
1.3.1 音高(Pitch)
1.3.2 响度(Loudness)
1.3.3 音色(Timbre)
1.4 声音的解构
1.4.1 乐理:音调(Notes) & 五度圈(Circle of Fifths)
1.4.2 乐理:和声(Harmony) & 和弦(Chord)& 调性网络(Tonnetz)
1.4.3 感观:等响曲线(ELLC [Equal Loudness-Level Contour])
1.4.4 感观:频响曲线(FRC [Frequency Response Contour])
1.4.5 工程:频谱图(Spectrum)
1.5 声音数字化
1.5.1 数字信号(Digital Signal)& 模拟信号(Analog Signal)& 真实波源(Original Source)
1.5.2 模数转换(A/D [Analog-to-Digital])
1.5.3 数模转换(D/A [Digital-to-Analog])
1.5.4 脉冲编码调制(PCM)& 脉冲密度调制(PDM)
1.6 音频的存储
1.6.1 音频格式(Audio Format)
1.6.2 无压缩编码格式(Uncompressed Encode)
1.6.3 无损压缩编码格式(Lossless Encode)
1.6.4 有损压缩编码格式(Lossy Encode)
【参考文献】
二、色彩的运用与存储
2.1 色彩基础
2.2 颜色三要素(Three Elements of Color)
2.2.1 色调(Hue)
2.2.2 饱和度(Saturation)
2.2.3 光亮度(Luminance)
2.3 色彩的衡量
2.3.1 辐射亮度(Radiance)& 色温(Color Temperature)& 颜色的量化
2.3.2 配色函数(Color Matching Functions)& 色彩空间(Color Space)
2.3.3 经典三原色函数(Trichromatic Primaries Functions)
2.3.4 经典三刺激函数(Tristimulus Values Functions)
2.3.5 现代色彩体系(Modern Color System)
2.4 色彩的对比
2.4.1 色域(Color Gamut )
2.4.2 色度(Chroma)& 色度平面(Chroma Plane)& 色度图(Chroma Diagram)
2.4.3 色差(Chromatic Aberration)
2.4.4 色温(Color Temperature)& 相关色温(Correlated Color Temperature)
2.4.5 标准光源(Standard Illuminants)& 白点(White Point)
2.4.6 显色指数(Color Rendering Index)
2.5 经典色彩空间(Classical Color Space)
2.5.1 光学三原色色彩空间(RGB)
2.5.2 颜料三原色色彩空间(CMY / CMYK )
2.5.3 CIE RGB 色彩空间(CIE 1931 RGB Color Space)
2.5.4 CIE XYZ 色彩空间(CIE 1931 XYZ Color Space)
2.5.5 CIE LAB 色彩空间(CIE 1976 L*, a*, b* Color Space)
2.5.6 CIE LUV 色彩空间(CIE 1976 L*, u*, v* Color Space)
2.5.7 颜色三要素色彩空间(HSV / HSI / HSL)
2.6 色彩的存储
2.6.1 色彩格式(Color Format)与色彩存储
2.6.2 RGB 体系色彩格式
2.6.3 YUV 体系色彩格式
【参考文献】
三、音视频常用基础算法
3.1 信号分析的核心算法 - 傅立叶变换
3.1.1 一维傅立叶(1D-FT)与一维离散傅立叶变换(1D-DFT)
3.1.2 二维傅立叶(2D-FT)与二维离散傅立叶变换(2D-DFT)
3.1.3 傅立叶变换的经典 - 快速傅立叶变换(FFT)
3.1.4 傅立叶的硬件优化 - 多常数乘法矩阵逼近(Matrix-MCM Approach)
3.2 频率信息提取 - 常用滤波算法
3.2.1 高斯滤波(Gauss Filter)
3.2.2 双边滤波(Bilateral Filter)
3.2.3 拉普拉斯滤波(Laplacian Filter)
3.2.4 马尔滤波(Marr Filter)
3.2.5 索贝尔滤波(Sobel Filter)
3.2.6 各向异性扩散(Anisotropic Diffusion)
3.3 时间冗余控制 - 常用特征提取与朴素阈值处理
3.3.1 方向梯度直方图(HOG [Histogram of Oriented Gradient])
3.3.2 朴素目标检测结果度量 - IoU & GIoU
3.3.3 朴素目标检测物体锁定 - 分步滑动窗口(Simple Sliding Window)
3.4 空域冗余控制 - 基础光流算法与色度压缩
3.4.1 传统光流法(Classic Optical Flow Methods)
3.4.2 双向光流预测(BDOF [Bi-Directional Optical Flow])
3.4.3 光流仿射修正(PROF [Affine Prediction Refinement With Optical Flow])
3.4.4 色度缩放亮度映射(LMCS [Luma Mapping with Chroma Scaling])
3.5 频域冗余控制 - 基础变换编码
3.5.1 整数离散正余弦变换(DST/DCT)
3.5.2 哈达玛变换(WHT [Walsh-Hadamard Transform])
3.5.3 低频不可分变换(LFNST [Low-Frequency Non-Separable Transform])
【在线展示】
【参考文献】
四、音视频机器学习基础
4.1 发展概览
4.2 模型工程基础
4.2.1 算子(Operator)& 层(Layer)
4.2.2 神经元(Neuron)
4.2.3 神经网络(NN [Neural Network])
4.2.4 特征选择(Feature Selection)
4.3 经典激活函数(Classic Activation Function)
4.3.1 Sigmoid
4.3.2 Tanh
4.3.3 Softplus
4.3.4 ReLU 族
4.3.5 ELU & SELU
4.3.6 Mish
4.3.7 Swish 族
4.4 连接函数/衰减函数(Connection/Attenuation Function)
4.4.1 Dropout
4.4.2 Maxout
4.4.3 SoftMax
4.5 损失函数(Loss Function)
4.5.1 回归项-平均绝对误差(MAE [Mean Absolute Error])
4.5.2 回归项-均方误差(MSE [Mean Squared Error])
4.5.3 回归项-休伯损失(Huber Loss)
4.5.4 回归项-分位数损失(Quantile Loss)
4.5.5 分类项-对数损失(Log Loss)
4.5.6 分类项-交叉熵损失(Cross Entropy Loss)
4.5.7 分类项-合页损失(Hinge Loss)
4.5.8 分类项-对比损失(Contrastive Loss)
4.5.9 分类项-三元损失(Triplet Loss)
4.5.10 分类项-对组排异损失(N-Pair Loss)
4.5.11 正则项-L1 惩罚
4.5.12 正则项-L2 惩罚
4.6 常用最优化算法(Optimizer Operator)
4.6.1 基础优化算法
4.6.2 优化算法的优化-应对震荡
4.6.3 优化算法的优化-应对重点强(弱)化更新
4.6.4 自适应实时评估算法(Adam [Adaptive Moment Estimation])
4.6.5 优化算法对比与使用建议
4.7 模型结构速览
4.7.1 卷积神经网络(CNN [Convolutional Neural Network])
4.7.2 循环神经网络(RNN [Recurrent Neural Network])
4.7.3 自注意力网络(Transformer)
【参考文献】
五、音视频帧分析与数据处理
5.1 音视频帧与环境准备
5.1.1 常用数学库(Numpy、Pandas、Matplotlib)
5.1.2 音频分析库(SoundFile、PyAudio、Librosa、Aubio)
5.1.3 视频分析库(PyOpenCV、Color-Science)
5.1.4 其他分析软件
5.2 音频帧分析实践(Audio Frame Analysis)
5.2.1 音频帧的切分与加窗(Frame Blocking & Windowing)
5.2.2 时域与频域特征(Time/Frequency Domain Features)
5.2.3 实战:A4 标准音的特征分析工程
5.3 视频帧分析实践(Video Frame Analysis)
5.3.1 视频帧的提取与表示(Frame Extraction & Representation)
5.3.2 帧间分析:帧差、光流与场景切分(Frame Difference, Optical Flow & Scene-Cut Detection)
5.3.3 实战:测试视频的场景切分与目标跟踪工程
5.4 音视频帧处理实践(Audio & Video Frame Processing)
5.4.1 音频帧处理:滤波、变速与变调(Filtering, Time-Stretch & Pitch-Shift)
5.4.2 视频帧处理:色彩、滤波与几何变换(Color, Filtering & Geometric Transform)
5.4.3 实战:音视频帧批量处理工程
5.5 本章小结与进阶指引(Summary & Roadmap)
【在线展示】
【参考文献】
六、音视频编码规格(Audio & Video Codec Specification)
6.1 编码简史与编码四环(Codec History & The Four-Stage Framework)
6.1.1 视频编码编年简史(A Chronology of Video Coding Standards)
6.1.2 压缩何以可能:四类冗余(Four Types of Redundancy)
6.1.3 编码四环:混合编码框架(The Hybrid Coding Framework)
6.2 H.264/AVC:经典之巅(H.264/AVC in Detail)
6.2.1 诞生背景:JVT 与混合框架的成熟
6.2.2 帧内预测(Intra Prediction)
6.2.3 帧间预测与运动补偿(Inter Prediction & Motion Compensation)
6.2.4 变换、量化与熵编码(Transform, Quantization & Entropy Coding)
6.2.5 Profile/Level 体系与规格导读
6.3 H.265/HEVC:4K 时代的答案(H.265/HEVC in Detail)
6.3.1 编码树单元:CTU 与四叉树划分(Coding Tree Unit & Quadtree)
6.3.2 预测技术的演进(Evolution of Prediction)
6.3.3 环路滤波与并行化设计(In-loop Filtering & Parallelism)
6.4 H.266/VVC 与 AV1:两条路线的竞赛(H.266/VVC & AV1)
6.4.1 VVC:向压缩极限推进(Versatile Video Coding)
6.4.2 AV1:开源免版税阵营(AOMedia Video 1)
6.4.3 专利池生态与三代规格对照(Patent Ecosystem & Comparison)
6.5 音频编码规格(Audio Codec Specification)
6.5.1 心理声学:音频压缩的地基(Psychoacoustics)
6.5.2 MP3:开启数字音乐时代(MPEG-1 Layer III)
6.5.3 AAC:青出于蓝(Advanced Audio Coding)
6.5.4 Opus:为实时互动而生(Opus, RFC 6716)
6.6 实战:编码器规格对比实验(practice_7)
6.7 本章小结与进阶指引(Summary & Roadmap)
【在线展示】
【参考文献】
七、封装格式与流传输协议(Container Formats & Streaming Protocols)
7.1 从封装说起:容器的使命(The Mission of Containers)
7.1.1 裸码流缺什么(What Elementary Streams Lack)
7.1.2 MP4:为随机访问而生的索引树(MP4 & The Index Tree)
7.1.3 FLV:为流式传输而生的标签序列(FLV & The Tag Stream)
7.1.4 MPEG-TS:为容错传输而生的定长包(MPEG-TS & The Fixed-Length Packets)
7.1.5 三容器设计取向对比(Three Containers, Three Philosophies)
7.2 实时传输奠基:RTP/RTCP(The Foundation of Real-Time Transport)
7.2.1 实时传输的诞生与 UDP 的取舍(Real-Time Transport & The UDP Trade-off)
7.2.2 RTP 固定头:十二字节的自描述(The 12-Byte Self-Describing Header)
7.2.3 RTCP:质量反馈环与唇同步(RTCP: Feedback Loop & Lip Sync)
7.2.4 从 RTP 到 WebRTC(From RTP to WebRTC)
7.3 直播时代的霸主:RTMP(RTMP & The Live Streaming Dynasty)
7.3.1 Flash 时代的直播王朝(The Flash-Era Live Dynasty)
7.3.2 握手:C0/C1/C2 与 S0/S1/S2(The RTMP Handshake)
7.3.3 Chunk 封包:一次消息,多次封装(Chunking & Header Compression)
7.3.4 Message 类型族与 AMF 编码(Message Types & AMF Encoding)
7.3.5 命令消息与流管理时序(Commands & Stream Management)
7.4 直播的 HTTP 化:HLS 与 fMP4(HLS & Fragmented MP4)
7.4.1 把直播搬进 HTTP(Moving Live Streaming into HTTP)
7.4.2 两级播放列表:Master 与 Media(Master & Media Playlists)
7.4.3 分片机制与直播滑动窗(Segments & The Sliding Window)
7.4.4 自适应码率:客户端的切换艺术(Adaptive Bitrate Switching)
7.4.5 延迟之战与 LL-HLS(The Latency Battle & LL-HLS)
7.5 现代协议群像:DASH、WebRTC 与 SRT(The Modern Protocol Landscape)
7.5.1 DASH:标准化的另一极(MPEG-DASH & The Standards Track)
7.5.2 WebRTC:RTP 的正统继承者(WebRTC & The Real-Time Heir)
7.5.3 SRT:弱网回传的 ARQ 路线(SRT & The ARQ Prescription)
7.5.4 编年史与全景对照(A Chronicle & The Big Picture)
7.6 实战:推流抓包与低延迟拉流(practice_8)
7.7 本章小结与进阶指引(Summary & Roadmap)
【在线展示】
【参考文献】
八、解码与播放(Decoding & Playback)
8.1 解码器框架设计(Decoder Framework Design)
8.1.1 从规格到代码:解码器的本质(From Spec to Code)
8.1.2 FFmpeg 六库:分层的艺术(The Six Libraries of FFmpeg)
8.1.3 收发分离:解码 API 的状态机(The Send/Receive State Machine)
8.1.4 管线与 seek:工程落地的暗坑(Pipelines, Seek & The Pitfalls)
8.1.5 硬件解码:平台接口与零拷贝(Hardware Decoding & Zero-Copy)
8.2 播放器核心系统(Player Core Systems)
8.2.1 播放器的三个问题:何时解,何时显,对谁齐(Three Questions of A Player)
8.2.2 音画同步:主时钟的三种策略(A/V Sync & The Three Master Clocks)
8.2.3 抖动缓冲:与网络和解的艺术(Jitter Buffer & The Art of Compromise)
8.2.4 渲染管线:从 YUV 到视网膜(The Render Pipeline)
8.2.5 字幕渲染:从文本到画面(Subtitle Rendering)
8.2.6 HDR 渲染:色调映射入门(HDR & Tone Mapping)
8.3 实战:音画同步策略对比实验(practice_9)
8.4 本章小结与进阶指引(Summary & Roadmap)
【在线展示】
【参考文献】
九、流媒体链路与流分析(Streaming Pipeline & Stream Analysis)
9.1 现代流媒体链路全景(The Streaming Pipeline)
9.1.1 一场直播的完整旅程(The Journey of A Live Stream)
9.1.2 端到端延迟:从采集到视网膜(Glass-to-Glass Latency)
9.1.3 链路各环节的角色与故障域(Roles & Failure Domains)
9.1.4 协议在链路两端的分工(Protocols at Both Ends)
9.1.5 延迟预算:glass-to-glass 的定量拆解(Latency Budgeting)
9.1.6 多 CDN 调度与容灾(Multi-CDN & Failover)
9.2 流分析与质量监控(Stream Analysis & QoE)
9.2.1 QoE 指标体系:给体验号脉(The QoE Metrics)
9.2.2 播放端埋点与上报(Player Instrumentation)
9.2.3 服务端链路监控(Server-Side Monitoring)
9.2.4 从帧级到会话级:数据分析方法(From Frames to Sessions)
9.2.5 SLO 与告警工程:让指标站岗(SLO & Alerting)
9.3 实战:链路搭建与质量分析(practice_10)
9.4 阶段小结与进阶指引(Summary & Roadmap)
【在线展示】
【参考文献】
本书使用 GitBook 发布
=[>> 赞助本作© <<]=
买杯咖啡
如果您愿意为本书爆肝的作者买一些精神食粮,来让他当一名 24H 狼灭的话...
Buy Me Espresso
👇( ✨w✨)👇
WeChat
Best Wish!💗
results matching "
"
No results matching "
"