adbrant / arableinstruments Goto Github PK
View Code? Open in Web Editor NEWThis project forked from vcvrack/audibleinstruments
License: BSD 3-Clause "New" or "Revised" License
This project forked from vcvrack/audibleinstruments
License: BSD 3-Clause "New" or "Revised" License
Not a c programmer, not sure if I'm just missing something obvious?
robb@skippy:~/src/Rack/plugins/ArableInstruments$ make
g++ -fshort-enums -DTEST -I./eurorack -Wno-unused-local-typedefs -fPIC -I../../include -I../../dep/include -MMD -g -O3 -march=nocona -ffast-math -fno-finite-math-only -Wall -Wextra -Wno-unused-parameter -DARCH_LIN -Wsuggest-override -std=c++11 -c -o build/src/AudibleInstruments.cpp.o src/AudibleInstruments.cpp
In file included from src/AudibleInstruments.cpp:1:0:
src/AudibleInstruments.hpp:15:8: warning: ‘virtual rack::Menu* BraidsWidget::createContextMenu()’ can be marked override [-Wsuggest-override]
Menu *createContextMenu();
^
src/AudibleInstruments.hpp:20:8: warning: ‘virtual rack::Menu* ElementsWidget::createContextMenu()’ can be marked override [-Wsuggest-override]
Menu *createContextMenu();
^
src/AudibleInstruments.hpp:77:8: warning: ‘virtual rack::Menu* FramesWidget::createContextMenu()’ can be marked override [-Wsuggest-override]
Menu *createContextMenu();
^
src/AudibleInstruments.cpp: In function ‘void init(rack::Plugin*)’:
src/AudibleInstruments.cpp:9:10: error: ‘struct rack::Plugin’ has no member named ‘name’
plugin->name = "Arable Instruments";
^
src/AudibleInstruments.cpp:10:10: error: ‘struct rack::Plugin’ has no member named ‘homepageUrl’
plugin->homepageUrl = "https://github.com/adbrant/ArableInstruments";
^
src/AudibleInstruments.cpp:12:72: error: no matching function for call to ‘createModel(rack::Plugin*&, const char [5], const char [27])’
createModel<CloudsWidget>(plugin, "Joni", "Joni - Texture Synthesizer");
^
In file included from src/AudibleInstruments.hpp:1:0,
from src/AudibleInstruments.cpp:1:
../../include/rack.hpp:21:8: note: candidate: template<class TModuleWidget> rack::Model* rack::createModel(std::__cxx11::string, std::__cxx11::string, std::__cxx11::string, std::__cxx11::string)
Model *createModel(std::string manufacturerSlug, std::string manufacturerName, std::string slug, std::string name) {
^
../../include/rack.hpp:21:8: note: template argument deduction/substitution failed:
src/AudibleInstruments.cpp:12:72: note: cannot convert ‘plugin’ (type ‘rack::Plugin*’) to type ‘std::__cxx11::string {aka std::__cxx11::basic_string<char>}’
createModel<CloudsWidget>(plugin, "Joni", "Joni - Texture Synthesizer");
^
../../compile.mk:53: recipe for target 'build/src/AudibleInstruments.cpp.o' failed
make: *** [build/src/AudibleInstruments.cpp.o] Error 1
robb@skippy:~/src/Rack/plugins/ArableInstruments$
The src/Clouds.cpp
file does not have a separate slug for ParableInstruments
. Is this intentional?
Hello any plans to update for version 1.0?
Hey Alex,
So, I was running integration tests for v2
with the current state of the plugin and there are a few issues:
CustomWidget
that don't work anymore in v2
.Unless you are planning on working on this more yourself, I would like to fix this and bring the plugin to v2
standards in terms of code and graphics handling. This requires the graphics and text to be converted to vector format (SVG). I am happy to take a stab at it.
Let me know. Thanks!
Christoph
g++ -std=c++11 -Wsuggest-override -DTEST -DPARASITES -I./parasites -Wno-unused-local-typedefs -fPIC -I../../include -I../../dep/include -MMD -MP -g -O3 -march=nocona -funsafe-math-optimizations -Wall -Wextra -Wno-unused-parameter -DARCH_WIN -D_USE_MATH_DEFINES -c -o build/parasites/clouds/dsp/granular_processor.cc.o parasites/clouds/dsp/granular_processor.cc parasites/clouds/dsp/granular_processor.cc: In member function 'void clouds::GranularProcessor::ProcessGranular(clouds::FloatFrame*, clouds::FloatFrame*, size_t)': parasites/clouds/dsp/granular_processor.cc:181:9: error: narrowing conversion of '0.0f' from 'float' to 'bool' [-Wnarrowing] 181 | }; | ^ parasites/clouds/dsp/granular_processor.cc:181:9: error: narrowing conversion of '0.0f' from 'float' to 'bool' [-Wnarrowing] parasites/clouds/dsp/granular_processor.cc:181:9: warning: missing initializer for member 'clouds::Parameters::granular' [-Wmissing-field-initializers] parasites/clouds/dsp/granular_processor.cc:181:9: warning: missing initializer for member 'clouds::Parameters::spectral' [-Wmissing-field-initializers] make: *** [../../compile.mk:66: build/parasites/clouds/dsp/granular_processor.cc.o] Error 1
In file included from src/AudibleInstruments.cpp:1:0:
src/AudibleInstruments.hpp:15:8: warning: ‘virtual rack::Menu* BraidsWidget::createContextMenu()’ can be marked override [-Wsuggest-override]
Menu createContextMenu();
^
src/AudibleInstruments.hpp:20:8: warning: ‘virtual rack::Menu ElementsWidget::createContextMenu()’ can be marked override [-Wsuggest-override]
Menu createContextMenu();
^
src/AudibleInstruments.hpp:77:8: warning: ‘virtual rack::Menu FramesWidget::createContextMenu()’ can be marked override [-Wsuggest-override]
Menu createContextMenu();
^
src/AudibleInstruments.cpp: In function ‘void init(rack::Plugin)’:
src/AudibleInstruments.cpp:16:10: error: ‘struct rack::Plugin’ has no member named ‘name’
plugin->name = "Arable Instruments";
^
src/AudibleInstruments.cpp:17:10: error: ‘struct rack::Plugin’ has no member named ‘homepageUrl’
plugin->homepageUrl = "https://github.com/adbrant/ArableInstruments";
^
src/AudibleInstruments.cpp:19:72: error: no matching function for call to ‘createModel(rack::Plugin*&, const char [5], const char [27])’
createModel(plugin, "Joni", "Joni - Texture Synthesizer");
^
In file included from src/AudibleInstruments.hpp:1:0,
from src/AudibleInstruments.cpp:1:
../../include/rack.hpp:22:8: note: candidate: template<class TModuleWidget, class ... Tags> rack::Model* rack::createModel(std::__cxx11::string, std::__cxx11::string, std::__cxx11::string, Tags ...)
Model createModel(std::string manufacturer, std::string slug, std::string name, Tags... tags) {
^
../../include/rack.hpp:22:8: note: template argument deduction/substitution failed:
src/AudibleInstruments.cpp:19:72: note: cannot convert ‘plugin’ (type ‘rack::Plugin’) to type ‘std::__cxx11::string {aka std::__cxx11::basic_string}’
createModel(plugin, "Joni", "Joni - Texture Synthesizer");
^
In file included from src/Clouds.cpp:2:0:
src/AudibleInstruments.hpp:15:8: warning: ‘virtual rack::Menu* BraidsWidget::createContextMenu()’ can be marked override [-Wsuggest-override]
Menu createContextMenu();
^
src/AudibleInstruments.hpp:20:8: warning: ‘virtual rack::Menu ElementsWidget::createContextMenu()’ can be marked override [-Wsuggest-override]
Menu createContextMenu();
^
src/AudibleInstruments.hpp:77:8: warning: ‘virtual rack::Menu FramesWidget::createContextMenu()’ can be marked override [-Wsuggest-override]
Menu createContextMenu();
^
../../compile.mk:53: recipe for target 'build/src/AudibleInstruments.cpp.o' failed
make: *** [build/src/AudibleInstruments.cpp.o] Error 1
make: *** Waiting for unfinished jobs....
src/Clouds.cpp:77:8: warning: ‘virtual void Clouds::step()’ can be marked override [-Wsuggest-override]
void step();
^
src/Clouds.cpp: In member function ‘virtual void Clouds::step()’:
src/Clouds.cpp:166:35: error: ‘gSampleRate’ was not declared in this scope
inputSrc.setRatio(32000.0 / gSampleRate);
^
src/Clouds.cpp:242:26: error: ‘gSampleRate’ was not declared in this scope
outputSrc.setRatio(gSampleRate / 32000.0);
^
src/Clouds.cpp: In constructor ‘CloudsWidget::CloudsWidget()’:
src/Clouds.cpp:320:12: error: ‘createValueLight’ was not declared in this scope
addChild(createValueLight<SmallLight>(Vec(68+5, 52+4), &module->freezeLight));
^
src/Clouds.cpp:320:40: error: ‘GreenValueLight’ was not declared in this scope
addChild(createValueLight<SmallLight>(Vec(68+5, 52+4), &module->freezeLight));
^
src/Clouds.cpp:320:40: error: template argument 1 is invalid
src/Clouds.cpp: At global scope:
src/Clouds.cpp:333:8: error: ‘void CloudsModeItem::onAction()’ marked ‘override’, but does not override
void onAction() override {
^
src/Clouds.cpp:346:8: error: ‘void CloudsMonoItem::onAction()’ marked ‘override’, but does not override
void onAction() override {
^
src/Clouds.cpp:359:8: error: ‘void CloudsLofiItem::onAction()’ marked ‘override’, but does not override
void onAction() override {
^
src/Clouds.cpp:372:8: error: ‘void CloudsBufferItem::onAction()’ marked ‘override’, but does not override
void onAction() override {
^
src/Clouds.cpp: In member function ‘virtual rack::Menu CloudsWidget::createContextMenu()’:
src/Clouds.cpp:387:41: warning: ‘void rack::Menu::pushChild(rack::Widget*)’ is deprecated [-Wdeprecated-declarations]
menu->pushChild(construct());
^
In file included from ../../include/app.hpp:4:0,
from ../../include/gui.hpp:2,
from ../../include/rack.hpp:8,
from src/AudibleInstruments.hpp:1,
from src/Clouds.cpp:2:
../../include/widgets.hpp:315:7: note: declared here
void pushChild(Widget child) DEPRECATED {
^
src/Clouds.cpp:388:65: warning: ‘void rack::Menu::pushChild(rack::Widget)’ is deprecated [-Wdeprecated-declarations]
menu->pushChild(construct(&MenuEntry::text, "MODE"));
^
In file included from ../../include/app.hpp:4:0,
from ../../include/gui.hpp:2,
from ../../include/rack.hpp:8,
from src/AudibleInstruments.hpp:1,
from src/Clouds.cpp:2:
../../include/widgets.hpp:315:7: note: declared here
void pushChild(Widget child) DEPRECATED {
^
src/Clouds.cpp:389:162: warning: ‘void rack::Menu::pushChild(rack::Widget)’ is deprecated [-Wdeprecated-declarations]
menu->pushChild(construct(&MenuEntry::text, "GRANULAR", &CloudsModeItem::clouds, clouds, &CloudsModeItem::mode, clouds::PLAYBACK_MODE_GRANULAR));
^
In file included from ../../include/app.hpp:4:0,
from ../../include/gui.hpp:2,
from ../../include/rack.hpp:8,
from src/AudibleInstruments.hpp:1,
from src/Clouds.cpp:2:
../../include/widgets.hpp:315:7: note: declared here
void pushChild(Widget child) DEPRECATED {
^
src/Clouds.cpp:390:162: warning: ‘void rack::Menu::pushChild(rack::Widget)’ is deprecated [-Wdeprecated-declarations]
menu->pushChild(construct(&MenuEntry::text, "SPECTRAL", &CloudsModeItem::clouds, clouds, &CloudsModeItem::mode, clouds::PLAYBACK_MODE_SPECTRAL));
^
In file included from ../../include/app.hpp:4:0,
from ../../include/gui.hpp:2,
from ../../include/rack.hpp:8,
from src/AudibleInstruments.hpp:1,
from src/Clouds.cpp:2:
../../include/widgets.hpp:315:7: note: declared here
void pushChild(Widget child) DEPRECATED {
^
src/Clouds.cpp:391:172: warning: ‘void rack::Menu::pushChild(rack::Widget)’ is deprecated [-Wdeprecated-declarations]
menu->pushChild(construct(&MenuEntry::text, "LOOPING_DELAY", &CloudsModeItem::clouds, clouds, &CloudsModeItem::mode, clouds::PLAYBACK_MODE_LOOPING_DELAY));
^
In file included from ../../include/app.hpp:4:0,
from ../../include/gui.hpp:2,
from ../../include/rack.hpp:8,
from src/AudibleInstruments.hpp:1,
from src/Clouds.cpp:2:
../../include/widgets.hpp:315:7: note: declared here
void pushChild(Widget child) DEPRECATED {
^
src/Clouds.cpp:392:160: warning: ‘void rack::Menu::pushChild(rack::Widget)’ is deprecated [-Wdeprecated-declarations]
menu->pushChild(construct(&MenuEntry::text, "STRETCH", &CloudsModeItem::clouds, clouds, &CloudsModeItem::mode, clouds::PLAYBACK_MODE_STRETCH));
^
In file included from ../../include/app.hpp:4:0,
from ../../include/gui.hpp:2,
from ../../include/rack.hpp:8,
from src/AudibleInstruments.hpp:1,
from src/Clouds.cpp:2:
../../include/widgets.hpp:315:7: note: declared here
void pushChild(Widget child) DEPRECATED {
^
src/Clouds.cpp:397:72: warning: ‘void rack::Menu::pushChild(rack::Widget)’ is deprecated [-Wdeprecated-declarations]
menu->pushChild(construct(&MenuEntry::text, "STEREO/MONO"));
^
In file included from ../../include/app.hpp:4:0,
from ../../include/gui.hpp:2,
from ../../include/rack.hpp:8,
from src/AudibleInstruments.hpp:1,
from src/Clouds.cpp:2:
../../include/widgets.hpp:315:7: note: declared here
void pushChild(Widget child) DEPRECATED {
^
src/Clouds.cpp:398:138: warning: ‘void rack::Menu::pushChild(rack::Widget)’ is deprecated [-Wdeprecated-declarations]
menu->pushChild(construct(&MenuEntry::text, "STEREO", &CloudsMonoItem::clouds, clouds, &CloudsMonoItem::setting, false));
^
In file included from ../../include/app.hpp:4:0,
from ../../include/gui.hpp:2,
from ../../include/rack.hpp:8,
from src/AudibleInstruments.hpp:1,
from src/Clouds.cpp:2:
../../include/widgets.hpp:315:7: note: declared here
void pushChild(Widget child) DEPRECATED {
^
src/Clouds.cpp:399:135: warning: ‘void rack::Menu::pushChild(rack::Widget)’ is deprecated [-Wdeprecated-declarations]
menu->pushChild(construct(&MenuEntry::text, "MONO", &CloudsMonoItem::clouds, clouds, &CloudsMonoItem::setting, true));
^
In file included from ../../include/app.hpp:4:0,
from ../../include/gui.hpp:2,
from ../../include/rack.hpp:8,
from src/AudibleInstruments.hpp:1,
from src/Clouds.cpp:2:
../../include/widgets.hpp:315:7: note: declared here
void pushChild(Widget child) DEPRECATED {
^
src/Clouds.cpp:401:70: warning: ‘void rack::Menu::pushChild(rack::Widget)’ is deprecated [-Wdeprecated-declarations]
menu->pushChild(construct(&MenuEntry::text, "HIFI/LOFI"));
^
In file included from ../../include/app.hpp:4:0,
from ../../include/gui.hpp:2,
from ../../include/rack.hpp:8,
from src/AudibleInstruments.hpp:1,
from src/Clouds.cpp:2:
../../include/widgets.hpp:315:7: note: declared here
void pushChild(Widget child) DEPRECATED {
^
src/Clouds.cpp:402:136: warning: ‘void rack::Menu::pushChild(rack::Widget)’ is deprecated [-Wdeprecated-declarations]
menu->pushChild(construct(&MenuEntry::text, "HIFI", &CloudsLofiItem::clouds, clouds, &CloudsLofiItem::setting, false));
^
In file included from ../../include/app.hpp:4:0,
from ../../include/gui.hpp:2,
from ../../include/rack.hpp:8,
from src/AudibleInstruments.hpp:1,
from src/Clouds.cpp:2:
../../include/widgets.hpp:315:7: note: declared here
void pushChild(Widget child) DEPRECATED {
^
src/Clouds.cpp:403:135: warning: ‘void rack::Menu::pushChild(rack::Widget)’ is deprecated [-Wdeprecated-declarations]
menu->pushChild(construct(&MenuEntry::text, "LOFI", &CloudsLofiItem::clouds, clouds, &CloudsLofiItem::setting, true));
^
In file included from ../../include/app.hpp:4:0,
from ../../include/gui.hpp:2,
from ../../include/rack.hpp:8,
from src/AudibleInstruments.hpp:1,
from src/Clouds.cpp:2:
../../include/widgets.hpp:315:7: note: declared here
void pushChild(Widget *child) DEPRECATED {
^
../../compile.mk:53: recipe for target 'build/src/Clouds.cpp.o' failed
make: *** [build/src/Clouds.cpp.o] Error 1
would it be possible to port the warps parasites? it vastly improves the module.
https://mqtthiqs.github.io/parasites/warps.html
thanks for you work on the clouds Neil and Joni. many lost hours
Linux Fedora 23 GCC 5.3.1
VCV Rack dev version
Checking connectivity... done.
Submodule path 'parasites/stm_audio_bootloader': checked out '6f20ead22a28967b0446546d2fcf0dfb9599ba93'
Cloning into 'stmlib'...
The authenticity of host 'github.com (192.30.253.113)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
RSA key fingerprint is MD5:16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'github.com,192.30.253.113' (RSA) to the list of known hosts.
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Clone of '[email protected]:mqtthiqs/stmlib.git' into submodule path 'stmlib' failed
Failed to recurse into submodule path 'parasites'
Here are some errors I get trying to build in the latest build of Rack using Ubuntu 16.04.
src/AudibleInstruments.cpp: In function ‘void init(rack::Plugin*)’:
src/AudibleInstruments.cpp:16:10: error: ‘struct rack::Plugin’ has no member named ‘name’
plugin->name = "Arable Instruments";
^
src/AudibleInstruments.cpp:17:10: error: ‘struct rack::Plugin’ has no member named ‘homepageUrl’
plugin->homepageUrl = "https://github.com/adbrant/ArableInstruments";
^
src/AudibleInstruments.cpp:19:72: error: no matching function for call to ‘createModel(rack::Plugin*&, const char [5], const char [27])’
createModel(plugin, "Joni", "Joni - Texture Synthesizer");
^
In file included from src/AudibleInstruments.hpp:1:0,
from src/AudibleInstruments.cpp:1:
../../include/rack.hpp:22:8: note: candidate: template<class TModuleWidget, class ... Tags> rack::Model* rack::createModel(std::__cxx11::string, std::__cxx11::string, std::__cxx11::string, Tags ...)
Model createModel(std::string manufacturer, std::string slug, std::string n
^
../../include/rack.hpp:22:8: note: template argument deduction/substitution failed:
src/AudibleInstruments.cpp:19:72: note: cannot convert ‘plugin’ (type ‘rack::Plugin’) to type ‘std::__cxx11::string {aka std::__cxx11::basic_string}’
createModel(plugin, "Joni", "Joni - Texture Synthesizer");
^
../../compile.mk:53: recipe for target 'build/src/AudibleInstruments.cpp.o' failed
make: *** [build/src/AudibleInstruments.cpp.o] Error 1
Is v2.0.0 stable? If so, could you add a git tag/release for that maybe? Thanks :)
Can you add this mac release with your latest fixes?
ArableInstruments.zip
Rack v0.5.1 will include a plugin manager, and plugins need to follow the versioning guidelines in order to be accepted. You can use this example plugin Makefile and Tutorial.cpp file as a reference for making sure the version is the same in the C++, Makefile, and JSON manifest.
v
from the version string in the C++ file.Once you've fixed this, send a PR to the Rack community repository and remove the "disabled"
property in the JSON manifest file if present.
Hello,
just to inform you many users love this 2 modules , so could be cool to have them in 0.5 ;-)
( andrew just confirm that only audible firmwares will be add in the official releases)
Thanks
@adbrant The code for ParableInstruments
needs to be put on a separate branch, i.e. it needs to be buildable with a simple make
.
This is required for integration into the community build system. Right now, the plugin requires special handling in using the separate Makefile
to build.
Thank you!
Hey @adbrant, are you OK with me updating this plugin to v2
of Rack?
I also would like to change the license to GPLv3
at this time to align with the overall license update of Rack, if you are OK with that.
Thanks.
VERSION
in the Makefile
needs to be updated to 0.6.0
to remove the dev
suffix (for both Arable and Parable).
Hi there.
I would like to include your modules as part of Cardinal, which the code license allows but I am unsure regarding the graphics.
The README only states:
The panel graphics in the res/ folder are copyright © Alex Brandt
But this is not a license, just a copyright notice. Would you mind placing a license for your artwork files? The CC-BY-SA is the one that most closely matches GPL in spirit, there are also optional non-commercial and non-derivate clauses possible (though that restricts what can be done with the project). Otherwise CC-0/Public-Domain allows everything,
Thanks, have a great day!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.