浏览代码

obs-filters: Use new pattern for SRGB support

jpark37 4 年之前
父节点
当前提交
185df01a96

+ 2 - 3
plugins/obs-filters/chroma-key-filter.c

@@ -388,9 +388,8 @@ static void chroma_key_render_v2(void *data, gs_effect_t *effect)
 	gs_effect_set_float(filter->smoothness_param, filter->smoothness);
 	gs_effect_set_float(filter->smoothness_param, filter->smoothness);
 	gs_effect_set_float(filter->spill_param, filter->spill);
 	gs_effect_set_float(filter->spill_param, filter->spill);
 
 
-	const bool previous = gs_set_linear_srgb(true);
-	obs_source_process_filter_end(filter->context, filter->effect, 0, 0);
-	gs_set_linear_srgb(previous);
+	obs_source_process_filter_end_srgb(filter->context, filter->effect, 0,
+					   0);
 
 
 	UNUSED_PARAMETER(effect);
 	UNUSED_PARAMETER(effect);
 }
 }

+ 2 - 3
plugins/obs-filters/color-correction-filter.c

@@ -571,9 +571,8 @@ static void color_correction_filter_render_v2(void *data, gs_effect_t *effect)
 	gs_effect_set_matrix4(filter->final_matrix_param,
 	gs_effect_set_matrix4(filter->final_matrix_param,
 			      &filter->final_matrix);
 			      &filter->final_matrix);
 
 
-	const bool previous = gs_set_linear_srgb(true);
-	obs_source_process_filter_end(filter->context, filter->effect, 0, 0);
-	gs_set_linear_srgb(previous);
+	obs_source_process_filter_end_srgb(filter->context, filter->effect, 0,
+					   0);
 
 
 	UNUSED_PARAMETER(effect);
 	UNUSED_PARAMETER(effect);
 }
 }

+ 2 - 4
plugins/obs-filters/color-grade-filter.c

@@ -452,10 +452,8 @@ static void color_grade_filter_render(void *data, gs_effect_t *effect)
 	param = gs_effect_get_param_by_name(filter->effect, "cube_width_i");
 	param = gs_effect_get_param_by_name(filter->effect, "cube_width_i");
 	gs_effect_set_float(param, 1.0f / filter->cube_width);
 	gs_effect_set_float(param, 1.0f / filter->cube_width);
 
 
-	const bool previous = gs_set_linear_srgb(true);
-	obs_source_process_filter_tech_end(filter->context, filter->effect, 0,
-					   0, tech_name);
-	gs_set_linear_srgb(previous);
+	obs_source_process_filter_tech_end_srgb(filter->context, filter->effect,
+						0, 0, tech_name);
 
 
 	UNUSED_PARAMETER(effect);
 	UNUSED_PARAMETER(effect);
 }
 }

+ 2 - 3
plugins/obs-filters/color-key-filter.c

@@ -336,9 +336,8 @@ static void color_key_render_v2(void *data, gs_effect_t *effect)
 	gs_effect_set_float(filter->similarity_param, filter->similarity);
 	gs_effect_set_float(filter->similarity_param, filter->similarity);
 	gs_effect_set_float(filter->smoothness_param, filter->smoothness);
 	gs_effect_set_float(filter->smoothness_param, filter->smoothness);
 
 
-	const bool previous = gs_set_linear_srgb(true);
-	obs_source_process_filter_end(filter->context, filter->effect, 0, 0);
-	gs_set_linear_srgb(previous);
+	obs_source_process_filter_end_srgb(filter->context, filter->effect, 0,
+					   0);
 
 
 	UNUSED_PARAMETER(effect);
 	UNUSED_PARAMETER(effect);
 }
 }

+ 3 - 5
plugins/obs-filters/scale-filter.c

@@ -297,11 +297,9 @@ static void scale_filter_render(void *data, gs_effect_t *effect)
 		gs_effect_set_next_sampler(filter->image_param,
 		gs_effect_set_next_sampler(filter->image_param,
 					   filter->point_sampler);
 					   filter->point_sampler);
 
 
-	const bool previous = gs_set_linear_srgb(true);
-	obs_source_process_filter_tech_end(filter->context, filter->effect,
-					   filter->cx_out, filter->cy_out,
-					   technique);
-	gs_set_linear_srgb(previous);
+	obs_source_process_filter_tech_end_srgb(filter->context, filter->effect,
+						filter->cx_out, filter->cy_out,
+						technique);
 
 
 	UNUSED_PARAMETER(effect);
 	UNUSED_PARAMETER(effect);
 }
 }