| 1234567891011121314151617181920212223242526272829303132 |
- /** @typedef {import('./types').OfflineSpeechDenoiserConfig} OfflineSpeechDenoiserConfig */
- /** @typedef {import('./types').OfflineSpeechDenoiserHandle} OfflineSpeechDenoiserHandle */
- /** @typedef {import('./types').GeneratedAudio} GeneratedAudio */
- /** @typedef {import('./types').AudioProcessRequest} AudioProcessRequest */
- const addon = require('./addon.js');
- class OfflineSpeechDenoiser {
- /**
- * @param {OfflineSpeechDenoiserConfig} config
- */
- constructor(config) {
- this.handle = addon.createOfflineSpeechDenoiser(config);
- this.config = config;
- this.sampleRate =
- addon.offlineSpeechDenoiserGetSampleRateWrapper(this.handle);
- }
- /**
- * Run denoiser synchronously.
- * @param {AudioProcessRequest} obj - { samples: Float32Array, sampleRate: number, enableExternalBuffer?: boolean }
- * @returns {GeneratedAudio}
- */
- run(obj) {
- return addon.offlineSpeechDenoiserRunWrapper(this.handle, obj);
- }
- }
- module.exports = {
- OfflineSpeechDenoiser,
- }
|