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”。