olvb / phaze

Real-time pitch-shifter as a Web Audio worklet, based on phase vocoder techniques
The Unlicense
129 stars 17 forks source link

Making pitch more sensitive #12

Closed phewitt closed 1 year ago

phewitt commented 2 years ago

This project has been really insightful! Pitch shifting is non trivial and I greatly appreciate this.

I am wondering how I could make smaller pitch adjustments. Essentially the steps are too large and skips over semitones that I want. I tried to simply make the slider smaller values, however it seems that small adjustments do nothing until they step up or down significantly.

From trying to understand the code it seems an explanation, for this step function behavior, could be related to indexing an array. So basically it's the same index until it hits a certain threshold and rounds up to the next index.

I'm wondering if there is something small to tweak in order to make the intervals more sensitive.

thx again for this project!

phewitt commented 2 years ago

Well I honestly have no idea the implications, but it seems but simply increasing BUFFERED_BLOCK_SIZE I have the results I was hoping for when increasing pitch. However, it makes decreasing the pitch extremely "crackly" with heavy artifacts