Skip to content

Clip

Represents a clip in Live, either an audio or MIDI clip living in an Arrangement track or a Session view slot. The Clip class drives clip playback, looping, warp markers, MIDI note editing, and automation envelopes.

This class represents a Clip in Live. It can be either an Audio Clip or a MIDI Clip, in an Arrangement or the Session, depending on the Track (Slot) it lives in. From Live’s runtime docstring.

Inherited from LomObject

Get the canonical parent of the Clip. From Live’s runtime docstring.

Const access to a list of all automation envelopes for this clip. From Live’s runtime docstring.

Available for AudioClips only. Get/Set the available warp modes, that can be used. From Live’s runtime docstring.

Get/set access to the color of the Clip (RGB). From Live’s runtime docstring.

Get/set access to the color index of the Clip. From Live’s runtime docstring.

Get/Set the Clips end marker pos in beats/seconds (unit depends on warping). From Live’s runtime docstring.

Get the clip’s end time. From Live’s runtime docstring.

Get the path of the file represented by the Audio Clip. From Live’s runtime docstring.

Available for AudioClips only. Read/write access to the gain setting of the Audio Clip From Live’s runtime docstring.

Return a string with the gain as dB value From Live’s runtime docstring.

groove: Groove | NoneProbed asNonehigh confidence
  • docstring “Get the groove associated with this clip.”
  • M4L confirms Groove return type and nullability when no groove is assigned.
Section titled “groove: Groove | NoneProbed asNonehigh confidencedocstring “Get the groove associated with this clip.”M4L confirms Groove return type and nullability when no groove is assigned.”

Get the groove associated with this clip. From Live’s runtime docstring.

Will notify if the clip gets his first envelope or the last envelope is removed. From Live’s runtime docstring.

Returns true if a groove is associated with this clip. From Live’s runtime docstring.

return true if this Clip is an Arrangement Clip. A Clip can be either a Session or Arrangement Clip. From Live’s runtime docstring.

Return true if this Clip is an Audio Clip. A Clip can be either an Audioclip or a MIDI Clip. From Live’s runtime docstring.

return true if this Clip is a MIDI Clip. A Clip can be either an Audioclip or a MIDI Clip. From Live’s runtime docstring.

returns true if the Clip is recording overdubs From Live’s runtime docstring.

Get/Set if this Clip is currently playing. If the Clips trigger mode is set to a quantization value, the Clip will not start playing immediately. If you need to know wether the Clip was triggered, use the is_triggered property. From Live’s runtime docstring.

returns true if the Clip was triggered to record or is recording. From Live’s runtime docstring.

return true if this Clip is a Session Clip. A Clip can be either a Session or Arrangement Clip. From Live’s runtime docstring.

return true if this Clip is a Take Lane Clip. A Take Lane Clip is also always an Arrangement Clip. From Live’s runtime docstring.

returns true if the Clip was triggered or is playing. From Live’s runtime docstring.

launch_mode: LaunchModeProbed asinthigh confidence
  • schema LaunchMode enum in the same module (Clip); property name is a direct snake-case match.
Section titled “launch_mode: LaunchModeProbed asinthigh confidenceschema LaunchMode enum in the same module (Clip); property name is a direct snake-case match.”

Get/Set access to the launch mode setting of the Clip. From Live’s runtime docstring.

launch_quantization: ClipLaunchQuantizationProbed asinthigh confidence
  • schema two enums match “launch quantization”: ClipLaunchQuantization in Clip and Quantization in Song. The Clip-specific one is the right fit — its members include q_global (defer to song-level) and clip-specific values; Song.Quantization is the global setting.
Section titled “launch_quantization: ClipLaunchQuantizationProbed asinthigh confidenceschema two enums match “launch quantization”: ClipLaunchQuantization in Clip and Quantization in Song. The Clip-specific one is the right fit — its members include q_global (defer to song-level) and clip-specific values; Song.Quantization is the global setting.”

Get/Set access to the launch quantization setting of the Clip. From Live’s runtime docstring.

Get/Set access to the legato setting of the Clip From Live’s runtime docstring.

Get to the Clips length in beats/seconds (unit depends on warping). From Live’s runtime docstring.

Get/Set the loop end pos of this Clip in beats/seconds (unit depends on warping). From Live’s runtime docstring.

Get/Set the Clips loopstart pos in beats/seconds (unit depends on warping). From Live’s runtime docstring.

Get/Set the Clips ‘loop is enabled’ flag .Only Warped Audio Clips or MIDI Clip can be looped. From Live’s runtime docstring.

Read/write access to the mute state of the Clip. From Live’s runtime docstring.

Read/write access to the name of the Clip. From Live’s runtime docstring.

Available for AudioClips only. Read/write access to the pitch (in halftones) setting of the Audio Clip, ranging from -48 to 48 From Live’s runtime docstring.

Available for AudioClips only. Read/write access to the pitch fine setting of the Audio Clip, ranging from -500 to 500 From Live’s runtime docstring.

Constant access to the current playing position of the clip. The returned value is the position in beats for midi and warped audio clips, or in seconds for unwarped audio clips. Stopped clips will return 0. From Live’s runtime docstring.

Get/Set the loop position of this Clip in beats/seconds (unit depends on warping). From Live’s runtime docstring.

Available for AudioClips only. Read/write access to the Ram mode setting of the Audio Clip From Live’s runtime docstring.

Available for AudioClips only. Get the sample length in sample time or -1 if there is no sample available. From Live’s runtime docstring.

Available for AudioClips only. Read-only access to the Clip’s sampling rate. From Live’s runtime docstring.

Get/Set access to the global signature denominator of the Clip. From Live’s runtime docstring.

Get/Set access to the global signature numerator of the Clip. From Live’s runtime docstring.

Get/Set the Clips start marker pos in beats/seconds (unit depends on warping). From Live’s runtime docstring.

Get the clip’s start time offset. For Session View clips, this is the time the clip was started. For Arrangement View clips, this is the offset within the arrangement. From Live’s runtime docstring.

Get/Set access to the velocity to volume amount of the Clip. From Live’s runtime docstring.

Get the view of the Clip. From Live’s runtime docstring.

Available for AudioClips only. Get the warp markers for this audio clip. From Live’s runtime docstring.

warp_mode: WarpModeProbed asinthigh confidence
  • schema WarpMode enum in the same module (Clip); property name is a direct snake-case match.
Section titled “warp_mode: WarpModeProbed asinthigh confidenceschema WarpMode enum in the same module (Clip); property name is a direct snake-case match.”

Available for AudioClips only. Get/Set the warp mode for this audio clip. From Live’s runtime docstring.

Available for AudioClips only. Get/Set if this Clip is timestreched. From Live’s runtime docstring.

returns true if the Clip will record on being started. From Live’s runtime docstring.

add_loop_jump_listener · remove_loop_jump_listener · loop_jump_has_listener

Fires when playback jumps at a loop boundary (loop end → loop start).

add_notes_listener · remove_notes_listener · notes_has_listener

Fires when the clip’s MIDI notes change. Programmatic triggers include add_new_notes, apply_note_modifications, replace_selected_notes, set_notes, remove_notes, remove_notes_extended, remove_notes_by_id, quantize, quantize_pitch, crop, duplicate_loop, duplicate_notes_by_id, and duplicate_region. Notification only — read the new notes via get_notes_extended / get_all_notes_extended after the callback.

add_playing_status_listener · remove_playing_status_listener · playing_status_has_listener

Fires when the clip’s transport state changes (triggered, playing, recording, stopped). Programmatic triggers include fire and stop; the Session-View clip-launch action also fires it. Notification only — read the new state via Clip.is_playing / is_recording / is_triggered.

  • notes: Iterable[MidiNoteSpecification]Probed asobjecthigh confidence
    • C++ signature boost::python::api::object (generic) — the binding doesn’t enforce a specific vector class at the C++ level.
    • sister method apply_note_modifications strictly takes vector<NClipApi::TNoteInfo>; this one is looser.
    • docstring “Expects a Python iterable holding a number of Live.Clip.MidiNoteSpecification objects.”
    • corpus both tuples and lists work — tuples ((note,) at pushbase/note_editor_component.py:611, ableton/v3/control_surface/components/note_editor.py:367) and lists (note_specifications at _MxDCore/MxDCore.py:820+).

Expects a Python iterable holding a number of Live.Clip.MidiNoteSpecification objects. The objects will be used to construct new notes in the clip. From Live’s runtime docstring.

  • warp_marker: WarpMarkerProbed asobjecthigh confidence
    • M4L external/max-for-live-docs/9.0/clip.md: “Adds the specified warp marker, if possible.”
    • C++ signature add_warp_marker(..., boost::python::api::object) — generic at the C++ level.
    • corpus runtime expects a WarpMarker instance — the only constructible class in Live.Clip matching the “warp marker” semantics; Clip.warp_markers returns a WarpMarkerVector of these.

Available for AudioClips only. Adds the specified warp marker, if possible. From Live’s runtime docstring.

Expects a list of notes as returned from get_notes_extended. The content of the list will be used to modify existing notes in the clip, based on matching note IDs. This function should be used when modifying existing notes, e.g. changing the velocity or start time. The function ensures that per-note events attached to the modified notes are preserved. This is NOT the case when replacing notes via a combination of remove_notes_extended and add_new_notes. The given list can be a subset of the notes in the clip, but it must not contain any notes that are not present in the clip. From Live’s runtime docstring.

Returns

Return the envelope for the given parameter.Returns None if the envelope doesn’t exist.Returns None for Arrangement clips.Returns None for parameters from a different track. From Live’s runtime docstring.

  • beat_time: float
Returns
float

Available for AudioClips only. Converts the given beat time to sample time. Raises an error if the sample is not warped. From Live’s runtime docstring.

Clears all envelopes for this clip. From Live’s runtime docstring.

Clears the envelope of this clips given parameter. From Live’s runtime docstring.

Returns

Creates an envelope for a given parameter and returns it.This should only be used if the envelope doesn’t exist.Raises an error if the envelope can’t be created. From Live’s runtime docstring.

Crops the clip. The region that is cropped depends on whether the clip is looped or not. If looped, the region outside of the loop is removed. If not looped, the region outside the start and end markers is removed. From Live’s runtime docstring.

De-selects all notes present in the clip. From Live’s runtime docstring.

Make the loop two times longer and duplicates notes and envelopes. Duplicates the clip start/end range if the clip is not looped. From Live’s runtime docstring.

  • note_ids: Iterable[int]Probed asobjecthigh confidence
    • C++ signature boost::python::api::object (generic).
    • sister method same shape as the other *_notes_by_id methods.
    • docstring “list of note IDs”.
    • corpus iterables work (_MxDCore/MxDCore.py:874+ duplicates note IDs from a JSON dict via keyword call).
  • destination_time: float | NoneProbed asobject | Nonehigh confidence
    • M4L external/max-for-live-docs/9.0/clip.md says destination_time (optional) [float/int].
    • docstring None is the default (“if not provided, new notes will be inserted after the last selected note”).
    • schema float | None covers the common case — Python’s int → float conversion handles the int form.
    = None
  • transposition_amount: int = 0

Duplicate all notes matching the given note IDs. If the optional destination_time is not provided, new notes will be inserted after the last selected note. This behavior can be observed when duplicating notes in the Live GUI. If the transposition_amount is specified, the notes in the region will be transposed by the number of semitones. Raises an error on audio clips. From Live’s runtime docstring.

  • region_start: float
  • region_length: float
  • destination_time: float
  • pitch: int = -1
  • transposition_amount: int = 0

Duplicate the notes in the specified region to the destination_time. Only notes of the specified pitch are duplicated or all if pitch is -1. If the transposition_amount is not 0, the notes in the region will be transposed by the transpose_amount of semitones.Raises an error on audio clips. From Live’s runtime docstring.

(Re)Start playing this Clip. From Live’s runtime docstring.

Returns a list of all MIDI notes from the clip, regardless of their position relative to the start and end markers/loop start and loop end. Each note is represented by a Live.Clip.MidiNote object. The returned list can be modified freely, but modifications will not be reflected in the MIDI clip until apply_note_modifications is called. From Live’s runtime docstring.

  • note_ids: Iterable[int]Probed asobjecthigh confidence
    • C++ signature boost::python::api::object (generic, runtime-checked).
    • corpus _MxDCore/MxDCore.py:864 invokes lom_object.get_notes_by_id(id_to_note_mapping.keys()) — passes a dict_keys view (Iterable[int]).
    • docstring “Return a list of MIDI notes matching the given note IDs.”

Return a list of MIDI notes matching the given note IDs. From Live’s runtime docstring.

  • from_pitch: int
  • pitch_span: int
  • from_time: float
  • time_span: float

Returns a list of MIDI notes from the given pitch and time range. Each note is represented by a Live.Clip.MidiNote object. The returned list can be modified freely, but modifications will not be reflected in the MIDI clip until apply_note_modifications is called. From Live’s runtime docstring.

Returns a list of all MIDI notes from the clip that are currently selected. Each note is represented by a Live.Clip.MidiNote object. The returned list can be modified freely, but modifications will not be reflected in the MIDI clip until apply_note_modifications is called. From Live’s runtime docstring.

  • beats: float

Jump forward or backward by the specified relative amount in beats. Will do nothing, if the Clip is not playing. From Live’s runtime docstring.

  • marker_beat_time: float
  • beat_time_distance: float

Available for AudioClips only. Moves the specified warp marker by the specified beat time amount, if possible. From Live’s runtime docstring.

  • midi_pitch: int
Returns
str

Return a human-readable name for the given MIDI note number. Takes into account the scale and tonal spelling settings of the clip, as well as the current tuning system (if any) From Live’s runtime docstring.

  • quantization_grid: GridQuantization | intProbed asinthigh confidence
    • schema enum-arg convention: the M4L name quantization_grid establishes the GridQuantization context.
    • sister method Clip.View.grid_quantization property (typed GridQuantization) confirms the enum context, and Clip.quantize_pitch uses the same GridQuantization | int annotation.
  • amount: float

Quantize all notes in a clip or align warp markers. From Live’s runtime docstring.

  • note: int
  • quantization_grid: GridQuantization | intProbed asinthigh confidence
    • C++ signature void quantize_pitch(TPyHandle<AClip>, int, int, float) — int at the binding level.
    • schema enum-arg convention: M4L names the arg quantization_grid, indicating the GridQuantization context.
    • sister method Clip.quantize uses the same GridQuantization | int annotation.
  • amount: float

Quantize all the notes of a given pitch. Raises an error on audio clips. From Live’s runtime docstring.

  • note_ids: Iterable[int]Probed asobjecthigh confidence
    • C++ signature boost::python::api::object (generic, runtime-checked).
    • corpus iterables work via _MxDCore/MxDCore.py _object_perform_operation_on_notes_by_id_handler, which passes the function_parameters tuple straight through to the binding.

Delete all notes matching the given note IDs. This function should NOT be used to implement modification of existing notes (i.e. in combination with add_new_notes), as that leads to loss of per-note events. apply_note_modifications must be used instead for modifying existing notes. From Live’s runtime docstring.

  • from_pitch: int
  • pitch_span: int
  • from_time: float
  • time_span: float

Delete all notes starting in the given pitch and time range. This function should NOT be used to implement modification of existing notes (i.e. in combination with add_new_notes), as that leads to loss of per-note events. apply_note_modifications must be used instead for modifying existing notes. From Live’s runtime docstring.

  • beat_time: float

Available for AudioClips only. Removes the specified warp marker, if possible. From Live’s runtime docstring.

  • sample_time: float
Returns
float

Available for AudioClips only. Converts the given sample time to beat time. Raises an error if the sample is not warped. From Live’s runtime docstring.

  • scrub_position: float

Scrubs inside a clip. scrub_position defines the position in beats that the scrub will start from. The scrub will continue until stop_scrub is called. Global quantization applies to the scrub’s position and length. From Live’s runtime docstring.

  • seconds: float
Returns
float

Available for AudioClips only. Converts the given seconds to sample time. Raises an error if the sample is warped. From Live’s runtime docstring.

Selects all notes present in the clip. From Live’s runtime docstring.

  • note_ids: Iterable[int]Probed asobjecthigh confidence
    • sister method same shape as remove_notes_by_id (Iterable of note IDs).
    • C++ signature boost::python::api::object (generic) — binding doesn’t enforce a specific container.
    • corpus iterables work via the shared _MxDCore handler.

Selects all notes matching the given note IDs. From Live’s runtime docstring.

  • state: bool

Set the clip’s fire button state directly. Supports all launch modes. From Live’s runtime docstring.

Stop playing this Clip. From Live’s runtime docstring.

Stops the current scrub. From Live’s runtime docstring.

  • Clip.View — Representing the view aspects of a Clip.
