diff --git a/plugins/obs-transitions/transition-stinger.c b/plugins/obs-transitions/transition-stinger.c index 3cd1e0b2701d8d02a75586e2cddf3b05a890ffd7..9a27b73f748d4a33a579c058aa257fbd6120ceab 100644 --- a/plugins/obs-transitions/transition-stinger.c +++ b/plugins/obs-transitions/transition-stinger.c @@ -89,12 +89,20 @@ static void stinger_update(void *data, obs_data_t *settings) s->track_matte_enabled = obs_data_get_bool(settings, "track_matte_enabled"); s->matte_layout = obs_data_get_int(settings, "track_matte_layout"); - s->matte_width_factor = - (s->matte_layout == MATTE_LAYOUT_HORIZONTAL ? 2.0f : 1.0f); - s->matte_height_factor = - (s->matte_layout == MATTE_LAYOUT_VERTICAL ? 2.0f : 1.0f); s->invert_matte = obs_data_get_bool(settings, "invert_matte"); + s->matte_width_factor = 1.0f; + s->matte_height_factor = 1.0f; + if (s->track_matte_enabled) { + if (s->matte_layout == MATTE_LAYOUT_HORIZONTAL) { + s->matte_width_factor = 2.0f; + } + + if (s->matte_layout == MATTE_LAYOUT_VERTICAL) { + s->matte_height_factor = 2.0f; + } + } + if (s->matte_source) { obs_source_release(s->matte_source); s->matte_source = NULL;