فهرست منبع

nv-filters: Remove reset signal for Video effects

The reset signal was triggered whenever there was an update in the
parent source. This destroys the effect and recreates it, which can be
resource heavy.
We now let the SDK handle the source update on its own rather than
manually resetting the effect on obs side.

Signed-off-by: pkv <[email protected]>
(cherry picked from commit cc452e5acd5980be6e845cf6c34fc38ff25856a9)
pkv 11 ماه پیش
والد
کامیت
856c914fd6
1فایلهای تغییر یافته به همراه0 افزوده شده و 7 حذف شده
  1. 0 7
      plugins/nv-filters/nvidia-videofx-filter.c

+ 0 - 7
plugins/nv-filters/nvidia-videofx-filter.c

@@ -55,7 +55,6 @@ struct nvvfx_data {
 	bool processed_frame;
 	bool processed_frame;
 	bool target_valid;
 	bool target_valid;
 	bool got_new_frame;
 	bool got_new_frame;
-	signal_handler_t *handler;
 
 
 	/* RTX SDK vars */
 	/* RTX SDK vars */
 	NvVFX_Handle handle;
 	NvVFX_Handle handle;
@@ -295,7 +294,6 @@ static void *nvvfx_filter_create(obs_data_t *settings, obs_source_t *context, en
 	filter->height = 0;
 	filter->height = 0;
 	filter->initial_render = false;
 	filter->initial_render = false;
 	os_atomic_set_bool(&filter->processing_stop, false);
 	os_atomic_set_bool(&filter->processing_stop, false);
-	filter->handler = NULL;
 	filter->processing_interval = 1;
 	filter->processing_interval = 1;
 	filter->processing_counter = 0;
 	filter->processing_counter = 0;
 	// set nvvfx_fx_id
 	// set nvvfx_fx_id
@@ -876,11 +874,6 @@ static void nvvfx_filter_render(void *data, gs_effect_t *effect, bool has_blur)
 		return;
 		return;
 	}
 	}
 
 
-	if (parent && !filter->handler) {
-		filter->handler = obs_source_get_signal_handler(parent);
-		signal_handler_connect(filter->handler, "update", nvvfx_filter_reset, filter);
-	}
-
 	/* 1. Render to retrieve texture. */
 	/* 1. Render to retrieve texture. */
 	if (!filter->render) {
 	if (!filter->render) {
 		obs_source_skip_video_filter(filter->context);
 		obs_source_skip_video_filter(filter->context);