12345678910111213141516171819202122232425262728 |
- import {parentPort} from "worker_threads";
- import Kali from "@descript/kali";
- import {workerData} from "worker_threads";
- try{
- let decodeAudio = await import('audio-decode')
- let decoders = decodeAudio.decoders;
- await decoders.mp3();
- let decoded = await decoders.mp3(
- workerData.binary
- )
- let kali = new Kali(1)
- let samplerate = decoded.sampleRate / workerData.pitch
- kali.setup(samplerate, workerData.pitch, true)
- kali.input(decoded.getChannelData(workerData.channel))
- kali.process()
- let output = new Float32Array(samplerate * decoded.duration)
- kali.output(output);
- parentPort.postMessage({output, samplerate})
- }catch(err){
- console.log(err)
- }
|