Deprecated
  • from_time: float
  • from_pitch: int
  • time_span: float
  • pitch_span: int
Returns
tuple[tuple[int, float, float, float, bool], …]Probed astuplehigh confidence
  • sister method format mirror of get_selected_notes (same shape) per docstring.
  • M4L external/max-for-live-docs/9.0/clip.md describes the tuple-of-tuples shape.

Returns a tuple of tuples where each inner tuple represents a note starting in the given pitch- and time range. The inner tuple contains pitch, time, duration, velocity, and mute state. From Live’s runtime docstring.

Returns
tuple[tuple[int, float, float, float, bool], …]Probed astuplehigh confidence
  • corpus _MxDCore handler unpacks the same tuple-of-tuples format as get_notes.
  • docstring confirms the mirror with get_notes.

Returns a tuple of tuples where each inner tuple represents a selected note. The inner tuple contains pitch, time, duration, velocity, and mute state. From Live’s runtime docstring.

  • from_time: float
  • from_pitch: int
  • time_span: float
  • pitch_span: int

Delete all notes starting in the given pitch- and time range. From Live’s runtime docstring.

  • notes: tuple[tuple[int, float, float, float, bool], …]Probed astuplehigh confidence
    • M4L external/max-for-live-docs/9.0/clip.md:345 confirms tuple-of-tuples format matching get_selected_notes: (pitch, time, duration, velocity, mute) per note.

Called with a tuple of tuples where each inner tuple represents a note in the same format as returned by get_selected_notes. The notes described that way will then be used to replace the old selection. From Live’s runtime docstring.

  • notes: tuple[tuple[int, float, float, float, bool], …]Probed astuplehigh confidence
    • docstring “tuple of tuples where each inner tuple represents a note”.
    • M4L external/max-for-live-docs/9.0/clip.md:327 confirms tuple-of-tuples format matching get_notes: (pitch, time, duration, velocity, mute) per note.

Called with a tuple of tuples where each inner tuple represents a note in the same format as returned by get_notes. The notes described that way will then be added to the clip. From Live’s runtime docstring.

Returned by 11 members elsewhere in the LOM

An object representing a MIDI Note From Live’s runtime docstring.

A numerical ID that’s unique within the originating clip of the note. Not to be used directly, but important for other API calls, namely apply_note_modifications. From Live’s runtime docstring.

An object specifying the data for creating a MIDI note. To be used with the add_new_notes function. From Live’s runtime docstring.

A container for holding MIDI notes from Live. From Live’s runtime docstring.

Returned by 4 members elsewhere in the LOM

This class represents a WarpMarker type. From Live’s runtime docstring.

A WarpMarker’s beat time. From Live’s runtime docstring.

A WarpMarker’s sample time. From Live’s runtime docstring.

A container for returning warp markers from Live. From Live’s runtime docstring.

Returned by 2 members elsewhere in the LOM

Representing the view aspects of a Clip. From Live’s runtime docstring.

Inherited from LomObject

Get the canonical parent of the clip view. From Live’s runtime docstring.

Get/set wether the grid is showing in triplet mode. From Live’s runtime docstring.

Get/set clip grid quantization resolution. From Live’s runtime docstring.

Hide the envelope view. From Live’s runtime docstring.

Select the given device parameter in the envelope view. From Live’s runtime docstring.

Show the envelope view. From Live’s runtime docstring.

Show the entire loop in the detail view. From Live’s runtime docstring.

Returned by 1 member elsewhere in the LOM
q_global0
q_none1
q_8_bars2
q_4_bars3
q_2_bars4
q_bar5
q_half6
q_half_triplet7
q_quarter8
q_quarter_triplet9
q_eighth10
q_eighth_triplet11
q_sixteenth12
q_sixteenth_triplet13
q_thirtysecond14
no_grid0
g_8_bars1
g_4_bars2
g_2_bars3
g_bar4
g_half5
g_quarter6
g_eighth7
g_sixteenth8
g_thirtysecond9
count10
trigger0
gate1
toggle2
repeat3
beats0
complex4
complex_pro6
repitch3
rex5
texture2
tones1
count7

This is an independent reference site. Not affiliated with, endorsed by, or sponsored by Ableton AG. “Ableton”, “Live”, “Push”, and related marks are trademarks of Ableton AG.