VS2017编译OBS Studio源码【详细过程】

       OBS Studio软件是一款强大的直播与录播软件,代码开源。它的音视频编解码使用的FFmpeg, 界面是Qt,还涉及到OpenGL等技术。看了很多人编译OBS, 但是用VS2017编译的很少,而且有些人的博客编译步骤还有问题,不能编译成功,本篇博客记录我用VS2017编译OBS源码的一些注意事项,经过编译后,可以直接运行源码调试。

       OBS Studio官网 https://obsproject.com/

       OBS项目  https://github.com/obsproject/obs-studio

       进入Wiki菜单,再找到Install Instructions, 可以看到下面的一些编译注意事项,比如,需要下载相关的依赖,以及Win10的版本,最低得是10.0.143版,Qt最低得是5.9版等。

       先用git克隆源码,编译要求指出 --recursive选项,可以把相关模块也copy下来,不用去配置,但是需要下载的依赖还是要下载的。

git clone --recursive https://github.com/obsproject/obs-studio.git

        我编译的是win64位版本, 打开cmake,选择源码的目录,编译后的目录也可以和源码同目录,不影响。

       选择VS版本

         第一次configure后会有错误,需要配置依赖,Qt,FFmpeg等,下图的Qt我选择的是64位,我安装的是Qt5.12.4, 基于VS2017的32位,64位Qt我都安装了,硬盘够的话,建议都安装,18G左右。

       下图是配置FFmpeg的头文件目录,和指定相关的lib

        再次configure, 此时有更多的错误

        不用做修改,再次configure后就没有错误了。

        此时生成解决方案,点击Generate, 如下图

        在源码目录就可以看到生成的obs-studio.sln,用VS2017打开,加载完毕后,右键ALL_BUILD,等一会儿就会编译ok,如下图,我没有选择test工程,所以只有39个可编译项目,test工程的代码有问题。

       兴高采烈的想运行一把,发现缺少ffmpeg的依赖库,把依赖库中的dll加进去后,还缺少其它的dll, 这些都加载完毕后还是无法运行,mmp, 我打开安装好的OBS发现还有一些资源需要加载,可能是路径问题。现在的解决方案是在obs-studio-win64\UI\Debug生成的运行程序,和其它资源路径对不上,所以才无法运行,等有时间在研究研究,现在源码可以编译了,从代码中也可以找到问题所在。

 

           ---------------------------------------------------  分割线   ---------------------------------------------------

 2019-12-27 更新

      晚上下班后无聊,打开电脑,准备把OBS编译运行解决,为什么无法运行出界面,对照着OBS的安装目录看看,发现少了一些文件,调试代码这些资源的位置也对不上,我擦,很难受,是不是我找的资源路径错了,阴差阳错,我发现了OBS编译后的真正可执行目录,如果是照着上面的步骤编译的,就会是下面的目录,例如我的电脑:

                      D:\VS_WorkSpace\obs-studio-win64\rundir\Release\bin\64bit

       相应的Debug目录也是如此,如是我又把obs.exe工程生成目录该到了该目录,再次编译运行还是不行,我擦,搞什么飞机,难道源码的配置是错的???

       突然想到之前的工作有先运行exe再附加到进程调试的做法,我试了一把,果然是这样的,下面就是启动画面,和直接安装的OBS Studio一样。

        在VS菜单,调试---附加到进程,即可进行调试,例如,下图是我点击帮助---关于后,可以触发该菜单断点:

        代码

         为了方便大家可以把debug后的obs64.exe固定在任务栏,这样可以方便调试。不知是否还有其它更方便的方法编译后启动OBS, 如果有,请赐教。本篇编译方法有什么不当的地方还请大家指正,我及时修正。

发布了124 篇原创文章 · 获赞 84 · 访问量 16万+

猜你喜欢

转载自blog.csdn.net/yao_hou/article/details/103544134
今日推荐