Comments (5)
Thanks for the detailed report!
Having to set oLatency
once is expected. Then you are configuring the time it takes from SuperDirt playing, to the sound coming out from the speakers. After that, I would expect everything to keep being synced up.
I had a quick look in https://github.com/tidalcycles/Tidal/blob/main/src/Sound/Tidal/Stream.hs and could confirm that nudge is in terms of seconds and does not scale with cps. But this is good! We would expect the latency from SuperDirt to be constant.
The strange thing is that there seems to be a new but stable new latency each time you use Transport? I can't see how that could happen from Tidal's perspective.
If you have time, going through the Link Test Plan would be really good. I have done it, but maybe I was sloppy.
from tidal.
Ok, using rotL
can help with adjusting the location within beat if needed. (Note: djay / rekordbox do not appear to attempt to sync within the bar at all, that is left to you to cue)
But otherwise still experiencing that the latency amount is not stable, either when changing tempos, or when using Transport.
Thanks for the Link Test Plan link - I'll check that out.
Perhaps we need our own test for Tidal x Link, e.g. a .tidal
file with a bunch of different types tempo changes (including continuous changes as in https://tidalcycles.org/docs/reference/tempo/#cps), and then a means of recording and analysing the pulse.
from tidal.
Based on the Link Test Plan, I seem to be struggling with:
- TEMPO-1: Tempo changes should be transmitted between connected apps.
- AUDIOENGINE-1: Correct alignment of app audio with shared session
from tidal.
The tests sound like a good idea!
Here is LinkHut which they mention in the Test Plan, since it's a bit hard to find: https://github.com/Ableton/link/tree/master/examples/linkhut
from tidal.
(while on my mind): it would be great to have getLinkClients
that would display some information about current connected clients.
This could be used for status monitoring, see e.g. #1040
from tidal.
Related Issues (20)
- Aliases / renaming of some conditionals
- Cycle status monitor
- Executable name conflict of "linktest"
- midinote problem with xfade / xfadeIn
- Cannot build on ghc 9.8.1 HOT 3
- Transitions are broken HOT 1
- Reimplementing event highlighting in tidal-listener HOT 2
- Arbitrary Tempo Callback HOT 1
- Add dagoarp HOT 1
- bug with 'bite' and '@' in mininotation HOT 8
- `tidal-listener` builds in Nix are failing on 1.9 HOT 7
- Link not working on recent OSX versions HOT 7
- Link enabled state should be mutable HOT 1
- Possible edit for the docs - MIDI HOT 1
- randrun is non-random at time 0
- euclidOff is different from euclidOffBool
- (surprising/inconsistent) handling of begin/end attributes in slice
- timeToRands produces constant sequence if seed is 0 => replace tidal's random mechanism with System.Random?
- more efficient implementation of runMarkov
- `tidal-parse` not resolving in Stack HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tidal.