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

Calculate phaser modulation phase based on time #1110

Merged
merged 3 commits into from
May 26, 2024

Conversation

daslyfe
Copy link
Collaborator

@daslyfe daslyfe commented May 23, 2024

phaser no longer has to rely on orbits and free running lfos, because the phase of the modulator is calculated based on the time. the phaser should sound exactly the same as before

$: note("{f g g c d a a#}%8")
  .gain(1).s("sawtooth").lpenv(4).lpf(200).fanchor(0).lpdecay(.2).phaser(2)
  .attack(0)

$: note("{f g c d a a#}%1".sub(12))
  .gain(1).s("supersaw").lpenv(4).lpf(200).fanchor(0).lpdecay(3).phaser(3)
  .attack(0)

@daslyfe daslyfe requested a review from felixroos May 23, 2024 04:02
@felixroos
Copy link
Collaborator

very cool! i guess the technique here is similar to #1095 ?
haven't read the code in detail but I see you made this one work without touching the scheduler or the superdough call signature, so does this mean we could do the same with #1095 ?

@daslyfe
Copy link
Collaborator Author

daslyfe commented May 23, 2024

Yes since the modulation speed is based on time and not cycle no changes to the scheduler were necessary it’s the same technique

@daslyfe
Copy link
Collaborator Author

daslyfe commented May 26, 2024

gonna go ahead and merge this so I can work on new modulations

@daslyfe daslyfe merged commit bf73610 into tidalcycles:main May 26, 2024
1 check passed
@felixroos
Copy link
Collaborator

gonna go ahead and merge this so I can work on new modulations

👍

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.

2 participants