From 79c5535cf6ea80993ae1d2f00ea15911f2581c3c Mon Sep 17 00:00:00 2001 From: ybnd Date: Thu, 30 Jan 2020 09:34:37 +0100 Subject: [PATCH] Open/close pool at begin/end of import session --- beetsplug/replaygain.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/beetsplug/replaygain.py b/beetsplug/replaygain.py index e540d3d99..4d963816d 100644 --- a/beetsplug/replaygain.py +++ b/beetsplug/replaygain.py @@ -1204,6 +1204,8 @@ class ReplayGainPlugin(BeetsPlugin): # On-import analysis. if self.config['auto']: + self.register_listener('import_begin', self.import_begin) + self.register_listener('import', self.import_end) self.import_stages = [self.imported] # Formats to use R128. @@ -1442,6 +1444,16 @@ class ReplayGainPlugin(BeetsPlugin): self.pool.close() self.pool.join() + def import_begin(self, session): + """Handle `import_begin` event -> open pool + """ + self.open_pool(self.config['threads'].get(int)) + + def import_end(self, paths): + """Handle `import` event -> close pool + """ + self.close_pool() + def imported(self, session, task): """Add replay gain info to items or albums of ``task``. """