Tree @main (Download .tar.gz)
abletonlink
Lightweight Lua wrapper of the Ableton Link C API (abl_link).
API
The module follows the C API very closely.
See the abl_link.h for comments for the various methods.
The module table has three members:
- abletonlink._VERSION: a string like- "1.0.0"
- abletonlink.create(number bpm): creates an- abl_linkinstance
- abletonlink.create_session_state(): creates an- abl_link_session_stateinstance
abl_link instances have the following methods:
- link:is_enabled() -> bool
- link:enable(bool?)(defaults to true)
- link:is_start_stop_sync_enabled() -> bool
- link:enable_start_stop_sync(bool?)(defaults to true)
- link:num_peers() -> int
- link:clock_micros() -> int
- link:capture_audio_session_state(session_state output)
- link:commit_audio_session_state(session_state input)
- link:capture_app_session_state(session_state output)
- link:commit_app_session_state(session_state input)
- link:destroy(): Destroys this instance. Calling any other method on a destroyed instance causes an error. This is automatically called in __gc.
- link:set_*_callbackare not currently implemented.
abl_link_session_state instances have the following methods:
- session_state:tempo() -> number
- session_state:set_tempo(number bpm, int at_time)
- session_state:beat_at_time(int time, number quantum) -> number
- session_state:phase_at_time(int time, number quantum) -> number
- session_state:time_at_beat(number beat, number quantum) -> int
- session_state:request_beat_at_time(number beat, int time, number quantum)
- session_state:force_beat_at_time(number beat, int time, number quantum)
- session_state:set_is_playing(bool, int at_time)
- session_state:is_playing() -> bool
- session_state:time_for_is_playing() -> int
- session_state:request_beat_at_start_playing_time(number beat, number quantum)
- session_state:set_is_playing_and_request_beat_at_time(bool, int time, number beat, number quantum)
- session_state:destroy(): Destroys this instance. Calling any other method on a destroyed instance causes an error. This is automatically called in __gc.