当前位置:首页 > 我的杂物 > 正文内容

OBS 插件开发所需要的数据结构。

Peirre5年前 (2020-07-05)我的杂物1313

插件的四个入口:

plugins_sources

plugins_outputs

plugins_encoders

plugins_services

OBS软件的三个主线程函数:

obs_graphics_thread_    (obs-video.c)

video_thread_                    (video-io.c)

audio_thread_                   (audio-io.c)

输出通道:

obs_set_output_source()   

displaying_sources

OBS 图形线程函数:

obs_graphics_thread_     (obs-video.c)

MAX_CHANNELS_-1              频道参数为1

视频处理程序

obs_core_video::video

和帧数有关的

MAX_CACHE_SIZE_             视频缓冲池

video output handler        视频函数句柄

就是视频播放卡顿问题。

obs-encoder.c                     OBS 视频解码

音频管道:

audio_thread                    (audio-io.c)

AUDIO_OUTPUT_FRAMES_    音频缓冲池

audio_callback               (obs-audio.c)音频采样回放

obs_source_output_audio_                 音频输出函数

obs_source::audio_input_buf              音频缓冲池函数

obs_source::audio_input_buf        放入音频缓冲池

obs_source::audio_output_buf    由此函数缓冲池输出


函数源码

_obs_graphics_thread

obs-video.c

obs-audio.c

_video_thread

video-io.c

_video output handler

_audio_thread

audio-io.c

_MAX_CHANNELS

_obs_core_video::video

_MAX_CACHE_SIZE

_AUDIO_OUTPUT_FRAMES

_audio_callback

_obs_source_output_audio

_obs_source::audio_input_buf

_obs_source::audio_output_buf

_obs_source_info::audio_render

初始化OBS:

obs_startup();obs_reset_video();obs_reset_audio()

初始化必须调用的三个函数

个人使用函数

obs_init_module()    初始化OBS模块

obs_open_module()  打开OBS模块

模块相关

obs_add_module_path();obs_load_all_modules();   自动装载OBS模块

obs_post_load_modules()                                                     OBS 插件装载模块

obs_startup()                  设置配置开始模块

bnum_allocs()                清空模块链接空间

obs_shutdown()            卸载所有模块


分享给朋友:

相关文章

Ubuntu Linux  19.10 下 完善街机模拟器。

Ubuntu Linux 19.10 下 完善街机模拟器。

Ubuntu linux 下有个共享软件库,可以用apt软件工具下载,当中有个街机模拟器叫mame。让我们一起免费在家玩街机游戏吧。nantz@nantz-desktop:~$ sudo apt li...

滤波扼流圈的设计与计算

滤波扼流圈的设计与计算

    1.铁芯截面积的计算公式:    Sc——铁芯截面积(厘米2)    L ——电感量(亨)&...

Dolphin 模拟器在WIN10和Linux mint 下使用真实的WII控制手柄。

Dolphin 模拟器在WIN10和Linux mint 下使用真实的WII控制手柄。

很多以前的WII游戏是可以在电脑上玩的。自从买了一张别人开发的WII模拟器集成软件之后,发现电脑使用WII模拟器一点也不难。Iplay 是一个体感游戏大厅,分收费零售版和免费版,免费版和收费零售版不一...

谈点我研究雷达的那点事情。

谈点我研究雷达的那点事情。

说实话雷达并不是我的第一个项目。有关雷达的研究,大家可以看我的这个网站的其它文章。说实话这个网站一开始就是为了研究雷达和电子测量开的网站。一直想以这个题材为中心。这个雷达项目绝对是一个好题材。深入研究...

有幸找到IP分析源码。

有幸找到IP分析源码。

这两天翻硬盘资料,找到windows 2000关于网络IP的一份源码。看见网络上只有CSDN处有一份,于是贴了出来,含源码分析。inet_addr函数_misterliwei的专栏-CSDN博客_in...

CPUID这个汇编指令到底有什么用。先谈谈01子功能。

CPUID这个汇编指令到底有什么用。先谈谈01子功能。

最近在翻览intel公司的CPU开发白皮书,对CPUID这个指令做了一下了解。CPUID这个指令就像一个功能函数一样,只要CPU的寄存器EAX有数据,它会在执行CPUID指令后返回到EAX,EBX,E...