return make_fade_chain(input0_live, input0_deint, input0_scale, input1_live, input1_deint, input1_scale, has_overlay, hq)
end)
-function make_sbs_input(chain, signal, deint, hq)
+function make_sbs_input(chain, signal, deint, overlay, hq)
local input = chain:add_live_input(not deint, deint) -- Override bounce only if not deinterlacing.
input:connect_signal(signal)
+ local overlay_effect = nil
+ if (overlay) then
+ local cef_effect = chain:add_html_input(cef_input)
+ overlay_effect = chain:add_effect(OverlayEffect.new(), input, cef_effect)
+ end
+
local resample_effect = nil
local resize_effect = nil
if (hq) then
function make_sbs_chain(input0_type, input0_overlay, input1_type, hq)
local chain = EffectChain.new(16, 9)
- local input0 = make_sbs_input(chain, INPUT0_SIGNAL_NUM, input0_type == "livedeint", hq)
- local input1 = make_sbs_input(chain, INPUT1_SIGNAL_NUM, input1_type == "livedeint", hq)
-
- -- FIXME: input0_overlay
+ local input0 = make_sbs_input(chain, INPUT0_SIGNAL_NUM, input0_type == "livedeint", input0_overlay, hq)
+ local input1 = make_sbs_input(chain, INPUT1_SIGNAL_NUM, input1_type == "livedeint", false, hq)
input0.padding_effect:set_vec4("border_color", 0.0, 0.0, 0.0, 1.0)
input1.padding_effect:set_vec4("border_color", 0.0, 0.0, 0.0, 0.0)
function get_sbs_chain(signals, t, width, height, input_resolution)
local input0_type = get_input_type(signals, INPUT0_SIGNAL_NUM)
local input1_type = get_input_type(signals, INPUT1_SIGNAL_NUM)
- return sbs_chains[input0_type][false][input1_type][true] -- FIXME: overlay is always false?
+ return sbs_chains[input0_type][overlay_enabled][input1_type][true]
end
-- API ENTRY POINT