Re: AUDITORY Digest - 24 Sep 2003 to 25 Sep 2003 (#2003-163) (Pradyumna S Upadrashta )

Subject: Re: AUDITORY Digest - 24 Sep 2003 to 25 Sep 2003 (#2003-163)
From:    Pradyumna S Upadrashta  <prad(at)>
Date:    Fri, 26 Sep 2003 07:26:36 -0500

unsubscribe AUDITORY end _____________________________________ Pradyumna Sribharga Upadrashta, PhD Student Scientific Computation, UofMN >-----Original Message----- >From: AUDITORY Research in Auditory Perception >[mailto:AUDITORY(at)LISTS.MCGILL.CA] On Behalf Of Automatic >digest processor >Sent: Thursday, September 25, 2003 11:00 PM >To: Recipients of AUDITORY digests >Subject: AUDITORY Digest - 24 Sep 2003 to 25 Sep 2003 (#2003-163) > > >There is one message totalling 188 lines in this issue. > >Topics of the day: > > 1. Summary of Granular synthesis replies > >---------------------------------------------------------------------- > >Date: Thu, 25 Sep 2003 12:52:41 -0700 >From: Brian Gygi <bgygi(at)EBIRE.ORG> >Subject: Summary of Granular synthesis replies > >Here are the suggestions sent in by various folks to my >request for Granular Synthesis software. Thanks to everyone >who contributed. > >Brian Gygi > >>Date: Sat, 20 Sep 2003 09:02:48 -0700 >>From: John Lazzaro <lazzaro(at)CS.Berkeley.EDU> >>To: bgygi(at)EBIRE.ORG >>Subject: Re: Granular synthesis software >> >> Sfront, the MPEG 4 Structured Audio compiler we did >>a few years ago, has an implementation of the grain() opcode, >which is >>a general-purpose granular engine. See: >> >> >.html#gra >>in >> >> for a description of what the opcode does, and see: >> >> >> >> to get oriented to what Structured Audio is and how sfront >>fits in, and where to download it, etc ... >> >>-------------------------------------------------------------- >--------- >>-- >>John Lazzaro -- Research Specialist -- CS Division -- EECS -- >UC Berkeley >>lazzaro [at] cs [dot] berkeley [dot] edu > >>-------------------------------------------------------------- >----------- > >****************************** > >>From: Koen Tanghe <Koen.Tanghe(at)UGENT.BE> >>Subject: Re: Granular synthesis software >> >>Depends on what you mean with "granular synthesis". I have written a >>granular effect (using a delay line, panning, feedback, pitch >shifting, >>freezing, ...) from scratch in C++ myself, implemented as a VST and >>Audio Unit plugin for processing real-time sound streams >(KTGranulator, >>you can download it at If you >>really want my code or a library around my code, you can use the form >>on the Smartelectronix web site to contact me directly. >> >>Do check out Ross Bencina's great "Implementing real-time granular >>synthesis" at This might >not be your >>standard "scientific paper" on the subject, but it surely contains a >>lot more to-the-point information on the implementation of the >>techniques than I could find in most "peer reviewed articles/books", >>and the accompanying GPL'ed C++ code is there too. Also, his modular >>program AudioMulch really >>*uses* the things he wrote in this article, so you're sure it >really works >>and you can download it for free. >>Although I knew AudioMulch, I had never seen this information >until after I >>implemented my granulator. It would have been much easier, >especially since >>I wanted to make an effect very similar to his delay line >granulator, but as >>a plugin so you can use it in several programs (any VST/AU compatible >>program, and also DX compatible ones if you use a VST/DX >wrapper). So I hope >>you find the link useful (I surely do now). >> >>Also: I'm not sure about this, but I doubt you will get much >>information on this newsgroup for questions like yours. >You're probably >>better off on the music-dsp mailing list/web site maintained >by Bram & >>David at (there are also code snippets for >>various other music processing related techniques in the code >archive). > >****************************** > >>From: Andrea Valle <andrea.valle(at)UNITO.IT> >>Subject: Re: Granular synthesis software >>To: AUDITORY(at)LISTS.MCGILL.CA >> >>Ciao Brian, >>Csound source code is written in C and is freely available at >> >> >>Here you can find some opcodes sources related to granular synthesis >>(grain and granulate, but in certain way also fof). There some score >>(event list) editors for csound specialized for granular effects: es. >>Cmask. >> >>Anycase, it surely depend on what you exactly mean with gs (the whole >>subject can be enormous: you surely know Microsound by Roads) >> >>PS: What about PD sources under GNU license? > > >****************************** > >>Date: Sat, 20 Sep 2003 19:55:10 -0400 >>From: Paris Smaragdis <paris(at)> >>To: Brian Gygi <bgygi(at)EBIRE.ORG> >> >>Basic granular synthesis is actually pretty easy in matlab, make a >>sparse matrix, scatter grains randomly in it and then do an inverse >>STFT. Here's some quick and dirty code. You can easily extend it to >>control other parameters as well by changing the way you construct y. >> >>Paris >> >> >>bw = 20; % Bandwidth (in FFT bins) >>bc = 30; % Freq center (in FFT bins) >>d = .5; % Grain density >>sz = 512; % FFT size >>l = 1000; % FFT frame length >> >>% Make grains >>y = sparse( ... >> round( (bw/4)*randn( 1, d*l)+bc), ... >> round( linspace( 1, l, d*l)), ... >> randn( 1, d*l)); >>y(sz/2+1,l) = 0; >> >>% Do ISTFT >>h = hanning( sz); >>s = zeros( l*(sz/4)+sz, 1); >>for i = 1:l >> z = full( [y(:,i); y(end-1:-1:2,i)]); >> s((i-1)*(sz/4)+1:(i-1)*(sz/4)+sz) = ... >> s((i-1)*(sz/4)+1:(i-1)*(sz/4)+sz) + h.*real( ifft( z)); >>end >> >>soundsc( s, 44100) > > >******************************* > >>From: "McAnally, Ken" <Ken.McAnally(at)> >>To: "'Brian Gygi'" <bgygi(at)> >>Subject: RE: Granular synthesis software > >>C-Sound has one. It is public domain and easy to program. >Instructions >>for download are under Getting Started >> hope this helps >>cheers Ken > >****************************** > >>Date: Sun, 21 Sep 2003 17:51:27 -0700 >>From: Curtis Roads <clang(at)> >>Subject: Re: Granular Synthesis Software >> >>Dear Brian, >> >>Granular synthesis comes in several forms, >>and there are many implementations. >> >>I don't really have a handy API/library in C++. >>With John Alexander, I wrote CloudGenerator >>in 1995. It is in C and Macintosh Toolbox >>(MacOS 7) so it is rather low level. >>I can send you this code but of course >>it no longer compiles. Frankly you would >>probably do better to start from scratch. >> >>My personal programs for granular synthesis >>run in SuperCollider 1 and 2 for MacOS 8 and 9. >>There is no PC version. >> >>A simple way to realize granular synthesis is >>to write your own grain generator to emit >>NOTE records that are read by CSound. >> >>If you do a web search you can probably find >>other code as well. A lot of people have developed >>code based on these techniques. My book >>Microsound describes many of these programs. >> >>You might contact Stephen Pope for the CSL >>code, which is a C++ library (stp(at) > >****************************** > >>Date: Sun, 21 Sep 2003 22:04:21 -0700 >>Subject: Re: Granular Synthesis Software >>From: Stephen Pope <stp(at)> >> >>I would only add to what Curtis has written that we are planning to >>develop facilities for granular synthesis in C++ using the CSL >>framework >>( in a class (MAT 240D, see >> this coming quarter. > >------------------------------ > >End of AUDITORY Digest - 24 Sep 2003 to 25 Sep 2003 (#2003-163) >*************************************************************** >

This message came from the mail archive
maintained by:
DAn Ellis <>
Electrical Engineering Dept., Columbia University