先弄清楚这门课到底在做什么

这门课的主题很具体:用 C++ 和 Qt 写一个屏幕录制软件,而 OBS 的源码是参照对象。也就是说,它不是从零教你 C++ 语法,也不是单纯讲 Qt 控件的用法,而是拿一个真实存在的开源项目当骨架,拆开来看一个能用的录屏工具是怎么搭起来的。

这件事本身就决定了它的难度位置:你至少要知道 C++ 的类、指针、引用是怎么回事,知道 Qt 的信号槽大概在干什么,否则打开视频会一直处于"每个字都认识、连起来不知道在干嘛"的状态。如果你完全没碰过 C++,建议先去补一门语言基础课,再回来。这不是劝退,而是省时间——硬啃只会让你在第三讲就放弃。

这门课适合的节奏

屏幕录制涉及的东西比想象中杂:画面采集、编码、音频同步、文件封装、界面响应。任何一块单独拎出来都不算小,所以不要指望一口气看完。比较现实的做法是把它拆成三段:先看整体结构,再看采集和编码,最后看界面与打包。每段之间隔几天,让脑子里的东西沉淀一下。

碎片时间可以拿来看"讲思路"的部分,比如某一讲在解释为什么这么设计、OBS 里对应的是哪一块。真正要动手敲的章节,还是留出整块时间,因为环境配置、编译报错、依赖缺失会吃掉大量时间,中途被打断很容易前功尽弃。

哪些章节可以跳,哪些不能跳

  • 不能跳:开发环境搭建、Qt 项目结构、采集相关的那几讲。这几块是后面所有内容的地基,跳过之后你连报错都看不懂。
  • 可以快进:如果只是想知道原理,编码参数、封装格式这类偏细节的章节可以先看一遍思路,等真正动手时再回来查。
  • 可以跳:如果你已经用过 Qt 做过界面,界面布局那部分可以只看它和录屏逻辑怎么对接,控件本身怎么摆不用细究。
  • 建议反复看:音频与画面同步、线程处理这几讲。这是录屏软件最容易出问题的地方,也是面试或自己踩坑时最常遇到的点。

资料怎么配合着用

配套资料不要一开始就全打开。正确顺序是:先跟着视频把当前这一讲跑通,再回头翻资料里对应的部分,确认自己理解的和它写的是不是一回事。资料更适合当"字典",而不是"教材"——遇到卡住的地方去查,比从头读到尾效率高得多。

另外,每完成两三讲,试着把这段时间学的东西用自己的话写几行笔记,不用长,重点是逼自己回忆一遍流程。写不出来,说明那一块其实没懂。

最后,允许自己学得很慢

这门课涉及的知识面偏广,学一遍就全会是不现实的。更常见的情况是:第一遍看懂七成,动手时又忘掉一半,再回来看第二遍才真正顺手。这很正常,不用因此怀疑自己。

真正能带走的,不是把整个录屏软件一字不差地复现出来,而是理解一个真实项目里,采集、编码、界面、打包这几块是怎么咬合在一起的。哪怕最后只做出了一个能录、能存、界面简陋的小工具,也比全程照抄一遍有价值。慢一点没关系,关键是每一步都踩实。


本套C++ Qt OBS源码屏幕录制软件开发视频教程 视频+资料都有~

课程推荐

《C++ Qt OBS源码屏幕录制软件开发视频教程》本套C++ Qt OBS源码屏幕录制软件开发视频教程 视频+资料都有~【技能收获】学完可掌握:核心实战技能、项目驱动学习。课程以实战为导向,覆盖从基础概念到完整项目落地的关键步骤,配套章节笔记便于课后复盘与面试前快速回顾。【学习建议】建议按目录顺序学习,先打基础再进入综合实战章节;每完成 2~3 节可结合笔记整理一份学习小结,最终尝试独立复现一套完整 Demo 写入个人作品集。【就业发展】可面向岗位:Linux 运维工程师、SRE、云计算工程师、DevOps 工程师。云原生与自动化运维仍是企业 IT 刚需方向,认证 + 实战项目组合能显著提升面试通过率,适合向中高级运维或架构岗进阶。 若你已有一定编程或运维基础,本课程可帮助你在现有技能栈上快速叠加热门方向能力,提升求职时的项目说服力与薪资谈判空间。

