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

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

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

插件的四个入口:

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()            卸载所有模块


分享给朋友:

相关文章

2018-1-31月全食

2018-1-31月全食

今天是150年来一次的月全食,刚刚上顶楼看了一下,没有做好准备,月亮拍照月亮小了点,于是,下楼在自己的房间上网看。今天终于看到了大月亮。截几张图片,这个视角,可以看月亮旁的飞机,汽车,房子。汽车,飞机...

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

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

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

linux mint 下的网桥设置,附window 10 网桥的建立。

linux mint 下的网桥设置,附window 10 网桥的建立。

家有板载双网卡的电脑一台,一直以来都是正常使用。接一个网线,直接通过路由上网。另外一个网卡不知道怎么使用一直是备用状态。今天大年初一,心情比较轻松。于是试了一下另外的一个网卡。我的迷你电脑有两个端口,...

有幸找到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...