[sc-users] csound vs supercollider phase vocoder performance
Hector Centeno
hcengar at gmail.com
Thu Apr 10 16:26:32 PDT 2008
Hello Josh and all,
Thank you for your reply. I created a synthesizer with Csound that
reads a couple of pre-analyzed audio files (pvx format) and pass them
through a series of processes that can be altered in realtime. I first
pass them through a bandpass/reject PV filter, time stretch them, then
you can optionally freeze the amplitudes or frequencies of both, morph
between the two of them, shift the pitch individually, stretch the
spectrum individually, modulate the pitch, smooth the signal and
finally synthesize a stereo audio signal (there are some other details
but that's roughly what it does, all parameters are adjustable in
real-time and some are determined by a adjustable envelope). At this
point the audio signal is passed to a second computer (laptop with a
1.7Ghz CentrinoDuo) through a digital cable where more processing is
done at audio level (granulation, reverb, convolution, etc.). The GUI
with all the knobs and sliders and the midi handler for the midi
controllers is done by this second computer and the parameters are
sent to the first one via OSC so in this way the first computer is
left for only PV processing.
Using some of the PV processes I can get a polyphony of up to 6 to 8
notes but If I do more or all of them (specially the spectral
stretching) then I get 1 or 2. I'm running Linux and my system has a
Core2Duo at 2.13Ghz and 2gigs of ram. Csound is not multiprocess so I
get dropouts when the CPU usage indicator is only at 50% (that means
only one core is being fully used). Is SC multiprocess? I know I'm
doing a lot of demanding processing but I was just wondering if SC
would allow me at least two more notes at a time.
The analysus files are at 513 bins, a window size of 1024 and a overlap of 4.
I hope this information helps and sorry for the long explanation, I
hope I didn't overdo it.
Thanks!
Hector
On Thu, Apr 10, 2008 at 3:42 PM, Josh Parmenter <josh at realizedsound.net> wrote:
> FFT and IFFT is pretty robust and efficient, but they rely on real-
> time input. If you want to do things like stretching or reading
> previously analyzed files, you need to grab some extensions.
>
> I have UGens in my library here (JoshUGens):
>
> http://sourceforge.net/projects/sc3-plugins/
>
> to play CSound pv files (version 4 though... I've heard there have
> been changes since CSound 5 I have yet to incorporate). BUT, I also
> have UGens for doing analysis and playback in SC (PV_RecordBuf and
> PV_PlayBuf). These are pretty efficient... but the real questions are:
>
> how many bins and overlaps?
> how many notes at a time?
>
> These are really the variables. I may be able to get 30 going at once
> with certain parameters, only 10 with others. If you have some
> specific things in mind (like, how much CPU does a resynth with an FFT
> size of 16384 with 4 overlaps need?). If you have some specifics, I'm
> sure someone would be more then willing to give you some numbers.
>
> best,
>
> Josh
>
>
>
> On Apr 10, 2008, at 12:37 PM, Hector Centeno wrote:
> > Hi,
> >
> > I've been using Csound for doing some realtime phase vocoder
> > processing but I'm hitting a performance wall. I've been trying to
> > work it around by using two computers but I was wondering if
> > SuperCollider would maybe be a better option for realtime processing.
> > Is there anyone here with some experience using both Csound's PVS
> > opcodes and SuperCollider's PV_ ugens? Was the performance around the
> > same (which I guess it might be)? I would like to get some feedback
> > from SC users before jumping into learning it and porting my Csound
> > orchestras.
> >
> > Thanks!
> >
> > Hector
> > _______________________________________________
> > sc-users mailing list
> > sc-users at create.ucsb.edu
> > http://lists.create.ucsb.edu/mailman/listinfo/sc-users
>
> ******************************************
> /* Joshua D. Parmenter
> http://www.realizedsound.net/josh/
>
> "Every composer – at all times and in all cases – gives his own
> interpretation of how modern society is structured: whether actively
> or passively, consciously or unconsciously, he makes choices in this
> regard. He may be conservative or he may subject himself to continual
> renewal; or he may strive for a revolutionary, historical or social
> palingenesis." - Luigi Nono
> */
>
> _______________________________________________
> sc-users mailing list
> sc-users at create.ucsb.edu
> http://lists.create.ucsb.edu/mailman/listinfo/sc-users
>
More information about the sc-users
mailing list