dekstop / vcvrackplugins_dekstop

VCV Rack plugins: WAV recorder, 8-channel gate step sequencer, 3-channel tri-state step sequencer.
MIT License
45 stars 12 forks source link

[INCOMPLETE] Port to v0.6 #17

Open alikins opened 6 years ago

alikins commented 6 years ago

This is a start of a port to v0.6 API

Based on https://github.com/VCVRack/community/issues/269 and https://github.com/VCVRack/Rack/issues/258

The main part left is the handling of the widgets templates in Recorder.cpp.

alikins commented 6 years ago

Seems to compile and run now, though it requires libsamplerate and dev headers installed.

cschol commented 6 years ago

@alikins Yeah, it is using the old samplerate library, which is no longer present in v0.6. Should probably be updated to use the new SampleRateConverter class.

ghost commented 6 years ago

I looked into the template and libsamplerate issues. Got a clean compile (no warnings or errors) on https://github.com/hwpfeil/vcvrack/vcvrackplugins_dekstop in Windows 10 mingw64. Everything works as advertised. I need to fix the Recorder graphics (record button and input jacks out of place) and build/test on Linux. They function, I recorded a sample wav, the graphics buttons and jacks are all at the top of the panel. Will build and test on Linux.

ghost commented 6 years ago

Built and tested on Linux. Fixed Recorder2/8 panel positions. Ready for testing on Mac. Apologies to the author. We can explore replacing the explicit Recorder code with templates after the 0.6 rollout, when we have more time.

dekstop commented 6 years ago

Thank you so much for all your help with this! I had a quiet moment to attempt an OSX build, and am getting compile errors about a missing samplerate.h -- so yes, it seems it will be necessary to migrate to SampleRateConverter. @hwpfeil, how did you manage to compile this without it?

(I'm not yet familiar with the API changes made after 0.5.x)

dekstop commented 6 years ago

Ah, I see, it's in your own fork -- see https://github.com/hwpfeil/vcvrack/commits/master/vcvrackplugins_dekstop for the changes.

I'm not familiar with github multi-author pull requests, but if we can manage to merge these changes into the current pull request and it compiles and runs fine then I'd be more than happy to merge this.

ghost commented 6 years ago

include "dsp/samplerate.hpp"?

You only used libsamplerate for "src_float_to_short_array" which I built into Recorder8 (it was the first file that make fed to g++). It's all yours!

cschol commented 6 years ago

Fundamental now has an example of a plugin that pulls in libsamplerate. This should help to get this PR moving forward without needing to replace libsamplerate.