summaryrefslogtreecommitdiff
path: root/src/effects/ntsc_effect.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/effects/ntsc_effect.h')
-rw-r--r--src/effects/ntsc_effect.h14
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) {}
};