With the default code you go 1 octave up or down.... nothing in the middle.
A way to do it is to use a variable (similar to the "divider") to change keep the odd samples like read_pt_A = read_pt_A + 1; and the even samples like read_pt_B = read_pt_B + 2;
It may sound a bit confusing.. I am still thinking in a simpler way to so it...
This delay based effect is based in dopler effect. I think the way of gettin 1/2 octave up would be increasing index by 1.5 instead of by 2. As this is not possible, you could have a real index variable, and increment it by 1.5 each iteration, but only use its int part for accesing a position in the buffer. For example, assume that you start at position 1. The next iteration should be at 1+1.5=2.5 for getting a 1/2 octave shift. So you use the position (int)2.5 thats equal 2. The next iteration should be 2.5+1.5=4. Sou you use sample 4. This would make you skip a sample every 3, and get a pitch shift in the middle. This is just an idea, i have not tried this.
Does anyone know where I can find the study mentioned? The links are now "FORBIDDEN"
Thanks, Aaron
JR wrote:
" D. Goswami, H. Narula and C. Rogers have the best study about Real-Time DSP Pitch Shifting applicable to Arduino/C programming I have ever read"
We have been trying to find the original article and it is nowhere to be found, no PDFs, no google cache, nothing.
The only hope is to try to contact the authors " D. Goswami, H. Narula and C. Rogers" at CNEL University and ask for the pdf.
Hi guys, I'm bringing this topic back to life as I have this plan in my head... and need your help (if you're willing to help).
So I haven't worked with arduino for a while even though 10y ago I did my master theses about it!
However, I was using pure data/pduino as I'm null with coding!
Anyways, I'm building guitars and now I wanna embed a pedal circuit in one of my guitars. This is a mini guitar that is gonna have a natural high pitch sound to which I want to apply an Octaver to (octave down). All variables are to be constant, so without pots to control them. The only thing I want to have there is a switch (On or Bypass). Maybe a switch (ON/Mix/Bypass)... just thinking...
My idea is to have the smallest arduino possible, ideally a Nano...
Doable? Ideas?
Thanks in advance
Last edit: 4 years 3 months ago by jbvidigal. Reason: adding content