Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deal with tempo #25

Closed
Theodeus opened this issue Sep 11, 2015 · 7 comments
Closed

Deal with tempo #25

Theodeus opened this issue Sep 11, 2015 · 7 comments

Comments

@Theodeus
Copy link
Owner

Some effects depend on BPM. Need to figure out how to deal with this in a consistent way. A global BPM for Tuna (pass to constructor etc.) or set per node?

@echo66
Copy link

echo66 commented Sep 15, 2015

Greetins, Theodeus! Take a look at https://github.com/echo66/bpm-timeline.js .

@Theodeus
Copy link
Owner Author

Hey!

Spontaneously, it seems like bpm-timeline might be more than we'd need in Tuna, though I'll definitely keep it in mind as we explore what the requirements we have are!

@echo66
Copy link

echo66 commented Sep 16, 2015

In order to integrate tuna in applications that deal with dynamic tempo, besides my implementariam, you have Tone.Transport, in Tone.js. But BPMTimeline allows a seamless mapping between beats and seconds, unlike Tone.js (i.e.: Tone.js tempo is controlled, by what it seems to be, step functions with the smallest time measure as the tick).

@errozero
Copy link

A global bpm for tuna sounds good, maybe it could have a default bpm if one is not passed in.
Then when changing the tempo in your app, you could also update the tuna object, or call a method with the new tempo which would re-calculate delay times etc.

@positonic
Copy link

Some effects depend on BPM. Need to figure out how to deal with this in a consistent way. A global BPM for Tuna (pass to constructor etc.) or set per node?

Why not both as errozero suggests. Pass it in the constructor, and then a method (function) to update it, which would re-calculate existing effects?

@Theodeus
Copy link
Owner Author

Yeah, that sounds like a simple solution!

Do you guys think there should be a separate BPM based delay, or should all delay types be "syncable" to the BPM?

@errozero
Copy link

@Theodeus I don't think there needs to be a separate BPM based delay if there is a way to resync to a new global tempo. Maybe the existing delay fx could have a toggle to state if they should sync or not.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants