Alex: Any algorithm with a deterministic computation time can be applied in real-time if latency is sufficient enough. Are you familiar with the idea of copying the stream to a buffer then applying the algorithm and outputting the older data which the algorithm has already been applied to? Adding latency like this and processing in blocks is the standard method that allows very cpu heavy processing to be applied to a real-time stream. The only real requirement for real-time processes is to output the same number of samples as the input (at the same sample rate).
Pitch shifting methods stretch or shrink the signal creating more or less samples and you must figure out how to remove the extra or add samples to be the correct number of samples in order for it to work on a real-time audio stream. This is the resampling part and there are many ways to address it. I think we might be able to help more if you can ask more specific questions about the implementation details you are struggling with. _Spencer On Thu, Sep 27, 2018 at 12:16 AM Alex Dashevski <alexd...@gmail.com> wrote: > Hi Robert, > > I don't understand your last sentence: > "then, in real-time, you can use the time > scaler make the more or fewer samples per block to be the same as normal." > > In the beginning of your answer, you said that I need to use WSOLA with > resampling. > > I have problem with implementation. Can you help ? > > Thanks, > Alex > > 2018-09-27 0:25 GMT+03:00 Jacob Penn <penn.ja...@gmail.com>: > >> Ahh yeah I gotcha, >> >> Yes, in the case of slow down, there Is a finite amount you’re able to >> slow down based on the size of the circular buffer of input data in use. >> >> In my personal applications I offer users the ability to restart the >> stretch from the writehead at a musical value. Conveniently the slowest >> rate for this control will stop the overflow ; ) >> >> Can sound quite nice! >> >> Best, >> >> [image: insignia] <http://jakemumu.github.io/> >> JACOB PENN.MUMUKSHU >> 612.388.5992 >> >> On September 26, 2018 at 2:21:29 PM, robert bristow-johnson ( >> r...@audioimagination.com) wrote: >> >> >> >> ---------------------------- Original Message ---------------------------- >> Subject: Re: [music-dsp] WSOLA on RealTime >> From: "Jacob Penn" <penn.ja...@gmail.com> >> Date: Wed, September 26, 2018 5:00 pm >> To: r...@audioimagination.com >> music-dsp@music.columbia.edu >> -------------------------------------------------------------------------- >> >> > You can indeed do it on real time audio but the tricks is like the >> previous >> > email, you’ll need to devise strategies for pitching things up, as >> you’ll >> > be lacking the necessary information to move faster across the buffer >> from >> > the write head position. >> > >> > You’ll also obviously only be able to slow down a signal, and not speed >> it >> > up. >> >> no, even if you slow it down, any finite-sized buffer will eventually >> overflow. i presume you mean time-scaling (not pitch shifting) using WSOLA. >> >> by "real-time", i mean live samples going in and (assuming no sample rate >> conversion) the same number of samples going out in a given period of >> time. with an upper bound of delay (and the lower bound is imposed by >> causality) and the process can run indefinitely. so if you're slowing down >> audio in real-time and you're running this process for a day. or for a >> year. >> >> >> -- >> >> r b-j r...@audioimagination.com >> >> "Imagination is more important than knowledge." >> >> >> >> >> >> >> >> _______________________________________________ >> 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 >> > > _______________________________________________ > 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