diff options
author | John Glover <j@johnglover.net> | 2012-01-27 11:02:08 +0000 |
---|---|---|
committer | John Glover <j@johnglover.net> | 2012-01-27 11:02:08 +0000 |
commit | 0546cca29c61fa69ae9785c772b5de72082f442d (patch) | |
tree | d2c31b00c662f9a90f63a83ffb214c0aa3da3a16 | |
parent | 45b4c0d9264fac8e464b30b34401a9ee973f9ef0 (diff) | |
download | simpl-0546cca29c61fa69ae9785c772b5de72082f442d.tar.gz simpl-0546cca29c61fa69ae9785c772b5de72082f442d.tar.bz2 simpl-0546cca29c61fa69ae9785c772b5de72082f442d.zip |
[sms] add missing partial tracking properties
-rw-r--r-- | simpl/sms.py | 56 |
1 files changed, 55 insertions, 1 deletions
diff --git a/simpl/sms.py b/simpl/sms.py index 6d3fcae..dc2a3ce 100644 --- a/simpl/sms.py +++ b/simpl/sms.py @@ -249,13 +249,22 @@ class SMSPartialTracking(simpl.PartialTracking): simplsms.sms_free() # properties - # TODO: make properties for the remaining analysis parameters max_frequency = property(lambda self: self.get_max_frequency(), lambda self, x: self.set_max_frequency(x)) default_fundamental = property(lambda self: self.get_default_fundamental(), lambda self, x: self.set_default_fundamental(x)) max_frame_delay = property(lambda self: self.get_max_frame_delay(), lambda self, x: self.set_max_frame_delay(x)) + analysis_delay = property(lambda self: self.get_analysis_delay(), + lambda self, x: self.set_analysis_delay(x)) + min_good_frames = property(lambda self: self.get_min_good_frames(), + lambda self, x: self.set_min_good_frames(x)) + clean_tracks = property(lambda self: self.get_clean_tracks(), + lambda self, x: self.set_clean_tracks(x)) + format = property(lambda self: self.get_format(), + lambda self, x: self.set_format(x)) + pre_emphasis = property(lambda self: self.get_pre_emphasis(), + lambda self, x: self.set_pre_emphasis(x)) def get_max_frequency(self): return self._analysis_params.fHighestFreq @@ -278,6 +287,51 @@ class SMSPartialTracking(simpl.PartialTracking): if simplsms.sms_initAnalysis(self._analysis_params) != 0: raise Exception("Error allocating memory for analysis_params") + def get_analysis_delay(self): + return self._analysis_params.analDelay + + def set_analysis_delay(self, x): + simplsms.sms_freeAnalysis(self._analysis_params) + self._analysis_params.analDelay = x + if simplsms.sms_initAnalysis(self._analysis_params) != 0: + raise Exception("Error allocating memory for analysis_params") + + def get_min_good_frames(self): + return self._analysis_params.minGoodFrames + + def set_min_good_frames(self, x): + simplsms.sms_freeAnalysis(self._analysis_params) + self._analysis_params.minGoodFrames = x + if simplsms.sms_initAnalysis(self._analysis_params) != 0: + raise Exception("Error allocating memory for analysis_params") + + def get_clean_tracks(self): + return self._analysis_params.iCleanTracks + + def set_clean_tracks(self, x): + simplsms.sms_freeAnalysis(self._analysis_params) + self._analysis_params.iCleanTracks = x + if simplsms.sms_initAnalysis(self._analysis_params) != 0: + raise Exception("Error allocating memory for analysis_params") + + def get_format(self): + return self._analysis_params.iFormat + + def set_format(self, x): + simplsms.sms_freeAnalysis(self._analysis_params) + self._analysis_params.iFormat = x + if simplsms.sms_initAnalysis(self._analysis_params) != 0: + raise Exception("Error allocating memory for analysis_params") + + def get_pre_emphasis(self): + return self._analysis_params.preEmphasis + + def set_pre_emphasis(self, x): + simplsms.sms_freeAnalysis(self._analysis_params) + self._analysis_params.preEmphasis = x + if simplsms.sms_initAnalysis(self._analysis_params) != 0: + raise Exception("Error allocating memory for analysis_params") + def get_max_partials(self): return self._analysis_params.nTracks |