obs studio 插件
  JT5kAz2EWfTe 2023年11月02日 121 0
C++

最近需要把obs studio做成虚幻5的插件,大概步骤如下

 准备阶段

      obs源码版编译和配置运行,我用的cmake-gui

 

 

 需要提到一点,我没有严格按照官网说的去配置,因为官网的depencence本身并不完整,而且在windows平台下,有个更好用的开源包构建管理工具vcpkg,强烈推荐大家用这个,也希望有能力的伙伴加入维护,共建windows开源系统的开发环境。

只要cmake中报错缺失某个包,直接用vcpkg安装即可,然后把vcpkg的路径配置到

 

 CMAKE_PREFIX_PATH这个变量里,也可以把官方的dependence和vcpkg一起配置到这个变量中。

遇到的问题:

运行时aac报错

因为aac编码是苹果的,下载苹果应用支持安装包

https://raw.githubusercontent.com/kiki-kiko/iTunes-12.3.1.23/master/AppleApplicationSupport64.msi

 

 初步裁剪

  obs studio本身作为一个完整的应用程序,拥有庞大的框架,并形成了一套自己的扩展体系,拥有QT作为UI系统的支撑,拥有自己的插件系统,在插件中支持多种编码格式和自有扩展,并且支持lua和python脚本扩展。因此整合之前,需要进行初步裁剪,剪掉

  1 脚本系统:lua和python支持,也剪掉script通用工程。

  2 插件系统:只保留用到的h264编码格式,其他功能和编码一律精简掉。

  3 UI系统:虚幻有自己的一套UI,而且obs studio整合了QT框架做UI,这部分也必须精简掉。(尽量不要引入庞大的框架进入虚幻,否则后续的引擎升级和更新维护会很麻烦)

 

 

 

 

 

 整合进UE5做成plugins

 做成一个插件,提供基本的音视频设备初始化,采集和推流接口,供C++和蓝图调用。

 插件功能

 1 音轨和视频采集,视频来源支持两种:屏幕采集和摄像头数据采集

    2 简单的播放器:播放音频和视频

 
 实现步骤:

  1 捕捉桌面视频和音频

  2 copy到rendertarget,输出到UE5材质

  3 推流到服务器(可用b站测试)

  4 接受服务端的回流并显示

 

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  8Tw5Riv1mGFK   2024年05月01日   82   0   0 C++
  BYaHC1OPAeY4   2024年05月08日   58   0   0 C++
  yZdUbUDB8h5t   2024年05月05日   44   0   0 C++
  oXKBKZoQY2lx   2024年05月17日   61   0   0 C++
JT5kAz2EWfTe
作者其他文章 更多