当前位置: 首页 > 工具软件 > obs-browser > 使用案例 >

obs windows 编译 obs browser

闾丘成双
2023-12-01

参考 https://github.com/obsproject/obs-browser
编译 cef,有些版本号可能编译不过或者与 obs browser 不匹配,需要多尝试,本人测试多次才找到 3626 的 32 位版本与最新的 obs browser 编译成 32 位才调通

  • 下载 http://opensource.spotify.com/cefbuilds/index.html cef_binary_3.3626.1895.g7001d56_windows32.tar.bz2
  • 使用 cmake 生成 cef 编译环境
    • 运行 cmake-gui
    • 设置源码目录 C:\Users\Administrator\Desktop\xiaoshiwei\cef_binary_3.3626.1895.g7001d56_windows32
    • 设置编译后的二进制目录 C:\Users\Administrator\Desktop\xiaoshiwei\cef_binary_3.3626.1895.g7001d56_windows32\build (这个目录需要自己创建,下载的源码里面没有这个目录)
    • 执行配置,选择 Visual Studio 15 2017 win32
    • 执行生成
    • 打开项目,将自动打开已经生成好的 Visual Studio 工程文件
    • 使用 vs 编译 ALL_BUILD 工程,Debug/Release 最好都编译,方便 obs webrowser 编译不同版本
    • 验证,把 ceftests 工程设为启动项,然后运行正常
  • 下载源码 git clone --recursive https://github.com/obsproject/obs-browser.git
  • 把源码拷贝到 obs-studio\plugins\obs-browser 目录下,默认下载 obs-studio 源码时,只含有一个对应的 obs-browser 空目录。
  • 使用 cmake 生成 obs 编译环境
    • 勾选环境变量 BUILD_BROWSER 选项,点击配置按钮,修改 CEF_ROOT_DIR 路径
    • 添加环境变量 Qt5WebEngineWidgets_DIR 依赖库目录 C:/Qt/Qt5.13.1/5.13.1/msvc2017/lib/cmake/Qt5WebEngineWidgets
    • 执行生成
    • 打开项目,将自动打开已经生成好的 Visual Studio 工程文件
    • 使用 vs 编译 ALL_BUILD 工程
    • 验证,运行 obs 后添加资源里面可以看到 Browser,并且可以正常使用该资源

最佳实践:

  • 获取稳定版本:下载一个官方编译的 obs,检查其版本和打开一个浏览器访问 https://www.w3school.com.cn/tiy/t.asp?f=hdom_navigator 检查浏览器内核的的版本,如:obs-64-25.0.8 chromium-75.0.3770.100,下载 cef 75.0.3770.100 最后更新的版本会比较稳定,下载页 http://opensource.spotify.com/cefbuilds/index.html#windows64_builds ,文件名:cef_binary_75.1.14+gc81164e+chromium-75.0.3770.100_windows64.tar.bz2
  • 编译 cef ,可能有些工程会编译错误,但都不太重要,只要 libcef_dll_wrapper 能编译通过即可,当然也可以通过修改代码或者工程属性等去解决编译错误。cef 编译的是 Release 版本会比较顺利,如果是 Debug 版本,则有些引用的地方默认是 release,要改成 Debug,否则会编译不过。如:使用 CMake 生成 obs 编译工程时可能会因为打开了 browser 选项导致一些错误,典型的 FindCEF.cmake Could not find the CEF wrapper library 错误,需要将 FindCEF.cmake 相应的脚本改成 debug 路径;使用 vs 编译 obs 时可能会链接不过,需要修改相应的工程属性配置
 类似资料: