Skip to content

ableton.v3.control_surface.components.drum_group (runtime)

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

Module constants

  • BASE_DRUM_GROUP_NOTE = 36
  • DEFAULT_DRUM_TRANSLATION_CHANNEL = 15

Functions

cast(typ, val)

clamp(val, minv, maxv)

depends(**dependencies)

first(seq)

listens(event_path, *a, **k)

listens_group(event_name, *a, **k)

liveobj_changed(obj, other)

liveobj_valid(obj)

Classes

class ClipboardComponent(Component, Renderable)

Properties

  • application
  • is_root
  • layer
  • parent
  • song

Methods

__init__(self, name='Clipboard', *a, **k)

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

_add_child(self, component)
_create_event_handler(self, property_name)
_do_copy(self, obj)
_do_paste(self, obj)
_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)
_is_source_valid(self)
_release_all_layers(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_has_content_listener(self, slot, identify_sender=False, *a, **k)
add_is_copying_listener(self, slot, identify_sender=False, *a, **k)
any_clipboard_has_content_has_listener(self, slot)
any_clipboard_has_content_listener_count(self)
clear(self, notify=False)
control_base_type(extra_args=None, extra_kws=None, *a, **k)
control_notifications_enabled(self)
copy(self, obj)
copy_or_paste(self, obj)
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_content_has_listener(self, slot)
has_content_listener_count(self)
has_disconnectable(self, slot)
is_copying_has_listener(self, slot)
is_copying_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_enabled(self, *a, **k)
notify_has_content(self, *a, **k)
notify_is_copying(self, *a, **k)
on_enabled_changed(self)
paste(self, obj)
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_has_content_listener(self, slot)
remove_is_copying_listener(self, slot)
set_copy_button(self, button)
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
  • copy_button = <ableton.v3.control_surface.controls.button.ButtonControl object at 0x163a6b0b8>
  • has_content = False - bool(x) -> bool
  • include_in_top_level_state = True - bool(x) -> bool
  • is_copying = False - bool(x) -> bool
  • num_layers = 0 - int([x]) -> integer
  • renderable_state = <ableton.v2.base.util.lazy_attribute object at 0x1639d72e8>

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 DrumGroupScrollComponent(PageComponent, Pageable, Renderable)

Properties

  • application
  • is_root
  • layer
  • parent
  • position
  • song

Methods

__init__(self, name='Drum_Group_Scroll', *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)
_scroll_page(self, sign)
_scroll_position(self, delta)
_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_position_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)
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_position(self, *a, **k)
on_enabled_changed(self)
position_has_listener(self, slot)
position_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_position_listener(self, slot)
scroll_down(self)
scroll_page_down(self)
scroll_page_up(self)
scroll_up(self)
set_drum_group_device(self, drum_group_device)
set_enabled(self, enable)
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)
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
  • include_in_top_level_state = True - bool(x) -> bool
  • num_layers = 0 - int([x]) -> integer
  • page_length = 4 - int([x]) -> integer
  • page_offset = 1 - int([x]) -> integer
  • position_count = 32 - int([x]) -> integer
  • renderable_state = <ableton.v2.base.util.lazy_attribute object at 0x1639d72e8>

class DrumPadClipboardComponent(ClipboardComponent)

Properties

  • application
  • is_root
  • layer
  • parent
  • song

Methods

__init__(self, *a, **k)

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

