jon-myers / idtp

An Interactive Digital Transcription Platform for Hindustani Music
https://swara.studio
2 stars 1 forks source link

pitch shifting #45

Open jon-myers opened 1 year ago

jon-myers commented 1 year ago

so you don't have to retune your instrument to play along

jon-myers commented 1 year ago

Also, for old recordings with variable tape speed, how to sort out. Segment and manipulate on the user's end? Or, some sort of algorithm that tracks the tonic over time.

jon-myers commented 1 year ago

Harder than I at first expected. It may be that doing some server side processing, then pulling that down, might be the best approach. Real time in browser seems like it will be tricky.

jon-myers commented 1 year ago

Going to attempt having a second buffer, which will be processed in the browser via fft. Will take time, but it might be possible to do it piecewise, and on a seperate thread which doesn't slow everything else down ?

jon-myers commented 1 year ago

Found a library web audio worklet that does it, but requires "require". Can't figure out how to get requires to work with webaudioworklets; so going to switch over to Vite and cross my fingers.

jon-myers commented 1 year ago

using rubberband plugin works, but sounds pretty bad on the synth, so should just auto move the synth and not run it through the rubberband

jon-myers commented 1 year ago

Doesn't work in Safari: really bad artifacts.

Works in Firefox, but causes bad delay. May be able to offset playhead + playback of synth trajs to match.

So, for now, this is not available in those browsers.

jon-myers commented 7 months ago

Also, I believe I had to discontinue it in Windows. So it is really only supported in Chrome on Mac.