OBS源码编译开发

OBS简介

OBS(Open Broadcaster Software)是免费开源的视频录制和直播软件,支持运行在windows,Mac和linux平台。官方链接 https://obsproject.com 。 OBS有OBS Classic和OBS studio两个版本。OBS classic是早期版本,已经不再维护和更新。现在推荐使用的是OBS studio版本,是在OBS经典版的基础上重构实现的,使用了更好的模块设计,提高了性能,同时支持DirectX和OpenGL渲染,还支持了多个平台。UI使用了QT制作皮肤。  

官方有较详细的说明文档,但是在实际编译开发过程中,还是遇到了一些问题。在此记录下来,以备查阅。  

OBS编译(Windows)

准备

  • 从https://github.com/jp9000/obs-studio下载源码。官方编译说明 https://github.com/jp9000/obs-studio/wiki/Install-Instructions

  • 下载依赖库。VS2013: https://obsproject.com/downloads/dependencies2013.zip VS2015: https://obsproject.com/downloads/dependencies2015.zip

  • QT下载安装:http://download.qt.io/archive/qt

  • cmake,visual studio等工具下载安装好。

生成工程

  • git命令行下载源码,如果没有用git下载,要把子模块也下载完全。git clone –recursive https://github.com/jp9000/obs-studio.git 

  • ADD ENTRY增加依赖库,QT路径等,如下:

        DepsPath:D:/OBS/obs-build/dependencies2013/win64/include

        QTDIR:D:/Qt/Qt5.9.0/5.9/msvc2013_64

       

  • 解决方案配置

          

Building OBS and obs-browser

  • cmake时一定设置下面:

CEF_ROOT_DIR:D:/OBS/obs-build/cef_binary_3.2987.1601.gf035232_windows64

BUILD_BROWSER = TRUE 默认是不创建obs-browser的。

USE_STATIC_CRT = FALSE 设置构建的项目/MD,默认是/MT。这个配置之前没有设置false,导致CEF和obs-browser编译各种问题。

这里有时候会遇到错误如下图:  

Release版本,需要D:OBSobs-buildcef_binary_3.2987.1601.gf035232_windows64Release下的文件拷贝到OBS的rundir目录下:D:OBSobs-buildobs-studiobuildrundirReleaseobs-plugins64bit (.lib不用拷贝)

20180904112248c4408805-e578-4499-95f4-8fe75e088bbc.png

libcef.dll依赖libEGL.dll和libGLESv2这两个文件,但是QT也依赖这两个文件,他们分别在不同的目录,且使用的版本不统一。debug程序时,会 错,把CEF下的这两个文件统一使用D:OBSobs-buildobs-studiobuildrundirReleasebin64bit目录下的。

 

易云大礼包:https://www.163yun.com/gift

相关文章:
【推荐】 Question | 站被黑客扫描撞库该怎么应对防范br>【推荐】 【大数据之数据仓库】GreenPlum优化器对比测试
【推荐】 Question| 站被黑客扫描撞库该怎么应对防范br>

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年8月3日
下一篇 2018年8月3日

相关推荐