What do you mean "replay" ? duplicate buffer ?
I have the opposite problem. My original buffer size doesn't contain full
cycle of the pitch.
How can I succeed to shift pitch ?

Thanks,
Alex

‫בתאריך שבת, 6 באוק׳ 2018 ב-19:55 מאת ‪gm‬‏ <‪g...@voxangelica.net‬‏>:‬

>
> 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 href="mailto:g...@voxangelica.net"; moz-do-not-send="true">
> g...@voxangelica.netb
>
>>
>> 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"; moz-do-not-send="true">
>> g...@voxangelica.netb
>>
>>> 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
>> https://lists.columbia.edu/mailman/listinfo/music-dsp
>
>
>
> _______________________________________________
> dupswapdrop: music-dsp mailing 
> listmusic-dsp@music.columbia.eduhttps://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

Reply via email to