🎬 GStreamer 多线程
·
缓冲队列
30章
⚡ 实战课程
配色
1
GStreamer基础概念
核心
什么是GStreamer、核心库与插件架构、Pipeline与Element的关系
2
Pipeline构建入门
动手
gst_parse_launch()、手动构建、Pad与Caps概念
3
Buffer与数据流
核心
Buffer生命周期、Memory管理、BufferPool引入
4
多线程基础
线程
线程模型、为什么多线程、GstTask简单使用
5
Queue Element详解
队列
Queue作用、阻塞与非阻塞、队列大小配置
6
多线程Pipeline实战
实战
Queue实现线程分离、多线程解码示例
7
缓冲队列设计原则
设计
生产者-消费者、队列深度与延迟、背压机制
8
GstBufferPool深入
池化
BufferPool创建配置、复用Buffer、自定义Pool
9
线程安全与锁机制
安全
GstClock同步、Pad锁、原子操作与引用计数
10
多队列与优先级
分流
多Queue分流、优先级队列、QoS事件处理
11
Live Pipeline与实时性
实时
实时流特点、Live Source、延迟控制策略
12
多线程编码器设计
编码
编码器线程模型、Buffer管理、性能调优
13
多线程解码器设计
解码
解码器线程模型、Buffer管理、性能调优
14
多线程显示与渲染
渲染
显示与解码线程分离、VSync、渲染队列
15
Pipeline状态管理
状态
NULL→PLAYING转换、状态转换线程安全
16
EOS与Flush处理
事件
EOS多线程传播、Flush清空、Seek线程管理
17
自定义Element开发
开发
基类选择、Pad创建注册、处理函数实现
18
自定义Filter Element
Filter
Filter线程模型、Buffer处理、Caps协商
19
自定义Sink Element
Sink
渲染线程、Buffer接收释放、时钟同步
20
自定义Source Element
Source
数据产生线程、Buffer推送、Live Source
21
多线程调试与日志
调试
GST_DEBUG、线程ID追踪、性能分析工具
22
性能优化实战
优化
减少内存拷贝、零拷贝、硬件加速集成
23
内存池与分配器
内存
GstAllocator、自定义分配器、DMA Buffer
24
多路复用与解复用
复用
多路流同步、音视频同步、复用队列设计
25
网络流处理
网络
TCP/UDP Source/Sink、缓冲管理、丢包重传
26
录制与存储
录制
多线程录制Pipeline、文件写入队列、分段录制
27
播放器架构设计
播放器
播放器Pipeline、缓冲状态、Seek与恢复
28
低延迟场景优化
低延迟
低延迟Pipeline、减少队列深度、零拷贝路径
29
高吞吐场景优化
高吞吐
高吞吐Pipeline、增加并行度、批量处理
30
综合实战
完结
多线程视频处理Pipeline、性能测试与调优、排查
⚡ 点击卡片跳转对应章节 · 友好配色