An npm package for interacting with Soundpad
npm install --save soundpad.js
import Soundpad, { getSoundpadPath, openSoundpad } from 'soundpad.js';
const soundpad = new Soundpad()
console.log(getSoundpadPath())
async function run () {
await openSoundpad()
await soundpad.connect()
await soundpad.playSound(1)
soundpad.disconnect()
}
run()
If you plan to use this package in the browser (with a custom dataDriver), you may get an error because some functions need Node's 'child_process' module. To fix this, you can import soundpad.js with the secondary entry point soundpad.js/web
(which does not export those functions) like in this example:
import Soundpad from 'soundpad.js/lib/web';
const soundpad = new Soundpad();
soundpad.connect((query) => {
return fetch('/api/soundpad/', { method: 'POST', body: query })
.then((data) => data.text())
});
Changes marked with ❌ are breaking changes
Soundpad.waitForStatus()
functionsoundpad.js/web
PlayStatus
enumSoundpad.isConnected
property when using a custom dataDriverSoundpad.connectionAwaiter
, which is a promise that resolves when the connection is established.undefined
resultsThis package is mainly a porting of https://www.leppsoft.com/soundpad/files/rc/SoundpadRemoteControl.java to Typescript, with some utility functions added.