OBS ShaderFilter Plus 使用教程

OBS ShaderFilter Plus 使用教程

obs-shaderfilter-plus obs-shaderfilter rewritten in Rust and improved obs-shaderfilter-plus 项目地址: https://gitcode.com/gh_mirrors/ob/obs-shaderfilter-plus

1. 项目介绍

OBS ShaderFilter Plus 是一个为 Open Broadcaster Software (OBS) 开发的插件,它允许用户通过手动创建的 GLSL/HLSL 着色器来为源添加效果。该插件利用 GPU 执行着色器程序,这些程序可以应用于每个像素,为视频源添加自定义的视觉效果。

2. 项目快速启动

安装

  1. Releases 页面 下载适用于您操作系统的最新二进制文件。

    • Windows 用户下载以 _windows_x64.dll 结尾的文件。
    • Linux 用户下载以 _linux_x64.so 结尾的文件。
  2. 将下载的文件放置到 OBS 插件目录中:

    • 在 Windows 上,目录通常是 C:\Program Files\obs-studio\obs-plugins\64bit
    • 在 Linux 上,目录通常是 /usr/lib/obs-plugins

使用

  1. 在 OBS 中,右键点击您想要添加效果的源,选择“滤镜”,然后添加“ShaderFilter Plus”。

  2. 通过点击“浏览”按钮选择包含着色器源代码的文件。

  3. 通过着色器特定的用户界面来自定义着色器的行为。

3. 应用案例和最佳实践

创建简单的着色器

一个着色器的基本结构非常简单,至少需要一个如下所示的 render 函数:

float4 render(float2 uv) {
    // 采样源纹理并返回其颜色以显示
    return image.Sample(builtin_texture_sampler, uv);
}

使用内置变量

每个通过该插件加载的着色器都可以访问以下内置统一变量:

  • uniform texture2d image; // 源纹理(我们正在过滤的图像)
  • uniform int builtin_frame; // 当前帧数
  • uniform float builtin_framerate; // 当前输出帧率
  • uniform float builtin_elapsed_time; // 当前经过的时间
  • uniform float builtin_elapsed_time_previous; // 上一个帧的经过时间
  • uniform float builtin_elapsed_time_since_shown; // 自源显示以来经过的时间
  • uniform float builtin_elapsed_time_since_shown_previous; // 上一个帧自源显示以来经过的时间
  • uniform float builtin_elapsed_time_since_enabled; // 自滤镜显示以来经过的时间
  • uniform float builtin_elapsed_time_since_enabled_previous; // 上一个帧自滤镜显示以来经过的时间
  • uniform int2 builtin_uv_size; // 源尺寸
  • uniform sampler_state builtin_texture_sampler { ... }; // 具有线性过滤的纹理采样器

定义自定义属性

在着色器源代码中可以使用 #pragma shaderfilter 宏来定义属性,例如:

#pragma shaderfilter set my_color__description "我的颜色"
#pragma shaderfilter set my_color__default 7FFF00FF
uniform float4 my_color;

4. 典型生态项目

OBS ShaderFilter Plus 插件可以作为 OBS 生态系统的一部分,与其他插件和工具配合使用,例如:

  • OBS Studio:主流的开源直播和录制软件。
  • OBS VirtualCam:将 OBS 输出作为虚拟摄像头使用。
  • OBS Multiinstances:允许运行多个 OBS 实例。

通过这些项目的结合使用,可以构建出强大的直播和视频处理工作流。

obs-shaderfilter-plus obs-shaderfilter rewritten in Rust and improved obs-shaderfilter-plus 项目地址: https://gitcode.com/gh_mirrors/ob/obs-shaderfilter-plus

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

纪嫣梦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值