ramirezd42 / vst-js Goto Github PK
View Code? Open in Web Editor NEWnative node addon that allows for instantiation of natively installed VST3 audio plugins
native node addon that allows for instantiation of natively installed VST3 audio plugins
Hi!
I wanted to try out your project but I get a 404 error when installing, did you take it down from npm?
Regards
error:
Not searching for unused variables given on the command line. CMAKE_JS_INC:/Users/mv/.cmake-js/node-arm64/v21.7.1/include/node/Users/mv/Desktop/Projects/recordtest/node_modules/nan -- The C compiler identification is AppleClang 15.0.0.15000309 -- The CXX compiler identification is AppleClang 15.0.0.15000309 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /Library/Developer/CommandLineTools/usr/bin/cc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /Library/Developer/CommandLineTools/usr/bin/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Found Boost: /opt/homebrew/lib/cmake/Boost-1.84.0/BoostConfig.cmake (found suitable version "1.84.0", minimum required is "1.60") found components: system -- Configuring done (0.4s) -- Generating done (0.0s) -- Build files have been written to: /Users/mv/Desktop/Projects/recordtest/node_modules/vstjs/build info CMD BUILD info RUN cmake --build "/Users/mv/Desktop/Projects/recordtest/node_modules/vstjs/build" --config Release [ 4%] Building CXX object CMakeFiles/vstjs-bin.dir/src/host/IPCAudioIODevice.cpp.o [ 9%] Building CXX object CMakeFiles/vstjs-bin.dir/src/host/JuceLibraryCode/include_juce_audio_basics.mm.o [ 14%] Building CXX object CMakeFiles/vstjs-bin.dir/src/host/JuceLibraryCode/include_juce_audio_devices.mm.o In file included from /Users/mv/Desktop/Projects/recordtest/node_modules/vstjs/src/host/JuceLibraryCode/include_juce_audio_devices.mm:9: In file included from /Users/mv/Desktop/Projects/recordtest/node_modules/vstjs/include/JUCE/modules/juce_audio_devices/juce_audio_devices.mm:23: In file included from /Users/mv/Desktop/Projects/recordtest/node_modules/vstjs/include/JUCE/modules/juce_audio_devices/juce_audio_devices.cpp:46: In file included from /Users/mv/Desktop/Projects/recordtest/node_modules/vstjs/include/JUCE/modules/juce_audio_devices/juce_audio_devices.h:54: In file included from /Users/mv/Desktop/Projects/recordtest/node_modules/vstjs/include/JUCE/modules/juce_events/juce_events.h:50: In file included from /Users/mv/Desktop/Projects/recordtest/node_modules/vstjs/include/JUCE/modules/juce_core/juce_core.h:314: /Users/mv/Desktop/Projects/recordtest/node_modules/vstjs/include/JUCE/modules/juce_core/native/juce_osx_ObjCHelpers.h:84:99: error: use of undeclared identifier 'objc_msgSend_fpret' static inline MsgSendFPRetFn getMsgSendFPRetFn() noexcept { return (MsgSendFPRetFn) (void*) objc_msgSend_fpret; } ^ 1 error generated. make[2]: *** [CMakeFiles/vstjs-bin.dir/src/host/JuceLibraryCode/include_juce_audio_devices.mm.o] Error 1 make[1]: *** [CMakeFiles/vstjs-bin.dir/all] Error 2 make: *** [all] Error 2 ERR! OMG Process terminated: 2
package.json:
{ "name": "recordtest", "version": "1.0.0", "main": "index.js", "license": "MIT", "scripts": { "start": "index.js" }, "resolutions": { "graceful-fs": "^4.2.11" } }
Hi,
I'm just trying to know if my project is possible or not : on Windows, I want to create an app (With electron) to create drum sounds from midi input.
I need to know if :
Thanks!
After install the required dependencies, vst-js throws a number of errors on npm install vstjs
. It begins with this:
CMake Warning at /usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:801 (message):
New Boost version may have incorrect or missing dependencies and imported
targets
Call Stack (most recent call first):
/usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:907 (_Boost_COMPONENT_DEPENDENCIES)
/usr/local/Cellar/cmake/3.10.2/share/cmake/Modules/FindBoost.cmake:1542 (_Boost_MISSING_DEPENDENCIES)
CMakeLists.txt:22 (find_package)
and hit a fatal error at this:
Scanning dependencies of target vstjs
[ 4%] Building CXX object CMakeFiles/vstjs.dir/src/module/Module.cpp.o
In file included from /Volumes/MacintoshHD/node_modules/vstjs/src/module/Module.cpp:1:
/Volumes/MacintoshHD/node_modules/vstjs/src/module/PluginHostWrapper.h:4:10: fatal error: 'nan.h' file not found
Not sure if these errors are related or not. I'm fairly new to Node so perhaps it's a user error? Any help would be appreciated. Let me know if you need a full log. Thanks!
C++ dependencies (for example grpc and its dependencies, and JUCE) shouldn't be hardcoded in CMakeLists.txt to their absolute path on my computer. I should either find a way of bundling these or make their location configurable, and make npm install fail gracefully when they are not found.
The node-web-audio-api library is causing some problems in the example script (see: #3)
I should look for a more reliable replacement and replace it with that.
The most performant way to chain a large number of plugins (akin to something like a "channel strip") would be to have all of them wired up natively in a single host process instance. It shouldn't be too difficult to expose an api to do this once some from of RPC mechanism is setup between the two processes (which is also necessary to accomplish #2)
I use windows, after I've installed cmake, boost and vst3 I receive error
npm ERR! code 1 npm ERR! path D:\Projects\recordtest\node_modules\vstjs npm ERR! command failed npm ERR! command C:\Windows\system32\cmd.exe /d /s /c cmake-js compile npm ERR! fs.js:43 npm ERR! } = primordials; npm ERR! ^ npm ERR! npm ERR! ReferenceError: primordials is not defined npm ERR! at fs.js:43:5 npm ERR! at req_ (D:\Projects\recordtest\node_modules\natives\index.js:143:24) npm ERR! at Object.req [as require] (D:\Projects\recordtest\node_modules\natives\index.js:55:10) npm ERR! at Object.<anonymous> (D:\Projects\recordtest\node_modules\unzip\node_modules\graceful-fs\fs.js:1:37) npm ERR! at Module._compile (node:internal/modules/cjs/loader:1376:14) npm ERR! at Module._extensions..js (node:internal/modules/cjs/loader:1435:10) npm ERR! at Module.load (node:internal/modules/cjs/loader:1207:32) npm ERR! at Module._load (node:internal/modules/cjs/loader:1023:12) npm ERR! at Module.require (node:internal/modules/cjs/loader:1235:19) npm ERR! at require (node:internal/modules/helpers:176:18) npm ERR! at Object.<anonymous> (D:\Projects\recordtest\node_modules\unzip\node_modules\graceful-fs\graceful-fs.js:3:27) npm ERR! at Module._compile (node:internal/modules/cjs/loader:1376:14) npm ERR! at Module._extensions..js (node:internal/modules/cjs/loader:1435:10) npm ERR! at Module.load (node:internal/modules/cjs/loader:1207:32) npm ERR! at Module._load (node:internal/modules/cjs/loader:1023:12) npm ERR! at Module.require (node:internal/modules/cjs/loader:1235:19) npm ERR! npm ERR! Node.js v20.10.0
Currently the process will close when the plugins GUI window closes. Ideally there should be a way to keep the process running but just toggle whether or not the GUI window is displayed.
Would love to have some level of unit and/or integration testing going on. The problem is I need to learn how to write tests in C++ first ๐
I'm not quite sure why this is. The grpc call seems to be returning fast enough to avoid issues in the audio playback, and the rest of the GUI window isn't experience any slowdown. But when I run the playfile.js example, the eq visualization noticeably stutters.
I've been trying to use a VST3 exported from Cycling 74's Max MSP Gen~ system. While this plugin works fine in Reaper, I've been having some trouble getting it to work in VST-JS. The pluginHost is launched and a even a small GUI window opens. The audio process starts but the outputBuffer is all zeros.
Deactivating the pluginHost.processAudioBlock()
and running the program passes audio just fine so I know it's reading the file and it has something to do with the pluginHost. I know this is a very specific edge case so it's not top priority, but any ideas you have would be welcome!
It shouldn't be too difficult to get this project to build/install on Linux and Windows since all the libraries i'm using are cross-platform
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.