Skip to content

Add warp markers, extended notes, and time conversion to clip handler#198

Open
bimsonz wants to merge 1 commit intoideoforms:masterfrom
bimsonz:feat/enhanced-clips
Open

Add warp markers, extended notes, and time conversion to clip handler#198
bimsonz wants to merge 1 commit intoideoforms:masterfrom
bimsonz:feat/enhanced-clips

Conversation

@bimsonz
Copy link
Copy Markdown

@bimsonz bimsonz commented Apr 6, 2026

Summary

  • Warp marker endpoints (get/add/move/remove) using Live 12 WarpMarker API
  • Extended 8-field note format with probability, velocity deviation, and release velocity
  • Beats-to-samples time conversion via beat_to_sample_time/sample_to_beat_time
  • New clip methods: crop, quantize, select_all_notes, deselect_all_notes
  • New read-only properties: is_arrangement_clip, sample_rate, signature_numerator/denominator

Details

Warp markers: Uses Live.Clip.WarpMarker(sample_time, beat_time) constructor and clip.add_warp_marker() for Live 12 compatibility. Shadow marker is excluded from get responses.

Extended notes: get/notes_extended returns 8 fields per note (pitch, start, duration, velocity, mute, probability, velocity_deviation, release_velocity). add/notes_extended passes all fields via MidiNoteSpecification constructor kwargs with fallback for older Live versions.

Time conversion: convert/time endpoint converts between beats and samples using clip's native conversion methods.

Files changed

  • clip.py — all changes in a single file (120 insertions, 9 deletions)

Warp markers: get/add/move/remove endpoints using Live 12 WarpMarker
API (clip.add_warp_marker with WarpMarker object constructor).

Extended notes: 8-field format adding probability, velocity_deviation,
and release_velocity via get/notes_extended and add/notes_extended
endpoints. Uses MidiNoteSpecification constructor kwargs.

Time conversion: beats-to-samples and samples-to-beats via
clip.beat_to_sample_time/sample_to_beat_time.

New methods: crop, quantize, select_all_notes, deselect_all_notes.
New read-only properties: is_arrangement_clip, sample_rate,
signature_numerator, signature_denominator.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant