obs源码编译

本文介绍如何在Win7 64位环境下使用VS2015和QT5.8 64位编译OBS Studio。文章详细说明了所需工具及依赖库的下载配置过程,包括使用CMake生成工程文件、设置环境变量等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.开发环境

win7 64位,已安装VS2015,QT5.8 64位。

2.下载依赖库和编译工具

注意:系统,QT,CMake,依赖库位数要一致。需要32位时均要重新安装配置

源码

下载OBS Studio的源代码地址。OBS Studio的工程托管在Github上面。
git clone –recursive https://github.com/jp9000/obs-studio.git
注意其中的–recursive,这样可以把项目需要的子模块一起clone下来。
OBS Studio工程使用CMake进行管理,因此在特定平台进行编译时,还需安装CMake(https://cmake.org/)处理生成对应平台的工程。

CMake

下载windows版本的Cmake作者下载的为64位

依赖库

OBS Studio依赖FFmpeg框架,因此还需要下载预编译好的FFmpeg库,其中支持FFmpeg,x264,cURL。依赖库包含32/64位
VS2013:https://obsproject.com/downloads/dependencies2013.zip
VS2015:https://obsproject.com/downloads/dependencies2015.zip

3.编译准备工作

经过前边下载,我们应该有五部分东西。
第一步:将源码解压后,在源码根目录下设置生成目录。笔者创建了一个VSbuild文件夹。
第二步:将下载的依赖库解压在源码目录下。
第三步:设置依赖变量或者环境变量,本文为了以后方便,设置为环境变量
这里设置的环境变量其实就是为了指定FFmpeg的库路径。需要指定的路径包括:
DepsPath:包含所有依赖库的路径,但不包括Qt库。
FFmpegPath:仅包含FFmpeg库的路径。
x264Path:仅包含x264库的路径。
curlPath:仅包含cURL库的路径。
如果需要编译整个OBS Studio GUI(默认生成)还需要设置另外一个环境变量:
QTDIR:指定Qt安装的根目录。

4.开始编译

第一步:运行cmake-gui。选择源码目录和生成目录后点击配置按钮。
第二步:选择目标平台,因为本文所用环境QT是64位、依赖库也是Win64,所以选择vs14-2015-Win64了。
第三步:finish开始配置。
如果没有设置上述环境变量,则出现下面画面。
这里写图片描述
第四步:因为没有后续开发需要没有设置环境变量,在此我要在cmake中设置变量
这里写图片描述
第五步:再次配置,没有出错,点击生成。

5.生成调试

进入C:\code\obs-studio\VSbuild,双击打开obs-studio.sln。
可以看到目标平台就是选择的x64,点击生成,编译结束。向上天祈祷,全部成功。
结果在\code\obs-studio\VSbuild\rundir\Debug\下。
bin下有64位obs可执行程序,obs-plugins下即是64位插件目录。同时build目录下生成了obs插件的测试工程test文件夹。
再次强调下,如果你要编译32位程序,要下载QT的32位版本、设置依赖库也要选择相应的Win32路径、生成vs项目文件要选择“Visual Studio 14 2015”而不是“Visual Studio 14 2015 Win64”。

### 编译 OBS 源码并处理超级键相关问题 对于希望编译 OBS (Open Broadcaster Software) 并解决其中涉及的超级键(Super Key)相关问题的情况,可以遵循一系列特定的操作流程。虽然提供的参考资料未直接提及此过程[^1],但基于广泛认可的最佳实践以及社区贡献者的经验分享,以下是详细的指南。 #### 准备工作环境 确保开发环境中已安装所有必需的依赖项。这通常包括但不限于 CMake、Qt库及其开发包、FFmpeg及相关编码器支持等。具体到超级键的支持可能还需要额外配置X11或Wayland输入事件监听机制。 #### 获取最新源代码 通过官方 GitHub 仓库克隆最新的 OBS Studio 项目副本: ```bash git clone https://github.com/obsproject/obs-studio.git cd obs-studio ``` #### 配置CMake选项以启用高级功能 为了更好地控制键盘快捷方式特别是超级键的行为,在调用`cmake`之前可以通过设置参数来自定义行为特性。例如: - 启用对 Wayland 协议的支持以便更精确地捕捉全局热键; - 修改默认绑定策略允许重新映射特殊按键如 Super 键; ```bash mkdir build && cd $_ cmake .. \ -DUNIX_STRUCTURE=ON \ -DBUILD_BROWSER=OFF \ # 如果不需要浏览器插件可关闭以减少复杂度 -DCMAKE_BUILD_TYPE=Release \ -DLINUX_JACK_SUPPORT=ON \ -DENABLE_PIPEWIRE=ON \ -DQT_WAYLAND=ON # 对于现代桌面环境非常重要 ``` #### 构建与安装 一旦完成了上述准备工作,则可以直接利用 `make` 命令来进行实际编译操作,并最终将其部署至本地系统中去。 ```bash make -j$(nproc) sudo make install ``` #### 处理超级键冲突或其他异常情况 如果发现存在某些应用程序抢占了超级键作为其内部使用的快捷方式而导致 OBS 中无法正常使用该组合键的话,那么就需要排查这些潜在的竞争关系。一种方法是在启动时禁用不必要的后台进程和服务;另一种则是调整其他软件中的相应设定使之避开冲突区域。 此外,还可以考虑修改 OBS 的配置文件(位于用户主目录下的隐藏文件夹 `.config/obs-studio/basic/profiles/default/hotkeys.json`),手动指定新的替代方案用于触发相同的功能动作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值