
OBS
felicityWSH
长期从事C++音视频开发
展开
-
[OBS] (27版本) 音视频数据流向总结
之前写了一篇分析obs各个线程的博客([OBS] 分析libobs几个主要的线程_felicityWSH的博客-优快云博客_libobs) 但是之后obs新增了gpu编码的功能,故原来的总结已经不完善了。现在基于27版本的obs,重新总结了音视频的数据流向。...原创 2022-05-26 09:24:51 · 638 阅读 · 0 评论 -
[OBS] 渲染 source,scene,transition,filter
渲染transition或scene:不管是否需要transition,scene的渲染都是通过transition封装调用的。transition相关的变量:struct obs_source { uint64_t transition_start_time; uint64_t transition_duration; pthread_mutex_t transition_...原创 2019-11-28 16:06:53 · 1358 阅读 · 0 评论 -
[OBS] 分析libobs几个主要的线程
There are three primary threads spawned by libobs on initialization:obs_graphics_threadfor rendering video libobs/obs-video.cvideo_thread for video encoding/output libobs/media-io/video-io.cau...原创 2019-11-28 16:01:10 · 2181 阅读 · 3 评论 -
[OBS] 信号和槽 —— 底层事件推送
信号是底层用来传递消息给UI的。UI提前连接好相关信号和槽函数,OBS底层发生某些事件时,会推送信号给UI。槽函数的签名格式// userdata : tanslate user's data// params : any paramsvoidsignal_callback_t(void* userdata,calldata_t* params)callda...原创 2019-11-28 15:54:46 · 1027 阅读 · 0 评论 -
[OBS] 插件的设计和开发
OBS使用了插件的设计,极大的增强了扩展性,本文做简要介绍。每个插件就是一个动态链接库(dll),OBS应用程序启动后,会在指定路径下遍历和动态加载所有dll,并尝试从dll中获取插件相关的导出接口。一些插件的公共函数都定义在该头文件中,尤其是导出接口:#include <obs-module.h>每个插件都有一个locale文件夹,里面有很多ini文件(多国语言)...原创 2019-11-28 15:46:07 · 3877 阅读 · 1 评论 -
[OBS] 构建browser source(cef浏览器源)的步骤
1.下载安装CMAKEhttps://cmake.org/2. 下载obs-browser和obs-studio源码https://github.com/obsproject/obs-browserhttps://github.com/obsproject/obs-studio3. 下载已发布的cefbranch (注意要匹配obs-browser工程对应的版本...原创 2019-03-14 17:58:45 · 7877 阅读 · 2 评论