diff --git a/UI/window-basic-filters.cpp b/UI/window-basic-filters.cpp index d27e59fba..52c2c2876 100644 --- a/UI/window-basic-filters.cpp +++ b/UI/window-basic-filters.cpp @@ -589,11 +589,13 @@ void OBSBasicFilters::DrawPreview(void *data, uint32_t cx, uint32_t cy) gs_viewport_push(); gs_projection_push(); + const bool previous = gs_set_linear_srgb(true); + gs_ortho(0.0f, float(sourceCX), 0.0f, float(sourceCY), -100.0f, 100.0f); gs_set_viewport(x, y, newCX, newCY); - obs_source_video_render(window->source); + gs_set_linear_srgb(previous); gs_projection_pop(); gs_viewport_pop(); } diff --git a/UI/window-basic-interaction.cpp b/UI/window-basic-interaction.cpp index ed3519c86..304fb56c5 100644 --- a/UI/window-basic-interaction.cpp +++ b/UI/window-basic-interaction.cpp @@ -148,10 +148,13 @@ void OBSBasicInteraction::DrawPreview(void *data, uint32_t cx, uint32_t cy) gs_viewport_push(); gs_projection_push(); + const bool previous = gs_set_linear_srgb(true); + gs_ortho(0.0f, float(sourceCX), 0.0f, float(sourceCY), -100.0f, 100.0f); gs_set_viewport(x, y, newCX, newCY); obs_source_video_render(window->source); + gs_set_linear_srgb(previous); gs_projection_pop(); gs_viewport_pop(); } diff --git a/UI/window-basic-properties.cpp b/UI/window-basic-properties.cpp index 52dd19fad..4f149667d 100644 --- a/UI/window-basic-properties.cpp +++ b/UI/window-basic-properties.cpp @@ -392,11 +392,13 @@ void OBSBasicProperties::DrawPreview(void *data, uint32_t cx, uint32_t cy) gs_viewport_push(); gs_projection_push(); + const bool previous = gs_set_linear_srgb(true); + gs_ortho(0.0f, float(sourceCX), 0.0f, float(sourceCY), -100.0f, 100.0f); gs_set_viewport(x, y, newCX, newCY); - obs_source_video_render(window->source); + gs_set_linear_srgb(previous); gs_projection_pop(); gs_viewport_pop(); }