From 56d4777f9b6648ac2b383795194b976c8c68018b Mon Sep 17 00:00:00 2001 From: waker Date: Tue, 15 Mar 2011 20:30:24 +0100 Subject: added streamer_dsp_refresh api entry; fixed switching eq on/off --- deadbeef.h | 1 + plugins.c | 1 + plugins/gtkui/eq.c | 1 + streamer.c | 7 +++++++ streamer.h | 3 +++ 5 files changed, 13 insertions(+) diff --git a/deadbeef.h b/deadbeef.h index 4b8e30d1..364db17a 100644 --- a/deadbeef.h +++ b/deadbeef.h @@ -328,6 +328,7 @@ typedef struct { int (*streamer_get_current_playlist) (void); struct ddb_dsp_context_s * (*streamer_get_dsp_chain) (void); void (*streamer_set_dsp_chain) (struct ddb_dsp_context_s *chain); + void (*streamer_dsp_refresh) (void); // call after changing parameters // system folders // normally functions will return standard folders derived from --prefix // portable version will return pathes specified in comments below diff --git a/plugins.c b/plugins.c index b3142e4e..a442dd0b 100644 --- a/plugins.c +++ b/plugins.c @@ -85,6 +85,7 @@ static DB_functions_t deadbeef_api = { .streamer_get_current_playlist = streamer_get_current_playlist, .streamer_get_dsp_chain = streamer_get_dsp_chain, .streamer_set_dsp_chain = streamer_set_dsp_chain, + .streamer_dsp_refresh = streamer_dsp_refresh, // folders .get_config_dir = plug_get_config_dir, .get_prefix = plug_get_prefix, diff --git a/plugins/gtkui/eq.c b/plugins/gtkui/eq.c index 067ce064..4cef6a4f 100644 --- a/plugins/gtkui/eq.c +++ b/plugins/gtkui/eq.c @@ -78,6 +78,7 @@ on_enable_toggled (GtkToggleButton *togglebutton, if (eq) { int enabled = gtk_toggle_button_get_active (togglebutton) ? 1 : 0; eq->enabled = enabled; + deadbeef->streamer_dsp_refresh (); } } diff --git a/streamer.c b/streamer.c index 7e571589..cd6fbf6b 100644 --- a/streamer.c +++ b/streamer.c @@ -1361,6 +1361,13 @@ streamer_dsp_postinit (void) { } } +void +streamer_dsp_refresh (void) { + mutex_lock (decodemutex); + streamer_dsp_postinit (); + mutex_unlock (decodemutex); +} + void streamer_dsp_init (void) { // load dsp chain from file diff --git a/streamer.h b/streamer.h index 0ff2bf61..77b14fe0 100644 --- a/streamer.h +++ b/streamer.h @@ -114,4 +114,7 @@ streamer_get_dsp_chain (void); void streamer_set_dsp_chain (struct ddb_dsp_context_s *chain); +void +streamer_dsp_refresh (void); + #endif // __STREAMER_H -- cgit v1.2.3