本文档概述了 OBS Studio 中可用的不同视频源插件。视频源是捕获各种输入视觉内容的基本构建块,然后可以将这些内容组合成场景。有关音频源的信息,请参阅 音频源。
OBS Studio 中的视频源作为插件实现,用于从游戏、窗口、显示器、媒体文件和捕获设备等不同来源捕获视频。每种视频源类型都专门针对捕获特定类型的内容,并考虑了性能、质量和兼容性等优化因素。
来源
游戏捕获专门用于以最高性能和最小影响捕获游戏和 3D 应用程序。它通过将钩子注入到游戏进程中来直接从游戏的图形 API 截取帧。
主要功能
来源
窗口捕获允许捕获桌面上的特定窗口。它提供了不同的捕获方法选项,以平衡兼容性和性能。
主要功能
来源
显示捕获(监视器捕获)捕获监视器或显示器的全部内容。它支持不同的捕获方法,以与各种 Windows 版本和硬件配置兼容。
主要功能
来源
视频捕获设备源从 DirectShow 设备(如网络摄像头、采集卡和其他视频输入设备)捕获。它提供了丰富的设备和格式选择选项。
主要功能
来源
媒体源使用 FFmpeg 播放媒体文件,如视频、图像或音频文件。它还可以播放网络流。
主要功能
来源
OBS 中的视频源通过插件 API 实现。每个视频源插件都必须实现一组 OBS 用于与源交互的回调函数。
关键组件
来源
视频捕获管道涉及从捕获原始帧到在 OBS 中渲染它们的几个步骤。
关键方面:
来源
每种视频源类型支持不同的输入格式,在使用它们之前可能需要进行转换。
| 源类型 | 支持的输入格式 | 转换方法 |
|---|---|---|
| 游戏捕获 | RGBA、BGRA、NV12、RGB10A2、RGBA16F、RGBA32F | 着色器中的直接转换或转换 |
| 窗口捕获 (BitBlt) | BGRA | 无(原生) |
| 窗口捕获 (WGC) | BGRA、RGBA16F | 无(原生) |
| 显示捕获 (DXGI) | BGRA | 无(原生) |
| 显示捕获 (GDI) | BGRA | 无(原生) |
| 视频捕获设备 | NV12、YUY2、YVYU、UYVY、I420、YV12、MJPEG、H.264 | FFmpeg 解码压缩格式 |
| 媒体源 | 各种(FFmpeg 支持) | FFmpeg 解码和转换 |
来源
不同的视频源类型具有不同的性能特征
游戏捕获:
窗口捕获:
显示捕获:
视频捕获设备:
媒体源:
来源
每种视频源类型都可能遇到特定问题
游戏捕获:
窗口捕获:
显示捕获:
视频捕获设备:
媒体源:
来源