_add_child(self, component)
_create_event_handler(self, property_name)
_do_copy(self, obj)
_do_paste(self, obj)
_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)
_is_source_valid(self)
_release_all_layers(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_has_content_listener(self, slot, identify_sender=False, *a, **k)
add_is_copying_listener(self, slot, identify_sender=False, *a, **k)
any_clipboard_has_content_has_listener(self, slot)
any_clipboard_has_content_listener_count(self)
clear(self, notify=False)
control_base_type(extra_args=None, extra_kws=None, *a, **k)
control_notifications_enabled(self)
copy(self, obj)
copy_or_paste(self, obj)
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_content_has_listener(self, slot)
has_content_listener_count(self)
has_disconnectable(self, slot)
is_copying_has_listener(self, slot)
is_copying_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_enabled(self, *a, **k)
notify_has_content(self, *a, **k)
notify_is_copying(self, *a, **k)
on_enabled_changed(self)
paste(self, obj)
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_has_content_listener(self, slot)
remove_is_copying_listener(self, slot)
set_copy_button(self, button)
set_drum_group_device(self, drum_group)
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
  • copy_button = <ableton.v3.control_surface.controls.button.ButtonControl object at 0x163a6b0b8>
  • has_content = False - bool(x) -> bool
  • include_in_top_level_state = True - bool(x) -> bool
  • is_copying = False - bool(x) -> bool
  • num_layers = 0 - int([x]) -> integer
  • renderable_state = <ableton.v2.base.util.lazy_attribute object at 0x1639d72e8>

class LiveObjSkinEntry(tuple)

LiveObjSkinEntry(name, liveobj)

Properties

  • liveobj - Alias for field number 1
  • name - Alias for field number 0

Methods

__init__(self, /, *args, **kwargs)

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

_asdict(self)
_make(iterable)

Make a new LiveObjSkinEntry object from a sequence or iterable

_replace(_self, **kwds)

Return a new LiveObjSkinEntry object replacing specified fields with new values

count(self, value, /)

Return number of occurrences of value.

index(self, value, start=0, stop=9223372036854775807, /)

Return first index of value.

Raises ValueError if the value is not present.

Attributes

  • _field_defaults = {} - dict() -> new empty dictionary
  • _field_types = OrderedDict([('name', <class 'str'>), ('liveobj', typing.Any)]) - Dictionary that remembers insertion order
  • _fields = ('name', 'liveobj') - Built-in immutable sequence.
  • _fields_defaults = {} - dict() -> new empty dictionary

class PitchProvider(EventObject)

Methods

__init__(self, *a, **k)

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

add_is_polyphonic_listener(self, slot, identify_sender=False, *a, **k)
add_pitches_listener(self, slot, identify_sender=False, *a, **k)
disconnect(self)
disconnect_disconnectable(self, slot)
find_disconnectable(self, predicate)
has_disconnectable(self, slot)
is_polyphonic_has_listener(self, slot)
is_polyphonic_listener_count(self)
notify_is_polyphonic(self, *a, **k)
notify_pitches(self, *a, **k)
pitches_has_listener(self, slot)
pitches_listener_count(self)
register_disconnectable(self, slot)
register_disconnectables(self, disconnectables)
register_slot(self, *a, **k)
remove_is_polyphonic_listener(self, slot)
remove_pitches_listener(self, slot)
unregister_disconnectable(self, slot)

Attributes

  • is_polyphonic = False - bool(x) -> bool
  • pitches = [36] - Built-in mutable sequence.

class PlayableComponent(Component)

Properties

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

Methods

__init__(self, name='Playable', matrix_always_listenable=False, *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)
_get_layer_iterable(self)
_grab_all_layers(self)
_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)
_set_button_control_properties(self, button)
_set_control_pads_from_script(self, takeover_pads)
_set_enabled_recursive(self, enable)
_update_button_color(self, button)
_update_control_from_script(self)
_update_is_enabled(self)
_update_led_feedback(self)
_update_note_translations(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_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)
control_notifications_enabled(self)
create_modifier_buttons(self, *button_names)
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)
notify_pressed_pads(self, *a, **k)
on_enabled_changed(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_pressed_pads_listener(self, slot)
set_enabled(self, enable)
set_matrix(self, matrix)
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
  • matrix = <ableton.v2.base.util.Mixin_MatrixControl_PlayableControl object at 0x163b3ea20>
  • num_layers = 0 - int([x]) -> integer
  • pressed_pads = [] - Built-in mutable sequence.

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 listenable_property(listenable_property_base, property)

Property attribute.

fget function to be used for getting an attribute value fset function to be used for setting an attribute value fdel function to be used for del'ing an attribute doc docstring

Typical use is to define a managed attribute x:

class C(object): def getx(self): return self._x def setx(self, value): self._x = value def delx(self): del self._x x = property(getx, setx, delx, "I'm the 'x' property.")

Decorators make defining new properties or modifying existing ones easy:

class C(object): @property def x(self): "I am the 'x' property." return self._x @x.setter def x(self, value): self._x = value @x.deleter def x(self): del self._x

Methods

__init__(self, /, *args, **kwargs)

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

deleter(...)

Descriptor to change the deleter on a property.

getter(...)

Descriptor to change the getter on a property.

managed(default_value)
set_property_name(self, name)
setter(...)

Descriptor to change the setter on a property.

Attributes

  • fdel = <member 'fdel' of 'property' objects>
  • fget = <member 'fget' of 'property' objects>
  • fset = <member 'fset' of 'property' objects>