obs整体工程
- obs obs程序界面,程序入口,基于qt
- libobs obs的核心集成封装,所有第三方库的集成封装
- blake2 hash算法,据说比sha-1快,安全
- coreaudio-encoder 音频采集,对coreaudio调用封装
- ffmpeg-mux 对ffmpeg封装,解复用
- file-updater 自动升级
- frontend-tools
- get-graphics-offsets 注入库时,通过虚表偏移获取d3d8,d3d9,dxgi的函数,从而实现API重定向,即用自己的函数替换原本的函数。 当然还需依附进程间通信,在win-capture中,使用pipe实现。 两种显卡渲染的实现,使用gpu,解放cpu压力,同时提高渲染效率与质量。 使用着色器语言渲染(定点和片着色器,分别控制位置矢量和色值,感兴趣的同学可以详细了解一下)。gpu映射
- glad opengl封装
- graphics-hook hook显卡api,用于抓取软件窗口
- image-source 图片资源,动态图,多张图幻灯片放映
- inject-helper 将graphices-hook注入到其他进程。
- ipc-util 进程间通信,主要封装了pipe管道的实现,用于在hook 游戏进程时,传递原始画面数据,所以用到。
- jansson json 处理
- libobs-d3d11
- libobs-opengl
- lzma
- media-playback
- obs-ffmpeg
- obs-filters 图像滤镜,亮度,色度,饱和度,抠像
- obs-frontend-api
- obs-outputs 输出模块,录制flv,rtmp调用
- obs-qsv11 intel 硬件编码
- obs-text GDI+ 渲染文字
- obs-transitions 场景之间切换过度效果
- obs-vst
- obs-x264 x264 编码器
- rtmp-services rtmp 推流
- text-freetype2 开源字体引擎,支持多种格式,比GDI+高效
- win32-pthreads
- win-capture 窗口,显示器,游戏(涉及进程间通信)捕捉
- win-decklink 针对decklink采集卡的抓取
- win-dshow 摄像头采集
- win-mf
- win-wasapi 针对声音输入(麦克风)输出(扬声器)设备的抓取