no, you don't change the buffer size, you just change the playback rate
(and speed, if you want) of your grains.
For instance, lets say the pitch is 20 Hz, or 50 ms time for one cycle.
You want to change that to 100 Hz.
Then you take 50 ms of audio, and replay this 5 times every 10 ms (with
or without overlaps, but at the same speed
as the original to maintaine the formants).
Then you take the next 50 ms, and do that again.
For this, you need a buffer size of 50 ms or more.
But to compare two different wave cycles of 50 ms length to find
similarity, you need a buffer size of 100 ms.
That is your latency required, for 20 Hz.
That is all independent of sample rate, but of course your buffer size
in samples will be larger for a higher sample rate
and smaller for a lower sample rate. But the times of latency required
will be the same.
Also, if you to correlation you need less values to calcuate for a lower
sample rate.
Am 06.10.2018 um 18:27 schrieb Alex Dashevski:
I still don't understand. You change buffer size. Right ?
But I don't want to change.
b> <mailto:g...@voxangelica.net>b>
In my example, the buffer is 2 times as long as the lowest
possible pitch,
for example if your lowest pitch is 20 Hz, you need 50 ms for one
wave cycle
Think of it as magnetic tape, without sample rate, the minimum
requierd latency and the buffer length in milliesconds
are independent of sample rate
You have 100 ms "magnetic tape", search for similarity, and then
chop the tape according to that.
Then you have sippets of 50 ms length or smaller.
Then you copy these snippets and piece them together again, at a
higher or slower rate than before.
You can also shrink or lengthen the snippets and change the
formants, that ist shift all
spectral contant of one snippet up or down.
Am 06.10.2018 um 17:58 schrieb Alex Dashevski:
Hi,
I can't understand your answer.B The duration of buffer should be
bigger than duration of pitch because I use WSOLA.
The latency also depends on sample rate and buffer length.
Thanks,
Alex
b href="mailto:g...@voxangelica.net <mailto:g...@voxangelica.net>"
moz-do-not-send="true">g...@voxangelica.net
<mailto:g...@voxangelica.net>b
Your numbers don't make sense to me but probably I just dont
understand it.
The latency should be independent of the sample rate, right?
You search for similarity in the wave, chop it up, and replay
the grains at different speeds and/or rates.
What you need for this is a certain amount of time of the wave.
If you need a latency of <= 100 ms you can have two wave
cycles stored
of 50ms length / 20 Hz, which should be sufficient, given
taht voice is ususally well above 20 Hz.
_______________________________________________
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu <mailto:music-dsp@music.columbia.edu>
https://lists.columbia.edu/mailman/listinfo/music-dsp
_______________________________________________
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp
_______________________________________________
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp