-
Notifications
You must be signed in to change notification settings - Fork 1
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
Porting to gwion. #1
Comments
Let's create a repository of Gwion sample code under the Gwion project, that doesn't necessarily have to port all the ChucK code I have here, and can (hopefully) have other examples as well. Maybe I only created the "base" case for my additive synthesis code because ChucK doesn't have abstract classes; I suggest we get rid of the base case and make As for the fluidsynth directory, that is code I wrote to take advantage of the hooks I wrote for ChucK's fluidsynth chugin to support fluidsynth's tuning API. Do I understand correctly that Gwion uses plugins both for basic functionality and the sort of hooks into external libraries that ChucK uses chugins for? If so, maybe we can write a Gwion fluidsynth plugin. |
I'm not quite sure why you want those classes abstract, could you explain it to me? |
The subclassed versions, The only reason that the base class contains a concrete implementation (a simple saw wave) is because ChucK doesn't have abstract classes, meaning I had to put something in there. The design would be much more consistent if the saw wave (if indeed we wanted to implement a saw wave with additive synthesis) was implemented as another set of subclasses, and the base classes were abstract. I hope that makes sense. |
I forked this repo and worked a bit on it.
Could you create a Gwion branch so that I can make a PR?
It works on my Machine 😄
And it should also on yours with the latest Gwion from the master branch.
I'm pretty happy it uncovered a few things in Gwion's implementation:
All is fixed now 🍾
I tried to modify as little code as possible, just using
const
where applicable, and the newfinal
keyword where requested in the comments.I have not looked at the other directory yet, I might try it at some point, hoping it'll be as interesting as this one.
Could the LinuxSampler plugin suit your needs?
I don't know how to report that, but it seems (looking at
top
andperf stat
results), that this is more efficient than the chuck version 👍The text was updated successfully, but these errors were encountered: