c0.js 711 B

12345678910111213141516171819202122232425262728
  1. import {parentPort} from "worker_threads";
  2. import Kali from "@descript/kali";
  3. import {workerData} from "worker_threads";
  4. try{
  5. let decodeAudio = await import('audio-decode')
  6. let decoders = decodeAudio.decoders;
  7. await decoders.mp3();
  8. let decoded = await decoders.mp3(
  9. workerData.binary
  10. )
  11. let kali = new Kali(1)
  12. let samplerate = decoded.sampleRate / workerData.pitch
  13. kali.setup(samplerate, workerData.pitch, true)
  14. kali.input(decoded.getChannelData(workerData.channel))
  15. kali.process()
  16. let output = new Float32Array(samplerate * decoded.duration)
  17. kali.output(output);
  18. parentPort.postMessage({output, samplerate})
  19. }catch(err){
  20. console.log(err)
  21. }