视频目录(66 节)

*   1 课程介绍.mp4

*   2 obs源码下载与编译环境准备.mp4

*   3 开始编译obs源码.mp4

*   4 obs录制功能使用介绍.mp4

*   5 obs启动依赖项说明.mp4

*   6 c++cmake开源项目编译技巧讲解.mp4

*   7 obsc++vs2019工程介绍.mp4

*   8 obs程序启动main函数分析(一).mp4

*   9 obs程序启动main函数分析(二).mp4

*   10 obs初始化流程概述.mp4

*   11 obs初始化之插件加载.mp4

*   12 音频设置与初始化源码分析.mp4

*   13 音频线程创建源码分析.mp4

*   14 视频设置初始化与线程创建.mp4

*   15 obs线程库pthread-win32介绍与编译.mp4

*   16 obs初始化过程总结(一).mp4

*   17 obs初始化过程总结(二).mp4

*   18 obs初始化过程总结(三).mp4

*   19 从录制按钮开始.mp4

*   20 继续聊聊obs输出模式.mp4

*   21 录制软件功能点分析.mp4

*   22 obs为什么不使用ffmpeg命令行来录制.mp4

*   23 obs采集模块代码介绍.mp4

*   24 窗口采集方式与源码概述.mp4

*   25 显示器采集方式与源码概述.mp4

*   26 视频编码源码分析:点击开始录制按钮后发生了什么.mp4

*   27 obsx264编码模块源码分析.mp4

*   28 结束录制做了哪些操作.mp4

*   29 音频设备初始化及音频采集线程的创建.mp4

*   30 obs模块加载深入了解.mp4

*   31 音频编码线程源码分析.mp4

*   32 DesktopRec需求说明与项目创建.mp4

*   33 C++obs开发环境配置介绍.mp4

*   34 DesktopRec界面初步设计.mp4

*   35 obs封装类初始化功能实现(一).mp4

*   36 obs封装类初始化功能实现(二).mp4

*   37 obs封装类初始化功能实现(三).mp4

*   38 转场特效、场景的创建(一).mp4

*   39 转场特效、场景的创建(二).mp4

*   40 创建显示器采集源与属性查找.mp4

*   41 设置输出模式.mp4

*   42 ffmpeg输出参数设置.mp4

*   43 初步实现桌面采集录制功能.mp4

*   44 Qt实现录制时长实时显示.mp4

*   45 Qt自定义标题栏(一):界面布局.mp4

*   46 Qt自定义标题栏(二):实现拖动、关闭、最小化.mp4

*   47 Qt自定义标题栏(三):背景样式设置、增加控件图标.mp4

*   48 完成主界面的控件添加与布局设计.mp4

*   49 Qt实现圆角窗口.mp4

*   50 修改录制主界面样式表.mp4

*   51 Qt实现界面动态换肤.mp4

*   52 实现指定应用窗口进行录制.mp4

*   53 为什么录制的窗口是黑色的.mp4

*   54 分离场景、视频源、音频的创建.mp4

*   55 实时查找应用窗口和显示器桌面.mp4

*   56 初步实现窗口录制与桌面录制的切换.mp4

*   57 解决桌面录制时可能crash的bug.mp4

*   58 给DesktopRec添加系统托盘.mp4

*   59 给托盘添加菜单以及实现菜单动作.mp4

*   60 修改视频输出名字和任务栏图标.mp4

*   61 添加设置对话框.mp4

*   62 封装配置文件解析类.mp4

*   63 录制类根据配置进行录制.mp4

*   64 程序发布与项目总结.mp4

*   65 obs课程补充说明.mp4

*   66 obs课程总结.mp4