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

Apply a VST effect on a WAV file #11

Open
josephernest opened this issue Aug 30, 2018 · 7 comments
Open

Apply a VST effect on a WAV file #11

josephernest opened this issue Aug 30, 2018 · 7 comments

Comments

@josephernest
Copy link

josephernest commented Aug 30, 2018

Hello,
Congrats for this library! How would this be possible in Python:

  • load WAV file (can be done easily with scipy.io.wavfile's read(...))
  • load VST effect plugin myeffect.dll with preset = "Preset 1"
  • apply the effect to the WAV file
  • save the output file (can be done easily with scipy.io.wavfile's write(...))

Is this possible with RenderMan?
Do you have an example like:

from scipy.io import wavfile
import renderman as rm
engine = rm.RenderEngine(44100, 512, 512)
engine.loadplugin('myeffect.so')  # or 'myVST.dll' on Windows
sr, x = wavfile.read('test.wav')  # open the input file
y = engine.applyplugin(x)    ### how to do this?
wavfile.write('out.wav', sr, y) # write the output
@josephernest
Copy link
Author

Hi @fedden would you have a code example for this?

@faroit
Copy link

faroit commented Mar 10, 2020

@josephernest did you find a way to do this?

Maybe also ping @ethman

@fedden
Copy link
Owner

fedden commented Jun 5, 2020

Hey all, please accept my apologies for the silence on your problems. This is a project that I wrote whilst at university and I now don't have time to support in a professional capacity, but I appreciate it's a tool that is of use to you.

I'm wondering if any of you would like to become collaborators so you can put this repository in a state that works for you?

@faroit
Copy link

faroit commented Jun 5, 2020

Thanks for the update. Will have a look this summer.

@DBraun
Copy link

DBraun commented Aug 7, 2020

@fedden @faroit @ethman @drscotthawley
I've been working on a RenderMan reboot with some more features. It works like the directed-acyclic-graphs in https://github.com/magenta/ddsp

Please examine the script here https://gist.github.com/DBraun/1165e9b7538c9b8bd967231f311a902c
That code actually works if you replace the paths to real things.

I'm hoping to get one of your feedbacks (most importantly Leon's). I can share the private repo with any of you. With Leon's permission maybe I can release it under a new name, listing him and others in the credits? RenderMan is a conflict with Pixar as others have pointed out.

Cheers and thanks.

@ethman
Copy link

ethman commented Aug 8, 2020

Hey @DBraun, this looks really cool! Thanks so much for figuring this out. I'd be interested in testing this out! Let me know how to get access.

Considering the lack of movement on this original project I assume that @fedden is not super interested in exploring it further (but I'd be happy to be wrong about this). That being said, I'd be very much in favor of reviving development of this project, either here or elsewhere. I have a few changes of my own that I haven't incorporated yet, some of which mirror yours so it'd be nice to share work.

@DBraun
Copy link

DBraun commented Aug 8, 2020

@ethman great! I will share the repo with you Monday. These are some more goals I’ve noted in a todo list:

Features
• Move MIDI to each processor rather than globally on the engine
• Get a drum track processor.
• A sampler processor like Ableton’s Sampler
• Have MIDI CC animations to change parameters of synths/FX/processors over time. What buffer size is acceptable for how frequently parameters are updated?
• Create Add Processor to add N signals.
• Add a dry/wet to most processors
• Side chain compression
• Gain and panning processor
• Chorus processor with JUCE
• Reverb processor with JUCE
• Delay processor with JUCE
• Get basic Wavetable synth programmed with JUCE
• Is feedback via sends with delay possible? The graph wouldn’t be acyclic anymore.

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

No branches or pull requests

5 participants