diff options
Diffstat (limited to 'src/effects/ntsc_effect.h')
| -rw-r--r-- | src/effects/ntsc_effect.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/effects/ntsc_effect.h b/src/effects/ntsc_effect.h index d8624ea..4737291 100644 --- a/src/effects/ntsc_effect.h +++ b/src/effects/ntsc_effect.h @@ -1,12 +1,22 @@ -// NTSC post-process effect with fisheye distortion +// NTSC post-process effects: RGB and YIQ input variants. #pragma once #include "effects/shaders.h" #include "gpu/wgsl_effect.h" +// RGB input: converts RGB → YIQ internally (standard post-process use). struct Ntsc : public WgslEffect { Ntsc(const GpuContext& ctx, const std::vector<std::string>& inputs, const std::vector<std::string>& outputs, float start_time, float end_time) : WgslEffect(ctx, inputs, outputs, start_time, end_time, - ntsc_shader_wgsl) {} + ntsc_rgb_shader_wgsl) {} +}; + +// YIQ input: input texture already stores luma/chroma/phase (e.g. RotatingCube output). +struct NtscYiq : public WgslEffect { + NtscYiq(const GpuContext& ctx, const std::vector<std::string>& inputs, + const std::vector<std::string>& outputs, float start_time, + float end_time) + : WgslEffect(ctx, inputs, outputs, start_time, end_time, + ntsc_yiq_shader_wgsl) {} }; |
