Giter VIP home page Giter VIP logo

easy-voicemeeter-remote's Introduction

easy-voicemeeter-remote

Voicemeeter-remote is a Node.js wrapper for the official voicemeeterRemote DLL available in the installation directory of Voicemeeter, Voicemeeter banana, or Voicemeeter potato. More informations about the DLL is available here

First install it

npm install easy-voicemeeter-remote --save

How to use it ?

const voicemeeter = require("easy-voicemeeter-remote");

voicemeeter.init().then(() => {
  voicemeeter.login();
});

After the login method is successful you can use all the methods to interact with the instance of Voicemeeter

Connect and disconnect with the Voicemeeter software

// Connect
voicemeeter.login();
// Disconnect
voicemeeter.logout();

Set parameters like : 'mono', 'solo', 'mute', 'gain', 'gate', 'comp' for each Strip and Bus

// Set the gain of the first Strip to -10db
voicemeeter.setStripGain(0, -10);
// Mute the second Bus
voicemeeter.setBusMute(1, true);

Get All available Parameters form all Strips and Buses. like : 'mono', 'solo', 'mute', 'gain', 'gate', 'comp' ...

console.log("getAllParameter  || ", await voicemeeter.getAllParameter());

Get Multiple Parameters form Strips and Buses.

var data = await voicemeeter.getMultiParameter([
  { type: "Strip", id: 0, getVals: ["mono", "Mute", "solo", "gain"] },
  { type: "Bus", id: 0, getVals: ["Mono", "mute", "gain"] },
]);

console.log("getMultiParameter  || ", data);

/* { strips: [ { type: 'strip', id: 0, mono: 0, mute: 0, solo: 0, gain: -10 } ], 
buses: [{ type: 'bus', id: 0, mono: 0, mute: 0, gain: -18.614171981811523 }]} */

Get Current Level

  • Get Level by Strip or Bus ID
  • mode = 0= pre fader input levels. 1= post fader input levels. 2= post Mute input levels. 3= output levels.
  • index strip or bus id
voicemeeter.getLevelByID(mode, index);

console.log("Level || ", voicemeeter.getLevelByID(3, 6));

Get Midi Data

voicemeeter.getMidi();

console.log("MIDI || ", voicemeeter.getMidi());

Get all input/output devices

// Get all devices from the DLL
// They will be stored into an array in the voicemeeter-remote instance
voicemeeter.updateDeviceList();
// Get input devices
console.log(voicemeeter.inputDevices);
// Get output devices
console.log(voicemeeter.outputDevices);

Dependencies

ffi-napi => Read and execute the VoicemeeterRemote DLL

ref-array-napi => Create array (*pointer) for ffi to return string from the DLL

winreg => Read the windows registery to find Voicemeeter installation folder and the DLL


License

MIT

easy-voicemeeter-remote's People

Contributors

mikatux avatar steffenreimann avatar danielhands008 avatar weeryan17 avatar scarstrf avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.