def _connect_parameters(self): super(SpecialChanStripComponent, self)._connect_parameters() if self._pan_control != None and liveobj_valid(self._track): if is_set_to_split_stereo(self._track.mixer_device): self._pan_control.release_parameter() self._on_pan_control_value_changed.subject = self._pan_control else: self._on_pan_control_value_changed.subject = None
def _get_track_mixer_parameters(self): mixer_params = [] if self._tracks_provider.selected_item: mixer = self._tracks_provider.selected_item.mixer_device mixer_params = [mixer.volume] if is_set_to_split_stereo(mixer): mixer_params += [mixer.left_split_stereo, mixer.right_split_stereo] else: mixer_params += [mixer.panning] mixer_params += list(mixer.sends) return mixer_params
def _setup_modes(self, view_model): self._add_mode('volume', view_model.volumeControlListView, lambda mixer: mixer.volume, additional_mode_contents=self.real_time_meter_handlers) self._add_mode( 'panning', view_model.panControlListView, lambda mixer: ConstantParameter(original_parameter=mixer.panning) if is_set_to_split_stereo(mixer) else mixer.panning) def add_send_mode(index): self._add_mode( SEND_MODE_NAMES[index], view_model.sendControlListView, lambda mixer: mixer.sends[(self._send_offset + index)] if len(mixer.sends) > self._send_offset + index else None) for i in xrange(SEND_LIST_LENGTH): add_send_mode(i)
def _max_return_tracks(self): mixer = self._tracks_provider.selected_item.mixer_device if is_set_to_split_stereo(mixer): return 5 return 6