def add_fx(self, name, input_fx=False, even_if_exists=True): """ Add FX to track and return it. Parameters ---------- name : str FX name. input_fx : bool, optional Whether the FX should be an input (aka recording) FX or a standard FX (default=False). Note that if the track is the master track, input_fx=True will create a monitoring FX. even_if_exists : bool, optional Whether the FX should be added even if there already is an instance of the same FX on the track (default=True). Returns ------- fx : FX New FX on track (or previously existing instance of FX if even_if_exists=False). Raises ------ ValueError If there is no FX with the specified name. """ index = RPR.TrackFX_AddByName(self.id, name, input_fx, 1 - 2 * even_if_exists) if index == -1: raise ValueError("Can't find FX named {}".format(name)) fx = reapy.FX(self, index) return fx
def add_fx(self, name, even_if_exists=True): """ Add FX to track and return it. Parameters ---------- name : str FX name. even_if_exists : bool, optional Whether the FX should be added even if there already is an instance of the same FX on the track (default=True). Returns ------- fx : FX New FX on take (or previously existing instance of FX if even_if_exists=False). Raises ------ ValueError If there is no FX with the specified name. """ index = RPR.TakeFX_AddByName(self.id, name, 1 - 2 * even_if_exists) if index == -1: raise ValueError("Can't find FX named {}".format(name)) fx = reapy.FX(self, index) return fx
def parent_fx(self): """ Parent FX. :type: FX """ fx = reapy.FX(parent_id=self.parent_id, index=self.fx_index) return fx
def instrument(self): """ First instrument FX on track if it exists, else None. :type: FX or None """ fx_index = RPR.TrackFX_GetInstrument(self.id) instrument = None if fx_index == -1 else reapy.FX(self, fx_index) return instrument
def __init__(self, parent_fx=None, parent_id=None, parent_fx_index=None): if parent_fx is None: parent_fx = reapy.FX(parent_id=parent_id, index=parent_fx_index) self.parent_id = parent_fx.parent_id self.fx_index = parent_fx.index self.functions = parent_fx.functions