Hi Alex, been using additive synthesis implemented in pd to create bespoke timbres to fit xenharmonic scales. It has taken a while and is not finished yet as I've had problems with creating polyphonic ad syn instruments though I'm on the right track. I constructed a proof-of-concept model in Csound a few years back, but wanted a system more suited to live performance and on-the-fly tweaking, hence the pd implementation. What I've got so far is a monophonic ad syn instrument w/ control over the pitch and amplitude of each partial. An extra feature is a separate envelope for each partial to avoid tedium. Ultimately, there will be active, changing control over all of the partials, and a polyphonic version. Part of the machine is a scale generating interface triggered by input events such as MIDI. I don't use conversions from MIDI as some do, the pitches are derived from an expression block - it calculates the correct scale steps for the xenharmonic scale. Right now, there are only ET scales in there - if the user wants a 7-tet scale she/he simply places 7 in a number box and the machine does the rest. The timbre for the scale is then derived in the Setharian way - decide which scale steps should be consonant and manipulate the partials to suit your system. By doing the sums, the partial frequencies are arrived at, plugged into the adsyn partial arguments with a massive message box, and a timbre suited to a non-12 tet is the result. It's hit-or-miss, and I've not been able to fully assess the new scale-timbre pairs due to a lack of polyphony. It's coming along though.......
Rich Duckworth Lecturer in Music Technology School of Music House 5 Trinity College Dublin 2 Ireland It's the most devastating moment in a young mans life, when he quite reasonably says to himself, "I shall never play The Dane!" --- On Sat, 3/4/10, [email protected] <[email protected]> wrote: From: [email protected] <[email protected]> Subject: Pd-list Digest, Vol 61, Issue 14 To: [email protected] Date: Saturday, 3 April, 2010, 10:40 Send Pd-list mailing list submissions to [email protected] To subscribe or unsubscribe via the World Wide Web, visit http://lists.puredata.info/listinfo/pd-list or, via email, send a message with subject or body 'help' to [email protected] You can reach the person managing the list at [email protected] When replying, please edit your Subject line so it is more specific than "Re: Contents of Pd-list digest..." Today's Topics: 1. Re: Spectral Shiffting (Jaime Oliver) 2. Re: Spectral Shiffting (Andrew Faraday) 3. Re: strange colors with pix_record (Max) 4. pd~ and DIO errors (tim vets) 5. Re: pd~ and DIO errors (patrick) 6. Re: Spectral Shiffting (hard off) 7. Re: tabread4~ "broken" interpolation algorithm - was Re:, Max Smoother Audio than Pd? (Matteo Sisti Sette) ---------------------------------------------------------------------- Message: 1 Date: Fri, 2 Apr 2010 15:08:40 -0700 From: Jaime Oliver <[email protected]> Subject: Re: [PD] Spectral Shiffting To: Alexandre Porres <[email protected]> Cc: [email protected] Message-ID: <[email protected]> Content-Type: text/plain; charset="iso-8859-1" frequency shifting and then pitch shifting by the same amount in hertz will compress or expand a spectrum around a particular frequency (which could or could not be the fundamental...) J On Fri, Apr 2, 2010 at 1:05 PM, Alexandre Porres <[email protected]> wrote: > >I know I read the spectral mapping technique he uses, > >but I didn't really understand how it works. > > me neither, guess he didn't really explained it wel... > > cheers > > > 2010/4/2 Charles Henry <[email protected]> > > There's a method of tuning partials that William Sethares uses in his >> compositionss and he talks about it in his book Tuning Timbre Spectrum >> Scale. >> >> Specifically, he was also using inharmonic instruments which would be >> arranged into consonant scales, and the similar problem of using >> arbitrary scales with inharmonic spectra to fit with least dissonance. >> I know I read the spectral mapping technique he uses, but I didn't >> really understand how it works. >> >> On Fri, Apr 2, 2010 at 2:38 PM, Alexandre Porres <[email protected]> >> wrote: >> > Hi folks, >> > I'd lke to distort a sound spectrum by transposing partials the way I >> want. >> > Like making the spectrum more inharmonic or harmonic. >> > Anyone done something similar? >> > What kind of processing should I use? >> > I was thinking that maybe a Phase Vocoder, where you could control the >> > frequency separately, huh!?!? Anyone did this by the way? >> > thanks a lot >> > Alex >> > _______________________________________________ >> > [email protected] mailing list >> > UNSUBSCRIBE and account-management -> >> > http://lists.puredata.info/listinfo/pd-list >> > >> > >> > > > _______________________________________________ > [email protected] mailing list > UNSUBSCRIBE and account-management -> > http://lists.puredata.info/listinfo/pd-list > > -- Jaime E Oliver LR www.jaimeoliver.pe 858 750 0924 (cel) 858 202 1522 (home) 9168 Regents Rd. Apt. G La Jolla, CA 92037 USA -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20100402/76c3d366/attachment-0001.htm> ------------------------------ Message: 2 Date: Fri, 2 Apr 2010 23:32:04 +0100 From: Andrew Faraday <[email protected]> Subject: Re: [PD] Spectral Shiffting To: <[email protected]>, <[email protected]> Message-ID: <[email protected]> Content-Type: text/plain; charset="iso-8859-1" Hey Alex I'm not sure if this is what you're after, but have a look in the help browser for: 3.audio.examples/D08.table.spectrum This is basically a bank of oscillators reading their own specific pitches from a single table. Perhaps use: FFT to feed the table and [sigmund~] to set the pitch. Orchange the arguments in [spectrum_partial] in [pd oscbank] so you can manipulate the partials more precisely (you could add an inlet or a recieve to control these from somewhere else in your patch). Hope this helps. Andrew Date: Fri, 2 Apr 2010 15:38:15 -0400 From: [email protected] To: [email protected] Subject: [PD] Spectral Shiffting Hi folks, I'd lke to distort a sound spectrum by transposing partials the way I want. Like making the spectrum more inharmonic or harmonic. Anyone done something similar? What kind of processing should I use? I was thinking that maybe a Phase Vocoder, where you could control the frequency separately, huh!?!? Anyone did this by the way? thanks a lotAlex _________________________________________________________________ http://clk.atdmt.com/UKM/go/195013117/direct/01/ We want to hear all your funny, exciting and crazy Hotmail stories. Tell us now -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20100402/c4a1584e/attachment-0001.htm> ------------------------------ Message: 3 Date: Sat, 3 Apr 2010 00:52:58 +0200 From: Max <[email protected]> Subject: Re: [PD] strange colors with pix_record To: chris clepper <[email protected]> Cc: PD list <[email protected]> Message-ID: <[email protected]> Content-Type: text/plain; charset=us-ascii that version of GEM GEM: ver: 0.92.2 GEM: compiled: Jan 20 2010 unfortunately doesn't have a pix_recordQT pix_recordQT ... couldn't create m. Am 01.04.2010 um 21:25 schrieb chris clepper: > The Quicktime code being used in recent GEM builds is not the code I wrote, > and does not work that well. Can you try pix_recordQT and see if that > loads? > > > On Wed, Mar 31, 2010 at 10:03 AM, Max <[email protected]> wrote: > Hi List, > > i wonder why i get these strange colors when using pix_record with GEM ver: > 0.92.2 compiled: Jan 20 2010 on OS X 10.6.3 > Any Ideas? > > > > > > > > this is grayscale in GEM but instead it is quite blue in the recorded > quicktime. > > > > > _______________________________________________ > [email protected] mailing list > UNSUBSCRIBE and account-management -> > http://lists.puredata.info/listinfo/pd-list > > ------------------------------ Message: 4 Date: Sat, 3 Apr 2010 02:39:54 +0200 From: tim vets <[email protected]> Subject: [PD] pd~ and DIO errors To: pd-list <[email protected]> Message-ID: <[email protected]> Content-Type: text/plain; charset="iso-8859-1" Hi all, I have a rather heavy patch which causes DIO errors when I switch~ on several subpatches. I'm running pd + Jack on a rt kernel (ubuntu-studio Hardy),... Jack shows little or no Xruns. Now I wanted to try and optimize the patch by using [pd~]. The way I understood it is that [pd~] will start a subprocess and it will (automatically ?) divide the audio computation load over multiple processors. However, I get the impression that by using [pd~] I get the same (or even worse) results as with my regular "abstraction / [switch~]" approach; DIO error crackles. Any advice very welcome! Thanks, Tim -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20100403/90b585d1/attachment-0001.htm> ------------------------------ Message: 5 Date: Fri, 02 Apr 2010 21:13:15 -0400 From: patrick <[email protected]> Subject: Re: [PD] pd~ and DIO errors To: tim vets <[email protected]> Cc: pd-list <[email protected]> Message-ID: <[email protected]> Content-Type: text/plain; charset=ISO-8859-1; format=flowed hi tim, just to be sure, do you use the -rt flag when starting pd? also, try to run everything (jack, pd) in root (just to see if the glitches is the cause of a limitation). pat ------------------------------ Message: 6 Date: Sat, 3 Apr 2010 12:15:04 +0900 From: hard off <[email protected]> Subject: Re: [PD] Spectral Shiffting To: Andrew Faraday <[email protected]> Cc: [email protected], [email protected] Message-ID: <[email protected]> Content-Type: text/plain; charset="iso-8859-1" here's a frequency shifter that slur posted on the pd forum a little while ago: http://puredata.hurleur.com/viewtopic.php?pid=16842#p16842 -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20100403/83f29514/attachment-0001.htm> ------------------------------ Message: 7 Date: Sat, 03 Apr 2010 11:40:07 +0200 From: Matteo Sisti Sette <[email protected]> Subject: Re: [PD] tabread4~ "broken" interpolation algorithm - was Re:, Max Smoother Audio than Pd? To: Charles Henry <[email protected]> Cc: [email protected] Message-ID: <[email protected]> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Charles Henry escribi?: > The hardest class I ever had was stochastic analysis (as recent as 4 > years ago), where we solved problems like this. Fundamentally, it's > not too hard, but the details of the calculus are tricky. I'd prefer > to stay away unless there's a real good reason to do so :) > Well if you want to stay away from stochastic processes and consider the signal as a deterministic function, then you'll have to make assumptions that make sense for functions. And a flat spectrum isn't. As you said at the very beginning (almost), assuming it has a flat spectrum implies it is a dirac delta. Finding the interpolator that best interpolates a dirac delta is finding the interpolator that best matches the ideal interpolator (the sync), hence your result. Ok, we cannot find an interpolator that is optimum for all classes of functions, so we have to choose some class of functions. Even provided your reasoning about phase was right (so allowing to extend the result not only to the delta function but to all function with a flat spectrum with whatever phase), I don't think the resulting class of function is much more general and much more interesting. I think people often use a sinusoid to measure the quality of an interpolator (e.g. in Miller's book you find tables with the signal-to-noise ratio of the interpolator measured on a sinusoid, if i remember correctly). Maybe you could solve the problem of finding the best interpolator for a sinusoid. That would make a lot more sense than the best interpolator for a dirac delta. (note that I don't know if the result turns out to be the same) If you try to solve the problem for a whole "class" of functions of some interest, I'm afraid you'll find out it is much (much much much) more complicated than dealing with stochastic processes. Note that I'm not saying that >> E=|f(x)-sinc(x)|^2 is minimized when >> >> f(x)={sinc(x) -2<x<2 , 0 elsewhere is a bad choice. I'm just arguing that your reasoning doesn't prove it is the best choice. Indeed I think some software use >> E=|f(x)-sinc(x)|^2 is minimized when >> >> f(x)={sinc(x) -N<x<N , 0 elsewhere for some value of N. For infinite N, this would be the perfect interpolator, so obviously for large N it is good enough. The problem is that for N as little as 2, the truncation has non-negligible effects on the stop band, so the problem arises, whether another signal can reduce the effects of the truncation on the stop band, at the cost of some added ripple within the passband. Now that I think about it, your truncated sync should have perfect-flat passband response, and big stopband "ripples" (how do you call the stopband ripples? cannot remember the word), so any improvement at stopband will have to be traded off with some increased passband ripple. So here's what the truncated sync is best at: it's the one with the best (meaning flattest) bandpass response. Is this correct??? Note however that the highest part of the high frequency noise (due to the non-zero stopband part of the interpolator) will cause aliasing when resampling. The analysis of passband ripple and stopband "ripple" and whatever measure of their trade off doesn't take this into account: it just considers the passband ripple as passband distortion, and the stopband "ripple" as high-frequency noise. But after resampling part of that high frequency noise will be brought back to low frequency in form of aliasing. Note that the new Nyquist frequency depends on the resampling frequency and is not the same as the original Nyquist frequency, so how relevant aliasing is depends on the resampling rate. If yoy resample at 1:1 then _all_ high freq noise will become aliasing. Aliasing is often considered somewhat worse than anything else (correct me if I am wrong), I guess because it is specially audible, being perceived as something completely unconnected to the original signal. This last digression is nothing specific to the truncated sync, it is just to say that while trading off between passband distortion and stopband noise, we have to consider that stopband noise may alias back to low frequency and hence it is especially important to avoid it. Hence an interpolator with strong stopband ripple is likely to need to be used in conjunction with oversampling and filtering before resampling. By the way when we resample at an unpredictable and varying rate (such as using a tabreadWhatever~ with an input signal that is not a ramp), oversampling and filtering is not feasible (or is it???) -- Matteo Sisti Sette [email protected] http://www.matteosistisette.com ------------------------------ _______________________________________________ Pd-list mailing list [email protected] to manage your subscription (including un-subscription) see http://lists.puredata.info/listinfo/pd-list End of Pd-list Digest, Vol 61, Issue 14 ***************************************
_______________________________________________ [email protected] mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
