obs 源码分析
基于obs v27.2
目标
主要分析obs和直播平台的深度集成能力,例如,当前支持的youtube,twitch,restream等平台的标准做法, 在分析完整后,提出一种可以集成到我站的能力。
类图
class Auth;
class OAuth : public Auth;
class OAuthStreamKey : public OAuth;
class RestreamAuth : public OAuthStreamKey;
class TwitchAuth : public OAuthStreamKey;
class YoutubeAuth : public OAuthStreamKey;
class BrowserDock;
class YoutubeApiWrappers : public YoutubeAuth;
//
class OBSYoutubeActions : public QDialog;
类图
graph TD;
Auth
OAuth
OAuthStreamKey
RestreamAuth
TwitchAuth
YoutubeAuth
BrowserDock
YoutubeApiWrappers
Auth --> OAuth
OAuth --> OAuthStreamKey
OAuthStreamKey --> RestreamAuth
OAuthStreamKey --> TwitchAuth
OAuthStreamKey --> YoutubeAuth
YoutubeAuth --> YoutubeApiWrappers
类作用详细解析
class Auth和它的子类
Auth 定义了基本的鉴权模型和鉴权种类。
OBSYoutubeActions
OBSYoutubeActions 是一个QDialog的子类,界面中预留了创建新的直播或者使用已经设置的直播配置信息来进行一场新的直播等信息。
用户通过选择合适的信息后,进行立即直播或定时直播。
互相关系
OBSYoutubeActions 通过调用 YoutubeApiWrappers 来获取channel相关配置信息,并最终将设置透传到obsMainWindow去。
OBSYoutubeActions