Skip to content

ableton.v3.control_surface.control_surface (runtime)

Live 11 — Live Object Model & framework reference (descriptions and signatures).

Module constants

  • M4L_PRIORITY = 2

Functions

const(value)

contextmanager(func)

create_control_surface(name=None, specification=None, c_instance=None)

find_if(predicate, seq)

inject(**k)

is_song_recording()

is_track_armed(track)

listens(event_path, *a, **k)

liveobj_valid(obj)

suppress_notifications(state: ableton.v3.control_surface.display.state.State, exclude: Union[List[str], NoneType] = None)

Classes

class BackgroundComponent(Component)

Properties

  • application
  • is_root
  • layer
  • parent
  • song

Methods

__init__(self, name='Background', control_type=None, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_add_child(self, component)
_get_layer_iterable(self)
_grab_all_layers(self)
_internal_on_enabled_changed(self)
_release_all_layers(self)
_set_element_for_control(self, name, element)
_set_enabled_recursive(self, enable)
_setup_control_state(self, name, control_state)
_update_is_enabled(self)
add_any_clipboard_has_content_listener(self, slot, identify_sender=False, *a, **k)
add_children(self, *children)
add_control(self, name, control)
add_enabled_listener(self, slot, identify_sender=False, *a, **k)
any_clipboard_has_content_has_listener(self, slot)
any_clipboard_has_content_listener_count(self)
control_notifications_enabled(self)
disconnect(self)
disconnect_disconnectable(self, slot)
enabled_has_listener(self, slot)
enabled_listener_count(self)
find_disconnectable(self, predicate)
has_disconnectable(self, slot)
is_enabled(self, explicit=False)
notify_any_clipboard_has_content(self, *a, **k)
notify_enabled(self, *a, **k)
on_enabled_changed(self)
register_clipboard(self)
register_disconnectable(self, slot)
register_disconnectables(self, disconnectables)
register_slot(self, *a, **k)
remove_any_clipboard_has_content_listener(self, slot)
remove_enabled_listener(self, slot)
set_enabled(self, enable)
unregister_disconnectable(self, slot)
update(self)

Attributes

  • _clipboard_component_instances = [] - Built-in mutable sequence.
  • _tasks = <ableton.v2.base.util.lazy_attribute object at 0x163a2a898>
  • any_clipboard_has_content = False - bool(x) -> bool
  • canonical_parent = None
  • num_layers = 0 - int([x]) -> integer

class CompoundElement(NotifyingControlElement, ControlElementClient)

Properties

  • resource

Methods

ProxiedInterface(outer=None, *a, **k)
__init__(self, control_elements=None, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_connect_nested_control_elements(self)
_disconnect_nested_control_elements(self)
_get_nested_client(self, client)
_grab_nested_control_elements(self, client, priority=None, **k)
_on_nested_control_element_lost(self, control)
_on_nested_control_element_received(self, control)
_on_resource_lost(self, client)
_on_resource_received(self, client, *a, **k)
_release_nested_control_elements(self, client)
_resource_type(on_received_callback=None, on_lost_callback=None, *a, **k)
add_value_listener(self, *a, **k)

Called when the control element receives a MIDI value from the hardware

clear_send_cache(self)
disconnect(self)
disconnect_disconnectable(self, slot)
find_disconnectable(self, predicate)
get_control_element_priority(self, element, priority)
has_control_element(self, control)
has_disconnectable(self, slot)
nested_control_elements(self)
notify_ownership_change(self, client, grabbed, element_ownership_handler=None)
notify_value(self, *a, **k)

Called when the control element receives a MIDI value from the hardware

on_nested_control_element_lost(self, control)
on_nested_control_element_received(self, control)
on_nested_control_element_value(self, value, control)
owned_control_elements(self)
owns_control_element(self, control)
register_control_element(self, element)
register_control_elements(self, *elements)
register_disconnectable(self, slot)
register_disconnectables(self, disconnectables)
register_slot(self, *a, **k)
remove_value_listener(self, *a, **k)

Called when the control element receives a MIDI value from the hardware

request_listen_nested_control_elements(self)
reset(self)
reset_state(self)
send_midi(self, message)
set_control_element(self, control, grabbed)
unregister_control_element(self, element)
unregister_control_elements(self, *elements)
unregister_disconnectable(self, slot)
unrequest_listen_nested_control_elements(self)
value_has_listener(self, slot)

Called when the control element receives a MIDI value from the hardware

value_listener_count(self)

Called when the control element receives a MIDI value from the hardware

Attributes

  • _CompoundElement__on_nested_control_element_value = None
  • _has_resource = False - bool(x) -> bool
  • _has_task_group = False - bool(x) -> bool
  • _is_resource_based = False - bool(x) -> bool
  • _resource = <ableton.v2.base.util.lazy_attribute object at 0x11b312780>
  • _tasks = <ableton.v2.base.util.lazy_attribute object at 0x1630c8898>
  • canonical_parent = None
  • name = '' - str(object='') -> str
  • optimized_send_midi = True - bool(x) -> bool
  • proxied_interface = <ableton.v2.base.util.lazy_attribute object at 0x11df40710>

class ControlSurface(SimpleControlSurface, ControlSurfaceMappingMixin)

Properties

  • _tasks
  • application
  • components
  • controls
  • renderable_components
  • root_components
  • song

Methods

__init__(self, specification=None, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_add_mode(self, mode_name, mode_spec, modes_component)
_component_guard(self)
_create_background(self, priority)
_create_component(self, name, component_mappings)
_create_elements(specification)
_create_extended_injector(self)
_create_identification(self, specification)
_create_instrument_finder(self)
_create_mode_part(self, mode_mappings)
_create_modes_component(self, name, modes_config)
_disconnect_and_unregister_all_components(self)
_do_receive_midi(self, midi_bytes)
_do_receive_midi_chunk(self, midi_chunk)
_do_send_midi(self, midi_event_bytes)
_flush_midi_messages(self)
_get_additional_dependencies(self)
_get_tasks(self)
_install_forwarding(self, midi_map_handle, control, forwarding_type=1)
_install_mapping(self, midi_map_handle, control, parameter, feedback_delay, feedback_map)
_merge_midi_data(recipient, data, midi_data)
_on_entering_component_guard(self)
_pre_serialize(self)
_receive_midi_data(recipient, data)
_register_component(self, component)
_register_control(self, control)
_render_and_update_display(self)
_send_midi(self, midi_event_bytes, optimized=True)
_send_specification_messages(self, messages_name='hello_messages')
_set_suppress_rebuild_requests(self, suppress_requests)
_setup_modes_component(self, name, modes_config)
_should_include_element_in_background(element)
_suppress_notifications(self)
_translate_message(self, type, from_identifier, from_channel, to_identifier, to_channel)
_update_auto_arm(self)
_update_controlled_track(self)
_update_feedback_velocity(self)
_update_instrument_components(self)
accumulating_midi_messages(self)
add_disconnect_listener(self, slot, identify_sender=False, *a, **k)
add_received_midi_listener(self, slot, identify_sender=False, *a, **k)
build_midi_map(self, midi_map_handle)
call_listeners(self, listeners)
can_lock_to_devices(self)
component_guard(self)
connect_script_instances(self, instanciated_scripts)
disconnect(self)
disconnect_disconnectable(self, slot)
disconnect_has_listener(self, slot)
disconnect_listener_count(self)
drum_group_changed(self, drum_group)
find_disconnectable(self, predicate)
get_component_by_name(self, component_name)
get_control_by_name(self, control_name)
get_recipient_for_nonsysex_midi_message(self, midi_bytes)
get_registry_entry_for_sysex_midi_message(self, midi_bytes)
has_disconnectable(self, slot)
identification_state_changed(self, state)
lock_to_device(self, device)
mxd_grab_control_priority()
notify_disconnect(self, *a, **k)
notify_received_midi(self, *a, **k)
on_identified(self, response_bytes)
port_settings_changed(self)
process_midi_bytes(self, midi_bytes, midi_processor)
react(self, event)
receive_midi(self, midi_bytes)
receive_midi_chunk(self, midi_chunk)
received_midi_has_listener(self, slot)
received_midi_listener_count(self)
refresh_state(self)
register_disconnectable(self, slot)
register_disconnectables(self, disconnectables)
register_slot(self, *a, **k)
release_controlled_track(self)
remove_disconnect_listener(self, slot)
remove_received_midi_listener(self, slot)
request_rebuild_midi_map(self)
restore_bank(self, bank_index)
schedule_message(self, delay_in_ticks, callback, parameter=None)
set_can_auto_arm(self, can_auto_arm)
set_can_update_controlled_track(self, can_update)
set_controlled_track(self, track)
set_enabled(self, enable)
set_feedback_channels(self, channels)
set_pad_translations(self, pad_translations)
setup(self)
show_message(self, message)
sliced_simpler_changed(self, sliced_simpler)
suggest_map_mode(self, cc_no, channel)
supports_pad_translation(self)
suppressing_rebuild_requests(self)
target_track_changed(self, target_track)
unlock_from_device(self, _)
unregister_disconnectable(self, slot)
update(self)
update_display(self)
update_display_hook(self)

Attributes

  • _ControlSurface__on_instrument_changed = None
  • _ControlSurface__on_is_identified_changed = None
  • _ControlSurface__on_target_track_changed = None
  • _ControlSurface__on_track_arm_changed = None
  • _ControlSurface__on_track_implicit_arm_changed = None
  • _create_device_bank_registry = <ableton.v2.base.util.lazy_attribute object at 0x163c04cf8>
  • _create_device_provider = <ableton.v2.base.util.lazy_attribute object at 0x163c045f8>
  • _create_session_ring = <ableton.v2.base.util.lazy_attribute object at 0x163c04668>
  • handle_undo_steps = False - bool(x) -> bool
  • preferences = <ableton.v2.base.util.lazy_attribute object at 0x11df16048>
  • preferences_key = None

class ControlSurfaceMappingMixin(Disconnectable)

Methods

__init__(self, specification=None, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_add_mode(self, mode_name, mode_spec, modes_component)
_create_component(self, name, component_mappings)
_create_mode_part(self, mode_mappings)
_create_modes_component(self, name, modes_config)
_setup_modes_component(self, name, modes_config)
disconnect(self)
setup(self)

class DeviceBankRegistry(EventObject)

Methods

__init__(self, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_find_device_bank_key(self, device)
add_device_bank_listener(self, slot, identify_sender=False, *a, **k)
compact_registry(self)
device_bank_has_listener(self, slot)
device_bank_listener_count(self)
disconnect(self)
disconnect_disconnectable(self, slot)
find_disconnectable(self, predicate)
get_device_bank(self, device)
has_disconnectable(self, slot)
notify_device_bank(self, *a, **k)
register_disconnectable(self, slot)
register_disconnectables(self, disconnectables)
register_slot(self, *a, **k)
remove_device_bank_listener(self, slot)
set_device_bank(self, device, bank)
unregister_disconnectable(self, slot)

class Display(Disconnectable)

Properties

  • rendered_content
  • state

Methods

__init__(self, specification: ableton.v3.control_surface.display.display_specification.DisplaySpecification, renderable_components, elements, display_state=None)

Initialize self. See help(type(self)) for accurate signature.

clear_content_cache(self)
deferring_render_and_update_display(self)
disconnect(self)
display(self, content)
react(self, event)
render(self)
render_and_update_display(self)

class DrumGroupComponent(PlayableComponent, PitchProvider, Renderable)

Properties

  • application
  • assigned_drum_pads
  • clipboard
  • has_assigned_drum_pads
  • height
  • is_root
  • layer
  • parent
  • song
  • width

Methods

__init__(self, name='Drum_Group', translation_channel=15, set_pad_translations=None, target_track=None, scroll_component_type=None, clipboard_component_type=None, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_add_child(self, component)
_any_modifier_pressed(self)
_button_coordinates_to_pad_index(self, first_note, coordinates)
_button_should_be_enabled(self, button)
_can_set_pad_translations(self)
_color_for_pad(self, pad)
_create_and_set_pad_translations(self)
_create_event_handler(self, property_name)
_do_delete_pad(self, pad, pad_name)
_do_mute_pad(self, pad, pad_name)
_do_select_pad(self, pad, pad_name)
_do_solo_pad(self, pad, pad_name)
_filled_color(pad)
_get_layer_iterable(self)
_get_selected_drum_pad(self)
_grab_all_layers(self)
_init_state_from_controls(self, renderable_state)
_init_state_from_listenable_properties(self, renderable_state)
_internal_on_enabled_changed(self)
_note_translation_for_button(self, button)
_on_matrix_pressed(self, button)
_on_matrix_released(self, button)
_pad_for_button(self, button)
_release_all_layers(self)
_reset_selected_pads(self)
_set_button_control_properties(self, button)
_set_control_pads_from_script(self, takeover_pads)
_set_enabled_recursive(self, enable)
_update_assigned_drum_pads(self)
_update_button_color(self, button)
_update_control_from_script(self)
_update_drum_pad_listeners(self)
_update_is_enabled(self)
_update_led_feedback(self)
_update_note_translations(self)
_update_provided_pitches(self)
_update_selected_drum_pad(self)
add_any_clipboard_has_content_listener(self, slot, identify_sender=False, *a, **k)
add_children(self, *children)
add_clipboard_listener(self, slot, identify_sender=False, *a, **k)
add_control(self, name, control)
add_enabled_listener(self, slot, identify_sender=False, *a, **k)
add_is_polyphonic_listener(self, slot, identify_sender=False, *a, **k)
add_pitches_listener(self, slot, identify_sender=False, *a, **k)
add_pressed_pads_listener(self, slot, identify_sender=False, *a, **k)
any_clipboard_has_content_has_listener(self, slot)
any_clipboard_has_content_listener_count(self)
clipboard_has_listener(self, slot)
clipboard_listener_count(self)
control_base_type(extra_args=None, extra_kws=None, *a, **k)
control_notifications_enabled(self)
create_modifier_buttons(self, *button_names)
delete_pitch(self, drum_pad)
disconnect(self)
disconnect_disconnectable(self, slot)
dispatch_event(self, name: 'str', value)
enabled_has_listener(self, slot)
enabled_listener_count(self)
find_disconnectable(self, predicate)
has_disconnectable(self, slot)
is_enabled(self, explicit=False)
is_polyphonic_has_listener(self, slot)
is_polyphonic_listener_count(self)
notify(self, notification: 'Notification[Callable[[Unpack[NotificationParams]], Optional[str]]]', *a: 'Unpack[NotificationParams]')
notify_any_clipboard_has_content(self, *a, **k)
notify_clipboard(self, *a, **k)
notify_enabled(self, *a, **k)
notify_is_polyphonic(self, *a, **k)
notify_pitches(self, *a, **k)
notify_pressed_pads(self, *a, **k)
on_enabled_changed(self)
pitches_has_listener(self, slot)
pitches_listener_count(self)
pressed_pads_has_listener(self, slot)
pressed_pads_listener_count(self)
quantize_pitch(self, note)
register_clipboard(self)
register_disconnectable(self, slot)
register_disconnectables(self, disconnectables)
register_slot(self, *a, **k)
remove_any_clipboard_has_content_listener(self, slot)
remove_clipboard_listener(self, slot)
remove_enabled_listener(self, slot)
remove_is_polyphonic_listener(self, slot)
remove_pitches_listener(self, slot)
remove_pressed_pads_listener(self, slot)
select_drum_pad(self, drum_pad)
set_copy_button(self, button)
set_drum_group_device(self, drum_group_device)
set_enabled(self, enable)
set_matrix(self, matrix)
suppress_notifications(self)
unregister_disconnectable(self, slot)
update(self)

Attributes

  • _DrumGroupComponent__on_chains_changed = None
  • _DrumGroupComponent__on_color_changed = None
  • _DrumGroupComponent__on_drum_pads_scroll_position_changed = None
  • _DrumGroupComponent__on_mute_changed = None
  • _DrumGroupComponent__on_muted_via_solo_changed = None
  • _DrumGroupComponent__on_selected_drum_pad_changed = None
  • _DrumGroupComponent__on_solo_changed = None
  • _DrumGroupComponent__on_visible_drum_pads_changed = None
  • _clipboard_component_instances = [] - Built-in mutable sequence.
  • _tasks = <ableton.v2.base.util.lazy_attribute object at 0x163a2a898>
  • any_clipboard_has_content = False - bool(x) -> bool
  • canonical_parent = None
  • include_in_top_level_state = True - bool(x) -> bool
  • is_polyphonic = False - bool(x) -> bool
  • matrix = <ableton.v2.base.util.Mixin_MatrixControl_PlayableControl object at 0x163b3ea20>
  • num_layers = 0 - int([x]) -> integer
  • pitches = [36] - Built-in mutable sequence.
  • pressed_pads = [] - Built-in mutable sequence.
  • renderable_state = <ableton.v2.base.util.lazy_attribute object at 0x1639d72e8>

class IdentificationComponent(Component, Renderable)

Properties

  • application
  • is_root
  • layer
  • parent
  • song

Methods

__init__(self, name='Identification', identity_request=(240, 126, 127, 6, 1, 247), identity_request_delay=0.0, identity_response_id_bytes=None, custom_identity_response=None, send_midi=None, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_add_child(self, component)
_create_event_handler(self, property_name)
_get_layer_iterable(self)
_grab_all_layers(self)
_init_state_from_controls(self, renderable_state)
_init_state_from_listenable_properties(self, renderable_state)
_internal_on_enabled_changed(self)
_release_all_layers(self)
_send_identity_request(self)
_set_enabled_recursive(self, enable)
_update_is_enabled(self)
add_any_clipboard_has_content_listener(self, slot, identify_sender=False, *a, **k)
add_children(self, *children)
add_control(self, name, control)
add_enabled_listener(self, slot, identify_sender=False, *a, **k)
add_is_identified_listener(self, slot, identify_sender=False, *a, **k)
add_received_response_bytes_listener(self, slot, identify_sender=False, *a, **k)
any_clipboard_has_content_has_listener(self, slot)
any_clipboard_has_content_listener_count(self)
control_base_type(extra_args=None, extra_kws=None, *a, **k)
control_notifications_enabled(self)
disconnect(self)
disconnect_disconnectable(self, slot)
dispatch_event(self, name: 'str', value)
enabled_has_listener(self, slot)
enabled_listener_count(self)
find_disconnectable(self, predicate)
has_disconnectable(self, slot)
is_enabled(self, explicit=False)
is_identified_has_listener(self, slot)
is_identified_listener_count(self)
notify(self, notification: 'Notification[Callable[[Unpack[NotificationParams]], Optional[str]]]', *a: 'Unpack[NotificationParams]')
notify_any_clipboard_has_content(self, *a, **k)
notify_enabled(self, *a, **k)
notify_is_identified(self, *a, **k)
notify_received_response_bytes(self, *a, **k)
on_enabled_changed(self)
received_response_bytes_has_listener(self, slot)
received_response_bytes_listener_count(self)
register_clipboard(self)
register_disconnectable(self, slot)
register_disconnectables(self, disconnectables)
register_slot(self, *a, **k)
remove_any_clipboard_has_content_listener(self, slot)
remove_enabled_listener(self, slot)
remove_is_identified_listener(self, slot)
remove_received_response_bytes_listener(self, slot)
request_identity(self)
set_enabled(self, enable)
suppress_notifications(self)
unregister_disconnectable(self, slot)
update(self)

Attributes

  • _clipboard_component_instances = [] - Built-in mutable sequence.
  • _tasks = <ableton.v2.base.util.lazy_attribute object at 0x163a2a898>
  • any_clipboard_has_content = False - bool(x) -> bool
  • canonical_parent = None
  • identity_response_control = <ableton.v2.control_surface.control.control.InputControl object at 0x163bfa940>
  • include_in_top_level_state = True - bool(x) -> bool
  • is_identified = False - bool(x) -> bool
  • num_layers = 0 - int([x]) -> integer
  • received_response_bytes = None
  • renderable_state = <ableton.v2.base.util.lazy_attribute object at 0x1639d72e8>

class InstrumentFinderComponent(Component, Renderable)

Properties

  • application
  • is_root
  • layer
  • parent
  • song

Methods

__init__(self, name='Instrument_Finder', target_track=None, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_add_child(self, component)
_create_event_handler(self, property_name)
_get_layer_iterable(self)
_grab_all_layers(self)
_init_state_from_controls(self, renderable_state)
_init_state_from_listenable_properties(self, renderable_state)
_internal_on_enabled_changed(self)
_release_all_layers(self)
_set_enabled_recursive(self, enable)
_update_instruments(self)
_update_is_enabled(self)
_update_listeners(self)
add_any_clipboard_has_content_listener(self, slot, identify_sender=False, *a, **k)
add_any_instrument_listener(self, slot, identify_sender=False, *a, **k)
add_children(self, *children)
add_control(self, name, control)
add_drum_group_listener(self, slot, identify_sender=False, *a, **k)
add_enabled_listener(self, slot, identify_sender=False, *a, **k)
add_instrument_listener(self, slot, identify_sender=False, *a, **k)
add_sliced_simpler_listener(self, slot, identify_sender=False, *a, **k)
any_clipboard_has_content_has_listener(self, slot)
any_clipboard_has_content_listener_count(self)
any_instrument_has_listener(self, slot)
any_instrument_listener_count(self)
control_base_type(extra_args=None, extra_kws=None, *a, **k)
control_notifications_enabled(self)
disconnect(self)
disconnect_disconnectable(self, slot)
dispatch_event(self, name: 'str', value)
drum_group_has_listener(self, slot)
drum_group_listener_count(self)
enabled_has_listener(self, slot)
enabled_listener_count(self)
find_disconnectable(self, predicate)
has_disconnectable(self, slot)
instrument_has_listener(self, slot)
instrument_listener_count(self)
is_enabled(self, explicit=False)
notify(self, notification: 'Notification[Callable[[Unpack[NotificationParams]], Optional[str]]]', *a: 'Unpack[NotificationParams]')
notify_any_clipboard_has_content(self, *a, **k)
notify_any_instrument(self, *a, **k)
notify_drum_group(self, *a, **k)
notify_enabled(self, *a, **k)
notify_instrument(self, *a, **k)
notify_sliced_simpler(self, *a, **k)
on_enabled_changed(self)
register_clipboard(self)
register_disconnectable(self, slot)
register_disconnectables(self, disconnectables)
register_slot(self, *a, **k)
remove_any_clipboard_has_content_listener(self, slot)
remove_any_instrument_listener(self, slot)
remove_drum_group_listener(self, slot)
remove_enabled_listener(self, slot)
remove_instrument_listener(self, slot)
remove_sliced_simpler_listener(self, slot)
set_enabled(self, enable)
sliced_simpler_has_listener(self, slot)
sliced_simpler_listener_count(self)
suppress_notifications(self)
unregister_disconnectable(self, slot)
update(self)

Attributes

  • _InstrumentFinderComponent__on_chains_changed = None
  • _InstrumentFinderComponent__on_devices_changed = None
  • _InstrumentFinderComponent__on_slicing_changed = None
  • _clipboard_component_instances = [] - Built-in mutable sequence.
  • _tasks = <ableton.v2.base.util.lazy_attribute object at 0x163a2a898>
  • any_clipboard_has_content = False - bool(x) -> bool
  • any_instrument = None
  • canonical_parent = None
  • drum_group = None
  • include_in_top_level_state = True - bool(x) -> bool
  • num_layers = 0 - int([x]) -> integer
  • renderable_state = <ableton.v2.base.util.lazy_attribute object at 0x1639d72e8>
  • sliced_simpler = None

class Layer(Layer)

Properties

  • owner
  • priority

Methods

__init__(self, priority=None, **elements)

Initialize self. See help(type(self)) for accurate signature.

_get_control_client(self, client)
get_owner(self)
grab(self, client, *a, **k)
on_lost(self, client)
on_received(self, client, *a, **k)
release(self, client)

class NotifyingControlElement(EventObject, ControlElement)

Properties

  • resource

Methods

ProxiedInterface(outer=None, *a, **k)
__init__(self, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_on_resource_lost(self, client)
_on_resource_received(self, client, *a, **k)
_resource_type(on_received_callback=None, on_lost_callback=None, *a, **k)
add_value_listener(self, slot, identify_sender=False, *a, **k)

Called when the control element receives a MIDI value from the hardware

clear_send_cache(self)
disconnect(self)
disconnect_disconnectable(self, slot)
find_disconnectable(self, predicate)
has_disconnectable(self, slot)
notify_ownership_change(self, client, grabbed, element_ownership_handler=None)
notify_value(self, *a, **k)

Called when the control element receives a MIDI value from the hardware

register_disconnectable(self, slot)
register_disconnectables(self, disconnectables)
register_slot(self, *a, **k)
remove_value_listener(self, slot)

Called when the control element receives a MIDI value from the hardware

reset(self)
reset_state(self)
send_midi(self, message)
unregister_disconnectable(self, slot)
value_has_listener(self, slot)

Called when the control element receives a MIDI value from the hardware

value_listener_count(self)

Called when the control element receives a MIDI value from the hardware

Attributes

  • _has_resource = False - bool(x) -> bool
  • _has_task_group = False - bool(x) -> bool
  • _resource = <ableton.v2.base.util.lazy_attribute object at 0x11b312780>
  • _tasks = <ableton.v2.base.util.lazy_attribute object at 0x1630c8898>
  • canonical_parent = None
  • name = '' - str(object='') -> str
  • optimized_send_midi = True - bool(x) -> bool
  • proxied_interface = <ableton.v2.base.util.lazy_attribute object at 0x11df40710>

class Renderable(CompoundDisconnectable)

Methods

__init__(self, react=None, notifications: 'Optional[Type[Notifications]]' = None, suppress_notifications: 'Optional[Callable]' = None, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_create_event_handler(self, property_name)
_init_state_from_controls(self, renderable_state)
_init_state_from_listenable_properties(self, renderable_state)
control_base_type(extra_args=None, extra_kws=None, *a, **k)
disconnect(self)
disconnect_disconnectable(self, slot)
dispatch_event(self, name: 'str', value)
find_disconnectable(self, predicate)
has_disconnectable(self, slot)
notify(self, notification: 'Notification[Callable[[Unpack[NotificationParams]], Optional[str]]]', *a: 'Unpack[NotificationParams]')
register_disconnectable(self, slot)
register_disconnectables(self, disconnectables)
suppress_notifications(self)
unregister_disconnectable(self, slot)

Attributes

  • include_in_top_level_state = True - bool(x) -> bool
  • renderable_state = <ableton.v2.base.util.lazy_attribute object at 0x1639d72e8>

class SessionComponent(Component, Renderable)

Properties

  • application
  • clipboard
  • is_root
  • layer
  • parent
  • song

Methods

__init__(self, name='Session', session_ring=None, scene_component_type=None, clip_slot_component_type=None, clipboard_component_type=None, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_add_child(self, component)
_create_event_handler(self, property_name)
_end_initialisation(self)
_get_layer_iterable(self)
_grab_all_layers(self)
_init_state_from_controls(self, renderable_state)
_init_state_from_listenable_properties(self, renderable_state)
_internal_on_enabled_changed(self)
_reassign_scenes(self)
_reassign_tracks(self)
_reassign_tracks_and_scenes(self)
_release_all_layers(self)
_set_enabled_recursive(self, enable)
_update_is_enabled(self)
_update_stop_clips_led(self, index)
_update_stop_track_clip_buttons(self)
add_any_clipboard_has_content_listener(self, slot, identify_sender=False, *a, **k)
add_children(self, *children)
add_clipboard_listener(self, slot, identify_sender=False, *a, **k)
add_control(self, name, control)
add_enabled_listener(self, slot, identify_sender=False, *a, **k)
any_clipboard_has_content_has_listener(self, slot)
any_clipboard_has_content_listener_count(self)
clipboard_has_listener(self, slot)
clipboard_listener_count(self)
control_base_type(extra_args=None, extra_kws=None, *a, **k)
control_notifications_enabled(self)
disconnect(self)
disconnect_disconnectable(self, slot)
dispatch_event(self, name: 'str', value)
enabled_has_listener(self, slot)
enabled_listener_count(self)
find_disconnectable(self, predicate)
has_disconnectable(self, slot)
is_enabled(self, explicit=False)
notify(self, notification: 'Notification[Callable[[Unpack[NotificationParams]], Optional[str]]]', *a: 'Unpack[NotificationParams]')
notify_any_clipboard_has_content(self, *a, **k)
notify_clipboard(self, *a, **k)
notify_enabled(self, *a, **k)
on_enabled_changed(self)
register_clipboard(self)
register_disconnectable(self, slot)
register_disconnectables(self, disconnectables)
register_slot(self, *a, **k)
remove_any_clipboard_has_content_listener(self, slot)
remove_clipboard_listener(self, slot)
remove_enabled_listener(self, slot)
scene(self, index)
selected_scene(self)
set_clip_launch_buttons(self, buttons)
set_clip_slot_select_button(self, button)
set_copy_button(self, button)
set_delete_button(self, button)
set_duplicate_button(self, button)
set_enabled(self, enable)
set_modifier_button(self, button, name, clip_slots_only=False)
set_scene_launch_buttons(self, buttons)
set_select_button(self, button)
set_stop_track_clip_buttons(self, buttons)
suppress_notifications(self)
unregister_disconnectable(self, slot)
update(self)

Attributes

  • _SessionComponent__on_fired_slot_index_changed = None
  • _SessionComponent__on_offsets_changed = None
  • _SessionComponent__on_playing_slot_index_changed = None
  • _SessionComponent__on_selected_scene_changed = None
  • _clipboard_component_instances = [] - Built-in mutable sequence.
  • _session_component_ends_initialisation = True - bool(x) -> bool
  • _tasks = <ableton.v2.base.util.lazy_attribute object at 0x163a2a898>
  • any_clipboard_has_content = False - bool(x) -> bool
  • canonical_parent = None
  • include_in_top_level_state = True - bool(x) -> bool
  • num_layers = 0 - int([x]) -> integer
  • renderable_state = <ableton.v2.base.util.lazy_attribute object at 0x1639d72e8>
  • stop_all_clips_button = <ableton.v3.control_surface.controls.button.ButtonControl object at 0x163b81d30>
  • stop_track_clip_buttons = <ableton.v2.base.util.Mixin_ControlList_ButtonControl object at 0x163b81da0>

class SimpleControlSurface(EventObject)

Properties

  • _tasks
  • application
  • components
  • controls
  • root_components
  • song

Methods

__init__(self, c_instance=None, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_component_guard(self)
_disconnect_and_unregister_all_components(self)
_do_receive_midi(self, midi_bytes)
_do_receive_midi_chunk(self, midi_chunk)
_do_send_midi(self, midi_event_bytes)
_flush_midi_messages(self)
_get_tasks(self)
_install_forwarding(self, midi_map_handle, control, forwarding_type=1)
_install_mapping(self, midi_map_handle, control, parameter, feedback_delay, feedback_map)
_merge_midi_data(recipient, data, midi_data)
_pre_serialize(self)
_receive_midi_data(recipient, data)
_register_component(self, component)
_register_control(self, control)
_send_midi(self, midi_event_bytes, optimized=True)
_set_suppress_rebuild_requests(self, suppress_requests)
_translate_message(self, type, from_identifier, from_channel, to_identifier, to_channel)
accumulating_midi_messages(self)
add_disconnect_listener(self, slot, identify_sender=False, *a, **k)
add_received_midi_listener(self, slot, identify_sender=False, *a, **k)
build_midi_map(self, midi_map_handle)
call_listeners(self, listeners)
can_lock_to_devices(self)
component_guard(self)
connect_script_instances(self, instanciated_scripts)
disconnect(self)
disconnect_disconnectable(self, slot)
disconnect_has_listener(self, slot)
disconnect_listener_count(self)
find_disconnectable(self, predicate)
get_component_by_name(self, component_name)
get_control_by_name(self, control_name)
get_recipient_for_nonsysex_midi_message(self, midi_bytes)
get_registry_entry_for_sysex_midi_message(self, midi_bytes)
has_disconnectable(self, slot)
notify_disconnect(self, *a, **k)
notify_received_midi(self, *a, **k)
port_settings_changed(self)
process_midi_bytes(self, midi_bytes, midi_processor)
receive_midi(self, midi_bytes)
receive_midi_chunk(self, midi_chunk)
received_midi_has_listener(self, slot)
received_midi_listener_count(self)
refresh_state(self)
register_disconnectable(self, slot)
register_disconnectables(self, disconnectables)
register_slot(self, *a, **k)
release_controlled_track(self)
remove_disconnect_listener(self, slot)
remove_received_midi_listener(self, slot)
request_rebuild_midi_map(self)
schedule_message(self, delay_in_ticks, callback, parameter=None)
set_controlled_track(self, track)
set_enabled(self, enable)
set_feedback_channels(self, channels)
set_pad_translations(self, pad_translations)
show_message(self, message)
suggest_map_mode(self, cc_no, channel)
supports_pad_translation(self)
suppressing_rebuild_requests(self)
unregister_disconnectable(self, slot)
update(self)
update_display(self)
update_display_hook(self)

Attributes

  • handle_undo_steps = False - bool(x) -> bool
  • preferences = <ableton.v2.base.util.lazy_attribute object at 0x11df16048>
  • preferences_key = None

class SlicedSimplerComponent(PlayableComponent, PageComponent, Pageable, PitchProvider, Renderable)

Properties

  • application
  • height
  • is_root
  • layer
  • parent
  • position
  • song
  • width

Methods

__init__(self, name='Sliced_Simpler', translation_channel=14, target_track=None, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_add_child(self, component)
_any_modifier_pressed(self)
_button_should_be_enabled(self, button)
_coordinate_to_slice_index(self, coordinate)
_create_event_handler(self, property_name)
_delete_slice_at_index(self, index)
_get_layer_iterable(self)
_grab_all_layers(self)
_init_state_from_controls(self, renderable_state)
_init_state_from_listenable_properties(self, renderable_state)
_internal_on_enabled_changed(self)
_note_translation_for_button(self, button)
_on_matrix_pressed(self, button)
_on_matrix_released(self, button)
_release_all_layers(self)
_reset_selected_pads(self)
_scroll_page(self, sign)
_scroll_position(self, delta)
_select_slice_at_index(self, index)
_selected_slice(self)
_set_button_control_properties(self, button)
_set_control_pads_from_script(self, takeover_pads)
_set_enabled_recursive(self, enable)
_should_show_next_slice(self, index, length_of_slices)
_simpler_setup_is_valid(self)
_slices(self)
_update_button_color(self, button)
_update_control_from_script(self)
_update_is_enabled(self)
_update_led_feedback(self)
_update_note_translations(self)
_update_provided_pitches(self)
add_any_clipboard_has_content_listener(self, slot, identify_sender=False, *a, **k)
add_children(self, *children)
add_control(self, name, control)
add_enabled_listener(self, slot, identify_sender=False, *a, **k)
add_is_polyphonic_listener(self, slot, identify_sender=False, *a, **k)
add_pitches_listener(self, slot, identify_sender=False, *a, **k)
add_position_listener(self, slot, identify_sender=False, *a, **k)
add_pressed_pads_listener(self, slot, identify_sender=False, *a, **k)
any_clipboard_has_content_has_listener(self, slot)
any_clipboard_has_content_listener_count(self)
can_scroll_down(self)
can_scroll_page_down(self)
can_scroll_page_up(self)
can_scroll_up(self)
control_base_type(extra_args=None, extra_kws=None, *a, **k)
control_notifications_enabled(self)
create_modifier_buttons(self, *button_names)
disconnect(self)
disconnect_disconnectable(self, slot)
dispatch_event(self, name: 'str', value)
enabled_has_listener(self, slot)
enabled_listener_count(self)
find_disconnectable(self, predicate)
has_disconnectable(self, slot)
is_enabled(self, explicit=False)
is_polyphonic_has_listener(self, slot)
is_polyphonic_listener_count(self)
notify(self, notification: 'Notification[Callable[[Unpack[NotificationParams]], Optional[str]]]', *a: 'Unpack[NotificationParams]')
notify_any_clipboard_has_content(self, *a, **k)
notify_enabled(self, *a, **k)
notify_is_polyphonic(self, *a, **k)
notify_pitches(self, *a, **k)
notify_position(self, *a, **k)
notify_pressed_pads(self, *a, **k)
on_enabled_changed(self)
pitches_has_listener(self, slot)
pitches_listener_count(self)
position_has_listener(self, slot)
position_listener_count(self)
pressed_pads_has_listener(self, slot)
pressed_pads_listener_count(self)
register_clipboard(self)
register_disconnectable(self, slot)
register_disconnectables(self, disconnectables)
register_slot(self, *a, **k)
remove_any_clipboard_has_content_listener(self, slot)
remove_enabled_listener(self, slot)
remove_is_polyphonic_listener(self, slot)
remove_pitches_listener(self, slot)
remove_position_listener(self, slot)
remove_pressed_pads_listener(self, slot)
scroll_down(self)
scroll_page_down(self)
scroll_page_up(self)
scroll_up(self)
set_enabled(self, enable)
set_matrix(self, matrix)
set_scroll_down_button(self, button)
set_scroll_encoder(self, encoder)
set_scroll_page_down_button(self, button)
set_scroll_page_encoder(self, encoder)
set_scroll_page_up_button(self, button)
set_scroll_up_button(self, button)
set_simpler_device(self, simpler_device)
suppress_notifications(self)
unregister_disconnectable(self, slot)
update(self)

Attributes

  • _SlicedSimplerComponent__on_file_changed = None
  • _SlicedSimplerComponent__on_pad_slicing_changed = None
  • _SlicedSimplerComponent__on_selected_slice_changed = None
  • _SlicedSimplerComponent__on_slices_changed = None
  • _SlicedSimplerComponent__on_slicing_style_changed = None
  • _SlicedSimplerComponent__on_track_color_changed = None
  • _clipboard_component_instances = [] - Built-in mutable sequence.
  • _tasks = <ableton.v2.base.util.lazy_attribute object at 0x163a2a898>
  • any_clipboard_has_content = False - bool(x) -> bool
  • canonical_parent = None
  • include_in_top_level_state = True - bool(x) -> bool
  • is_polyphonic = False - bool(x) -> bool
  • matrix = <ableton.v2.base.util.Mixin_MatrixControl_PlayableControl object at 0x163b3ea20>
  • num_layers = 0 - int([x]) -> integer
  • page_length = 4 - int([x]) -> integer
  • page_offset = 0 - int([x]) -> integer
  • pitches = [36] - Built-in mutable sequence.
  • position_count = 16 - int([x]) -> integer
  • pressed_pads = [] - Built-in mutable sequence.
  • renderable_state = <ableton.v2.base.util.lazy_attribute object at 0x1639d72e8>

class State(EventObject)

Methods

__init__(self)

Initialize self. See help(type(self)) for accurate signature.

add_notification_visible_listener(self, slot, identify_sender=False, *a, **k)
as_dict(instance, state_filters=StateFilters(key_filter=<function StateFilters.<lambda> at 0x1639d2d08>, value_filter=<function State.<lambda> at 0x1639d5378>))
disconnect(self)
disconnect_disconnectable(self, slot)
find_disconnectable(self, predicate)
get_repr_data(self)
has_disconnectable(self, slot)
notification_visible_has_listener(self, slot)
notification_visible_listener_count(self)
notify_notification_visible(self, *a, **k)
register_disconnectable(self, slot)
register_disconnectables(self, disconnectables)
register_slot(self, *a, **k)
remove_notification_visible_listener(self, slot)
set_delayed(self, attr_name: str, value, delay_time: Union[float, NoneType])
trigger_timers(self, from_test=False)
unregister_disconnectable(self, slot)

Attributes

  • notification_visible = False - bool(x) -> bool
  • repr_filters = StateFilters(key_filter=<function StateFilters.<lambda> at 0x1639d2d08>, value_filter=<function StateFilters.<lambda> at 0x1639d2d90>) - StateFilters(key_filter: Callable = at 0x1639d2d08>, value_filter: Callable = at 0x1639d2d90>)

class ViewControlComponent(Component, Renderable)

Properties

  • application
  • is_root
  • layer
  • parent
  • song

Methods

__init__(self, name='View_Control', session_ring=None, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_add_child(self, component)
_create_event_handler(self, property_name)
_get_layer_iterable(self)
_grab_all_layers(self)
_init_state_from_controls(self, renderable_state)
_init_state_from_listenable_properties(self, renderable_state)
_internal_on_enabled_changed(self)
_release_all_layers(self)
_set_enabled_recursive(self, enable)
_update_is_enabled(self)
_update_scene_scrollers(self)
_update_track_scrollers(self)
add_any_clipboard_has_content_listener(self, slot, identify_sender=False, *a, **k)
add_children(self, *children)
add_control(self, name, control)
add_enabled_listener(self, slot, identify_sender=False, *a, **k)
add_scene_selection_scrolled_listener(self, slot, identify_sender=False, *a, **k)
add_track_selection_scrolled_listener(self, slot, identify_sender=False, *a, **k)
any_clipboard_has_content_has_listener(self, slot)
any_clipboard_has_content_listener_count(self)
control_base_type(extra_args=None, extra_kws=None, *a, **k)
control_notifications_enabled(self)
disconnect(self)
disconnect_disconnectable(self, slot)
dispatch_event(self, name: 'str', value)
enabled_has_listener(self, slot)
enabled_listener_count(self)
find_disconnectable(self, predicate)
has_disconnectable(self, slot)
is_enabled(self, explicit=False)
notify(self, notification: 'Notification[Callable[[Unpack[NotificationParams]], Optional[str]]]', *a: 'Unpack[NotificationParams]')
notify_any_clipboard_has_content(self, *a, **k)
notify_enabled(self, *a, **k)
notify_scene_selection_scrolled(self, *a, **k)
notify_track_selection_scrolled(self, *a, **k)
on_enabled_changed(self)
register_clipboard(self)
register_disconnectable(self, slot)
register_disconnectables(self, disconnectables)
register_slot(self, *a, **k)
remove_any_clipboard_has_content_listener(self, slot)
remove_enabled_listener(self, slot)
remove_scene_selection_scrolled_listener(self, slot)
remove_track_selection_scrolled_listener(self, slot)
scene_selection_scrolled_has_listener(self, slot)
scene_selection_scrolled_listener_count(self)
set_enabled(self, enable)
set_next_scene_button(self, button)
set_next_scene_page_button(self, button)
set_next_track_button(self, button)
set_next_track_page_button(self, button)
set_prev_scene_button(self, button)
set_prev_scene_page_button(self, button)
set_prev_track_button(self, button)
set_prev_track_page_button(self, button)
set_scene_encoder(self, control)
set_scene_page_encoder(self, control)
set_track_encoder(self, control)
set_track_page_encoder(self, control)
suppress_notifications(self)
track_selection_scrolled_has_listener(self, slot)
track_selection_scrolled_listener_count(self)
unregister_disconnectable(self, slot)
update(self)

Attributes

  • _clipboard_component_instances = [] - Built-in mutable sequence.
  • _tasks = <ableton.v2.base.util.lazy_attribute object at 0x163a2a898>
  • any_clipboard_has_content = False - bool(x) -> bool
  • canonical_parent = None
  • include_in_top_level_state = True - bool(x) -> bool
  • num_layers = 0 - int([x]) -> integer
  • renderable_state = <ableton.v2.base.util.lazy_attribute object at 0x1639d72e8>

class lazy_attribute

Methods

__init__(self, func, name=None)

Initialize self. See help(type(self)) for accurate signature.

class nullcontext(AbstractContextManager)

Methods

__init__(self, enter_result=None)

Initialize self. See help(type(self)) for accurate signature.

Attributes

  • _abc_impl = <_abc_data object at 0x11b05f720>