-
Notifications
You must be signed in to change notification settings - Fork 34
Open
Labels
enhancementNew feature or requestNew feature or requesthelp wantedExtra attention is neededExtra attention is needed
Description
In order to synchronise multiple players, you can make use of the LinkClock
that uses the Ableton Link clock API. It has been implemented for quite a while in Sardine but has never been fully integrated. The branch link-start-stop-sync
now centralizes the efforts to implement the clock more deeply. There are some low-hanging fruits that would make the life easier for most users:
- It should be possible to react to start/stop messages: https://github.com/thegamecracks/link-python/blob/6c21436afbc4ccdf46281213c603aa5aa3f15522/example/LinkHut.py#L14. This would make it easier to use Sardine as a follower for DAWs and other musical software.
- We might be able to share transport (bar/beat/phase) in order to lock with other applications: https://github.com/Ableton/link/blob/master/include/ableton/Link.hpp
This should be enough to make Sardine a battle-ready tool. Integration and compliance is easy to test with any Link-enabled product. There is a test plan that details how Link should be implemented to be compliant with other applications:
TEMPO
- TEMPO-1: Tempo changes should be transmitted between connected apps.
- TEMPO-2: Opening an app with Link enabled should not change the tempo of an existing Link - session.
- TEMPO-3: When connected, loading a new document should not change the Link session tempo.
- TEMPO-4: Tempo range handling.
- TEMPO-5: Enabling Link does not change app's tempo if there is no Link session to join.
Beat Time
- BEATTIME-1: Enabling Link does not change app's beat time if there is no Link session to join.
- BEATTIME-2: App's beat time does not change if another participant joins its session.
Start Stop States
- STARTSTOPSTATE-1: Listening to start/stop commands from other peers.
- STARTSTOPSTATE-2: Sending start/stop commands to other peers.
Audio Engine
- AUDIOENGINE-1: Correct alignment of app audio with shared session
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requesthelp wantedExtra attention is neededExtra attention is needed