nodeaudio/binding.js
Andrew Gundersen 1d75db5bde initial commit
2021-07-26 14:08:25 -05:00

28 lines
No EOL
657 B
JavaScript

const nodeAudio = require('bindings')('nodeaudio.node');
console.log("Imported nodeAudio");
const wait = async (callback, seconds) => {
await setTimeout(() => {
callback();
}, seconds);
}
const recordThenPlay = async (recSeconds) => {
console.log("Initializing nodeAudio");
nodeAudio.initialize();
nodeAudio.fill_input_buffer();
console.log(`Recording for ${recSeconds} seconds`);
const audio = await wait(nodeAudio.return_input_buffer, recSeconds);
console.log("Playing audio");
nodeAudio.feed_output_buffer(audio);
console.log("Shutting down audio");
nodeAudio.terminate();
}
recordThenPlay(5);