先前obs编译,在公司电脑上面,编译不出来obs.exe。在家中电脑上,编译出的obs.exe不支持video capture设备。
我一直怀疑是环境原因,后来新换了一台笔记本电脑,我又安装了最新的vs2019和qt5.14.1,再来编译一次。
这次成功,记录如下:
下载源码: https://github.com/jp9000/obs-studio or https://github.com/obsproject/obs-studio。
# git clone --recursive https://github.com/jp9000/obs-studio.git
官方编译说明 https://github.com/jp9000/obs-studio/wiki/Install-Instructions
下载依赖库。VS2015: https://obsproject.com/downloads/dependencies2015.zip
QT下载安装:http://download.qt.io/archive/qt
cmake安装好后,配置:
DepsPath=D:\proj\github\obs\obs-tools\obs-deps2017\win64
QTDIR=D:\program\Qt\Qt5.14.1\5.14.1\msvc2017_64
编译完成后,进入obs-studio\build-x64\rundir\Release\bin\64bit下面点击obs64.exe就可以运行了。
但实际上也有一个失败,========== 生成: 成功 42 个,失败 1 个,最新 0 个,跳过 0 个 ==========
而且这个错误的module很关键,是obs-outputs,也就是rtmp推流部分。
从编译出错信息看,似乎是代码问题。所以,我重新下载一个obs release版本,obs-studio-24.0.6.zip。
编译结果:
39>------ 已启动生成: 项目: ALL_BUILD, 配置: Release x64 ------
39>Building Custom Rule D:/proj/github/obs/obs-studio-24.0.6/CMakeLists.txt
39>CMake does not need to re-run because D:/proj/github/obs/obs-studio-24.0.6/build-x64/CMakeFiles/generate.stamp is up-to-date.
========== 生成: 成功 39 个,失败 0 个,最新 0 个,跳过 0 个 ==========
这跟最新的obs相比,少了4个子项目。于是做了一个合并,将plugin\obs-outputs copy过去,再编译就没有问题了。
43>------ 已启动全部重新生成: 项目: ALL_BUILD, 配置: Release x64 ------
43>Building Custom Rule D:/proj/github/obs/obs-studio/CMakeLists.txt
43>CMake does not need to re-run because D:/proj/github/obs/obs-studio/build-x64/CMakeFiles/generate.stamp is up-to-date.
========== 全部重新生成: 成功 43 个,失败 0 个,跳过 0 个 ==========
实测了一下,推流是正常的。