From padawan12 at obiwannabe.co.uk Thu Oct 1 03:49:03 2009 From: padawan12 at obiwannabe.co.uk (Andy Farnell) Date: Thu, 1 Oct 2009 08:49:03 +0100 Subject: [music-dsp] A little question about DSP performance In-Reply-To: <95B1D381-6F08-4FBE-86B3-F24A8AE7C434@audioimagination.com> References: <150537.29137.qm@web53512.mail.re2.yahoo.com> <341E98C0F2384DD0AD5B79BE05E24351@GOLAMD> <07B8F263-ADA9-4770-863D-C21CE43EBF00@audioimagination.com> <13ED037613D84AF1B6D9308B26D5C117@GOLAMD> <936CBAB1-BA45-4A03-A9B5-B39F204DAA52@audioimagination.com> <64A84B011B2A48BCBF9D83D6E801B26C@GOLAMD> <8DF4E8D4-E0BB-47D1-BE3F-3A7CBD056E73@audioimagination.com> <20090930082511.2abc7d5e.padawan12@obiwannabe.co.uk> <95B1D381-6F08-4FBE-86B3-F24A8AE7C434@audioimagination.com> Message-ID: <20091001084903.54c8869d.padawan12@obiwannabe.co.uk> Thankyou Robert, We'll play with that next semester. There is always a good discussion in the lecture when we talk about whether one can 'hear phase' (and to what extent phase changes constitute perceptible pitch and spectrum movements). cheers, Andy On Wed, 30 Sep 2009 21:27:23 -0400 robert bristow-johnson wrote: > > On Sep 30, 2009, at 3:25 AM, Andy Farnell wrote: > > > On Tue, 29 Sep 2009 21:02:50 -0400 > > robert bristow-johnson wrote: > > > > > >> i have to dig it up, but i have matlab files that will slowly screw > >> up the phases of a bandlimited square and saw to demonstrate what we > >> can hear. (they can also pass the waveform through a non-linearity > >> and then, for sure, you can hear a difference. but linear > >> interpolation is not non-linear. it's like running the sample > >> impulses through a filter with a triangular pulse as an impulse > >> response and then resampling.) i can look for that if you want. > > > > Yes please Robert, that sounds like a lovely demo for teaching, I'd > > be grateful to see it if you can find it. > > > > > since i dunno if Douglas's list software propagates attachments, i'll > just append the code below. i cannot tell where the lines get > wrapped, so you might have to fix spurious line wraps. > > enjoy. > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." > > > > > _______________________________________________________________________ > > > % > % sawtooth_phase.m > % > % a test to see if we can really hear phase changes > % in the harmonics of a Nyquist limited sawtooth wave. > % > % (c) 2004 rbj at audioimagination.com > % > > if ~exist('Fs') > Fs = 44100 % sample rate, Hz > end > > if ~exist('f0') > f0 = 110.25 % fundamental freq, Hz > end > > if ~exist('tone_duration') > tone_duration = 2.0 % seconds > end > > if ~exist('change_rate') > change_rate = 1.0 % Hz > end > > if ~exist('max_harmonic') > max_harmonic = floor((Fs/2)/f0) - 1 > end > > if ~exist('amplitude_factor') > amplitude_factor = 0.25 % this just keeps things from > clipping > end > > if ~exist('outFile') > outFile = 'sawtooth_phase.wav' > end > > > % make sure we don't uber-Nyquist > anything > max_harmonic = min(max_harmonic, floor((Fs/2)/f0)-1); > > t = linspace(0.0, tone_duration, Fs*tone_duration+1); > > detune = change_rate; > > x = sin(2*pi*f0*t); % start with 1st harmonic > > n = 2; % continue with 2nd harmonic > while (n <= max_harmonic) > if ((n-1) == 2*floor((n-1)/2)) % lessee if it's an "even" or > "odd" term > x = x + (1/n)*sin(2*pi*n*f0*t); > else > x = x - (1/n)*sin(2*pi*(n*f0+detune)*t); > detune = -detune; % comment this line in and see some > end % funky intermediate waveforms > n = n + 1; % continue with next harmonic > end > > x = amplitude_factor*x; > > % x = sin((pi/2)*x); % toss in a little soft clipping > > plot(t, x); % see > sound(x, Fs); % hear > wavwrite(x, Fs, outFile); % remember > > _______________________________________________________________________ > > > % > % square_phase.m > % > % a test to see if we can really hear phase changes > % in the harmonics of a Nyquist limited square wave. > % > % (c) 2004 rbj at audioimagination.com > % > > if ~exist('Fs') > Fs = 44100 % sample rate, Hz > end > > if ~exist('f0') > f0 = 110.25 % fundamental freq, Hz > end > > if ~exist('tone_duration') > tone_duration = 2.0 % seconds > end > > if ~exist('change_rate') > change_rate = 1.0 % Hz > end > > if ~exist('max_harmonic') > max_harmonic = floor((Fs/2)/f0) - 1 > end > > if ~exist('amplitude_factor') > amplitude_factor = 0.25 % this just keeps things from > clipping > end > > if ~exist('outFile') > outFile = 'square_phase.wav' > end > > > % make sure we don't uber-Nyquist > anything > max_harmonic = min(max_harmonic, floor((Fs/2)/f0)-1); > > t = linspace((-1/4)/f0, tone_duration-(1/4)/f0, Fs*tone_duration+1); > > detune = change_rate; > > x = cos(2*pi*f0*t); % start with 1st harmonic > > n = 3; % continue with 3rd harmonic > while (n <= max_harmonic) > if ((n-1) == 4*floor((n-1)/4)) % lessee if it's an "even" or > "odd" term > x = x + (1/n)*cos(2*pi*n*f0*t); > else > x = x - (1/n)*cos(2*pi*(n*f0+detune)*t); > detune = -detune; % comment this line in and see some > end % funky intermediate waveforms > n = n + 2; % continue with next odd harmonic > end > > x = amplitude_factor*x; > > % x = sin((pi/2)*x); % toss in a little soft clipping > > plot(t, x); % see > sound(x, Fs); % hear > wavwrite(x, Fs, outFile); % remember > > > _______________________________________________________________________ > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From douglas at music.columbia.edu Thu Oct 1 07:00:00 2009 From: douglas at music.columbia.edu (douglas repetto) Date: Thu, 1 Oct 2009 07:00:00 -0400 (EDT) Subject: [music-dsp] [admin] music-dsp FAQ Message-ID: <20091001110000.3774566C5D5@music.columbia.edu> Hi, Just a reminder that if you are new to the list you should read the music-dsp FAQ. It contains answers to both technical _and_ adminstrative questions that often come up on the list. If your question appears in the FAQ it is safe to assume that it has been discussed on the list many times in the past, and you should probably have a look through the list archives before posting your question to the list. http://music.columbia.edu/cmc/music-dsp/musicdspFAQ.html Also of interest to new and not-so-new list members: The music-dsp list archives http://music.columbia.edu/cmc/music-dsp/musicdsparchives.html The music-dsp source code archive http://www.musicdsp.org music-dsp books and reviews http://music.columbia.edu/cmc/music-dsp/dspbooks.html All this and more at: http://music.columbia.edu/cmc/music-dsp Hasta la pasta, douglas (this is an automated message sent out on the 1st and 15th of each month) From rbj at audioimagination.com Thu Oct 1 11:53:05 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Thu, 1 Oct 2009 11:53:05 -0400 Subject: [music-dsp] A little question about DSP performance In-Reply-To: <20091001084903.54c8869d.padawan12@obiwannabe.co.uk> References: <150537.29137.qm@web53512.mail.re2.yahoo.com> <341E98C0F2384DD0AD5B79BE05E24351@GOLAMD> <07B8F263-ADA9-4770-863D-C21CE43EBF00@audioimagination.com> <13ED037613D84AF1B6D9308B26D5C117@GOLAMD> <936CBAB1-BA45-4A03-A9B5-B39F204DAA52@audioimagination.com> <64A84B011B2A48BCBF9D83D6E801B26C@GOLAMD> <8DF4E8D4-E0BB-47D1-BE3F-3A7CBD056E73@audioimagination.com> <20090930082511.2abc7d5e.padawan12@obiwannabe.co.uk> <95B1D381-6F08-4FBE-86B3-F24A8AE7C434@audioimagination.com> <20091001084903.54c8869d.padawan12@obiwannabe.co.uk> Message-ID: <8EC3A99B-6CC6-4A23-8EB7-B7913479EC26@audioimagination.com> On Oct 1, 2009, at 3:49 AM, Andy Farnell wrote: > Thankyou Robert, yer welcome. it's not a big deal. i wrote it 5 years ago. > We'll play with that next semester. There is always > a good discussion in the lecture when we talk about whether > one can 'hear phase' (and to what extent phase changes > constitute perceptible pitch and spectrum movements). well we all know that a *changing* phase means a detuned frequency. so if the phase changes by several cycles per second, your harmonic will be detuned by several Hz. and i think we hear detuning if it's sufficient detuning. but if the phase changes so slowly as to be nearly static, i don't think we hear the difference in the waveshape UNLESS you run it through something non-linear (like many loudspeaker systems). for wavetable synthesis, i prefer to preserve phase and waveshape (since it doesn't cost anything) and that has been a little disagreement between myself and Andrew Horner. he just makes everything cosines, or he'll fiddle with phase to reduce the crest factor, or if he splices to a direct playback attack, he will continue with the constant phase of each harmonic that it had in the attack. i would prefer to preserve the shape, even in times we don't hear it through a linear playback device, because i think often that will not be the case. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From ruipedro at dei.uc.pt Thu Oct 1 12:03:35 2009 From: ruipedro at dei.uc.pt (Rui Pedro Paiva) Date: Thu, 01 Oct 2009 17:03:35 +0100 Subject: [music-dsp] invs: EvoMUSART 2010: 2nd Call for Papers Message-ID: <4AC4D2D7.3050900@dei.uc.pt> EvoMUSART 2010 8th European Event on Evolutionary and Biologically Inspired Music, Sound, Art and Design 7-9 April, 2010, Istanbul, Turkey http://www.evostar.org ---------------------------------------------------------------------- INTRODUCTION ---------------------------------------------------------------------- EvoMUSART 2010 is the eighth European Event on Evolutionary and Biologically Inspired Music, Sound, Art and Design. Following the success of previous editions and the growth of interest in the field, the main goal of EvoMUSART 2010 is to bring together researchers who are using biologically inspired techniques for artistic tasks, providing the opportunity to promote, present and discuss ongoing work in this area. EvoMUSART 2010 will be held from 7-9 April, 2010 in Istanbul, Turkey as part of the European Conference on the Applications of Evolutionary Computation, EvoApplications 2010. Accepted papers will be presented orally at the conference and included in the EvoApplications proceedings, published by Springer Verlag in the Lecture Notes in Computer Science series. EvoMUSART 2010 important dates are: Submission deadline: November 4, 2009 Conference: 7-9 April, 2010 ---------------------------------------------------------------------- TOPICS OF INTEREST ---------------------------------------------------------------------- The papers should concern the use of bio-inspired techniques (Evolutionary Computation, Artificial Life, Artificial Neural Networks, Swarm Intelligence, etc.) in the scope of the generation, analysis and interpretation of art, music, design, architecture and other artistic fields. Topics of interest include, but are not limited to: - Generation o Biologically Inspired Design and Art-Making Systems that create drawings, images, animations, sculptures, poetry, text, objects, designs, webpages, buildings, etc.; o Biologically Inspired Sound-Generators and Music-Systems that create music, aggregate sound, or simulate instruments, voices, effects, etc; o Robotic Based Evolutionary Art and Music; o Other related generative techniques; - Theory o Computational Aesthetics, Emotional Response, Surprise, Novelty; o Representation techniques; o Comparative analysis and classification; o Validation methodologies; o New biologically inspired computation models in art, music and design; - Computer Aided Creativity o New ways of integrating users into evolutionary computation art and music frameworks; o Analysis and evaluation of: the artistic potential of biologically inspired art and music; the artistic processes inherent to these approaches; the resulting artifacts; o Collaborative distributed artificial art environments; - Automation o Techniques for automated fitness assignment; o Systems that exploit biologically inspired computation to analyze artistic objects and artifacts; ---------------------------------------------------------------------- ADDITIONAL INFORMATION AND SUBMISSION DETAILS ---------------------------------------------------------------------- Submit your manuscript, at most 10 A4 pages long, in Springer LNCS format no later than November 4, 2009. Formatting instructions available at: http://www.springer.com/computer/lncs?SGWID=0-164-7-72376-0 The papers will be peer reviewed by at least three members of the program committee. Authors will be notified via email on the results of the review by 20 December 2009. The authors of accepted papers will have to improve their paper on the basis of the reviewers' comments and will be asked to send a camera ready version of their manuscripts, along with text sources and pictures, by 10 January 2010. The accepted papers will appear in the event proceedings, published in Springer LNCS Series, which will be available at the event. Further information, including the Online Submission Details, can be found on the following pages: Evo*2010: http://www.evostar.org EvoMUSART2010: http://dces.essex.ac.uk/research/evostar/evomusart.html ---------------------------------------------------------------------- IMPORTANT DATES ---------------------------------------------------------------------- Submission: 4 November 2009 EvoMUSART: 7-9 April 2009 ---------------------------------------------------------------------- PROGRAMME COMMITTEE ---------------------------------------------------------------------- Alain Lioret, Paris 8 University, France Alan Dorin, Monash University, Australia Alejandro Pazos, University of A Coruna, Spain Amilcar Cardoso, University of Coimbra, Portugal Amy K. Hoover, University of Central Florida, USA Andrew Gildfind, Google, Inc., Australia Andrew Horner, University of Science & Technology, Hong Kong Anna Ursyn, University of Northern Colorado, USA Antonino Santos, University of A Coruna, Spain Artemis Sanchez Moroni, Renato Archer Research Center, Brazil Bill Manaris, College of Charleston, USA Brian Ross, Brock University, Canada Carlos Grilo, Instituto Polit?cnico de Leiria, Portugal Christian Jacob , University of Calgary, Canada Colin Johnson, University of Kent, UK Craig Kaplan, University of Waterloo, Canada David Hart, Independent Artist, USA Eduardo Miranda, University of Plymouth, UK Eleonora Bilotta , University of Calabria, Italy Erwin Driessens, Independent Artist, Netherlands Gary Nelson, Oberlin College, USA Gerhard Widmer, Johannes Kepler University Linz, Austria Hans Dehlinger, Independent Artist, Germany James McDermott, University of Limerick, Ireland Jon McCormack, Monash University, Australia Jonatas Manzolli , UNICAMP, Brasil Jorge Tavares, University of Coimbra, Portugal Juan Romero, University of A Coruna, Spain Kenneth O. Stanley, University of Central Florida, USA Luigi Pagliarini, Pescara Electronic Artists Meeting & University of Southern Denmark, Italy Maria Verstappen, Independent Artist, Netherlands Matthew Lewis, Ohio State University, USA Mauro Annunziato, Plancton Art Studio, Italy Nicolas Monmarch?, University of Tours, France Oliver Bown, Monash University, Australia Pablo Gerv?s, Universidad Complutense de Madrid , Spain Palle Dahlstedt, G?teborg University, Sweden Paul Brown, University of Sussex, UK Paulo Urbano, Universidade de Lisboa , Portugal Peter Bentley, University College London , UK Philip Galanter, Texas A&M College of Architecture, USA Rafael Ramirez, Pompeu Fabra University, Spain Ruli Manurung, University of Indonesia, Indonesia Simon Colton, Imperial College, UK Somnuk Phon-Amnuaisuk, Multimedia University, Malaysia Stefano Cagnoni, University of Parma, Italy Stephen Todd, IBM, UK Steve DiPaola, Simon Fraser University, Canada Tim Blackwell, Goldsmiths College, University of London, UK Vic Ciesielski, RMIT, Australia ---------------------------------------------------------------------- EvoMUSART CHAIRS ---------------------------------------------------------------------- Penousal Machado University of Coimbra, Portugal Machado AT dei DOT uc DOT pt Gary Greenfield University of Richmond, USA ggreenfi AT richmond DOT edu From didid at skynet.be Thu Oct 1 12:18:54 2009 From: didid at skynet.be (Didier Dambrin) Date: Thu, 1 Oct 2009 18:18:54 +0200 Subject: [music-dsp] A little question about DSP performance In-Reply-To: <8EC3A99B-6CC6-4A23-8EB7-B7913479EC26@audioimagination.com> References: <150537.29137.qm@web53512.mail.re2.yahoo.com><341E98C0F2384DD0AD5B79BE05E24351@GOLAMD><07B8F263-ADA9-4770-863D-C21CE43EBF00@audioimagination.com><13ED037613D84AF1B6D9308B26D5C117@GOLAMD><936CBAB1-BA45-4A03-A9B5-B39F204DAA52@audioimagination.com><64A84B011B2A48BCBF9D83D6E801B26C@GOLAMD><8DF4E8D4-E0BB-47D1-BE3F-3A7CBD056E73@audioimagination.com><20090930082511.2abc7d5e.padawan12@obiwannabe.co.uk><95B1D381-6F08-4FBE-86B3-F24A8AE7C434@audioimagination.com><20091001084903.54c8869d.padawan12@obiwannabe.co.uk> <8EC3A99B-6CC6-4A23-8EB7-B7913479EC26@audioimagination.com> Message-ID: <91B38E400BA946448DFD889DDFA862A8@GOLAMD> mmh but phases can be very obvious in a static way as well. I mean, randomize the phases of harmonics in a saw, the difference is extreme. I think that what matters is the difference to neighbor harmonic phases (just like the difference in amplitude to neighbor harmonics). That is, you can slowly shift the phases in a saw so that the last one ends up shifted by half, it shouldn't be audible. Now mess with the phase of just 1 harmonic, and that harmonic will be audible, it will ring through the saw. > On Oct 1, 2009, at 3:49 AM, Andy Farnell wrote: > >> Thankyou Robert, > > yer welcome. it's not a big deal. i wrote it 5 years ago. > >> We'll play with that next semester. There is always >> a good discussion in the lecture when we talk about whether >> one can 'hear phase' (and to what extent phase changes >> constitute perceptible pitch and spectrum movements). > > well we all know that a *changing* phase means a detuned frequency. > so if the phase changes by several cycles per second, your harmonic > will be detuned by several Hz. and i think we hear detuning if it's > sufficient detuning. but if the phase changes so slowly as to be > nearly static, i don't think we hear the difference in the waveshape > UNLESS you run it through something non-linear (like many loudspeaker > systems). for wavetable synthesis, i prefer to preserve phase and > waveshape (since it doesn't cost anything) and that has been a little > disagreement between myself and Andrew Horner. he just makes > everything cosines, or he'll fiddle with phase to reduce the crest > factor, or if he splices to a direct playback attack, he will > continue with the constant phase of each harmonic that it had in the > attack. i would prefer to preserve the shape, even in times we don't > hear it through a linear playback device, because i think often that > will not be the case. > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." > > > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp -------------------------------------------------------------------------------- No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.409 / Virus Database: 270.14.1/2407 - Release Date: 10/01/09 06:34:00 From rbj at audioimagination.com Thu Oct 1 12:22:06 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Thu, 1 Oct 2009 12:22:06 -0400 Subject: [music-dsp] A little question about DSP performance In-Reply-To: <91B38E400BA946448DFD889DDFA862A8@GOLAMD> References: <150537.29137.qm@web53512.mail.re2.yahoo.com><341E98C0F2384DD0AD5B79BE05E24351@GOLAMD><07B8F263-ADA9-4770-863D-C21CE43EBF00@audioimagination.com><13ED037613D84AF1B6D9308B26D5C117@GOLAMD><936CBAB1-BA45-4A03-A9B5-B39F204DAA52@audioimagination.com><64A84B011B2A48BCBF9D83D6E801B26C@GOLAMD><8DF4E8D4-E0BB-47D1-BE3F-3A7CBD056E73@audioimagination.com><20090930082511.2abc7d5e.padawan12@obiwannabe.co.uk><95B1D381-6F08-4FBE-86B3-F24A8AE7C434@audioimagination.com><20091001084903.54c8869d.padawan12@obiwannabe.co.uk> <8EC3A99B-6CC6-4A23-8EB7-B7913479EC26@audioimagination.com> <91B38E400BA946448DFD889DDFA862A8@GOLAMD> Message-ID: <9E1A540B-DA6A-4481-AD0C-5B18FFF68F77@audioimagination.com> On Oct 1, 2009, at 12:18 PM, Didier Dambrin wrote: > > mmh but phases can be very obvious in a static way as well. > I mean, randomize the phases of harmonics in a saw, the difference is > extreme. > > I think that what matters is the difference to neighbor harmonic > phases > (just like the difference in amplitude to neighbor harmonics). That > is, you > can slowly shift the phases in a saw so that the last one ends up > shifted by > half, it shouldn't be audible. > Now mess with the phase of just 1 harmonic, and that harmonic will be > audible, it will ring through the saw. so you're saying that if we mess with a bunch of harmonics (some get shifted to the left others to the right) we can't hear the difference, but if we mess with *one* harmonic we do?? -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From rbj at audioimagination.com Thu Oct 1 12:22:42 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Thu, 1 Oct 2009 12:22:42 -0400 Subject: [music-dsp] A little question about DSP performance In-Reply-To: <7E21943CE879413E87D156B0CDE49B8F@GOLAMD> References: <20090930030031.11163@web004.roc2.bluetie.com> <7E21943CE879413E87D156B0CDE49B8F@GOLAMD> Message-ID: <611C5C0F-27E1-4D5A-A59C-2E2DAA26CAE2@audioimagination.com> On Sep 30, 2009, at 10:36 AM, Didier Dambrin wrote: > >>>> one thing, with either additive synthesis (to emulate existing >>>> tones, >>>> like electric piano notes or something) or wavetable, in that >>>> process >>>> ("let's make our synthesizer sound like a Wurlitzer model 200 >>>> electric piano of which we have several sampled notes") is a >>>> computationally intensive process that may likely not be anywhere >>>> close to real time. >> >> >>> Why not? >> >> okay, i'm gonna make some self-referential points, please forgive >> me for >> that. i just can't think of the other early authors in CMJ. so, i >> suggest, if you haven't done so, to take a look at the Wavetable >> Synthesis >> 101 paper (it's not meant to be a patronizing title, just an anally >> precise one) that is on the music-dsp site. >> >> in either additive synthesis or wavetable synthesis (let's assume >> all of >> the overtones are virtually harmonic, any small deviation of the >> overtone >> from precisely harmonic is modeled as a slowly changing phase which >> becomes a slowly changing amplitude on the two quadrature >> components of >> each harmonic). now, when "paramterizing" the data of the original >> waveform, represented either as a collection of envelopes on your >> additive >> sines or as a collection of envelopes each governing a particular >> point in >> the wavetable (if it's harmonic, the wavetable point envelopes >> ain't any >> nastier than the additive synth envelopes), there is an issue of >> optimally >> representing those envelopes with a finite set, indeed a >> compressed set of >> data. a simple and useful method is representing these envelopes as >> continuous piecewise-linear functions. where are the breakpoints >> in those >> piecewise-linear functions? >> > > > Mmh but I'm still talking about a single-cycle here, well, even if it's a bandlimited sawtooth, a bandlimited sawtooth at A-440 is different than a bandlimited sawtooth at A-110. > I'm not talking about > resynthesis of existing things. how 'boat digital synthesis of classic analog waveforms? > To start with, I don't even much believe in > resynthesis, there's usually a noise component that will be lost or > emulated > in a half-assed way. if it's a nice tone, like an electric piano, there isn't much noise past the attack, unless you count the 60-Hz hum that your Wurlitzer emits. but, even with wavetable, you can do it in such a phase- coherent manner that you can line up your synthesized note (with many breakpoints in the envelopes, before data reduction) with the original and subtract and see what residual noise comes out. maybe that can be modeled in. > Also even when you can resynthesize something, there's still the > problem of > giving the user ways to play with a huge amount of data, and > multipoint > envelopes are useless here (no one would start refining hundreds of > envelopes). agreed, when there are 120 knobs, each with a subtle effect (but together they change the whole ball game), that ain't much of a user interface. but, if there were a collection of 3 or 4 sounds that the user want's to morph between, you can phase align the waveshapes and use a joystick like in the Prophet VS and *still* have the notes evolve in time (or as a function of pitch, etc, time, key pitch, morph piano to trumpet, these are all just "dimensions" of parameter) > That leaves spectral editing through bitmaps, the only good way > IMHO, but only a way to create new sounds out of existing ones, not to > accurately reproduce instruments. i need help here. i know bitmaps w.r.t. pictures. do you mean editing in Audition or Pro Tools and redrawing waveforms? >>> If we're still talking about harmonics (still talking about >>> bandlimited >>> single-cycles), in the worst case (a very low fundamental), you >>> will have >>> maybe 500 harmonics. >>> (but that's not for the OP's targeted CPU) >> >> wow. you mean that in your bandlimited saw playing at, say, A-55 >> Hz, that >> if you were missing all of the harmonics above the bottom 250, it >> would >> make a real difference? i know that's still in the below 20 kHz >> range, >> but i have my doubts. > > > Let me check, for a 55hz fundamental, you need up to 350 harmonics. > Testing.. yes you can notice less clarity with just 250 (but if > you're not > picky you can probably get away with it, if you also fade out the last > ones). > > With 512 I'm basing myself on a worst-case C32hz, probably the > lowest note > needed for real uses, at one point it moves away from audio rate & > it just a > succession of clicks. > > But it's dynamic anyway, if the user uses higher keys, then it eats > less > CPU. with wavetable, it's the same. just few harmonics in the waveform for higher keys. > > >> storage purposes, a 256 point wavetable can accurately and >> independently >> represent and control each harmonic up to the 127th. so, if you >> had 127 >> independent >amplitude envelopes and 127 independent phase >> envelopes (and >> the time-derivative of those represent the frequency deviation of the >> overtone from exactly >harmonic), then you can convert those 254 >> envelopes >> into 256 envelopes governing each point of the wavetable (the >> difference of >> 2 is because, to make our lives and >maths simple, let's assume >> that the >> envelopes for DC and for the Nyquist frequency are 0). > Or are you talking about using a wavetable to do additive > synthesis? (I'm > not quite following here) for overtones that are harmonic, wavetable reproduces an evolving waveform just as well as additive. if overtones get non-harmonic, then it requires many wavetables per second (to slide the phase rapidly enough to detune the harmonic) or you gotta do it additive. > Well, no since the computation of the sine (using that famous > trigonometric > property) is already lighter on CPU than a linear interpolation. > But that > probably depends on the choice of CPU. > how about computing 50 sines and adding them up? is that lighter than one interpolation? >> you get do that with no loss of generality, why bother to have it >> in the >> frequency domain? now, again, i recognize that additive synthesis of >> inharmonic overtones (like bells) can't be done with a single >> wavetable >> synth, but *maybe* with what's called "group additive synthesis". >> here >> instead of summing N sine oscillators, you are summing 2 or 3 >> wavetable >> oscillators, each governing a harmonic group. that's *still* much >> cheaper >> than additive synthesis, still not as general, but more general >> than simple >> wavetable synthesis. Andrew Horner and some student(s) of his did >> a paper >> or fifteen about that. >> > > I also thought of that, but if you're precomputing freq bands & > stack them > up, you can as well precompute a normal bandlimited wavetable in > the first > place, so I don't see the point. > > > >>>>> considering that a small FFT using a good >>>>> library can be pretty much transparent on the CPU these days. >>>> >>>> okay, fine. but what is to be gained with that over simply >>>> sampling >>>> the attack? >> >> >>> ..to avoid a wavetable, & let the user mess with waveforms (the >>> CPU may >>> not >>> be neglectable if you're precomputing 20-30 bandlimited waveforms >>> each >>> time >>> the user messes with the waveform [like through a little additive >>> editor]) >> >> you can mess with waveforms with wavetables synthesis. you can >> convert to >> equivalent additive synth data, let the user mess up the envelopes >> on each >> harmonic to his/her heart's content, and then convert back to >> wavetable. >> unless the user wants to detune (away from exactly harmonic) the >> overtones >> a great deal, nothing is > > > Yes, convert back to a wavetable, as opposed to just FFTing it. > So with your method you have a big CPU hit at editing time, no CPU > hit at > voice-trigger time, and slight CPU hit at voice processing time > (for the > interpolation between 2 waveforms from the wavetable). yup. but if the data reduction (find the breakpoints) is simple, you don't notice anything at editing time. you might have a little at program load time if you expand short wavetables (just long enough to cover all of the harmonics) to longer wavetables (so that linear interpolation sounds good) before playback. it was meant to save as much as possible at note-on, but if you interpolate between phase- aligned waveforms as the note evolves ("slow time", one dimension of parameter) and you interpolate between waveforms as the note goes up the keyboard (another dimension) and you interpolate between another set of waveforms as a function of note-velocity or key pressure or the position of the mod wheel or joystick or whatever, that's another dimension of parameter. for each dimension of parameter that you use to interpolate between waveforms, that *doubles the number of wavetables all being interpolated in real time. that can get costly. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From didid at skynet.be Thu Oct 1 12:33:13 2009 From: didid at skynet.be (Didier Dambrin) Date: Thu, 1 Oct 2009 18:33:13 +0200 Subject: [music-dsp] A little question about DSP performance In-Reply-To: <9E1A540B-DA6A-4481-AD0C-5B18FFF68F77@audioimagination.com> References: <150537.29137.qm@web53512.mail.re2.yahoo.com><341E98C0F2384DD0AD5B79BE05E24351@GOLAMD><07B8F263-ADA9-4770-863D-C21CE43EBF00@audioimagination.com><13ED037613D84AF1B6D9308B26D5C117@GOLAMD><936CBAB1-BA45-4A03-A9B5-B39F204DAA52@audioimagination.com><64A84B011B2A48BCBF9D83D6E801B26C@GOLAMD><8DF4E8D4-E0BB-47D1-BE3F-3A7CBD056E73@audioimagination.com><20090930082511.2abc7d5e.padawan12@obiwannabe.co.uk><95B1D381-6F08-4FBE-86B3-F24A8AE7C434@audioimagination.com><20091001084903.54c8869d.padawan12@obiwannabe.co.uk><8EC3A99B-6CC6-4A23-8EB7-B7913479EC26@audioimagination.com><91B38E400BA946448DFD889DDFA862A8@GOLAMD> <9E1A540B-DA6A-4481-AD0C-5B18FFF68F77@audioimagination.com> Message-ID: <80EC8FE56AE6467D81441E0FE108AB35@GOLAMD> no I'm saying that all that matters is the abruptness of the change. If you slowly shift each harmonic, you can end up with a big phase difference between the first & the last harmonic, it will still sound the same. But if you change one phase & not neighbor ones, it will sound different, you will hear that specific harmonic through the saw. I'd compare this to audible ringing when you abruptly filter something. I can post audio files but it's pretty easy to test in an additive synth. >> mmh but phases can be very obvious in a static way as well. >> I mean, randomize the phases of harmonics in a saw, the difference is >> extreme. >> >> I think that what matters is the difference to neighbor harmonic >> phases >> (just like the difference in amplitude to neighbor harmonics). That >> is, you >> can slowly shift the phases in a saw so that the last one ends up >> shifted by >> half, it shouldn't be audible. >> Now mess with the phase of just 1 harmonic, and that harmonic will be >> audible, it will ring through the saw. > > so you're saying that if we mess with a bunch of harmonics (some get > shifted to the left others to the right) we can't hear the > difference, but if we mess with *one* harmonic we do?? > > From didid at skynet.be Thu Oct 1 12:46:24 2009 From: didid at skynet.be (Didier Dambrin) Date: Thu, 1 Oct 2009 18:46:24 +0200 Subject: [music-dsp] A little question about DSP performance In-Reply-To: <611C5C0F-27E1-4D5A-A59C-2E2DAA26CAE2@audioimagination.com> References: <20090930030031.11163@web004.roc2.bluetie.com><7E21943CE879413E87D156B0CDE49B8F@GOLAMD> <611C5C0F-27E1-4D5A-A59C-2E2DAA26CAE2@audioimagination.com> Message-ID: <196C1ACCDC1B4779859E9FB02E66F535@GOLAMD> >> Mmh but I'm still talking about a single-cycle here, > > well, even if it's a bandlimited sawtooth, a bandlimited sawtooth at > A-440 is different than a bandlimited sawtooth at A-110. > By the bandlimit obviously, but I don't see your point >> That leaves spectral editing through bitmaps, the only good way >> IMHO, but only a way to create new sounds out of existing ones, not to >> accurately reproduce instruments. > > i need help here. i know bitmaps w.r.t. pictures. do you mean > editing in Audition or Pro Tools and redrawing waveforms? > I was talking about "image synthesis", yes pretty much spectral editing through a bitmap. Not really like spectral editing in audition, I'd assume it's done through FIRs there, not using any of the analysis. >> But it's dynamic anyway, if the user uses higher keys, then it eats >> less >> CPU. > > with wavetable, it's the same. just few harmonics in the waveform > for higher keys. > ..but your waveform won't eat less CPU if it contains less harmonics (not sure we're talking about the same thing here) >> Well, no since the computation of the sine (using that famous >> trigonometric >> property) is already lighter on CPU than a linear interpolation. >> But that >> probably depends on the choice of CPU. >> > > how about computing 50 sines and adding them up? is that lighter > than one interpolation? > Than a sinc (even with just 8 taps), certainly. Than a linear one, no (but it shouldn't be far, it depends on the cache) >> Yes, convert back to a wavetable, as opposed to just FFTing it. >> So with your method you have a big CPU hit at editing time, no CPU >> hit at >> voice-trigger time, and slight CPU hit at voice processing time >> (for the >> interpolation between 2 waveforms from the wavetable). > > yup. but if the data reduction (find the breakpoints) is simple, you I think you're still talking about additive synthesis, while I was talking about how the OP should compute his single, classic oscillator. Or what breakpoints are we talking of? > don't notice anything at editing time. you might have a little at > program load time if you expand short wavetables (just long enough to > cover all of the harmonics) to longer wavetables (so that linear > interpolation sounds good) before playback. it was meant to save as > much as possible at note-on, but if you interpolate between phase- > aligned waveforms as the note evolves ("slow time", one dimension of > parameter) and you interpolate between waveforms as the note goes up > the keyboard (another dimension) and you interpolate between another > set of waveforms as a function of note-velocity or key pressure or > the position of the mod wheel or joystick or whatever, that's another > dimension of parameter. for each dimension of parameter that you use > to interpolate between waveforms, that *doubles the number of > wavetables all being interpolated in real time. that can get costly. > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." > > > From rbj at audioimagination.com Thu Oct 1 12:46:26 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Thu, 1 Oct 2009 12:46:26 -0400 Subject: [music-dsp] A little question about DSP performance In-Reply-To: <80EC8FE56AE6467D81441E0FE108AB35@GOLAMD> References: <150537.29137.qm@web53512.mail.re2.yahoo.com><341E98C0F2384DD0AD5B79BE05E24351@GOLAMD><07B8F263-ADA9-4770-863D-C21CE43EBF00@audioimagination.com><13ED037613D84AF1B6D9308B26D5C117@GOLAMD><936CBAB1-BA45-4A03-A9B5-B39F204DAA52@audioimagination.com><64A84B011B2A48BCBF9D83D6E801B26C@GOLAMD><8DF4E8D4-E0BB-47D1-BE3F-3A7CBD056E73@audioimagination.com><20090930082511.2abc7d5e.padawan12@obiwannabe.co.uk><95B1D381-6F08-4FBE-86B3-F24A8AE7C434@audioimagination.com><20091001084903.54c8869d.padawan12@obiwannabe.co.uk><8EC3A99B-6CC6-4A23-8EB7-B7913479EC26@audioimagination.com><91B38E400BA946448DFD889DDFA862A8@GOLAMD> <9E1A540B-DA6A-4481-AD0C-5B18FFF68F77@audioimagination.com> <80EC8FE56AE6467D81441E0FE108AB35@GOLAMD> Message-ID: <92ADF266-0D31-4F59-B002-63691E100780@audioimagination.com> On Oct 1, 2009, at 12:33 PM, Didier Dambrin wrote: > no I'm saying that all that matters is the abruptness of the change. well, we're not disagreeing about that either. a sudden change of phase is either a click (if the change is instantaneous), or a blip or a glitch or a bump or something like that. sure we hear that. but, in a bandlimited sawtooth, it is *not* the abrupt "flyback" (a term borrowed from TV technology) of the sawtooth that we hear specifically. you can mess up the phases so there is no abrupt flyback and it sounds the same (unless you run it through a non- linear process). > If you slowly shift each harmonic, you can end up with a big phase > difference between the first & the last harmonic, it will still > sound the > same. > > But if you change one phase & not neighbor ones, it will sound > different, i disagree. the MATLAB code i posted can be easily modified so that only one phase is "detuned". would you try that out? > you will hear that specific harmonic through the saw. > > I'd compare this to audible ringing when you abruptly filter > something. > if you're talking about a discontinuity, that is not what i am talking about. i am questioning if you can hear the difference between waveforms when the amplitudes of the harmonics remain the same, but the phases change. and i am questioning if it makes any difference at all if you linearly interpolate (or any other form of LTI interplation) between points. > > I can post audio files but it's pretty easy to test in an additive > synth. can you post a MATLAB/Octave file that generates the waveforms and shows explicitly what the change is? -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From didid at skynet.be Thu Oct 1 13:02:34 2009 From: didid at skynet.be (Didier Dambrin) Date: Thu, 1 Oct 2009 19:02:34 +0200 Subject: [music-dsp] Fw: A little question about DSP performance Message-ID: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> I'm not talking about a change of phase over time, but the difference between 2 tones in which the only difference is the phase of one of their harmonics. I don't know matlab btw. But I'll attach a wav file (can't compress since it would mess with the phases). 1. normal saw 2. saw with harmonic phases progressively wrapping 3x around from fundamental to the last one (sounds the same) 3. saw with only the 20th (if I remember) harmonic's phase shifted by half (you can hear that specific harmonic through) (well the attachment isn't accepted but you can try it easily) > > >> >> On Oct 1, 2009, at 12:33 PM, Didier Dambrin wrote: >> >>> no I'm saying that all that matters is the abruptness of the change. >> >> well, we're not disagreeing about that either. a sudden change of >> phase is either a click (if the change is instantaneous), or a blip >> or a glitch or a bump or something like that. sure we hear that. >> >> but, in a bandlimited sawtooth, it is *not* the abrupt "flyback" (a >> term borrowed from TV technology) of the sawtooth that we hear >> specifically. you can mess up the phases so there is no abrupt >> flyback and it sounds the same (unless you run it through a non- >> linear process). >> >>> If you slowly shift each harmonic, you can end up with a big phase >>> difference between the first & the last harmonic, it will still >>> sound the >>> same. >>> >>> But if you change one phase & not neighbor ones, it will sound >>> different, >> >> i disagree. the MATLAB code i posted can be easily modified so that >> only one phase is "detuned". would you try that out? >> >>> you will hear that specific harmonic through the saw. >>> >>> I'd compare this to audible ringing when you abruptly filter >>> something. >>> >> >> if you're talking about a discontinuity, that is not what i am >> talking about. i am questioning if you can hear the difference >> between waveforms when the amplitudes of the harmonics remain the >> same, but the phases change. and i am questioning if it makes any >> difference at all if you linearly interpolate (or any other form of >> LTI interplation) between points. >> >>> >>> I can post audio files but it's pretty easy to test in an additive >>> synth. >> >> can you post a MATLAB/Octave file that generates the waveforms and >> shows explicitly what the change is? >> >> -- >> >> r b-j rbj at audioimagination.com >> >> "Imagination is more important than knowledge." >> >> >> >> >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book reviews, >> dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp > > > -------------------------------------------------------------------------------- > > > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.409 / Virus Database: 270.14.1/2407 - Release Date: 10/01/09 > 06:34:00 > From rbj at audioimagination.com Thu Oct 1 13:10:59 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Thu, 1 Oct 2009 13:10:59 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> Message-ID: <56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> On Oct 1, 2009, at 1:02 PM, Didier Dambrin wrote: > I'm not talking about a change of phase over time, but the difference > between 2 tones in which the only difference is the phase of one of > their > harmonics. good, then we're talking about the same thing. > I don't know matlab btw. But I'll attach a wav file (can't > compress since > it > would mess with the phases). zipping it wouldn't, but it also wouldn't compress it a lot. > 1. normal saw > 2. saw with harmonic phases progressively wrapping 3x around from > fundamental to the last one (sounds the same) > 3. saw with only the 20th (if I remember) harmonic's phase shifted > by half > (you can hear that specific harmonic through) so, you're saying that if we detune the 20th harmonic just a little, so that it is 3 cycles ahead or behind, in relation to where it would have been if we didn't detune it at all, at the end of a long sound file of a bandlimited saw. is that right? i don't expect it to be audible, but i will not go and modify the matlab file and find out. maybe my clay ears ain't golden enough to hear it, and it's me, not you. but i am skeptical that it's audible. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From rbj at audioimagination.com Thu Oct 1 13:14:13 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Thu, 1 Oct 2009 13:14:13 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> Message-ID: <48304837-951B-4E5E-AEC5-F9741BB1FB92@audioimagination.com> On Oct 1, 2009, at 1:10 PM, robert bristow-johnson wrote: >> 1. normal saw >> 2. saw with harmonic phases progressively wrapping 3x around from >> fundamental to the last one (sounds the same) >> 3. saw with only the 20th (if I remember) harmonic's phase shifted >> by half >> (you can hear that specific harmonic through) > > so, you're saying that if we detune the 20th harmonic just a little, > so that it is 3 cycles ahead or behind, in relation to where it would > have been if we didn't detune it at all, at the end of a long sound > file of a bandlimited saw. is that right? > > i don't expect it to be audible, but i will not go and modify the > matlab file and find out. i meant to say that i *will* go modify the matlab file to find out. pesky words with their pesky meanings. it's like the historic "wicked bible" that has "Thou shalt commit adultery." how the insertion or removal of a single word can change the meaning of things. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From didid at skynet.be Thu Oct 1 13:18:57 2009 From: didid at skynet.be (Didier Dambrin) Date: Thu, 1 Oct 2009 19:18:57 +0200 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> Message-ID: yes This is why I chose to increment phases using double float accuracy in my additive synth, because slight accumulation errors would become really obvious over time. > so, you're saying that if we detune the 20th harmonic just a little, > so that it is 3 cycles ahead or behind, in relation to where it would > have been if we didn't detune it at all, at the end of a long sound > file of a bandlimited saw. is that right? > > i don't expect it to be audible, but i will not go and modify the > matlab file and find out. maybe my clay ears ain't golden enough to > hear it, and it's me, not you. but i am skeptical that it's audible. > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." > > > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp -------------------------------------------------------------------------------- No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.409 / Virus Database: 270.14.1/2407 - Release Date: 10/01/09 06:34:00 From rbj at audioimagination.com Thu Oct 1 13:25:25 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Thu, 1 Oct 2009 13:25:25 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> Message-ID: <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> On Oct 1, 2009, at 1:18 PM, Didier Dambrin wrote: >> so, you're saying that if we detune the 20th harmonic just a little, >> so that it is 3 cycles ahead or behind, in relation to where it would >> have been if we didn't detune it at all, at the end of a long sound >> file of a bandlimited saw. is that right? > > yes > > This is why I chose to increment phases using double float accuracy > in my > additive synth, because slight accumulation errors would become really > obvious over time. MATLAB does everything in double. either way i would not expect that to be an issue of audibility. > >> i don't expect it to be audible, but i will [..] go and modify the >> matlab file and find out. maybe my clay ears ain't golden enough to >> hear it, and it's me, not you. but i am skeptical that it's audible. well, at least we know we are talking about the same experiment. i think we differ on the outcome expected. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From didid at skynet.be Thu Oct 1 13:30:29 2009 From: didid at skynet.be (Didier Dambrin) Date: Thu, 1 Oct 2009 19:30:29 +0200 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> Message-ID: Not sure what you meant by 'at the end of a long sound file', though. I'm really simply talking about the audible difference between 2 saws, when you just phase-shift one of its harmonics. (but the wav file will eventually be accepted & posted) > On Oct 1, 2009, at 1:18 PM, Didier Dambrin wrote: > > >>> so, you're saying that if we detune the 20th harmonic just a little, >>> so that it is 3 cycles ahead or behind, in relation to where it would >>> have been if we didn't detune it at all, at the end of a long sound >>> file of a bandlimited saw. is that right? >> >> yes >> >> This is why I chose to increment phases using double float accuracy >> in my >> additive synth, because slight accumulation errors would become really >> obvious over time. > > MATLAB does everything in double. either way i would not expect that > to be an issue of audibility. > >> >>> i don't expect it to be audible, but i will [..] go and modify the >>> matlab file and find out. maybe my clay ears ain't golden enough to >>> hear it, and it's me, not you. but i am skeptical that it's audible. > > > > well, at least we know we are talking about the same experiment. i > think we differ on the outcome expected. > > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." > > > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp -------------------------------------------------------------------------------- No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.409 / Virus Database: 270.14.1/2407 - Release Date: 10/01/09 06:34:00 From rbj at audioimagination.com Thu Oct 1 13:38:50 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Thu, 1 Oct 2009 13:38:50 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> Message-ID: <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> On Oct 1, 2009, at 1:30 PM, Didier Dambrin wrote: > Not sure what you meant by 'at the end of a long sound file', though. > I'm really simply talking about the audible difference between 2 > saws, when > you just phase-shift one of its harmonics. > because we know we can hear abrupt discontinuities, in that matlab file, i am letting the phase slip from what it is in the first saw to what it is in the second saw. so at the end of the sound file it is a different bandlimited saw than it was at the beginning. if you can hear it be different from beginning to end, then the difference is audible. Didier, consider getting matlab or Octave (the latter is free). it's a way to pass the analytical information along in a compressed and human-readable form. so we all know we are talking about the same thing. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From didid at skynet.be Thu Oct 1 13:56:23 2009 From: didid at skynet.be (Didier Dambrin) Date: Thu, 1 Oct 2009 19:56:23 +0200 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com><6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> Message-ID: I know but I don' thave the scientific background for matlab, and I've grown enough tools to test stuff quickly by code. I'd put the sample somewhere online if my public FTP wasn't always broken. > On Oct 1, 2009, at 1:30 PM, Didier Dambrin wrote: > >> Not sure what you meant by 'at the end of a long sound file', though. >> I'm really simply talking about the audible difference between 2 >> saws, when >> you just phase-shift one of its harmonics. >> > > because we know we can hear abrupt discontinuities, in that matlab > file, i am letting the phase slip from what it is in the first saw to > what it is in the second saw. so at the end of the sound file it is > a different bandlimited saw than it was at the beginning. if you can > hear it be different from beginning to end, then the difference is > audible. > > Didier, consider getting matlab or Octave (the latter is free). it's > a way to pass the analytical information along in a compressed and > human-readable form. so we all know we are talking about the same > thing. > > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." > > > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp -------------------------------------------------------------------------------- No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.409 / Virus Database: 270.14.1/2407 - Release Date: 10/01/09 06:34:00 From rbj at audioimagination.com Thu Oct 1 14:36:24 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Thu, 1 Oct 2009 14:36:24 -0400 Subject: [music-dsp] free pass to AES show floor at Javits in NYC Message-ID: <5ECD2FE6-91E4-4BE6-8A4A-23C64049704F@audioimagination.com> https://secure.aes.org/events/127/registration.cfm?type=vip&vip=2 it doesn't get you into the papers and workshops and such. but it's something. hurry, tomorrow advance registration ends. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From douglas at music.columbia.edu Thu Oct 1 15:13:38 2009 From: douglas at music.columbia.edu (douglas repetto) Date: Thu, 01 Oct 2009 15:13:38 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com><6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> Message-ID: <4AC4FF62.30509@music.columbia.edu> Didier, send me the file privately and I can post it on the website for you. Didier Dambrin wrote: > I know but I don' thave the scientific background for matlab, and I've grown > enough tools to test stuff quickly by code. > > I'd put the sample somewhere online if my public FTP wasn't always broken. > > > > >> On Oct 1, 2009, at 1:30 PM, Didier Dambrin wrote: >> >>> Not sure what you meant by 'at the end of a long sound file', though. >>> I'm really simply talking about the audible difference between 2 >>> saws, when >>> you just phase-shift one of its harmonics. >>> >> because we know we can hear abrupt discontinuities, in that matlab >> file, i am letting the phase slip from what it is in the first saw to >> what it is in the second saw. so at the end of the sound file it is >> a different bandlimited saw than it was at the beginning. if you can >> hear it be different from beginning to end, then the difference is >> audible. >> >> Didier, consider getting matlab or Octave (the latter is free). it's >> a way to pass the analytical information along in a compressed and >> human-readable form. so we all know we are talking about the same >> thing. >> >> >> -- >> >> r b-j rbj at audioimagination.com >> >> "Imagination is more important than knowledge." >> >> >> >> >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book reviews, >> dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp > > > -------------------------------------------------------------------------------- > > > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.409 / Virus Database: 270.14.1/2407 - Release Date: 10/01/09 > 06:34:00 > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > -- ............................................... http://artbots.org .....douglas.....irving........................ http://dorkbot.org .......................... http://music.columbia.edu/cmc/music-dsp .......... repetto............. http://music.columbia.edu/organism ........................................ http://douglasrepetto.org From Victor.Lazzarini at nuim.ie Thu Oct 1 17:26:38 2009 From: Victor.Lazzarini at nuim.ie (Victor Lazzarini) Date: Thu, 01 Oct 2009 22:26:38 +0100 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> Message-ID: <8D6739EB-3446-49C7-A79A-3EDF2F542B1B@nuim.ie> If you are a programmer, you'd probably prefer to use python with scipy, numpy and matplotlib. Far more elegant to write and read... IMHO Victor On 1 Oct 2009, at 18:56, Didier Dambrin wrote: > I know but I don' thave the scientific background for matlab, and > I've grown > enough tools to test stuff quickly by code. > > I'd put the sample somewhere online if my public FTP wasn't always > broken. > > > > >> On Oct 1, 2009, at 1:30 PM, Didier Dambrin wrote: >> >>> Not sure what you meant by 'at the end of a long sound file', >>> though. >>> I'm really simply talking about the audible difference between 2 >>> saws, when >>> you just phase-shift one of its harmonics. >>> >> >> because we know we can hear abrupt discontinuities, in that matlab >> file, i am letting the phase slip from what it is in the first saw to >> what it is in the second saw. so at the end of the sound file it is >> a different bandlimited saw than it was at the beginning. if you can >> hear it be different from beginning to end, then the difference is >> audible. >> >> Didier, consider getting matlab or Octave (the latter is free). it's >> a way to pass the analytical information along in a compressed and >> human-readable form. so we all know we are talking about the same >> thing. >> >> >> -- >> >> r b-j rbj at audioimagination.com >> >> "Imagination is more important than knowledge." >> >> >> >> >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book >> reviews, >> dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp > > > -------------------------------------------------------------------------------- > > > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.409 / Virus Database: 270.14.1/2407 - Release Date: > 10/01/09 > 06:34:00 > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From vboehm at gmx.ch Fri Oct 2 05:16:26 2009 From: vboehm at gmx.ch (=?ISO-8859-1?Q?volker_b=F6hm?=) Date: Fri, 2 Oct 2009 11:16:26 +0200 Subject: [music-dsp] open source effect implementations @ COST-G6--DAfx ? Message-ID: <011D5299-BFFB-46A8-B88A-5DD75B06909C@gmx.ch> hi all, i'm reading a paper by bernardini, arfib and de g?tzen: "Traditional (?) implementations of a phase-vocoder..." which was presented at DAfx-00 in verona. the paper references additional matlab code which is supposed to reside at the COST-G6--DAfx website. also they mention that there is something like an open source effect implementations collection to be found at the same place. the link http://echo.gaps.ssr.upm.es/COSTG6/ however is outdated... searching www.dafx.de website and the dafx-00 conference website (http://profs.sci.univr.it/~dafx/ ) i couln't find anything. does anybody know where the matlab files (and/or the code collection) can be found? is this still around at all? thanks for any pointers, volker. From douglas at music.columbia.edu Fri Oct 2 10:48:04 2009 From: douglas at music.columbia.edu (douglas repetto) Date: Fri, 02 Oct 2009 10:48:04 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <4AC4FF62.30509@music.columbia.edu> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com><6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <4AC4FF62.30509@music.columbia.edu> Message-ID: <4AC612A4.5080208@music.columbia.edu> It's here: http://music.columbia.edu/cmc/music-dsp/sourcecode/didier_dambrin_saw.wav douglas repetto wrote: > Didier, send me the file privately and I can post it on the website for you. > > Didier Dambrin wrote: >> I know but I don' thave the scientific background for matlab, and I've grown >> enough tools to test stuff quickly by code. >> >> I'd put the sample somewhere online if my public FTP wasn't always broken. >> >> >> >> >>> On Oct 1, 2009, at 1:30 PM, Didier Dambrin wrote: >>> >>>> Not sure what you meant by 'at the end of a long sound file', though. >>>> I'm really simply talking about the audible difference between 2 >>>> saws, when >>>> you just phase-shift one of its harmonics. >>>> >>> because we know we can hear abrupt discontinuities, in that matlab >>> file, i am letting the phase slip from what it is in the first saw to >>> what it is in the second saw. so at the end of the sound file it is >>> a different bandlimited saw than it was at the beginning. if you can >>> hear it be different from beginning to end, then the difference is >>> audible. >>> >>> Didier, consider getting matlab or Octave (the latter is free). it's >>> a way to pass the analytical information along in a compressed and >>> human-readable form. so we all know we are talking about the same >>> thing. >>> >>> >>> -- >>> >>> r b-j rbj at audioimagination.com >>> >>> "Imagination is more important than knowledge." >>> >>> >>> >>> >>> -- >>> dupswapdrop -- the music-dsp mailing list and website: >>> subscription info, FAQ, source code archive, list archive, book reviews, >>> dsp links >>> http://music.columbia.edu/cmc/music-dsp >>> http://music.columbia.edu/mailman/listinfo/music-dsp >> >> -------------------------------------------------------------------------------- >> >> >> >> No virus found in this incoming message. >> Checked by AVG - www.avg.com >> Version: 8.5.409 / Virus Database: 270.14.1/2407 - Release Date: 10/01/09 >> 06:34:00 >> >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book reviews, dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp >> > -- ............................................... http://artbots.org .....douglas.....irving........................ http://dorkbot.org .......................... http://music.columbia.edu/cmc/music-dsp .......... repetto............. http://music.columbia.edu/organism ........................................ http://douglasrepetto.org From padawan12 at obiwannabe.co.uk Fri Oct 2 11:09:42 2009 From: padawan12 at obiwannabe.co.uk (Andy Farnell) Date: Fri, 2 Oct 2009 16:09:42 +0100 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <4AC612A4.5080208@music.columbia.edu> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <4AC4FF62.30509@music.columbia.edu> <4AC612A4.5080208@music.columbia.edu> Message-ID: <20091002160942.50109325.padawan12@obiwannabe.co.uk> Thanks Doug, Didier, I honestly can't hear the difference unless I slow it _right_ down. I am 40 this week and noticing ears aren't what they once were. It's been a fascinating discussion in this thread btw. Guess we just have to mark some of these things down to subjective experience. On Fri, 02 Oct 2009 10:48:04 -0400 douglas repetto wrote: > > It's here: > > http://music.columbia.edu/cmc/music-dsp/sourcecode/didier_dambrin_saw.wav > > > > douglas repetto wrote: > > Didier, send me the file privately and I can post it on the website for you. > > > > Didier Dambrin wrote: > >> I know but I don' thave the scientific background for matlab, and I've grown > >> enough tools to test stuff quickly by code. > >> > >> I'd put the sample somewhere online if my public FTP wasn't always broken. > >> > >> > >> > >> > >>> On Oct 1, 2009, at 1:30 PM, Didier Dambrin wrote: > >>> > >>>> Not sure what you meant by 'at the end of a long sound file', though. > >>>> I'm really simply talking about the audible difference between 2 > >>>> saws, when > >>>> you just phase-shift one of its harmonics. > >>>> > >>> because we know we can hear abrupt discontinuities, in that matlab > >>> file, i am letting the phase slip from what it is in the first saw to > >>> what it is in the second saw. so at the end of the sound file it is > >>> a different bandlimited saw than it was at the beginning. if you can > >>> hear it be different from beginning to end, then the difference is > >>> audible. > >>> > >>> Didier, consider getting matlab or Octave (the latter is free). it's > >>> a way to pass the analytical information along in a compressed and > >>> human-readable form. so we all know we are talking about the same > >>> thing. > >>> > >>> > >>> -- > >>> > >>> r b-j rbj at audioimagination.com > >>> > >>> "Imagination is more important than knowledge." > >>> > >>> > >>> > >>> > >>> -- > >>> dupswapdrop -- the music-dsp mailing list and website: > >>> subscription info, FAQ, source code archive, list archive, book reviews, > >>> dsp links > >>> http://music.columbia.edu/cmc/music-dsp > >>> http://music.columbia.edu/mailman/listinfo/music-dsp > >> > >> -------------------------------------------------------------------------------- > >> > >> > >> > >> No virus found in this incoming message. > >> Checked by AVG - www.avg.com > >> Version: 8.5.409 / Virus Database: 270.14.1/2407 - Release Date: 10/01/09 > >> 06:34:00 > >> > >> -- > >> dupswapdrop -- the music-dsp mailing list and website: > >> subscription info, FAQ, source code archive, list archive, book reviews, dsp links > >> http://music.columbia.edu/cmc/music-dsp > >> http://music.columbia.edu/mailman/listinfo/music-dsp > >> > > > > -- > ............................................... http://artbots.org > .....douglas.....irving........................ http://dorkbot.org > .......................... http://music.columbia.edu/cmc/music-dsp > .......... repetto............. http://music.columbia.edu/organism > ........................................ http://douglasrepetto.org > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From didid at skynet.be Fri Oct 2 11:07:37 2009 From: didid at skynet.be (Didier Dambrin) Date: Fri, 2 Oct 2009 17:07:37 +0200 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com><6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> Message-ID: Douglas put it here for me http://music.columbia.edu/cmc/music-dsp/sourcecode/didier_dambrin_saw.wav 1. normal saw 2. saw with harmonic phases progressively wrapping 3x from fundamental to the last one (sounds the same) 3. saw with only the 20th (if I remember) harmonic's phase shifted by half (you can hear that specific harmonic through) so if you were detuning that harmonic instead of phase shifting it, it'd shine through, but with amplitude modulation > > On Oct 1, 2009, at 1:30 PM, Didier Dambrin wrote: > >> Not sure what you meant by 'at the end of a long sound file', though. >> I'm really simply talking about the audible difference between 2 >> saws, when >> you just phase-shift one of its harmonics. >> > > because we know we can hear abrupt discontinuities, in that matlab > file, i am letting the phase slip from what it is in the first saw to > what it is in the second saw. so at the end of the sound file it is > a different bandlimited saw than it was at the beginning. if you can > hear it be different from beginning to end, then the difference is > audible. > > Didier, consider getting matlab or Octave (the latter is free). it's > a way to pass the analytical information along in a compressed and > human-readable form. so we all know we are talking about the same > thing. > > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." > > > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp -------------------------------------------------------------------------------- No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.409 / Virus Database: 270.14.1/2407 - Release Date: 10/01/09 06:34:00 From music.maker at gte.net Fri Oct 2 11:10:18 2009 From: music.maker at gte.net (Scott Gravenhorst) Date: Fri, 02 Oct 2009 08:10:18 -0700 Subject: [music-dsp] Fw: A little question about DSP performance Message-ID: <200910021510.n92FAIY1020016@linux7.lan> A discussion list for music-related DSP wrote: > > >Thanks Doug, > >Didier, I honestly can't hear the difference >unless I slow it _right_ down. I am 40 this >week and noticing ears aren't what they once were. > >It's been a fascinating discussion in this thread btw. >Guess we just have to mark some of these things down >to subjective experience. I cannot hear a difference either. -- ScottG ________________________________________________________________________ -- Scott Gravenhorst -- FPGA MIDI Synthesizer Information: home1.gte.net/res0658s/FPGA_synth/ -- FatMan: home1.gte.net/res0658s/fatman/ -- NonFatMan: home1.gte.net/res0658s/electronics/ -- When the going gets tough, the tough use the command line. From jbt at dcs.qmul.ac.uk Fri Oct 2 11:14:21 2009 From: jbt at dcs.qmul.ac.uk (Jean-Baptiste Thiebaut) Date: Fri, 02 Oct 2009 16:14:21 +0100 Subject: [music-dsp] open source effect implementations @ COST-G6--DAfx ? In-Reply-To: <011D5299-BFFB-46A8-B88A-5DD75B06909C@gmx.ch> References: <011D5299-BFFB-46A8-B88A-5DD75B06909C@gmx.ch> Message-ID: <4AC618CD.20501@dcs.qmul.ac.uk> I know that Vincent Verfaille gathered a huge collection of matlab code for audio effects, which eventually should have found their way to the DAFx page. I think that he has the matlab codes for the effects presented on this page: http://adafx.free.fr/textes/english/dafx_perception_en.htm You can reach him at McGill University, Montreal. Regards, Jean-Baptiste volker b?hm wrote: > hi all, > i'm reading a paper by bernardini, arfib and de g?tzen: "Traditional > (?) implementations of a phase-vocoder..." which was presented at > DAfx-00 in verona. the paper references additional matlab code which > is supposed to reside at the COST-G6--DAfx website. > also they mention that there is something like an open source effect > implementations collection to be found at the same place. > the link http://echo.gaps.ssr.upm.es/COSTG6/ however is outdated... > > searching www.dafx.de website and the dafx-00 conference website (http://profs.sci.univr.it/~dafx/ > ) i couln't find anything. > > does anybody know where the matlab files (and/or the code collection) > can be found? > is this still around at all? > > thanks for any pointers, > volker. > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > -- Jean-Baptiste Thiebaut Lecturer Interaction, Media and Communication Research Group, School of Electronic Engineering and Computer Science, West Square, Queen Mary University of London, London E1 4NS. From douglas at music.columbia.edu Fri Oct 2 11:20:56 2009 From: douglas at music.columbia.edu (douglas repetto) Date: Fri, 02 Oct 2009 11:20:56 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <200910021510.n92FAIY1020016@linux7.lan> References: <200910021510.n92FAIY1020016@linux7.lan> Message-ID: <4AC61A58.8030706@music.columbia.edu> I hear something different in the 3rd example. It sounds like an extra sine tone has been added at the very top of the spectrum. It's very subtle, and goes away if I have my head in the wrong orientation. Scott Gravenhorst wrote: > A discussion list for music-related DSP wrote: >> >> Thanks Doug, >> >> Didier, I honestly can't hear the difference >> unless I slow it _right_ down. I am 40 this >> week and noticing ears aren't what they once were. >> >> It's been a fascinating discussion in this thread btw. >> Guess we just have to mark some of these things down >> to subjective experience. > > I cannot hear a difference either. > > > -- ScottG > ________________________________________________________________________ > -- Scott Gravenhorst > -- FPGA MIDI Synthesizer Information: home1.gte.net/res0658s/FPGA_synth/ > -- FatMan: home1.gte.net/res0658s/fatman/ > -- NonFatMan: home1.gte.net/res0658s/electronics/ > -- When the going gets tough, the tough use the command line. > -- ............................................... http://artbots.org .....douglas.....irving........................ http://dorkbot.org .......................... http://music.columbia.edu/cmc/music-dsp .......... repetto............. http://music.columbia.edu/organism ........................................ http://douglasrepetto.org From contact at quikquak.com Fri Oct 2 11:25:46 2009 From: contact at quikquak.com (contact) Date: Fri, 2 Oct 2009 16:25:46 +0100 Subject: [music-dsp] Fw: A little question about DSP performance References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com><6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> Message-ID: <0AB5F54BDEE840488C0378B79081970C@DaveUpstairs> > Douglas put it here for me > http://music.columbia.edu/cmc/music-dsp/sourcecode/didier_dambrin_saw.wav > > 1. normal saw > 2. saw with harmonic phases progressively wrapping 3x from > fundamental to the last one (sounds the same) > 3. saw with only the 20th (if I remember) harmonic's phase shifted by half > (you can hear that specific harmonic through) > > > so if you were detuning that harmonic instead of phase shifting it, it'd > shine through, but with amplitude modulation Sometimes I can't hear it, especially through speakers, that'll be that ear shape/room shape/distance phase mangling thing - headphones did the trick. Visually and audibly, the third saw seems to have an additional sine wave at about 2.5Khz, and they all have differently positioned upper and lower peaks. Dave. From batuhan at batuhanbozkurt.com Fri Oct 2 11:26:35 2009 From: batuhan at batuhanbozkurt.com (Batuhan Bozkurt) Date: Fri, 2 Oct 2009 18:26:35 +0300 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <4AC61A58.8030706@music.columbia.edu> References: <200910021510.n92FAIY1020016@linux7.lan> <4AC61A58.8030706@music.columbia.edu> Message-ID: I was just following this interesting discussion, the standing out hi freq detuned overtone is clearly audible here (the third tone), I'm pretty sure I'd notice it right away if I didn't know about it. (I'm 25) Batuhan Bozkurt /* http://www.earslap.com */ On Oct 2, 2009, at 6:20 PM, douglas repetto wrote: > > I hear something different in the 3rd example. It sounds like an extra > sine tone has been added at the very top of the spectrum. It's very > subtle, and goes away if I have my head in the wrong orientation. > > > > Scott Gravenhorst wrote: >> A discussion list for music-related DSP > dsp at music.columbia.edu> wrote: >>> >>> Thanks Doug, >>> >>> Didier, I honestly can't hear the difference >>> unless I slow it _right_ down. I am 40 this >>> week and noticing ears aren't what they once were. >>> >>> It's been a fascinating discussion in this thread btw. >>> Guess we just have to mark some of these things down >>> to subjective experience. >> >> I cannot hear a difference either. >> >> >> -- ScottG >> ________________________________________________________________________ >> -- Scott Gravenhorst >> -- FPGA MIDI Synthesizer Information: home1.gte.net/res0658s/ >> FPGA_synth/ >> -- FatMan: home1.gte.net/res0658s/fatman/ >> -- NonFatMan: home1.gte.net/res0658s/electronics/ >> -- When the going gets tough, the tough use the command line. >> > > > -- > ............................................... http://artbots.org > .....douglas.....irving........................ http://dorkbot.org > .......................... http://music.columbia.edu/cmc/music-dsp > .......... repetto............. http://music.columbia.edu/organism > ........................................ http://douglasrepetto.org > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From didid at skynet.be Fri Oct 2 11:28:36 2009 From: didid at skynet.be (Didier Dambrin) Date: Fri, 2 Oct 2009 17:28:36 +0200 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <20091002160942.50109325.padawan12@obiwannabe.co.uk> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com><6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com><4AC4FF62.30509@music.columbia.edu><4AC612A4.5080208@music.columbia.edu> <20091002160942.50109325.padawan12@obiwannabe.co.uk> Message-ID: <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> That harmonic is at 2500hz so it can't really be a matter of age. Are you listening through headphones? I could post a saw with all phases randomized, it sounds extremely different. But I thought everyone knew that. If you wanna experiment easily with this, you can grab a demo of my Sytrus synth here (or use any additive synthesizer, really) http://www.image-line.com/documents/sytrus.html Then you would -start from the "default" patch -go to operator 1 -right-click the waveform, "saw" -right-click waveform again, "convert shape to sine harmonics" (it's not a realtime additive synth btw) -you now have the saw in the harmonics editor (it's not realtime btw), you can mess with phases & there's an option to randomize them I think that phases are more important for synthetic, sustaining timbres, though. I mean, those special tones hardly survive average mp3 compression qualities that are normally ok for other pieces of audio. > Thanks Doug, > > Didier, I honestly can't hear the difference > unless I slow it _right_ down. I am 40 this > week and noticing ears aren't what they once were. > > It's been a fascinating discussion in this thread btw. > Guess we just have to mark some of these things down > to subjective experience. > > > > > On Fri, 02 Oct 2009 10:48:04 -0400 > douglas repetto wrote: > >> >> It's here: >> >> http://music.columbia.edu/cmc/music-dsp/sourcecode/didier_dambrin_saw.wav >> >> >> >> douglas repetto wrote: >> > Didier, send me the file privately and I can post it on the website for >> > you. >> > >> > Didier Dambrin wrote: >> >> I know but I don' thave the scientific background for matlab, and I've >> >> grown >> >> enough tools to test stuff quickly by code. >> >> >> >> I'd put the sample somewhere online if my public FTP wasn't always >> >> broken. >> >> >> >> >> >> >> >> >> >>> On Oct 1, 2009, at 1:30 PM, Didier Dambrin wrote: >> >>> >> >>>> Not sure what you meant by 'at the end of a long sound file', >> >>>> though. >> >>>> I'm really simply talking about the audible difference between 2 >> >>>> saws, when >> >>>> you just phase-shift one of its harmonics. >> >>>> >> >>> because we know we can hear abrupt discontinuities, in that matlab >> >>> file, i am letting the phase slip from what it is in the first saw to >> >>> what it is in the second saw. so at the end of the sound file it is >> >>> a different bandlimited saw than it was at the beginning. if you can >> >>> hear it be different from beginning to end, then the difference is >> >>> audible. >> >>> >> >>> Didier, consider getting matlab or Octave (the latter is free). it's >> >>> a way to pass the analytical information along in a compressed and >> >>> human-readable form. so we all know we are talking about the same >> >>> thing. >> >>> >> >>> >> >>> -- >> >>> >> >>> r b-j rbj at audioimagination.com >> >>> >> >>> "Imagination is more important than knowledge." >> >>> >> >>> >> >>> >> >>> >> >>> -- >> >>> dupswapdrop -- the music-dsp mailing list and website: >> >>> subscription info, FAQ, source code archive, list archive, book >> >>> reviews, >> >>> dsp links >> >>> http://music.columbia.edu/cmc/music-dsp >> >>> http://music.columbia.edu/mailman/listinfo/music-dsp >> >> >> >> -------------------------------------------------------------------------------- >> >> >> >> >> >> >> >> No virus found in this incoming message. >> >> Checked by AVG - www.avg.com >> >> Version: 8.5.409 / Virus Database: 270.14.1/2407 - Release Date: >> >> 10/01/09 >> >> 06:34:00 >> >> >> >> -- >> >> dupswapdrop -- the music-dsp mailing list and website: >> >> subscription info, FAQ, source code archive, list archive, book >> >> reviews, dsp links >> >> http://music.columbia.edu/cmc/music-dsp >> >> http://music.columbia.edu/mailman/listinfo/music-dsp >> >> >> > >> >> -- >> ............................................... http://artbots.org >> .....douglas.....irving........................ http://dorkbot.org >> .......................... http://music.columbia.edu/cmc/music-dsp >> .......... repetto............. http://music.columbia.edu/organism >> ........................................ http://douglasrepetto.org >> >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book reviews, >> dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp -------------------------------------------------------------------------------- No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.409 / Virus Database: 270.14.2/2408 - Release Date: 10/01/09 18:23:00 From padawan12 at obiwannabe.co.uk Fri Oct 2 11:41:47 2009 From: padawan12 at obiwannabe.co.uk (Andy Farnell) Date: Fri, 2 Oct 2009 16:41:47 +0100 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <4AC4FF62.30509@music.columbia.edu> <4AC612A4.5080208@music.columbia.edu> <20091002160942.50109325.padawan12@obiwannabe.co.uk> <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> Message-ID: <20091002164147.022b8969.padawan12@obiwannabe.co.uk> Ah yes, on headphones, quite loud, I can hear the last one sounds like someone moving a mid range EQ, like a band reject/parametric. But not on speakers, and not if it's played quietly. On Fri, 2 Oct 2009 17:28:36 +0200 "Didier Dambrin" wrote: > That harmonic is at 2500hz so it can't really be a matter of age. Are you > listening through headphones? > > I could post a saw with all phases randomized, it sounds extremely > different. But I thought everyone knew that. > > > > If you wanna experiment easily with this, you can grab a demo of my Sytrus > synth here (or use any additive synthesizer, really) > http://www.image-line.com/documents/sytrus.html > Then you would > -start from the "default" patch > -go to operator 1 > -right-click the waveform, "saw" > -right-click waveform again, "convert shape to sine harmonics" (it's not a > realtime additive synth btw) > -you now have the saw in the harmonics editor (it's not realtime btw), you > can mess with phases & there's an option to randomize them > > I think that phases are more important for synthetic, sustaining timbres, > though. I mean, those special tones hardly survive average mp3 compression > qualities that are normally ok for other pieces of audio. > > > > > > > Thanks Doug, > > > > Didier, I honestly can't hear the difference > > unless I slow it _right_ down. I am 40 this > > week and noticing ears aren't what they once were. > > > > It's been a fascinating discussion in this thread btw. > > Guess we just have to mark some of these things down > > to subjective experience. > > > > > > > > > > On Fri, 02 Oct 2009 10:48:04 -0400 > > douglas repetto wrote: > > > >> > >> It's here: > >> > >> http://music.columbia.edu/cmc/music-dsp/sourcecode/didier_dambrin_saw.wav > >> > >> > >> > >> douglas repetto wrote: > >> > Didier, send me the file privately and I can post it on the website for > >> > you. > >> > > >> > Didier Dambrin wrote: > >> >> I know but I don' thave the scientific background for matlab, and I've > >> >> grown > >> >> enough tools to test stuff quickly by code. > >> >> > >> >> I'd put the sample somewhere online if my public FTP wasn't always > >> >> broken. > >> >> > >> >> > >> >> > >> >> > >> >>> On Oct 1, 2009, at 1:30 PM, Didier Dambrin wrote: > >> >>> > >> >>>> Not sure what you meant by 'at the end of a long sound file', > >> >>>> though. > >> >>>> I'm really simply talking about the audible difference between 2 > >> >>>> saws, when > >> >>>> you just phase-shift one of its harmonics. > >> >>>> > >> >>> because we know we can hear abrupt discontinuities, in that matlab > >> >>> file, i am letting the phase slip from what it is in the first saw to > >> >>> what it is in the second saw. so at the end of the sound file it is > >> >>> a different bandlimited saw than it was at the beginning. if you can > >> >>> hear it be different from beginning to end, then the difference is > >> >>> audible. > >> >>> > >> >>> Didier, consider getting matlab or Octave (the latter is free). it's > >> >>> a way to pass the analytical information along in a compressed and > >> >>> human-readable form. so we all know we are talking about the same > >> >>> thing. > >> >>> > >> >>> > >> >>> -- > >> >>> > >> >>> r b-j rbj at audioimagination.com > >> >>> > >> >>> "Imagination is more important than knowledge." > >> >>> > >> >>> > >> >>> > >> >>> > >> >>> -- > >> >>> dupswapdrop -- the music-dsp mailing list and website: > >> >>> subscription info, FAQ, source code archive, list archive, book > >> >>> reviews, > >> >>> dsp links > >> >>> http://music.columbia.edu/cmc/music-dsp > >> >>> http://music.columbia.edu/mailman/listinfo/music-dsp > >> >> > >> >> -------------------------------------------------------------------------------- > >> >> > >> >> > >> >> > >> >> No virus found in this incoming message. > >> >> Checked by AVG - www.avg.com > >> >> Version: 8.5.409 / Virus Database: 270.14.1/2407 - Release Date: > >> >> 10/01/09 > >> >> 06:34:00 > >> >> > >> >> -- > >> >> dupswapdrop -- the music-dsp mailing list and website: > >> >> subscription info, FAQ, source code archive, list archive, book > >> >> reviews, dsp links > >> >> http://music.columbia.edu/cmc/music-dsp > >> >> http://music.columbia.edu/mailman/listinfo/music-dsp > >> >> > >> > > >> > >> -- > >> ............................................... http://artbots.org > >> .....douglas.....irving........................ http://dorkbot.org > >> .......................... http://music.columbia.edu/cmc/music-dsp > >> .......... repetto............. http://music.columbia.edu/organism > >> ........................................ http://douglasrepetto.org > >> > >> -- > >> dupswapdrop -- the music-dsp mailing list and website: > >> subscription info, FAQ, source code archive, list archive, book reviews, > >> dsp links > >> http://music.columbia.edu/cmc/music-dsp > >> http://music.columbia.edu/mailman/listinfo/music-dsp > > -- > > dupswapdrop -- the music-dsp mailing list and website: > > subscription info, FAQ, source code archive, list archive, book reviews, > > dsp links > > http://music.columbia.edu/cmc/music-dsp > > http://music.columbia.edu/mailman/listinfo/music-dsp > > > -------------------------------------------------------------------------------- > > > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.409 / Virus Database: 270.14.2/2408 - Release Date: 10/01/09 > 18:23:00 > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From didid at skynet.be Fri Oct 2 11:37:04 2009 From: didid at skynet.be (Didier Dambrin) Date: Fri, 2 Oct 2009 17:37:04 +0200 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <0AB5F54BDEE840488C0378B79081970C@DaveUpstairs> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com><6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <0AB5F54BDEE840488C0378B79081970C@DaveUpstairs> Message-ID: <9A78F731FE1149219DE289C53ED6796B@GOLAMD> it's not an added sinewave, believe me. You may see it as an added sine in an FFT view if your FFT is too small, though. You can do the test: -pick your fundamental freq -divide your nyquist by it, that gives you your number [m] of harmonics to stack up (keep each odd one for squarewave) -stack up m sines (from zero) with frequency = harmonic number [n, starting from 1] * fundamental freq, with amplitude = 1/n now just start one of those harmonics from another phase. > Sometimes I can't hear it, especially through speakers, that'll be that > ear > shape/room shape/distance phase mangling thing - headphones did the trick. > Visually and audibly, the third saw seems to have an additional sine wave > at > about 2.5Khz, and they all have differently positioned upper and lower > peaks. > Dave. > From andy at korgrd.com Fri Oct 2 12:14:08 2009 From: andy at korgrd.com (Andy Leary) Date: Fri, 2 Oct 2009 09:14:08 -0700 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: References: Message-ID: <0790D830-11A1-4B2F-8BB6-81C5F810DD8F@korgrd.com> On Fri, 2 Oct 2009 17:07:37 +0200 "Didier Dambrin" wrote: > 1. normal saw > 2. saw with harmonic phases progressively wrapping 3x from > fundamental to the last one (sounds the same) > 3. saw with only the 20th (if I remember) harmonic's phase shifted > by half > (you can hear that specific harmonic through) Didier, I hear it exactly as you say. I don't think I can hear any difference between the first two, but in the third one, that high harmonic rings through loud and clear. It's totally obvious ... and somewhat painful ! :-) Andy Leary From neolit123 at gmail.com Fri Oct 2 12:20:51 2009 From: neolit123 at gmail.com (Lubomir I. Ivanov) Date: Fri, 2 Oct 2009 19:20:51 +0300 Subject: [music-dsp] Fw: A little question about DSP performance References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com><6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com><4AC4FF62.30509@music.columbia.edu><4AC612A4.5080208@music.columbia.edu><20091002160942.50109325.padawan12@obiwannabe.co.uk> <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> Message-ID: <003001ca437c$5b1e0460$0201a8c0@LuboPC> hello, quite difficult to isolate (in listening conditions) a particular phase shifted harmonic as the difference between two saw-waves (which are harmonicly rich waveforms) here is the same method didier described but with phase inversion in the end between the two (1,3) http://dl.getdropbox.com/u/1627980/saw_harmonic_change.wav note: sorry, but my generator is a bit noisy (around -80dbfs) - sytrus seems like a nice synth btw. good work there. i'd suggest the above hosting service - dropbox. it has shell integration and can be used for sharing files between developers in the lines of copy pasting in folders and direct linking. i don't have the shell version but the web interface is also quite good. 2.25gb for free accounts https://www.getdropbox.com/ regards lubomir ----- Original Message ----- From: "Didier Dambrin" To: "A discussion list for music-related DSP" Sent: Friday, October 02, 2009 6:28 PM Subject: Re: [music-dsp] Fw: A little question about DSP performance > That harmonic is at 2500hz so it can't really be a matter of age. Are you > listening through headphones? > > I could post a saw with all phases randomized, it sounds extremely > different. But I thought everyone knew that. > > > > If you wanna experiment easily with this, you can grab a demo of my Sytrus > synth here (or use any additive synthesizer, really) > http://www.image-line.com/documents/sytrus.html > Then you would > -start from the "default" patch > -go to operator 1 > -right-click the waveform, "saw" > -right-click waveform again, "convert shape to sine harmonics" (it's not a > realtime additive synth btw) > -you now have the saw in the harmonics editor (it's not realtime btw), you > can mess with phases & there's an option to randomize them > From gwenhwyfaer at gmail.com Fri Oct 2 16:24:14 2009 From: gwenhwyfaer at gmail.com (Gwenhwyfaer) Date: Fri, 2 Oct 2009 21:24:14 +0100 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <20091002164147.022b8969.padawan12@obiwannabe.co.uk> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <4AC4FF62.30509@music.columbia.edu> <4AC612A4.5080208@music.columbia.edu> <20091002160942.50109325.padawan12@obiwannabe.co.uk> <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> <20091002164147.022b8969.padawan12@obiwannabe.co.uk> Message-ID: On 02/10/2009, Andy Farnell wrote: > > > Ah yes, on headphones, quite loud, I can hear the last > one sounds like someone moving a mid range EQ, like > a band reject/parametric. > > But not on speakers, and not if it's played quietly. Count me as someone else who hears it very clearly on headphones but not at all on speakers (Sennheiser HD-201 vs T-Amp -> Bush 2025; both simultaneously from SB64v through headphone splitter). I wonder why that might be - crosstalk between the speakers producing enough phase cancellation to screw it up? From rbj at audioimagination.com Fri Oct 2 16:53:52 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Fri, 2 Oct 2009 16:53:52 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com><6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com><4AC4FF62.30509@music.columbia.edu><4AC612A4.5080208@music.columbia.edu> <20091002160942.50109325.padawan12@obiwannabe.co.uk> <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> Message-ID: <52CCA430-BACB-4999-97F3-EEA2D1F284E3@audioimagination.com> On Oct 2, 2009, at 11:28 AM, Didier Dambrin wrote: > That harmonic is at 2500hz so it can't really be a matter of age. oh c'mon, Didier! i dunno how old you are but i'm pushing 54, my dad wore hearing aids in his later years, i grew up listening to loud rock 'n roll in the 70s (like big loud Blue Oyster Cult concerts long before the Reaper), i've already been tested and i'm down 30 dB at 4 kHz in one ear and down 10 in the other. i do not count myself as an authority in a tough listening test, and in fact, i can't hear a difference at all. now, because it's tough, we wouldn't be intellectually honest enough if we didn't settle the fact with some kinda blind testing. so Didier, i might not have time to fiddle with this, but if i find some, may i make some copies of that and switch around the tones. there would be 3! permutations where the difference can be seen and whether heard is being tested. of, if there is someone with tons of time on hand to do that. i think this is epitomizes an application of blind testing. we can keep Didier's original as the control and call it "ABC". then people have to listen to one of the six permutations and say which one it is. looking at the waveforms before listening would be cheating. we don't need no double-blind (it actually would be that if the "administrator", whomever that is, does not know which is which), because if people peek, the experiment is compromized anyway. > Are you listening through headphones? yes. all's i did is let iTunes play it looped. you have it at the perfect length, relative to the spacing between tones, there's no break in the beat. i listened at various levels. i soon lost count as to which one was first. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From czhenry at gmail.com Fri Oct 2 16:59:40 2009 From: czhenry at gmail.com (Charles Henry) Date: Fri, 2 Oct 2009 15:59:40 -0500 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <4AC4FF62.30509@music.columbia.edu> <4AC612A4.5080208@music.columbia.edu> <20091002160942.50109325.padawan12@obiwannabe.co.uk> <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> <20091002164147.022b8969.padawan12@obiwannabe.co.uk> Message-ID: <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> Allow me to be the devil's advocate here, and present another side of the discussion. Do phase relationships between components influence the experience of sound? Maybe you could make a demonstration that is personally convincing, but does it hold up for someone not expecting it? It's been generally held that experience of sound is invariant under transformations of phase--as far as I know, it's not been proven. In fact, there's a good deal of psychoacoustics that could be re-written. The phases of complex tones may have a lot of impact on the behavior in the cochlea itself-which is both actively and passively nonlinear. Furthermore, the inner hair cells produce phase locked spikes. So, all the information in your complex tone is represented in the nervous system... but is that information represented cognitively or perceptually? It might be a feature of sound that has no purpose and is not extracted from the raw amount of information. Which one is the real sawtooth? Any loudspeaker contains reactive elements (coils, compliances, and acoustic loading) which causes frequency dependant phase shifts as a continuous function. Also, there's the room in which you're listening and the head-related transfer function. Any waveform we create electronically has all its components phase shifted when recreating the acoustic waves that our ears receive. Even changing one's position in a room may be enough to change the relative phases between components in the sound. It's possible that every sawtooth wave you've ever heard was different, even if it sounds the same to you. Then, there's other ways things can go wrong that you might not anticipate. Shifting the phase of one component may change the peaks so that you clip the sound digitally. Or perhaps the loudspeaker has it's own material nonlinearity that generates new harmonics due to the peaks. I can't even begin to imagine all the things needed to control every other possiblity. >< Chuck From contact at quikquak.com Fri Oct 2 17:51:15 2009 From: contact at quikquak.com (contact) Date: Fri, 2 Oct 2009 22:51:15 +0100 Subject: [music-dsp] Fw: A little question about DSP performance References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com><4AC4FF62.30509@music.columbia.edu><4AC612A4.5080208@music.columbia.edu><20091002160942.50109325.padawan12@obiwannabe.co.uk><51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD><20091002164147.022b8969.padawan12@obiwannabe.co.uk> <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> Message-ID: <12F8017AACC344B6A1F0E52BE559A243@DaveUpstairs> > Allow me to be the devil's advocate here, and present another side of > the discussion. > > Do phase relationships between components influence the experience of > sound? Maybe you could make a demonstration that is personally > convincing, but does it hold up for someone not expecting it? > > It's been generally held that experience of sound is invariant under > transformations of phase--as far as I know, it's not been proven. In > fact, there's a good deal of psychoacoustics that could be re-written. > The phases of complex tones may have a lot of impact on the behavior > in the cochlea itself-which is both actively and passively nonlinear. > Furthermore, the inner hair cells produce phase locked spikes. So, > all the information in your complex tone is represented in the nervous > system... but is that information represented cognitively or > perceptually? It might be a feature of sound that has no purpose and > is not extracted from the raw amount of information. > > Which one is the real sawtooth? > Any loudspeaker contains reactive elements (coils, compliances, and > acoustic loading) which causes frequency dependant phase shifts as a > continuous function. Also, there's the room in which you're listening > and the head-related transfer function. Any waveform we create > electronically has all its components phase shifted when recreating > the acoustic waves that our ears receive. Even changing one's > position in a room may be enough to change the relative phases between > components in the sound. It's possible that every sawtooth wave > you've ever heard was different, even if it sounds the same to you. > > Then, there's other ways things can go wrong that you might not > anticipate. Shifting the phase of one component may change the peaks > so that you clip the sound digitally. Or perhaps the loudspeaker has > it's own material nonlinearity that generates new harmonics due to the > peaks. I can't even begin to imagine all the things needed to control > every other possiblity. >< > > Chuck You beat me to it! Here's a good example of how I look at it, obvious I guess but good to remember: When you drag a bow across a violin:- (the following list is far too short of course, probably by thousands of major influences...) Random sticking and releasing from an uneven bow hairs. Playing strength, attack and vibrato. Varying arm speed of the player throughout a note. Different strengths, angles and string textures. Playing location on fret. String feedback and box resonance. Type, make, and age of wood. - people can hear the differences! Location, angle and local obstructions. 20 violinists all playing subtly different ways. All the things Chuck mentioned above, plus the unimaginable complexities of reverb. All these tiny random influences multiplying up from a simple and unevenly twanged string. And still people say, "how come synths don't sound as good as a real orchestra yet?" The point? Does it really need to have such CSI style scrutiny at its roots? Cheers, Devil's advocate 2, Dave H. BTW thanks 'gwenhwyfaer'/Randy for posting that reference to the paper on "Oscillators Using a Feedback Delay Loop" - a really interesting and yet simple idea. D --------- From czhenry at gmail.com Fri Oct 2 19:29:02 2009 From: czhenry at gmail.com (Charles Henry) Date: Fri, 2 Oct 2009 18:29:02 -0500 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <12F8017AACC344B6A1F0E52BE559A243@DaveUpstairs> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <4AC4FF62.30509@music.columbia.edu> <4AC612A4.5080208@music.columbia.edu> <20091002160942.50109325.padawan12@obiwannabe.co.uk> <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> <20091002164147.022b8969.padawan12@obiwannabe.co.uk> <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> <12F8017AACC344B6A1F0E52BE559A243@DaveUpstairs> Message-ID: <518fe7b20910021629w45481cb6l4812b2dc5e00a6f2@mail.gmail.com> > The point? Does it really need to have such CSI style scrutiny at its roots? > > Cheers, > Devil's advocate 2, > Dave H. Allow me to be the Devil's Devil's advocate for another moment here. Yes. Yes, it does. Not only the CSI-esque description of a violin's physics, but the topological equivalence of sounds as experiences. Thousands of years in the future, school children will know about the violin only because it sounds like a synth in a popular song. Chuck From didid at skynet.be Fri Oct 2 19:40:53 2009 From: didid at skynet.be (Didier Dambrin) Date: Sat, 3 Oct 2009 01:40:53 +0200 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <52CCA430-BACB-4999-97F3-EEA2D1F284E3@audioimagination.com> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com><6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com><4AC4FF62.30509@music.columbia.edu><4AC612A4.5080208@music.columbia.edu><20091002160942.50109325.padawan12@obiwannabe.co.uk><51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> <52CCA430-BACB-4999-97F3-EEA2D1F284E3@audioimagination.com> Message-ID: > On Oct 2, 2009, at 11:28 AM, Didier Dambrin wrote: > >> That harmonic is at 2500hz so it can't really be a matter of age. > > oh c'mon, Didier! i dunno how old you are but i'm > pushing 54, my dad wore hearing aids in his later years, i grew up well he said he was 40, I'm 35, I don't think a 'normal' hearing decline can make you not hear 2500hz at 40. (still up to 15-16khz here) > listening to loud rock 'n roll in the 70s (like big loud Blue Oyster > Cult concerts long before the Reaper), i've already been tested and > i'm down 30 dB at 4 kHz in one ear and down 10 in the other. sob story> i do not count myself as an authority in a tough > listening test, and in fact, i can't hear a difference at all. now, > because it's tough, we wouldn't be intellectually honest enough if we > didn't settle the fact with some kinda blind testing. > It's really a too obvious tone to require blind testing, I mean it can't be made up. If I'd have to suspect anything first, I'd suspect the speakers/headphones. I wouldn't know how to analyze this, though. Plus, some have said not to be hearing it through speakers, but could through headphones. > so Didier, i might not have time to fiddle with this, but if i find > some, may i make some copies of that and switch around the tones. > there would be 3! permutations where the difference can be seen and > whether heard is being tested. of, if there is someone with tons of > time on hand to do that. i think this is epitomizes an application > of blind testing. we can keep Didier's original as the control and > call it "ABC". then people have to listen to one of the six > permutations and say which one it is. looking at the waveforms before > listening would be cheating. we don't need no double-blind (it > actually would be that if the "administrator", whomever that is, does > not know which is which), because if people peek, the experiment is > compromized anyway. > >> Are you listening through headphones? > > yes. all's i did is let iTunes play it looped. you have it at the > perfect length, relative to the spacing between tones, there's no > break in the beat. i listened at various levels. i soon lost count > as to which one was first. > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." > > > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp -------------------------------------------------------------------------------- No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.409 / Virus Database: 270.14.3/2410 - Release Date: 10/02/09 18:24:00 From didid at skynet.be Fri Oct 2 19:42:59 2009 From: didid at skynet.be (Didier Dambrin) Date: Sat, 3 Oct 2009 01:42:59 +0200 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com><4AC4FF62.30509@music.columbia.edu><4AC612A4.5080208@music.columbia.edu><20091002160942.50109325.padawan12@obiwannabe.co.uk><51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD><20091002164147.022b8969.padawan12@obiwannabe.co.uk> <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> Message-ID: <8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> > Allow me to be the devil's advocate here, and present another side of > the discussion. > > Do phase relationships between components influence the experience of > sound? Maybe you could make a demonstration that is personally > convincing, but does it hold up for someone not expecting it? > but that's for sure, well I'm gonna post a saw with all harmonic phases randomized if necessary. It's just not a saw anymore. From rbj at audioimagination.com Fri Oct 2 19:47:16 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Fri, 2 Oct 2009 19:47:16 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com><4AC4FF62.30509@music.columbia.edu><4AC612A4.5080208@music.columbia.edu><20091002160942.50109325.padawan12@obiwannabe.co.uk><51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD><20091002164147.022b8969.padawan12@obiwannabe.co.uk> <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> <8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> Message-ID: <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> On Oct 2, 2009, at 7:42 PM, Didier Dambrin wrote: > > >> Allow me to be the devil's advocate here, and present another side of >> the discussion. >> >> Do phase relationships between components influence the experience of >> sound? Maybe you could make a demonstration that is personally >> convincing, but does it hold up for someone not expecting it? >> > > but that's for sure, well I'm gonna post a saw with all harmonic > phases > randomized if necessary. It's just not a saw anymore. well, that's sorta what i posted in the MATLAB file. the waveform is all screwed up, but the difference is damn hard to hear. if you don't put the number of harmonics all the way to the max, you might not hear it at all. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From didid at skynet.be Fri Oct 2 20:04:54 2009 From: didid at skynet.be (Didier Dambrin) Date: Sat, 3 Oct 2009 02:04:54 +0200 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com><4AC4FF62.30509@music.columbia.edu><4AC612A4.5080208@music.columbia.edu><20091002160942.50109325.padawan12@obiwannabe.co.uk><51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD><20091002164147.022b8969.padawan12@obiwannabe.co.uk><518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com><8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> Message-ID: <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> I've sent another bit of audio for testing (the messed up saw should be sounding metallic), but there can only be 2 conclusions to this -there are special mutants who can tell dephased harmonics -there are big differences in how sound is reproduced through speakers, & I would really more think of a technical problem. I would rule out a soundcard's internal resampling (just tried at 96khz). Now one has to analyze the sound that's actually reproduced. >>> Allow me to be the devil's advocate here, and present another side of >>> the discussion. >>> >>> Do phase relationships between components influence the experience of >>> sound? Maybe you could make a demonstration that is personally >>> convincing, but does it hold up for someone not expecting it? >>> >> >> but that's for sure, well I'm gonna post a saw with all harmonic >> phases >> randomized if necessary. It's just not a saw anymore. > > well, that's sorta what i posted in the MATLAB file. the waveform is > all screwed up, but the difference is damn hard to hear. if you > don't put the number of harmonics all the way to the max, you might > not hear it at all. > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." > > > From rbj at audioimagination.com Fri Oct 2 20:12:37 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Fri, 2 Oct 2009 20:12:37 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com><4AC4FF62.30509@music.columbia.edu><4AC612A4.5080208@music.columbia.edu><20091002160942.50109325.padawan12@obiwannabe.co.uk><51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD><20091002164147.022b8969.padawan12@obiwannabe.co.uk><518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com><8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> Message-ID: On Oct 2, 2009, at 8:04 PM, Didier Dambrin wrote: > I've sent another bit of audio for testing (the messed up saw > should be > sounding metallic), but there can only be 2 conclusions to this > > -there are special mutants who can tell dephased harmonics > > -there are big differences in how sound is reproduced through > speakers, well, we *know* that running a phase-scramble tone through a non- linear mapping is audible (loudspeakers are usually pretty non- linear). think of the square wave example i also posted. scramble the phases, and it's no longer square, but peaky. what will soft clipping do to that (compared to what soft clipping will do to a square wave)? -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From rej at 2uptech.com Fri Oct 2 22:04:31 2009 From: rej at 2uptech.com (Randy Jones) Date: Fri, 2 Oct 2009 19:04:31 -0700 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: References: Message-ID: <2D45055A-7C71-41D4-BEFA-DDDFA87312CC@2uptech.com> On Oct 2, 2009, at 4:41 PM, music-dsp-request at music.columbia.edu wrote: > > All these tiny random influences multiplying up from a simple and > unevenly > twanged string. > And still people say, "how come synths don't sound as good as a real > orchestra yet?" > > The point? Does it really need to have such CSI style scrutiny at > its roots? I think the scrutiny is rewarding in and of itself. By simulating nature, we can measure our knowledge of it. A sense of awe at how much we don't know is another reward for me. > BTW thanks 'gwenhwyfaer'/Randy for posting that reference to the > paper on > "Oscillators Using a Feedback Delay Loop" - a really interesting and > yet > simple idea. And germane to the turn this discussion has taken, right? Their allpass loop is an extreme phase scrambler. I wonder what a saw made from its output would sound like. I have yet to try it. -Randy From contact at quikquak.com Fri Oct 2 23:18:55 2009 From: contact at quikquak.com (contact) Date: Sat, 3 Oct 2009 04:18:55 +0100 Subject: [music-dsp] Fw: A little question about DSP performance References: <2D45055A-7C71-41D4-BEFA-DDDFA87312CC@2uptech.com> Message-ID: ----- Original Message ----- From: "Randy Jones" To: Sent: Saturday, October 03, 2009 3:04 AM Subject: Re: [music-dsp] Fw: A little question about DSP performance > > On Oct 2, 2009, at 4:41 PM, music-dsp-request at music.columbia.edu wrote: >> >> All these tiny random influences multiplying up from a simple and >> unevenly >> twanged string. >> And still people say, "how come synths don't sound as good as a real >> orchestra yet?" >> >> The point? Does it really need to have such CSI style scrutiny at >> its roots? > > I think the scrutiny is rewarding in and of itself. By simulating > nature, > we can measure our knowledge of it. A sense of awe at how much > we don't know is another reward for me. > >> BTW thanks 'gwenhwyfaer'/Randy for posting that reference to the >> paper on >> "Oscillators Using a Feedback Delay Loop" - a really interesting and >> yet >> simple idea. > > And germane to the turn this discussion has taken, right? Their allpass > loop is an extreme phase scrambler. I wonder what a saw made from > its output would sound like. I have yet to try it. > > -Randy Well it's suppose to sound the same, but possible not when stuffed directly into the ear and intently focused upon for hours. - Which is really interesting, because when creating a reverb I found myself concentrating on single impulses and minute sample gap responses through the system - drove me crackers I must say, but I never knew it was possible to focus that closely on something. The constant quest for analogue 'fatness' - back in the day the spectral components of a square waveform, for example, could be a jumbled mess of zero crossings (I'm not saying by accident of course). - The 'phsycoacoutics' way of thinking is that phase is irrelevant, but is there possibly a subconscious awareness that that special old bassline synth sounds, well, more complex or richer because of this? It can't be all about the filters. Dave H. From douglas at music.columbia.edu Fri Oct 2 23:34:19 2009 From: douglas at music.columbia.edu (douglas repetto) Date: Fri, 02 Oct 2009 23:34:19 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com><4AC4FF62.30509@music.columbia.edu><4AC612A4.5080208@music.columbia.edu><20091002160942.50109325.padawan12@obiwannabe.co.uk><51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD><20091002164147.022b8969.padawan12@obiwannabe.co.uk><518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com><8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> Message-ID: <4AC6C63B.3010500@music.columbia.edu> It's here: http://music.columbia.edu/cmc/music-dsp/sourcecode/didier_dambrin_Saws_RandomPhases.wav Didier Dambrin wrote: > I've sent another bit of audio for testing (the messed up saw should be > sounding metallic), but there can only be 2 conclusions to this > > -there are special mutants who can tell dephased harmonics > > -there are big differences in how sound is reproduced through speakers, > > > & I would really more think of a technical problem. > I would rule out a soundcard's internal resampling (just tried at 96khz). > Now one has to analyze the sound that's actually reproduced. > -- ............................................... http://artbots.org .....douglas.....irving........................ http://dorkbot.org .......................... http://music.columbia.edu/cmc/music-dsp .......... repetto............. http://music.columbia.edu/organism ........................................ http://douglasrepetto.org From gwenhwyfaer at gmail.com Sat Oct 3 01:23:08 2009 From: gwenhwyfaer at gmail.com (Gwenhwyfaer) Date: Sat, 3 Oct 2009 06:23:08 +0100 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <4AC6C63B.3010500@music.columbia.edu> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <20091002160942.50109325.padawan12@obiwannabe.co.uk> <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> <20091002164147.022b8969.padawan12@obiwannabe.co.uk> <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> <8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> <4AC6C63B.3010500@music.columbia.edu> Message-ID: On 03/10/2009, douglas repetto wrote: > > It's here: > > http://music.columbia.edu/cmc/music-dsp/sourcecode/didier_dambrin_Saws_RandomPhases.wav Well, they all sound more or less saw-ish, but some sound "noisier" than others - almost as though they're being played through rattly speakers or piezos. I'd have to say that Didier seems to have demonstrated his point... but with one rather important proviso - any chance Didier can post the phases of each saw's harmonics, for purposes of repeatability? From rbj at audioimagination.com Sat Oct 3 01:30:09 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Sat, 3 Oct 2009 01:30:09 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <20091002160942.50109325.padawan12@obiwannabe.co.uk> <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> <20091002164147.022b8969.padawan12@obiwannabe.co.uk> <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> <8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> <4AC6C63B.3010500@music.columbia.edu> Message-ID: On Oct 3, 2009, at 1:23 AM, Gwenhwyfaer wrote: > On 03/10/2009, douglas repetto wrote: >> >> It's here: >> >> http://music.columbia.edu/cmc/music-dsp/sourcecode/ >> didier_dambrin_Saws_RandomPhases.wav > > Well, they all sound more or less saw-ish, but some sound "noisier" > than others - i could hear some differences in this file, but not the first one Didier posted. and, as with Monster cable, when you have one party (or group) saying "can't you hear the difference?" and another saying "no, we can't", it only gets settled with blind testing. > almost as though they're being played through rattly > speakers or piezos. I'd have to say that Didier seems to have > demonstrated his point... but with one rather important proviso - any > chance Didier can post the phases of each saw's harmonics, for > purposes of repeatability? yeah, actually either that or little C code snippets or whatever you did to generate the sounds. but a simple finite list of the amplitudes and phases or each harmonic would do. i would like to turn it into MATLAB code. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From didid at skynet.be Sat Oct 3 01:53:14 2009 From: didid at skynet.be (Didier Dambrin) Date: Sat, 3 Oct 2009 07:53:14 +0200 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><20091002160942.50109325.padawan12@obiwannabe.co.uk><51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD><20091002164147.022b8969.padawan12@obiwannabe.co.uk><518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com><8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD><45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com><7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD><4AC6C63B.3010500@music.columbia.edu> Message-ID: <36807E654A2841B7AB9BF93601BA1C4E@GOLAMD> They were just random phases, really. I already wrote how to generate them, they're pure saws, so amplitude of harmonic N is 1/N. http://en.wikipedia.org/wiki/Sawtooth_wave (for those who can read that math gibberish) And then you start your sines at random (any random generator) phases instead of zero, there's really nothing special. But really, I'm sure someone has studied this like a century ago, and someone else tested it in practice when computers appeared, pretty much like everything we do. Early computers certainly couldn't produce saws by stacking up harmonics realtime, but it could surely be precomputed, and something this simple must have been studied already. > On Oct 3, 2009, at 1:23 AM, Gwenhwyfaer wrote: > >> On 03/10/2009, douglas repetto wrote: >>> >>> It's here: >>> >>> http://music.columbia.edu/cmc/music-dsp/sourcecode/ >>> didier_dambrin_Saws_RandomPhases.wav >> >> Well, they all sound more or less saw-ish, but some sound "noisier" >> than others - > > i could hear some differences in this file, but not the first one > Didier posted. and, as with Monster cable, when you have one party > (or group) saying "can't you hear the difference?" and another saying > "no, we can't", it only gets settled with blind testing. > >> almost as though they're being played through rattly >> speakers or piezos. I'd have to say that Didier seems to have >> demonstrated his point... but with one rather important proviso - any >> chance Didier can post the phases of each saw's harmonics, for >> purposes of repeatability? > > > yeah, actually either that or little C code snippets or whatever you > did to generate the sounds. but a simple finite list of the > amplitudes and phases or each harmonic would do. i would like to > turn it into MATLAB code. > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." > > > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp -------------------------------------------------------------------------------- No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.409 / Virus Database: 270.14.3/2410 - Release Date: 10/02/09 18:24:00 From rbj at audioimagination.com Sat Oct 3 02:07:58 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Sat, 3 Oct 2009 02:07:58 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <36807E654A2841B7AB9BF93601BA1C4E@GOLAMD> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><20091002160942.50109325.padawan12@obiwannabe.co.uk><51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD><20091002164147.022b8969.padawan12@obiwannabe.co.uk><518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com><8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD><45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com><7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD><4AC6C63B.3010500@music.columbia.edu> <36807E654A2841B7AB9BF93601BA1C4E@GOLAMD> Message-ID: <0CAAFFF9-CDFE-4114-82BD-B5E586DD94C5@audioimagination.com> On Oct 3, 2009, at 1:53 AM, Didier Dambrin wrote: > They were just random phases, really. > > I already wrote how to generate them, they're pure saws, so > amplitude of > harmonic N is 1/N. > http://en.wikipedia.org/wiki/Sawtooth_wave (for those who can read > that math > gibberish) i know how to do a Fourier Series for a sawtooth. > And then you start your sines at random (any random generator) phases > instead of zero, there's really nothing special. okay, i have done that experiment too, the file that i posted does *something* like that (not random, but i let some of the phase slide ahead, others slide behind, and they line up opposite polarity in 1/2 1/change_rate, the square gets spikey). if i don't push the harmonics up to the very last before Nyquist and if i don't clip or soft-clip, i can't hear a difference. > > But really, I'm sure someone has studied this like a century ago, and > someone else tested it in practice when computers appeared, pretty > much like > everything we do. Early computers certainly couldn't produce saws by > stacking up harmonics realtime, but it could surely be precomputed, > and > something this simple must have been studied already. for the most part, the common knowledge is that if the phases are static, it doesn't matter much what they are. Andrew Horner has relied on that as a given in every single wavetable synthesis paper he has ever did. i have not been in complete agreement with him, because even if differences in the static phases are imperceptible, if they slide around a bit, the detuning is evident. and if there is a non-linearity following the phase scrambling, then phase differences can be heard (the clipping affects it differently). certainly, using a frequency-domain pitch shifter or time scaler (like Pitch n Time or SPEED, dunno what Melodyne does) on a single voice results in a phasey sound, compared to a time-domain one (which will be shape invariant). so, maybe the actual waveshape is important, but without a real blind test, even though i am half-deaf, i am a little skeptical about some claims of hearing something when some others do not. then it needs blind testing to really tell. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From Victor.Lazzarini at nuim.ie Sat Oct 3 03:41:23 2009 From: Victor.Lazzarini at nuim.ie (victor) Date: Sat, 03 Oct 2009 08:41:23 +0100 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <0CAAFFF9-CDFE-4114-82BD-B5E586DD94C5@audioimagination.com> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <20091002160942.50109325.padawan12@obiwannabe.co.uk> <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> <20091002164147.022b8969.padawan12@obiwannabe.co.uk> <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> <8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> <4AC6C63B.3010500@music.columbia.edu> <36807E654A2841B7AB9BF93601BA1C4E@GOLAMD> <0CAAFFF9-CDFE-4114-82BD-B5E586DD94C5@audioimagination.com> Message-ID: <8B0C43EA2628492DB4237C5234E51582@LazzariniPC> That is certainly true, and phase locking makes a difference there, but I think that is to do more with artifacts of the process, which yield an amplitude-modulation-like effect to the result (as the neighbour bins get dephased). > certainly, using a frequency-domain pitch shifter or time scaler > (like Pitch n Time or SPEED, dunno what Melodyne does) on a single > voice results in a phasey sound, compared to a time-domain one (which > will be shape invariant). > > r b-j rbj at audioimagination.com From akbutler at tiscali.co.uk Sat Oct 3 03:51:44 2009 From: akbutler at tiscali.co.uk (andy butler) Date: Sat, 03 Oct 2009 08:51:44 +0100 Subject: [music-dsp] Audibilty of Phase In-Reply-To: References: Message-ID: <4AC70290.8050802@tiscali.co.uk> I'm surprised not to hear this mentioned so far:- "A change of phase is inaudible as long as the phase change is linear across the whole frequency spectrum, otherwise it's audible". Isn't that the ideal that loudspeaker manufacturers aspire too? Please don't think I'm pretending to be wiser than the experts tho', just passing on stuff I've heard for the interest of it. andy butler (aged 48) ps. I did the 1st listening test too, at first I heard no difference except that the middle tone seemed very slightly louder, but when I turned an ear towards the speaker, the rogue tone was very clearly audible. Having heard it once, it was then easier to pick out. From gwenhwyfaer at gmail.com Sat Oct 3 03:55:05 2009 From: gwenhwyfaer at gmail.com (Gwenhwyfaer) Date: Sat, 3 Oct 2009 08:55:05 +0100 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <0CAAFFF9-CDFE-4114-82BD-B5E586DD94C5@audioimagination.com> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> <8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> <4AC6C63B.3010500@music.columbia.edu> <36807E654A2841B7AB9BF93601BA1C4E@GOLAMD> <0CAAFFF9-CDFE-4114-82BD-B5E586DD94C5@audioimagination.com> Message-ID: On 03/10/2009, robert bristow-johnson wrote: > > On Oct 3, 2009, at 1:53 AM, Didier Dambrin wrote: >> And then you start your sines at random (any random generator) phases >> instead of zero, there's really nothing special. > > okay, i have done that experiment too, the file that i posted does > *something* like that (not random, but i let some of the phase slide > ahead, others slide behind, and they line up opposite polarity in 1/2 > 1/change_rate, the square gets spikey). So have I, and here are my results, together with the generator program I wrote (I used wavosaur to glue the raw files together into wave files; it seemed quicker than looking up the WAV header format) and a list of the harmonic phases. The file's at http://www.isle-of-avalon.co.uk/sawphase.zip for the next week - but it's a 1.4MB file, and I only get 100MB of bandwidth a month, so please be gentle :) and if someone wants to mirror it, that would be wonderful! I apologise in advance for the roughness of my C. Corrections are welcome. Results? Firstly, I think normalising each individual sawtooth was a mistake. Secondly, I can hear a difference between the straight sawtooth and the ones with randomised phases, but again, only via headphones (same rig as before) - they all sound identical over speakers. Thirdly, the difference is *far* less audible to me than the difference between Didier's waveforms, which makes me wonder whether the differences are not the result of varying the phase at all... Anyway, that's my contribution to the debate. It's nice to read something here that doesn't go completely over my head. :-) From gwenhwyfaer at gmail.com Sat Oct 3 09:27:34 2009 From: gwenhwyfaer at gmail.com (Gwenhwyfaer) Date: Sat, 3 Oct 2009 14:27:34 +0100 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> <4AC6C63B.3010500@music.columbia.edu> <36807E654A2841B7AB9BF93601BA1C4E@GOLAMD> <0CAAFFF9-CDFE-4114-82BD-B5E586DD94C5@audioimagination.com> Message-ID: On 03/10/2009, I wrote: > On 03/10/2009, robert bristow-johnson wrote: > So have I, and here are my results, together with the generator > program I wrote (I used wavosaur to glue the raw files together into > wave files; it seemed quicker than looking up the WAV header format) > and a list of the harmonic phases. The file's at > > http://www.isle-of-avalon.co.uk/sawphase.zip *ahem* it is now. Turns out it works better if you put it in the right directory... *sheepish shuffle off, stage left* From didid at skynet.be Sat Oct 3 10:03:20 2009 From: didid at skynet.be (Didier Dambrin) Date: Sat, 3 Oct 2009 16:03:20 +0200 Subject: [music-dsp] Audibilty of Phase In-Reply-To: <4AC70290.8050802@tiscali.co.uk> References: <4AC70290.8050802@tiscali.co.uk> Message-ID: Well I wrote something like that already. First, a phase change of the same amount for all harmonics should be totally inaudible. I'm using this in my audio editor (edison) to normalize short samples a little higher. I just phase shift everything slightly until I get the lowest peaks. So you can really end up with short hits louder than by standard normalization, with no audible change. Second, I believe you can change the phase progressively up the spectrum, it's only the abruptness that matters. In my first test, for the second sample (the one that sounds the same), I'm progressively dephasing each harmonic, so that the last one has wrapped 3x. If the phase difference between 2 neighbor harmonics isn't too big, I don't think it will be audible. I think it's pretty much the same for phase & amplitude. If you take a sound & chop it above 2khz with the most abrupt lowpass, it should be ringing at 2khz. > I'm surprised not to hear this mentioned so far:- > > "A change of phase is inaudible as long as the phase change is > linear across the whole frequency spectrum, otherwise it's audible". > > Isn't that the ideal that loudspeaker manufacturers aspire too? > > > Please don't think I'm pretending to be wiser than the experts > tho', just passing on stuff I've heard for the interest of it. > > andy butler (aged 48) > > ps. I did the 1st listening test too, at first I heard > no difference except that the middle tone seemed > very slightly louder, > but when I turned an ear towards the speaker, the rogue > tone was very clearly audible. > Having heard it once, it was then easier to pick out. > > From douglas at music.columbia.edu Sat Oct 3 10:12:19 2009 From: douglas at music.columbia.edu (douglas repetto) Date: Sat, 03 Oct 2009 10:12:19 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> <8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> <4AC6C63B.3010500@music.columbia.edu> <36807E654A2841B7AB9BF93601BA1C4E@GOLAMD> <0CAAFFF9-CDFE-4114-82BD-B5E586DD94C5@audioimagination.com> Message-ID: <4AC75BC3.1090407@music.columbia.edu> It's here: http://music.columbia.edu/cmc/music-dsp/sourcecode/gwenhwyfaer_sawphase.zip Gwenhwyfaer wrote: > On 03/10/2009, robert bristow-johnson wrote: >> On Oct 3, 2009, at 1:53 AM, Didier Dambrin wrote: >>> And then you start your sines at random (any random generator) phases >>> instead of zero, there's really nothing special. >> okay, i have done that experiment too, the file that i posted does >> *something* like that (not random, but i let some of the phase slide >> ahead, others slide behind, and they line up opposite polarity in 1/2 >> 1/change_rate, the square gets spikey). > > So have I, and here are my results, together with the generator > program I wrote (I used wavosaur to glue the raw files together into > wave files; it seemed quicker than looking up the WAV header format) > and a list of the harmonic phases. The file's at > > http://www.isle-of-avalon.co.uk/sawphase.zip > > for the next week - but it's a 1.4MB file, and I only get 100MB of > bandwidth a month, so please be gentle :) and if someone wants to > mirror it, that would be wonderful! I apologise in advance for the > roughness of my C. Corrections are welcome. > > Results? Firstly, I think normalising each individual sawtooth was a > mistake. Secondly, I can hear a difference between the straight > sawtooth and the ones with randomised phases, but again, only via > headphones (same rig as before) - they all sound identical over > speakers. Thirdly, the difference is *far* less audible to me than the > difference between Didier's waveforms, which makes me wonder whether > the differences are not the result of varying the phase at all... > > Anyway, that's my contribution to the debate. It's nice to read > something here that doesn't go completely over my head. :-) > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > -- ............................................... http://artbots.org .....douglas.....irving........................ http://dorkbot.org .......................... http://music.columbia.edu/cmc/music-dsp .......... repetto............. http://music.columbia.edu/organism ........................................ http://douglasrepetto.org From gwenhwyfaer at gmail.com Sat Oct 3 10:20:34 2009 From: gwenhwyfaer at gmail.com (Gwenhwyfaer) Date: Sat, 3 Oct 2009 15:20:34 +0100 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <4AC75BC3.1090407@music.columbia.edu> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> <4AC6C63B.3010500@music.columbia.edu> <36807E654A2841B7AB9BF93601BA1C4E@GOLAMD> <0CAAFFF9-CDFE-4114-82BD-B5E586DD94C5@audioimagination.com> <4AC75BC3.1090407@music.columbia.edu> Message-ID: On 03/10/2009, douglas repetto wrote: > > It's here: > > http://music.columbia.edu/cmc/music-dsp/sourcecode/gwenhwyfaer_sawphase.zip Thanks! From spambait1000006 at cox.net Sat Oct 3 14:10:40 2009 From: spambait1000006 at cox.net (spambait1000006 at cox.net) Date: Sat, 3 Oct 2009 11:10:40 -0700 (MST) Subject: [music-dsp] What is the waveform with even harmonics called In-Reply-To: <20090709185154.F94617@bunrab.ronnet.moc> References: <29817224.180301245328924683.JavaMail.servlet@kundenserver> <20090707134434.W72701@bunrab.ronnet.moc> <20090709185154.F94617@bunrab.ronnet.moc> Message-ID: <20090727210544.Y82432@bunrab.ronnet.moc> I put a bit up about different waveforms at http://members.cox.net/~inicoderocker/waveforms.pdf Hopefully there is something of interest and not too much to lead one astray. From rbj at audioimagination.com Sat Oct 3 14:23:24 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Sat, 3 Oct 2009 14:23:24 -0400 Subject: [music-dsp] What is the waveform with even harmonics called In-Reply-To: <20090727210544.Y82432@bunrab.ronnet.moc> References: <29817224.180301245328924683.JavaMail.servlet@kundenserver> <20090707134434.W72701@bunrab.ronnet.moc> <20090709185154.F94617@bunrab.ronnet.moc> <20090727210544.Y82432@bunrab.ronnet.moc> Message-ID: On Oct 3, 2009, at 2:10 PM, spambait1000006 at cox.net wrote: > I put a bit up about different waveforms at > > http://members.cox.net/~inicoderocker/waveforms.pdf > > Hopefully there is something of interest and not too much to lead one > astray. > it's a useful compendium. a few kind suggestions: 1. the series for square wave on page 1 is wrong. it does leave out the even harmonics, but the strength on the harmonics left are still 1/m where m is the harmonic number, which you have as 2n-1. so it should be 1/(2n-1) for the coef. there might be other little errors, but that one caught me right off the bat. 2. i would suggest normalizing the peak max value of the standard waveforms. that will put a constant (maybe with 1/pi in it) in front of the whole series. another possibility would be to normalize the first harmonic which you do in most cases. 3. then when displaying two waveforms, one with the phases in the "classic" positions and the other with changed or scrambled phases, to have the plot zoom to be the same for the comparable images. e.g. Figs 20 and 21. 4. if it were me, i would position the squarewave, pwm, and pulse trains, to be even symmetry and put the saw in as odd symmetry. it's neat to see the necessary change in sign as the harmonics start adding up. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From spambait1000006 at cox.net Sat Oct 3 14:48:57 2009 From: spambait1000006 at cox.net (spambait1000006 at cox.net) Date: Sat, 3 Oct 2009 11:48:57 -0700 (MST) Subject: [music-dsp] What is the waveform with even harmonics called In-Reply-To: References: <29817224.180301245328924683.JavaMail.servlet@kundenserver> <20090707134434.W72701@bunrab.ronnet.moc> <20090709185154.F94617@bunrab.ronnet.moc> <20090727210544.Y82432@bunrab.ronnet.moc> Message-ID: <20091003114438.A20697@bunrab.ronnet.moc> On Sat, 3 Oct 2009, robert bristow-johnson wrote: > it's a useful compendium. Thanks. > > a few kind suggestions: I'll look at them. Thanks for me and from people I might confuse on my own. From czhenry at gmail.com Sat Oct 3 23:13:03 2009 From: czhenry at gmail.com (Charles Henry) Date: Sat, 3 Oct 2009 22:13:03 -0500 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <518fe7b20910021629w45481cb6l4812b2dc5e00a6f2@mail.gmail.com> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <4AC4FF62.30509@music.columbia.edu> <4AC612A4.5080208@music.columbia.edu> <20091002160942.50109325.padawan12@obiwannabe.co.uk> <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> <20091002164147.022b8969.padawan12@obiwannabe.co.uk> <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> <12F8017AACC344B6A1F0E52BE559A243@DaveUpstairs> <518fe7b20910021629w45481cb6l4812b2dc5e00a6f2@mail.gmail.com> Message-ID: <518fe7b20910032013i541aca5eoc7e1062cf9e0a536@mail.gmail.com> Was a bit drunk last night. I might start to talk about things that don't exist yet. I'm currently studying topology and applying it to psychoacoustics, let's say it's a 5-year project, because I'm starting with no real understanding of topology. But I've had to think of experimental designs that I would apply to psychoacoustics. Namely, techniques of sampling over spaces to find the structure of representations of sound as an experience. One simple experiment involves playing three tones, and asking the question, "Which one of these three tones is most different from the other two?" When we present tones to a participant, this is the action of a psychoacoustic map and a cognitive choice process. If we can assume the choice is unbiased, the experiment directly measures the experience of the participant. Now consider that we have a space of sounds represented on computer and a distance metric on that space. Choosing three equally spaced points gives us an equilateral triangle ABC. Suppose the participant chooses C. We can infer the following about the distance metric in the psychoacoustic space. d(A,B)1,000) with presentations of such triads and the task provided, we can infer the gradient of the psychoacoustic map. The task of the analysis is to find covariation in the input parameters and among the participants. At the beginning, the problem is to choose the subset of sounds to study. You can only sample over a compact set, let's say it's the sawtooth wave example. Represent it by additive synthesis up to n harmonics. Fix the amplitudes, and let the relative phases of the components be {x_i}i=1...n. This is a n-dimensional torus on [0,2pi) ^ n--remove a point and it can be mapped onto the n-plane. So, it would be best to choose low numbered n. Your stimulus for the experiment could consist of complex tones with just 4 components, which is 3 relative phases. So, I think this problem is analyzable, as my dad would say, down to the knat's ass. But it's way too time consuming--any type of rigourous treatment would take a lot of resources. Chuck On Fri, Oct 2, 2009 at 6:29 PM, Charles Henry wrote: >> The point? Does it really need to have such CSI style scrutiny at its roots? >> >> Cheers, >> Devil's advocate 2, >> Dave H. > > Allow me to be the Devil's Devil's advocate for another moment here. > > Yes. ?Yes, it does. ?Not only the CSI-esque description of a violin's > physics, but the topological equivalence of sounds as experiences. > Thousands of years in the future, school children will know about the > violin only because it sounds like a synth in a popular song. > > Chuck > From theover at tiscali.nl Sun Oct 4 08:47:58 2009 From: theover at tiscali.nl (Theo Verelst) Date: Sun, 04 Oct 2009 14:47:58 +0200 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <4AC4FF62.30509@music.columbia.edu> <4AC612A4.5080208@music.columbia.edu> <20091002160942.50109325.padawan12@obiwannabe.co.uk> <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> <20091002164147.022b8969.padawan12@obiwannabe.co.uk> <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> <8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> Message-ID: <1254660478.31345.23.camel@localhost.localdomain> On Fri, 2009-10-02 at 20:12 -0400, robert bristow-johnson wrote: > On Oct 2, 2009, at 8:04 PM, Didier Dambrin wrote: > > > I've sent another bit of audio for testing (the messed up saw > > should be > > sounding metallic), but there can only be 2 conclusions to this > > > > -there are special mutants who can tell dephased harmonics > > > > -there are big differences in how sound is reproduced through > > speakers, > > well, we *know* that running a phase-scramble tone through a non- > linear mapping is audible (loudspeakers are usually pretty non- > linear). think of the square wave example i also posted. scramble > the phases, and it's no longer square, but peaky. what will soft > clipping do to that (compared to what soft clipping will do to a > square wave)? > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." Dear Mr. Bristow and others on the DSP list, I'm sure people should maybe also consider the effects of acoustics on the perceived differences of phase shifted harmonics in sounds, like (bass-) enclosure reflections and room reflections and listening space resonances, which at least may amplify and damp out certain features of the waveform being listened to, and also the transients being generated in the DA converter/pre-amp/endamp/speaker system by low frequency averaging filtering inherent in all bass-limited systems. I noticed signal processing accuracy being mentioned, I think it can be of use to apply a infinite accuracy symbolic manipulation language like the Free and Open Source Maxima (I suppose mathematica, and to some extend with the right extension also Octave couldbe used as well). See this page on the tcl (a script language I use for driving maxima and for User Interfaces): http://wiki.tcl.tk/Creating arrays of wave formulas with BWise On this page http://wiki.tcl.tk/21593 "Creating wave formulas with BWise" on the bottom there is an example of a graph being computed point-for-point using infinite (including PI and such) accuracy computations, only at the very last moment being rounded, after any kind of pre-simplification you want to use, by maxima to a real value. BWise is a block connecting and fire-rule program I made in Tcl/Tk, used for the above. For the mathematically interested without the computer to do much math, I've made a web server wave function renderer, see here: http://www.theover.org/Max It can render any maxima formulated formula with x as time in seconds to a downloadable .wav or mp3 file, in interaction time, and will present a graph and prettyprinted formula, too. As an aside: would you be able to point out some source (including yourself) where I could find out about some of the approximations used in the DSP processing of the Kurzweil PC3 (I don't know how far your work has been taken aboard that synth, but anyhow)? I used most Virtual Analog blocks recently and made various types of sounds with them (see this page with mp3 examples and patch downloads), and can't help finding a certain character often present, albeit a lot of sound changes are possible in all kinds of modulating, filtering and sample related ways. For those who want to display public information about DSP (I think I noticed a file being mentioned on the list) and possibly make some files downloadable, you may want to make use of my wiki, on which I've started besides some other synthesis related pages a DSP page: http://www.theover.org/wiki/index.php/Digital_Signal_Processing Regards, Theo Verelst http://www.theover.org/Synth From Victor.Lazzarini at nuim.ie Sun Oct 4 09:27:48 2009 From: Victor.Lazzarini at nuim.ie (victor) Date: Sun, 04 Oct 2009 14:27:48 +0100 Subject: [music-dsp] infinite accuracy ( was Re: Fw: A little question about DSP performance) In-Reply-To: <1254660478.31345.23.camel@localhost.localdomain> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <4AC4FF62.30509@music.columbia.edu> <4AC612A4.5080208@music.columbia.edu> <20091002160942.50109325.padawan12@obiwannabe.co.uk> <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> <20091002164147.022b8969.padawan12@obiwannabe.co.uk> <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> <8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> <1254660478.31345.23.camel@localhost.localdomain> Message-ID: Perhaps you could explain to me the concept of infinite accuracy, with which I am not familiar, and esp. who it can possibly the case in a discrete environment. Victor > Dear Mr. Bristow and others on the DSP list, > > I'm sure people should maybe also consider the effects of acoustics on > the perceived differences of phase shifted harmonics in sounds, like > (bass-) enclosure reflections and room reflections and listening space > resonances, which at least may amplify and damp out certain features of > the waveform being listened to, and also the transients being generated > in the DA converter/pre-amp/endamp/speaker system by low frequency > averaging filtering inherent in all bass-limited systems. > > I noticed signal processing accuracy being mentioned, I think it can be > of use to apply a infinite accuracy symbolic manipulation language like > the Free and Open Source Maxima (I suppose mathematica, and to some > extend with the right extension also Octave couldbe used as well). > See this page on the tcl (a script language I use for driving maxima and > for User Interfaces): > > http://wiki.tcl.tk/Creating arrays of wave formulas with BWise > > On this page > > http://wiki.tcl.tk/21593 "Creating wave formulas with BWise" > > on the bottom there is an example of a graph being computed > point-for-point using infinite (including PI and such) accuracy > computations, only at the very last moment being rounded, after any kind > of pre-simplification you want to use, by maxima to a real value. > > BWise is a block connecting and fire-rule program I made in Tcl/Tk, used > for the above. > > For the mathematically interested without the computer to do much math, > I've made a web server wave function renderer, see here: > http://www.theover.org/Max > It can render any maxima formulated formula with x as time in seconds to > a downloadable .wav or mp3 file, in interaction time, and will present a > graph and prettyprinted formula, too. > > > As an aside: would you be able to point out some source (including > yourself) where I could find out about some of the approximations used > in the DSP processing of the Kurzweil PC3 (I don't know how far your > work has been taken aboard that synth, but anyhow)? I used most Virtual > Analog blocks recently and made various types of sounds with them (see > this page with mp3 examples and patch downloads), and can't help finding > a certain character often present, albeit a lot of sound changes are > possible in all kinds of modulating, filtering and sample related ways. > > > For those who want to display public information about DSP (I think I > noticed a file being mentioned on the list) and possibly make some files > downloadable, you may want to make use of my wiki, on which I've started > besides some other synthesis related pages a DSP page: > > http://www.theover.org/wiki/index.php/Digital_Signal_Processing > > Regards, > > Theo Verelst > http://www.theover.org/Synth > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From Victor.Lazzarini at nuim.ie Sun Oct 4 09:30:35 2009 From: Victor.Lazzarini at nuim.ie (victor) Date: Sun, 04 Oct 2009 14:30:35 +0100 Subject: [music-dsp] infinite accuracy ( was Re: Fw: A little question about DSP performance) In-Reply-To: References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <4AC4FF62.30509@music.columbia.edu> <4AC612A4.5080208@music.columbia.edu> <20091002160942.50109325.padawan12@obiwannabe.co.uk> <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> <20091002164147.022b8969.padawan12@obiwannabe.co.uk> <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> <8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> <1254660478.31345.23.camel@localhost.localdomain> Message-ID: <9846741034B24DE2B031A153560A221F@LazzariniPC> I mean 'how' not 'who' by the way... ----- Original Message ----- From: "victor" To: "A discussion list for music-related DSP" Sent: Sunday, October 04, 2009 2:27 PM Subject: [music-dsp] infinite accuracy ( was Re: Fw: A little question about DSP performance) > Perhaps you could explain to me the concept of infinite accuracy, with > which I am not familiar, and esp. who it can possibly the case in a > discrete > environment. > > Victor > >> Dear Mr. Bristow and others on the DSP list, >> >> I'm sure people should maybe also consider the effects of acoustics on >> the perceived differences of phase shifted harmonics in sounds, like >> (bass-) enclosure reflections and room reflections and listening space >> resonances, which at least may amplify and damp out certain features of >> the waveform being listened to, and also the transients being generated >> in the DA converter/pre-amp/endamp/speaker system by low frequency >> averaging filtering inherent in all bass-limited systems. >> >> I noticed signal processing accuracy being mentioned, I think it can be >> of use to apply a infinite accuracy symbolic manipulation language like >> the Free and Open Source Maxima (I suppose mathematica, and to some >> extend with the right extension also Octave couldbe used as well). >> See this page on the tcl (a script language I use for driving maxima and >> for User Interfaces): >> >> http://wiki.tcl.tk/Creating arrays of wave formulas with BWise >> >> On this page >> >> http://wiki.tcl.tk/21593 "Creating wave formulas with BWise" >> >> on the bottom there is an example of a graph being computed >> point-for-point using infinite (including PI and such) accuracy >> computations, only at the very last moment being rounded, after any kind >> of pre-simplification you want to use, by maxima to a real value. >> >> BWise is a block connecting and fire-rule program I made in Tcl/Tk, used >> for the above. >> >> For the mathematically interested without the computer to do much math, >> I've made a web server wave function renderer, see here: >> http://www.theover.org/Max >> It can render any maxima formulated formula with x as time in seconds to >> a downloadable .wav or mp3 file, in interaction time, and will present a >> graph and prettyprinted formula, too. >> >> >> As an aside: would you be able to point out some source (including >> yourself) where I could find out about some of the approximations used >> in the DSP processing of the Kurzweil PC3 (I don't know how far your >> work has been taken aboard that synth, but anyhow)? I used most Virtual >> Analog blocks recently and made various types of sounds with them (see >> this page with mp3 examples and patch downloads), and can't help finding >> a certain character often present, albeit a lot of sound changes are >> possible in all kinds of modulating, filtering and sample related ways. >> >> >> For those who want to display public information about DSP (I think I >> noticed a file being mentioned on the list) and possibly make some files >> downloadable, you may want to make use of my wiki, on which I've started >> besides some other synthesis related pages a DSP page: >> >> http://www.theover.org/wiki/index.php/Digital_Signal_Processing >> >> Regards, >> >> Theo Verelst >> http://www.theover.org/Synth >> >> >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book reviews, >> dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From rrsounds at aol.com Sun Oct 4 12:01:53 2009 From: rrsounds at aol.com (David Reaves) Date: Sun, 4 Oct 2009 18:01:53 +0200 Subject: [music-dsp] infinite accuracy ( was Re: Fw: A little question about DSP performance) In-Reply-To: References: Message-ID: According to Einstein, "Only two things are infinite: The Universe and human stupidity. And I'm not sure about the Universe!" LOL! David Reaves On Sun, 04 Oct 2009 14:27:48 +0100, victor wrote: > > Perhaps you could explain to me the concept of infinite accuracy, with > which I am not familiar, and esp. who[how] it can possibly the case > in a discrete > environment. > > Victor From rbj at audioimagination.com Sun Oct 4 15:30:11 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Sun, 4 Oct 2009 15:30:11 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <1254660478.31345.23.camel@localhost.localdomain> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <4AC4FF62.30509@music.columbia.edu> <4AC612A4.5080208@music.columbia.edu> <20091002160942.50109325.padawan12@obiwannabe.co.uk> <51FCAAC229E24A16AD9DE6AD802942C5@GOLAMD> <20091002164147.022b8969.padawan12@obiwannabe.co.uk> <518fe7b20910021359n6d6816d0j8e147ccae1ad56c@mail.gmail.com> <8934D7C39D02466A9B3921DD5DD0F8BE@GOLAMD> <45B7F3DB-4136-4442-B4EF-EF282999F9A5@audioimagination.com> <7BC8FCFF684B4C479215DD5DDA58D77E@GOLAMD> <1254660478.31345.23.camel@localhost.localdomain> Message-ID: <51AEDD5F-BD1A-4300-B901-278A2522D041@audioimagination.com> On Oct 4, 2009, at 8:47 AM, Theo Verelst wrote: > Dear Mr. Bristow and others on the DSP list, just FYI, my last name is hyphenated. i don't wanna be confused with a David Bristow that did some early Chowning FM work (or Sydney Bristow on Alias). > As an aside: would you be able to point out some source (including > yourself) where I could find out about some of the approximations used > in the DSP processing of the Kurzweil PC3 (I don't know how far your > work has been taken aboard that synth, but anyhow)? I used most > Virtual > Analog blocks recently and made various types of sounds with them (see > this page with mp3 examples and patch downloads), and can't help > finding > a certain character often present, albeit a lot of sound changes are > possible in all kinds of modulating, filtering and sample related > ways. i have to say that i had quite a bit to do with coding and implementing the VA blocks on the PC3. i did not invent the algs, since they existed before with the VA-1 (that never was commercially released). i can't say a word about the particulars of the algs, since i do not own them. i *did* try to persuade the Kurzweil management to consider using these harmonically truncated wavetables to do bandlimited classic waveforms since that is virtually exactly how we hear (with our bandlimited hearing) these analog waveforms. deaf ears. but i can't legitimately say anything particular about even the "certain character" of the VA waveforms in the PC3. except at least they work well in mono-mode. with the PC3, try taking any simple sampled sound (like a raw piano), put the synth into mono-mode and turn on the portamento. then play that sample from some low note and let it glide to a high note. something very bad will happen, and i tried to get these guys to first recognize that it was bad, and then what we had to do to fix it. more deaf ears (and i'm pretty deaf myself, being down 30 dB at 4 kHz in one ear.) there's a different bad thing that will happen with sampled sounds if you turn the pitch-wheel bend to a large amount. and i also tried to get them interested in polyphonic portamento (and even revealed a little about an alg i've had for decades), and *still* deaf ears. i worry about the success of the company, because they have trouble zooming out to a less myopic perspective. they wanna do things the way they wanna do things, and, at least as far as synthesis is concerned, are not the least bit interested in other ways of thinking. they have their formula for success, and we'll see how long that lasts in the *third* incarnation of the company. i suspect, when it goes bankrupt the 3rd time, then it will be for good. but who knows? i certainly don't know the future. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From passionjam at yahoo.com Sun Oct 4 16:55:22 2009 From: passionjam at yahoo.com (Les) Date: Sun, 4 Oct 2009 13:55:22 -0700 (PDT) Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <51AEDD5F-BD1A-4300-B901-278A2522D041@audioimagination.com> Message-ID: <111514.58706.qm@web53511.mail.re2.yahoo.com> --- On Sun, 10/4/09, robert bristow-johnson wrote: > with the PC3, try taking any simple > sampled sound (like a raw piano), put the synth into > mono-mode and turn on the portamento. then play that sample from > some low note and let it glide to a high note. something very bad will > happen, and i tried to get these guys to first recognize that it was bad, > and then what we had to do to fix it. Yeah, I ignored this problem with my first VST synth (it's not a sampler, though; the waveforms are all single cycle). I'm trying to get it right the second time around. I've written a wavetable oscillator that linear interpolates between waveforms on a per-sample basis. It turns out that it's not as costly to do this as I'd have thought. It involves adding the FM source to the wavetable index, per-sample. Note, this isn't the index into the waveform itself but rather the index that's used to pick out which waveform to playback given a specified note. Say you trigger the oscillator with a note. It determines which waveform to use based on that note, which basically is just an index number. I have things set up with one waveform per octave, so the index almost always turns out to have a fractional part. This part is used to linear interpolate with the next, more bandlimited waveform. As the oscillator plays, it takes the FM input and adds that to this fractional index. For example, if the FM value at a specific sample is 1, that represents one octave of transposition. Once this step is completed, the FM value is converted into an exponential value that is used to modulate the phase accumulator, e.g. accumulator += increment * pow(2, FM). An example with a two octave pitch bend: http://www.lesliesanford.com/Temp/WavetableTest01.wav Erm, to me this sounds ok, but more perceptive ears may spot some problems. I think I'm on the right track, though. So anyway, instead of determining which waveforms to use *only* when the oscillator is initially triggered, I, in addition, update this info on a per-sample basis to take into account large pitch bends. Having said all of that. I'm not sure how I would apply the same algo to a multi-sampled sound like a piano. I'm guessing it's the same approach as I used above only with special care being taken to handle waveforms that aren't the same length. From j.w.bitzer at web.de Sun Oct 4 17:12:50 2009 From: j.w.bitzer at web.de (Joerg W. Bitzer) Date: Sun, 04 Oct 2009 23:12:50 +0200 Subject: [music-dsp] Fw: A little question about DSP performance Message-ID: <1920416453@web.de> Dear all, some matlab code to generate Didiers sound examples. clearly visible, clearly audible (I am 39), and audible for a naive listener (my wife, she responded there is something extra in the high frequiency region, without knowing anything about the question). BTW: I know that this means nothing scientifically, but I was suprised myself. Best Joerg clear close all f0 = 120; fs = 44100; MaxHarm = floor(fs/2/f0)-1; len_s = 2; OutSig = zeros(len_s*fs,1); dt = 0:(len_s*fs-1); for kk = 1:2:MaxHarm NewHarm = 1/kk * sin (2*pi*f0*kk/fs*dt)'; OutSig = OutSig + NewHarm; NewHarm = -1/(kk+1) * sin (2*pi*f0*(kk+1)/fs*dt)'; OutSig = OutSig + NewHarm; end figure; plot(OutSig); OutSig2 = zeros(len_s*fs,1); for kk = 1:2:MaxHarm if (kk ==25) NewHarm = 1/kk * sin (2*pi*f0*kk/fs*dt)'; else NewHarm = -1/kk * sin (2*pi*f0*kk/fs*dt)'; % Phase Change by pi end OutSig2 = OutSig2 + NewHarm; NewHarm = -1/(kk+1) * sin (2*pi*f0*(kk+1)/fs*dt)'; OutSig2 = OutSig2 + NewHarm; end figure; plot(OutSig2); soundsc(OutSig,fs); %soundsc(OutSig2,fs); ________________________________________________________________ Neu: WEB.DE Doppel-FLAT mit Internet-Flatrate + Telefon-Flatrate f?r nur 19,99 Euro/mtl.!* http://produkte.web.de/go/02/ From padawan12 at obiwannabe.co.uk Sun Oct 4 17:53:34 2009 From: padawan12 at obiwannabe.co.uk (Andy Farnell) Date: Sun, 4 Oct 2009 22:53:34 +0100 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <1920416453@web.de> References: <1920416453@web.de> Message-ID: <20091004225334.e1f7e70c.padawan12@obiwannabe.co.uk> Charles got me thinking about a psychoacoustic phenomena. I wonder if it's the Duifhuis effect at work here. http://www.pa.msu.edu/acoustics/duifhuis.pdf The phase change of one harmonic, although it retains equal magnitude, may 'draw attention to it' in the cochlea with the same effect as Duifhuis finds. Any thoughts? Andy On Sun, 04 Oct 2009 23:12:50 +0200 "Joerg W. Bitzer" wrote: > Dear all, > > some matlab code to generate Didiers sound examples. > > clearly visible, clearly audible (I am 39), and audible for a naive listener (my wife, she responded there is something extra in the high frequiency region, without knowing anything about the question). > > BTW: I know that this means nothing scientifically, but I was suprised myself. > > Best > Joerg > > clear > close all > > f0 = 120; > fs = 44100; > > MaxHarm = floor(fs/2/f0)-1; > > len_s = 2; > > OutSig = zeros(len_s*fs,1); > > dt = 0:(len_s*fs-1); > for kk = 1:2:MaxHarm > NewHarm = 1/kk * sin (2*pi*f0*kk/fs*dt)'; > OutSig = OutSig + NewHarm; > NewHarm = -1/(kk+1) * sin (2*pi*f0*(kk+1)/fs*dt)'; > OutSig = OutSig + NewHarm; > end > > figure; > plot(OutSig); > > OutSig2 = zeros(len_s*fs,1); > for kk = 1:2:MaxHarm > if (kk ==25) > NewHarm = 1/kk * sin (2*pi*f0*kk/fs*dt)'; > else > NewHarm = -1/kk * sin (2*pi*f0*kk/fs*dt)'; % Phase Change by pi > end > OutSig2 = OutSig2 + NewHarm; > NewHarm = -1/(kk+1) * sin (2*pi*f0*(kk+1)/fs*dt)'; > OutSig2 = OutSig2 + NewHarm; > end > > figure; > plot(OutSig2); > > soundsc(OutSig,fs); > %soundsc(OutSig2,fs); > > ________________________________________________________________ > Neu: WEB.DE Doppel-FLAT mit Internet-Flatrate + Telefon-Flatrate > f?r nur 19,99 Euro/mtl.!* http://produkte.web.de/go/02/ > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From didid at skynet.be Sun Oct 4 19:57:50 2009 From: didid at skynet.be (Didier Dambrin) Date: Mon, 5 Oct 2009 01:57:50 +0200 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <20091004225334.e1f7e70c.padawan12@obiwannabe.co.uk> References: <1920416453@web.de> <20091004225334.e1f7e70c.padawan12@obiwannabe.co.uk> Message-ID: <276478F986FC4CB3A898B0EB2B6BE7D5@GOLAMD> "This spectral change is perceived as an added pure tone with a pitch equal to the frequency of the omitted or inverted harmonic." I'm not sure it's the right thing to conclude. Afterall, if you remove all of the higher harmonics of a saw, you hear ringing, basically the last harmonic, or maybe several of the last ones (probably within some freq range). And you don't hear all of the missing harmonics. So I would rather conclude that you don't hear the missing harmonic, you hear the neighbor ones more, because of the discontinuity. But since it's hard to tell one harmonic from the next one starting from a point, most likely people thought they were hearing the missing harmonic. More, take a saw and filter out a chunk of harmonics in its middle. You will hear the ringing of the left AND the right sides of the missing chunk. btw, http://en.wikipedia.org/wiki/Gibbs_phenomenon & the only reason we don't have to care about that gibbs phenomenon when we synthesize our saws/pulses is just that we want the discontinuity to occur above hearing range. I really don't think it's about "missing things", but about breaking continuity. And I think our perception in general is designed to perceive discontinuities. In fact, when you -look- at the graphs with the missing harmonic, that missing harmonic is what your eyes spot immediately. Same with discontinuities in motion, it's a lot easier to spot your mouse pointer when you move it around. ----- Original Message ----- From: "Andy Farnell" To: "A discussion list for music-related DSP" Sent: Sunday, October 04, 2009 11:53 PM Subject: Re: [music-dsp] Fw: A little question about DSP performance Charles got me thinking about a psychoacoustic phenomena. I wonder if it's the Duifhuis effect at work here. http://www.pa.msu.edu/acoustics/duifhuis.pdf The phase change of one harmonic, although it retains equal magnitude, may 'draw attention to it' in the cochlea with the same effect as Duifhuis finds. Any thoughts? Andy On Sun, 04 Oct 2009 23:12:50 +0200 "Joerg W. Bitzer" wrote: > Dear all, > > some matlab code to generate Didiers sound examples. > > clearly visible, clearly audible (I am 39), and audible for a naive > listener (my wife, she responded there is something extra in the high > frequiency region, without knowing anything about the question). > > BTW: I know that this means nothing scientifically, but I was suprised > myself. > > Best > Joerg > > clear > close all > > f0 = 120; > fs = 44100; > > MaxHarm = floor(fs/2/f0)-1; > > len_s = 2; > > OutSig = zeros(len_s*fs,1); > > dt = 0:(len_s*fs-1); > for kk = 1:2:MaxHarm > NewHarm = 1/kk * sin (2*pi*f0*kk/fs*dt)'; > OutSig = OutSig + NewHarm; > NewHarm = -1/(kk+1) * sin (2*pi*f0*(kk+1)/fs*dt)'; > OutSig = OutSig + NewHarm; > end > > figure; > plot(OutSig); > > OutSig2 = zeros(len_s*fs,1); > for kk = 1:2:MaxHarm > if (kk ==25) > NewHarm = 1/kk * sin (2*pi*f0*kk/fs*dt)'; > else > NewHarm = -1/kk * sin (2*pi*f0*kk/fs*dt)'; % Phase Change by pi > end > OutSig2 = OutSig2 + NewHarm; > NewHarm = -1/(kk+1) * sin (2*pi*f0*(kk+1)/fs*dt)'; > OutSig2 = OutSig2 + NewHarm; > end > > figure; > plot(OutSig2); > > soundsc(OutSig,fs); > %soundsc(OutSig2,fs); > > ________________________________________________________________ > Neu: WEB.DE Doppel-FLAT mit Internet-Flatrate + Telefon-Flatrate > f?r nur 19,99 Euro/mtl.!* http://produkte.web.de/go/02/ > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp -- dupswapdrop -- the music-dsp mailing list and website: subscription info, FAQ, source code archive, list archive, book reviews, dsp links http://music.columbia.edu/cmc/music-dsp http://music.columbia.edu/mailman/listinfo/music-dsp -------------------------------------------------------------------------------- No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.409 / Virus Database: 270.14.3/2412 - Release Date: 10/03/09 18:34:00 From jdb at jboley.com Sun Oct 4 20:15:41 2009 From: jdb at jboley.com (Jon Boley) Date: Sun, 4 Oct 2009 20:15:41 -0400 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: <20091004225334.e1f7e70c.padawan12@obiwannabe.co.uk> References: <1920416453@web.de> <20091004225334.e1f7e70c.padawan12@obiwannabe.co.uk> Message-ID: Interesting... the missing harmonic waveform certainly has the same quality sound as the waveform with an out-of-phase harmonic. I played around with it a little and the out-of-phase (180deg) harmonic had a much more salient pitch than the missing harmonic. The pitches were closer to equal in salience when I shifted the phase by 90deg. (BTW, I did a single-blind, randomized ABX test on myself and could easily distinguish the normal sawtooth from the sawtooth with the 180deg out-of-phase harmonic near 2500Hz. With 100 trials, I got 96% accuracy.) For those who might not be able to hear the difference caused by the phase, this may be due to a physiological impairment that is not detectable by a standard audiogram. There has been some recent research suggesting that people with audiometric impairments at high frequencies may also have difficulty hearing phase-related information at lower frequencies where hearing is "normal". See this paper for more information: Lorenzi C, Debruille L, Garnier S, Fleuriot P, Moore BCJ. Abnormal processing of temporal fine structure in speech for frequencies where absolute thresholds are normal. J. Acoust. Soc. Am. Volume 125, Issue 1, pp. 27-30 (January 2009) I tend to agree with Didier that it's ultimately about continuity. As Lin and Hartmann suggested in their paper, the brain is probably doing some across-frequency phase comparisons, which ultimately result in our detection of something out-of-place at the location of this harmonic. (I think this across-frequency phase comparison idea is more important than previously realized, and is actually the topic of my current research.) - Jon On Sun, Oct 4, 2009 at 5:53 PM, Andy Farnell wrote: > > > Charles got me thinking about a psychoacoustic > phenomena. I wonder if it's the Duifhuis effect > at work here. > > http://www.pa.msu.edu/acoustics/duifhuis.pdf > > The phase change of one harmonic, although it retains equal > magnitude, may 'draw attention to it' in the cochlea > with the same effect as Duifhuis finds. Any thoughts? > > Andy > > > > > > On Sun, 04 Oct 2009 23:12:50 +0200 > "Joerg W. Bitzer" wrote: > >> Dear all, >> >> some matlab code to generate Didiers sound examples. >> >> clearly visible, clearly audible (I am 39), and audible for a naive listener (my wife, she responded there is something extra in the high frequiency region, without knowing anything about the question). >> >> BTW: I know that this means nothing scientifically, but I was suprised myself. >> >> Best >> Joerg >> >> clear >> close all >> >> f0 = 120; >> fs = 44100; >> >> MaxHarm = floor(fs/2/f0)-1; >> >> len_s = 2; >> >> OutSig = zeros(len_s*fs,1); >> >> dt = 0:(len_s*fs-1); >> for kk = 1:2:MaxHarm >> ? ? NewHarm = 1/kk * sin (2*pi*f0*kk/fs*dt)'; >> ? ? OutSig = OutSig + NewHarm; >> ? ? NewHarm = -1/(kk+1) * sin (2*pi*f0*(kk+1)/fs*dt)'; >> ? ? OutSig = OutSig + NewHarm; >> end >> >> figure; >> plot(OutSig); >> >> OutSig2 = zeros(len_s*fs,1); >> for kk = 1:2:MaxHarm >> ? ? if (kk ==25) >> ? ? ? ? NewHarm = 1/kk * sin (2*pi*f0*kk/fs*dt)'; >> ? ? else >> ? ? ? ? NewHarm = -1/kk * sin (2*pi*f0*kk/fs*dt)'; % Phase Change by pi >> ? ? end >> ? ? OutSig2 = OutSig2 + NewHarm; >> ? ? NewHarm = -1/(kk+1) * sin (2*pi*f0*(kk+1)/fs*dt)'; >> ? ? OutSig2 = OutSig2 + NewHarm; >> end >> >> figure; >> plot(OutSig2); >> >> soundsc(OutSig,fs); >> %soundsc(OutSig2,fs); >> >> ________________________________________________________________ >> Neu: WEB.DE Doppel-FLAT mit Internet-Flatrate + Telefon-Flatrate >> f?r nur 19,99 Euro/mtl.!* http://produkte.web.de/go/02/ >> >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book reviews, dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From padawan12 at obiwannabe.co.uk Mon Oct 5 01:40:49 2009 From: padawan12 at obiwannabe.co.uk (Andy Farnell) Date: Mon, 5 Oct 2009 06:40:49 +0100 Subject: [music-dsp] Fw: A little question about DSP performance In-Reply-To: References: <1920416453@web.de> <20091004225334.e1f7e70c.padawan12@obiwannabe.co.uk> Message-ID: <20091005064049.785e53f9.padawan12@obiwannabe.co.uk> On Sun, 4 Oct 2009 20:15:41 -0400 Jon Boley wrote: > I tend to agree with Didier that it's ultimately about continuity. As > Lin and Hartmann suggested in their paper, the brain is probably doing > some across-frequency phase comparisons, which ultimately result in > our detection of something out-of-place at the location of this > harmonic. Yes continuity, congruence, or some other similar words. It doesn't make _physical_ sense for a single harmonic to be off phase, so (as a general rule of cognition) our brains tend to spot that. It goes along with all the 'good ordering' principles of Bregman, Warren, McAdams et al (but yes there's an opportunity here as not as much work has been done on phase). Another example, not related to phase, is Bilsen edge pitch where an unlikely steep cutoff on white noise sounds clearly pitched despite there being no resonance. > (I think this across-frequency phase comparison idea is > more important than previously realized, and is actually the topic of > my current research.) Maybe it's useful to look in the mid range, where location (hair cell) encoding and temporal (spiking neuron encoding) transition. Somewhere around 1kHz a neurologist once told me. From bastian.schnuerle at silberstein.de Mon Oct 5 09:22:12 2009 From: bastian.schnuerle at silberstein.de (bastian.schnuerle) Date: Mon, 5 Oct 2009 15:22:12 +0200 Subject: [music-dsp] what is one hour worth ? In-Reply-To: <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> Message-ID: hi list, can you guys tell me what one hour of softwaredevelopment in the pro audio industry is worth in US$ ? thanks, bastian From bastian.schnuerle at silberstein.de Mon Oct 5 09:40:10 2009 From: bastian.schnuerle at silberstein.de (bastian.schnuerle) Date: Mon, 5 Oct 2009 15:40:10 +0200 Subject: [music-dsp] intellectual properties in softwaredevelopment In-Reply-To: References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> Message-ID: <71762F20-BC2D-4420-AEF4-BC352AAFBD2D@silberstein.de> hi list, i know here are no lawyers on this list, but i need your opinion. in a case were there is no written contract and someone passes code to a programmer, any changes of the code underly the intellectual properties of the person who has programed these changes ? are there differences in the USofA compared to europe ? thanks for your help, bastian From rossb-lists at audiomulch.com Mon Oct 5 13:10:38 2009 From: rossb-lists at audiomulch.com (Ross Bencina) Date: Tue, 6 Oct 2009 04:10:38 +1100 Subject: [music-dsp] intellectual properties in softwaredevelopment References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com><6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <71762F20-BC2D-4420-AEF4-BC352AAFBD2D@silberstein.de> Message-ID: <09da01ca45de$c41a3ab0$0473a8c0@rossmacbook> Hi Bastian > in > a case were there is no written contract and someone passes code to a > programmer, any changes of the code underly the intellectual > properties of the person who has programed these changes ? I can't answer your question directly except to say "it depends." Someone once told me something along the lines of: "make sure everything is clear at the beginning, put everything in writing so it is easy to trace everyone's intentions, and have a written contract -- but -- if you ever need to get the contract out of your top drawer you're probably in more trouble than the contract will resolve by itself." Even if you have a contract which explicitly assigns copyright in your favour that may not help you much depending on who the contract is with. Your ability to negotiate your way out of a situation is going to be more valuable than default copyright assignment laws or even a well written contract. I'm not sure if you are thinking of walking into a project without a clear agreement about copyright assignment or if you are in that situation already. If the former I strongly recommend that you do not depend on the default legal position for something like this. IP law, especially with regard to software, is a very dynamic area and the state of the law is quite possibly more undecided and untested than you imagine. In any case, if you could afford to test it in court I doubt you would be asking here... >From the way you asked the question, I'm not sure if the developer is looking to retain copyright or if the owner of the larger body of code wants to be sure they own all copyright. For example, it may be critically important for the owner of the system to not have any code owned by contributing developers so they can safely sell or licence the code. On the other hand contributing developers might want the rights to reuse code in future projects. In both of these cases it **might** be reasonable to proceed under an assumption of who owns what -- certainly that is sometimes the case in practice. There may be precedents in the OSS world where patch contributors implicitly grant copyright to the project -- but I know that at least for a time FSF was getting contributors to make explicit signed copyright assignments for work on GNU projects. On the other hand, if there is already a disagreement over who owns what then you need a different kind of answer. Perhaps there are a few things to consider here (all disclaimers apply, IANAL, AFAIK, imho, I'm Australian, etc)... 0. I think it would be helpful to get clear about what you mean by "intellectual properties." Two possibilities I can think of are "copyright in the lines of code" and also possibly some claim to authorship and/or ownership of "patentable mechanisms." I have no idea how these areas of IP law interact but if you are only concerned about copyright then at least you could investigate copyright law on its own. 1. AFAIK copyright subsists in each line (possibly each character?) of code written. So at least in theory, specific code patches can be owned by the person who programmed those changes irrespective of who owns the rest of the code. 2. I think there is no general internationally standard law which determines default assignment of copyright in cases where there isn't a contract, but there are almost certainly specific laws or legal precedents in each jurisdiction. To my knowledge a distinction is often made between (1) the work of a sallaried employee (works for company, therefore company owns copyright to all work of the employee by default) and (2) work of a contractor (contractor might own copyright by default). I think the first case (employee doesn't get copyright) is pretty standard. I have even heard of examples of employers grabbing copyright to employees hobby work, and this has been upheld in court. The usual advice here is to get a signed agreement with your employer confirming they don't own any personal projects you're working on while under their employ (the other option is to stay under the radar). The second case (contractor gets copyright) seems to be loose and I have seen it go both ways when a dispute has been negotiated at a business level. If you took it to court I imagine it could be argued both ways, and the intention of the arrangement with the contractor could be a deciding factor. For example, if someone were contracted to fix a bug in someone else's system it would be reasonable for the owner of the system to expect to own the copyright to the fix, on the other hand, if you had a consulting business building websites using your custom framework which you reused on every job, the client might reasonably expect to get a licence to use your code in their website, not exhaustive rights to use your framework for any purpose including say, commercialisation. I have no idea how either of these would be settled in court. Other thoughts: - Just because something has a copyright notice on it (or not) doesn't change the actual copyright status of the work. Someone might claim copyright on something they don't own copyright to -- but that doesn't mean they actually have copyright on it. -There is a legal concept of "consideration", something like compensation for work done (sometimes known as "payment") (http://en.wikipedia.org/wiki/Consideration)-- If you randomly visited my office and happened to write some code for me for free it might have a potentially different copyright assignment outcome than if I paid you (or even bought you lunch to say thanks). Another side to this is whether payment has actually been made -- if the client has not paid for the changes it might be difficult to argue that there had been a commercial exchange which triggered the reassignment of copyright. Since I'm advising you to get a contract, a couple of thoughts on what I like to do wherever possible: My personal preference as a contractor is to give the client whatever IP rights they need, but to ensure that I retain copyright (or permissive licence) to reuse the code in future. This is relatively easy if the code you are working on is an open source project since the licence is already in place -- you just need an agreement stating that you retain the copyright to the code your develop (or that it is assigned to the OSS project). In the case of commercial exchange of proprietary code fragments, I have used a contract which basically says "if the client gives me a small fragment of code which I use to write a big piece of code for them, I own the whole big piece even if it includes a little piece they gave me, if i make a small change to their big code, they get copyright to my small change. In addition, pre-existing code is owned by whoever wrote it" That can be combined with not exchanging any sensitive code which you wouldn't want treated like the above, and/or having explicit exclusions for sensitive trade-secrets type code eg: "Copyright in all work undertaken on module Foo will be assigned to BigMoneyCorp upon receipt of payment in full. LittleGuy is to retain copyright in all code in the Bar subsystem, including any code fragments, patches or bug fixes contributed by BigMoneyCorp". Obviously the wording here is vaguer than you would want in a contract. As a contractor there are other issues to contend with: - do you reuse code from a personal toolkit? -- in this case you probably need to have an licence agreement with the client. - do you use OSS in your work? -- i always explicitly negotiate for use of OSS if I intend to use it. client contracts for proprietary systems often explicitly prohibit use of OSS. - do you want to be able to reuse your code on other jobs in the future? -- in this case there are various options for giving the client the IP rights they need with the contractor retaining copyright so they can reuse the code. OK, now you owe me lunch ;-) Ross. > hi list, > > i know here are no lawyers on this list, but i need your opinion. in > a case were there is no written contract and someone passes code to a > programmer, any changes of the code underly the intellectual > properties of the person who has programed these changes ? are there > differences in the USofA compared to europe ? > > thanks for your help, > bastian > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From bastian.schnuerle at silberstein.de Mon Oct 5 13:29:01 2009 From: bastian.schnuerle at silberstein.de (bastian.schnuerle) Date: Mon, 5 Oct 2009 19:29:01 +0200 Subject: [music-dsp] intellectual properties in softwaredevelopment In-Reply-To: <09da01ca45de$c41a3ab0$0473a8c0@rossmacbook> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com><6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <71762F20-BC2D-4420-AEF4-BC352AAFBD2D@silberstein.de> <09da01ca45de$c41a3ab0$0473a8c0@rossmacbook> Message-ID: <3621500A-7558-42A9-B7E9-D730D29FBADC@silberstein.de> hey ross, i do indeed owe you a lunch. hopefully i will be allowed to enter the states from now on to make this invitation true ;) i am grateful for your thoughts. being small in something big or big in something small is what i needed to hear., i have backing, thats the key... bastian Am 05.10.2009 um 19:10 schrieb Ross Bencina: > Hi Bastian > >> in >> a case were there is no written contract and someone passes code to a >> programmer, any changes of the code underly the intellectual >> properties of the person who has programed these changes ? > > I can't answer your question directly except to say "it depends." > > Someone once told me something along the lines of: "make sure > everything is > clear at the beginning, put everything in writing so it is easy to > trace > everyone's intentions, and have a written contract -- but -- if you > ever > need to get the contract out of your top drawer you're probably in > more > trouble than the contract will resolve by itself." > > Even if you have a contract which explicitly assigns copyright in your > favour that may not help you much depending on who the contract is > with. > Your ability to negotiate your way out of a situation is going to > be more > valuable than default copyright assignment laws or even a well written > contract. > > I'm not sure if you are thinking of walking into a project without > a clear > agreement about copyright assignment or if you are in that situation > already. If the former I strongly recommend that you do not depend > on the > default legal position for something like this. IP law, especially > with > regard to software, is a very dynamic area and the state of the law > is quite > possibly more undecided and untested than you imagine. In any case, > if you > could afford to test it in court I doubt you would be asking here... > >> From the way you asked the question, I'm not sure if the developer is > looking to retain copyright or if the owner of the larger body of > code wants > to be sure they own all copyright. For example, it may be critically > important for the owner of the system to not have any code owned by > contributing developers so they can safely sell or licence the > code. On the > other hand contributing developers might want the rights to reuse > code in > future projects. In both of these cases it **might** be reasonable to > proceed under an assumption of who owns what -- certainly that is > sometimes > the case in practice. There may be precedents in the OSS world > where patch > contributors implicitly grant copyright to the project -- but I > know that > at least for a time FSF was getting contributors to make explicit > signed > copyright assignments for work on GNU projects. On the other hand, > if there > is already a disagreement over who owns what then you need a > different kind > of answer. > > > Perhaps there are a few things to consider here (all disclaimers > apply, > IANAL, AFAIK, imho, I'm Australian, etc)... > > 0. I think it would be helpful to get clear about what you mean by > "intellectual properties." Two possibilities I can think of are > "copyright > in the lines of code" and also possibly some claim to authorship > and/or > ownership of "patentable mechanisms." I have no idea how these > areas of IP > law interact but if you are only concerned about copyright then at > least you > could investigate copyright law on its own. > > 1. AFAIK copyright subsists in each line (possibly each character?) > of code > written. So at least in theory, specific code patches can be owned > by the > person who programmed those changes irrespective of who owns the > rest of the > code. > > 2. I think there is no general internationally standard law which > determines > default assignment of copyright in cases where there isn't a > contract, but > there are almost certainly specific laws or legal precedents in each > jurisdiction. To my knowledge a distinction is often made between > (1) the > work of a sallaried employee (works for company, therefore company > owns > copyright to all work of the employee by default) and (2) work of a > contractor (contractor might own copyright by default). > > I think the first case (employee doesn't get copyright) is pretty > standard. > I have even heard of examples of employers grabbing copyright to > employees > hobby work, and this has been upheld in court. The usual advice > here is to > get a signed agreement with your employer confirming they don't own > any > personal projects you're working on while under their employ (the > other > option is to stay under the radar). > > The second case (contractor gets copyright) seems to be loose and I > have > seen it go both ways when a dispute has been negotiated at a > business level. > If you took it to court I imagine it could be argued both ways, and > the > intention of the arrangement with the contractor could be a > deciding factor. > For example, if someone were contracted to fix a bug in someone else's > system it would be reasonable for the owner of the system to expect > to own > the copyright to the fix, on the other hand, if you had a consulting > business building websites using your custom framework which you > reused on > every job, the client might reasonably expect to get a licence to > use your > code in their website, not exhaustive rights to use your framework > for any > purpose including say, commercialisation. I have no idea how either > of these > would be settled in court. > > Other thoughts: > > - Just because something has a copyright notice on it (or not) doesn't > change the actual copyright status of the work. Someone might claim > copyright on something they don't own copyright to -- but that > doesn't mean > they actually have copyright on it. > > -There is a legal concept of "consideration", something like > compensation > for work done (sometimes known as "payment") > (http://en.wikipedia.org/wiki/Consideration)-- If you randomly > visited my > office and happened to write some code for me for free it might have a > potentially different copyright assignment outcome than if I paid > you (or > even bought you lunch to say thanks). Another side to this is whether > payment has actually been made -- if the client has not paid for > the changes > it might be difficult to argue that there had been a commercial > exchange > which triggered the reassignment of copyright. > > > Since I'm advising you to get a contract, a couple of thoughts on > what I > like to do wherever possible: > > My personal preference as a contractor is to give the client > whatever IP > rights they need, but to ensure that I retain copyright (or permissive > licence) to reuse the code in future. This is relatively easy if > the code > you are working on is an open source project since the licence is > already in > place -- you just need an agreement stating that you retain the > copyright to > the code your develop (or that it is assigned to the OSS project). > > In the case of commercial exchange of proprietary code fragments, I > have > used a contract which basically says "if the client gives me a small > fragment of code which I use to write a big piece of code for them, > I own > the whole big piece even if it includes a little piece they gave > me, if i > make a small change to their big code, they get copyright to my small > change. In addition, pre-existing code is owned by whoever wrote > it" That > can be combined with not exchanging any sensitive code which you > wouldn't > want treated like the above, and/or having explicit exclusions for > sensitive > trade-secrets type code eg: "Copyright in all work undertaken on > module Foo > will be assigned to BigMoneyCorp upon receipt of payment in full. > LittleGuy > is to retain copyright in all code in the Bar subsystem, including > any code > fragments, patches or bug fixes contributed by BigMoneyCorp". > Obviously the > wording here is vaguer than you would want in a contract. > > As a contractor there are other issues to contend with: > - do you reuse code from a personal toolkit? -- in this case you > probably > need to have an licence agreement with the client. > - do you use OSS in your work? -- i always explicitly negotiate for > use of > OSS if I intend to use it. client contracts for proprietary systems > often > explicitly prohibit use of OSS. > - do you want to be able to reuse your code on other jobs in the > future? -- > in this case there are various options for giving the client the IP > rights > they need with the contractor retaining copyright so they can reuse > the > code. > > OK, now you owe me lunch ;-) > > Ross. > > > > > > >> hi list, >> >> i know here are no lawyers on this list, but i need your opinion. in >> a case were there is no written contract and someone passes code to a >> programmer, any changes of the code underly the intellectual >> properties of the person who has programed these changes ? are there >> differences in the USofA compared to europe ? >> >> thanks for your help, >> bastian >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book >> reviews, >> dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From rbj at audioimagination.com Mon Oct 5 13:47:23 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Mon, 5 Oct 2009 13:47:23 -0400 Subject: [music-dsp] intellectual properties in softwaredevelopment In-Reply-To: <71762F20-BC2D-4420-AEF4-BC352AAFBD2D@silberstein.de> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <71762F20-BC2D-4420-AEF4-BC352AAFBD2D@silberstein.de> Message-ID: <580BC247-00DE-49E0-BEAF-2BC1072C05FB@audioimagination.com> > On Oct 5, 2009, at 9:22 AM, bastian.schnuerle wrote: > >> hi list, >> >> can you guys tell me what one hour of softwaredevelopment in the pro >> audio industry is worth in US$ ? i've heard of as low as the high 2 digits to as high as the ballpark that lawyers play in. On Oct 5, 2009, at 9:40 AM, bastian.schnuerle wrote: > hi list, > > i know here are no lawyers on this list, hey, you never know. i sure ain't, but it would surprize me if some patent lawyer (they often get a BSEE for their undergrad) is on the list. > but i need your opinion. in > a case were there is no written contract and someone passes code to a > programmer, any changes of the code underly the intellectual > properties of the person who has programed these changes ? are there > differences in the USofA compared to europe ? in my non-lawyerly opinion, if there isn't even an NDA (non- disclosure agreement) that "someone" could get burned. but ethically, i think you should treat code that someone passes to you as if it is intellectual property, potentially valuable intellectual property and that it is *not* *your* intellectual property. now that's the code that "someone" passes to you. the ownership of coding that you do for anyone is subject to contract. i don't know of a single place i worked as an employee that didn't have an employment contract that explicitly said that everything i did, in the course of my work, belonged to the company and that i agree to keep it confidential even after leaving the company. but i don't agree to that as a contractor and if "someone" and you do not have a contract stating explicitly that "someone" exclusively owns the code that you write for them as a contractor, they don't exclusively own it. that's my non-lawyerly opinion. without a contract, i would guess that they have a perpetual license to use the code you did for them forever without having to pay you any additional royalty for it. they own their copy of it. and without a contract, i would guess that you could take the same idea (that *you* came up with, not what you saw in the code passed to you) across the street to their competitor and do the same thing for them. *but*, check with a lawyer, just to cover your arse. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From bastian.schnuerle at silberstein.de Mon Oct 5 13:52:57 2009 From: bastian.schnuerle at silberstein.de (bastian.schnuerle) Date: Mon, 5 Oct 2009 19:52:57 +0200 Subject: [music-dsp] intellectual properties in softwaredevelopment In-Reply-To: <580BC247-00DE-49E0-BEAF-2BC1072C05FB@audioimagination.com> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <71762F20-BC2D-4420-AEF4-BC352AAFBD2D@silberstein.de> <580BC247-00DE-49E0-BEAF-2BC1072C05FB@audioimagination.com> Message-ID: <1A50A9ED-9130-4564-80BC-8CC725968B75@silberstein.de> jup, my inner feelings are confirmed with this .. anyway, getting an opportunity on it, is it worth .. not ? Am 05.10.2009 um 19:47 schrieb robert bristow-johnson: > >> On Oct 5, 2009, at 9:22 AM, bastian.schnuerle wrote: >> >>> hi list, >>> >>> can you guys tell me what one hour of softwaredevelopment in the pro >>> audio industry is worth in US$ ? > > i've heard of as low as the high 2 digits to as high as the ballpark > that lawyers play in. > > On Oct 5, 2009, at 9:40 AM, bastian.schnuerle wrote: > >> hi list, >> >> i know here are no lawyers on this list, > > hey, you never know. i sure ain't, but it would surprize me if some > patent lawyer (they often get a BSEE for their undergrad) is on the > list. > >> but i need your opinion. in >> a case were there is no written contract and someone passes code to a >> programmer, any changes of the code underly the intellectual >> properties of the person who has programed these changes ? are there >> differences in the USofA compared to europe ? > > in my non-lawyerly opinion, if there isn't even an NDA (non- > disclosure agreement) that "someone" could get burned. but > ethically, i think you should treat code that someone passes to you > as if it is intellectual property, potentially valuable intellectual > property and that it is *not* *your* intellectual property. now > that's the code that "someone" passes to you. > > the ownership of coding that you do for anyone is subject to > contract. i don't know of a single place i worked as an employee > that didn't have an employment contract that explicitly said that > everything i did, in the course of my work, belonged to the company > and that i agree to keep it confidential even after leaving the > company. but i don't agree to that as a contractor and if "someone" > and you do not have a contract stating explicitly that "someone" > exclusively owns the code that you write for them as a contractor, > they don't exclusively own it. that's my non-lawyerly opinion. > > without a contract, i would guess that they have a perpetual license > to use the code you did for them forever without having to pay you > any additional royalty for it. they own their copy of it. and > without a contract, i would guess that you could take the same idea > (that *you* came up with, not what you saw in the code passed to you) > across the street to their competitor and do the same thing for them. > > *but*, check with a lawyer, just to cover your arse. > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." > > > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From iain at idcl.co.uk Mon Oct 5 14:12:06 2009 From: iain at idcl.co.uk (iain) Date: Mon, 5 Oct 2009 19:12:06 +0100 Subject: [music-dsp] intellectual properties in softwaredevelopment In-Reply-To: <71762F20-BC2D-4420-AEF4-BC352AAFBD2D@silberstein.de> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <71762F20-BC2D-4420-AEF4-BC352AAFBD2D@silberstein.de> Message-ID: <014201ca45e7$59ab2230$0d016690$@co.uk> As with the other replies, a disclaimer - don't take this as a professional opinion! I have the impression that in the UK if there is no contract, the default is that the new code belongs to the coder, with the customer having the rights to use it. Iain -----Original Message----- From: music-dsp-bounces at music.columbia.edu [mailto:music-dsp-bounces at music.columbia.edu] On Behalf Of bastian.schnuerle Sent: 05 October 2009 14:40 To: A discussion list for music-related DSP Subject: [music-dsp] intellectual properties in softwaredevelopment hi list, i know here are no lawyers on this list, but i need your opinion. in a case were there is no written contract and someone passes code to a programmer, any changes of the code underly the intellectual properties of the person who has programed these changes ? are there differences in the USofA compared to europe ? thanks for your help, bastian -- dupswapdrop -- the music-dsp mailing list and website: subscription info, FAQ, source code archive, list archive, book reviews, dsp links http://music.columbia.edu/cmc/music-dsp http://music.columbia.edu/mailman/listinfo/music-dsp From bastian.schnuerle at silberstein.de Mon Oct 5 14:16:02 2009 From: bastian.schnuerle at silberstein.de (bastian.schnuerle) Date: Mon, 5 Oct 2009 20:16:02 +0200 Subject: [music-dsp] intellectual properties in softwaredevelopment In-Reply-To: <014201ca45e7$59ab2230$0d016690$@co.uk> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <71762F20-BC2D-4420-AEF4-BC352AAFBD2D@silberstein.de> <014201ca45e7$59ab2230$0d016690$@co.uk> Message-ID: <3C33878C-53BA-43B5-94D1-D58FF99D0DF2@silberstein.de> YEAH, EUROPE Am 05.10.2009 um 20:12 schrieb iain: > As with the other replies, a disclaimer - don't take this as a > professional > opinion! > > I have the impression that in the UK if there is no contract, the > default is > that the new code belongs to the coder, with the customer having > the rights > to use it. > > Iain > > -----Original Message----- > From: music-dsp-bounces at music.columbia.edu > [mailto:music-dsp-bounces at music.columbia.edu] On Behalf Of > bastian.schnuerle > Sent: 05 October 2009 14:40 > To: A discussion list for music-related DSP > Subject: [music-dsp] intellectual properties in softwaredevelopment > > hi list, > > i know here are no lawyers on this list, but i need your opinion. in > a case were there is no written contract and someone passes code to a > programmer, any changes of the code underly the intellectual > properties of the person who has programed these changes ? are there > differences in the USofA compared to europe ? > > thanks for your help, > bastian > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp > links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From adsomers at gmail.com Tue Oct 6 11:27:51 2009 From: adsomers at gmail.com (Adam Somers) Date: Tue, 6 Oct 2009 08:27:51 -0700 Subject: [music-dsp] what is one hour worth ? In-Reply-To: References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> Message-ID: <967a2c090910060827h232195e2se3618a9711ea2a1d@mail.gmail.com> It runs the gamut of rates in the rest of the software industry, usually commensurate with experience. On Mon, Oct 5, 2009 at 6:22 AM, bastian.schnuerle wrote: > hi list, > > can you guys tell me what one hour of softwaredevelopment in the pro > audio industry is worth in US$ ? > > thanks, > bastian > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From hybridalienrob at hotmail.com Wed Oct 7 14:45:33 2009 From: hybridalienrob at hotmail.com (Rob Belcham) Date: Wed, 7 Oct 2009 19:45:33 +0100 Subject: [music-dsp] what is one hour worth ? In-Reply-To: References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com><6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> Message-ID: I know a couple of years ago, we contracted another pro-audio company to do a complex DSP board for us, and they were charging something like $380 ph for a senior engineer. I wouldn't expect a sole-trader type contractor to charge that much though.. I could be wrong and if i am, i'm setting up a consultancy straight away ;) Be interested to hear some more views on this. Rob -------------------------------------------------- From: "bastian.schnuerle" Sent: Monday, October 05, 2009 2:22 PM To: "A discussion list for music-related DSP" Subject: [music-dsp] what is one hour worth ? > hi list, > > can you guys tell me what one hour of softwaredevelopment in the pro > audio industry is worth in US$ ? > > thanks, > bastian > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From rainwarrior at gmail.com Wed Oct 7 22:49:30 2009 From: rainwarrior at gmail.com (Brad Smith) Date: Wed, 7 Oct 2009 22:49:30 -0400 Subject: [music-dsp] what is one hour worth ? In-Reply-To: References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD> <56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> Message-ID: When I first got a job programming a few years ago I was making around $25 an hour + benefits. I'd say less than that is unreasonable for a full-time position, and it should go up from there with experience. If this is short term or contract work you should probably charge more than you would for a long term job. -- Brad Smith On Wed, Oct 7, 2009 at 2:45 PM, Rob Belcham wrote: > I know a couple of years ago, we contracted another pro-audio company to do > a complex DSP board for us, and they were charging something like $380 ph > for a senior engineer. I wouldn't expect a sole-trader type contractor to > charge that much though.. I could be wrong and if i am, i'm setting up a > consultancy straight away ;) > > Be interested to hear some more views on this. > > Rob > > > -------------------------------------------------- > From: "bastian.schnuerle" > Sent: Monday, October 05, 2009 2:22 PM > To: "A discussion list for music-related DSP" > Subject: [music-dsp] what is one hour worth ? > >> hi list, >> >> can you guys tell me what one hour of softwaredevelopment in the pro >> audio industry is worth in US$ ? >> >> thanks, >> bastian >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book reviews, >> dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp >> > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From rossb-lists at audiomulch.com Thu Oct 8 00:17:50 2009 From: rossb-lists at audiomulch.com (Ross Bencina) Date: Thu, 8 Oct 2009 15:17:50 +1100 Subject: [music-dsp] what is one hour worth ? References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com><6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com><18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> Message-ID: <04f401ca47ce$4d5dabe0$0773a8c0@rossmacbook> Even before you start considering the skill and experience of the contractor there are other differences between a sallary hourly rate and a consultancy hourly rate: - A sallaried employee may receive other benefits (holiday pay, health insurance, superannuation) and they probably don't have to supply their own equipment, manage payroll or put out the trash. - When you pay a consultant or contractor you may also be paying for all the supporting infrastructure (which might include secretaries, executive management, account management costs, equipment and/or software, legal costs, office rental, etc). Personally I thought Robert's answer sounded about right for a non-employee experienced contract programmer with domain expertise. Ross. From didid at skynet.be Thu Oct 8 05:20:31 2009 From: didid at skynet.be (Didier Dambrin) Date: Thu, 8 Oct 2009 11:20:31 +0200 Subject: [music-dsp] What is the waveform with even harmonics called In-Reply-To: <20090727210544.Y82432@bunrab.ronnet.moc> References: <29817224.180301245328924683.JavaMail.servlet@kundenserver><20090707134434.W72701@bunrab.ronnet.moc><20090709185154.F94617@bunrab.ronnet.moc> <20090727210544.Y82432@bunrab.ronnet.moc> Message-ID: <604A75B5037B4CE29D51BD2548BC832F@GOLAMD> Pretty cool. I was just trying to achieve PWM out of additive, and couldn't get any logic from harmonics produced by various pulse widths. I see you computed a formula, nice. >I put a bit up about different waveforms at > > http://members.cox.net/~inicoderocker/waveforms.pdf > > Hopefully there is something of interest and not too much to lead one > astray. > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From dgm at baykitty.com Thu Oct 8 11:08:55 2009 From: dgm at baykitty.com (Don Morgan (E-mail)) Date: Thu, 8 Oct 2009 08:08:55 -0700 Subject: [music-dsp] fft scaling, shaping Message-ID: <6914A789-115B-484C-8499-C19A74879AD9@baykitty.com> Hi. I think this is a real simple one. In the past, I have always used 1/3 octave filters to develop the spl for each band, but in this product we want to use an fft. My concern is in the scaling. Bandpass filters 'shape' and integrate a signal differently than an fft but we need this to look like it was done with 1/3 octave filters. Can someone direct me to a reference that can shed some light on this? Thanks, Don From bastian.schnuerle at silberstein.de Thu Oct 8 12:36:49 2009 From: bastian.schnuerle at silberstein.de (bastian.schnuerle) Date: Thu, 8 Oct 2009 18:36:49 +0200 Subject: [music-dsp] intellectual properties in softwaredevelopment In-Reply-To: <3C33878C-53BA-43B5-94D1-D58FF99D0DF2@silberstein.de> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <71762F20-BC2D-4420-AEF4-BC352AAFBD2D@silberstein.de> <014201ca45e7$59ab2230$0d016690$@co.uk> <3C33878C-53BA-43B5-94D1-D58FF99D0DF2@silberstein.de> Message-ID: <6D704F48-3C1A-46D0-B4D5-89539BD77F11@silberstein.de> sorry guys, my last statement was also not a very professional. thank you so much for your thoughts, they are really helpful. thanks, bastian Am 05.10.2009 um 20:16 schrieb bastian.schnuerle: > YEAH, EUROPE > > Am 05.10.2009 um 20:12 schrieb iain: > >> As with the other replies, a disclaimer - don't take this as a >> professional >> opinion! >> >> I have the impression that in the UK if there is no contract, the >> default is >> that the new code belongs to the coder, with the customer having >> the rights >> to use it. >> >> Iain >> >> -----Original Message----- >> From: music-dsp-bounces at music.columbia.edu >> [mailto:music-dsp-bounces at music.columbia.edu] On Behalf Of >> bastian.schnuerle >> Sent: 05 October 2009 14:40 >> To: A discussion list for music-related DSP >> Subject: [music-dsp] intellectual properties in softwaredevelopment >> >> hi list, >> >> i know here are no lawyers on this list, but i need your opinion. in >> a case were there is no written contract and someone passes code to a >> programmer, any changes of the code underly the intellectual >> properties of the person who has programed these changes ? are there >> differences in the USofA compared to europe ? >> >> thanks for your help, >> bastian >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book >> reviews, dsp >> links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp >> >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book >> reviews, dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From czhenry at gmail.com Thu Oct 8 12:39:46 2009 From: czhenry at gmail.com (Charles Henry) Date: Thu, 8 Oct 2009 11:39:46 -0500 Subject: [music-dsp] fft scaling, shaping In-Reply-To: <6914A789-115B-484C-8499-C19A74879AD9@baykitty.com> References: <6914A789-115B-484C-8499-C19A74879AD9@baykitty.com> Message-ID: <518fe7b20910080939j7344ca0bj2bbc671fc392afd2@mail.gmail.com> If you need to get the output from the fft as numbers in the 1/3rd octave filters: 1. Take the fft of each of your filters impulse response (sample if continuous), and store the results into vectors f1...fN 2. Take the fft of your input, x 3. Sum up the squares of fft(x)*fn to get raw ~p^2 numbers (proportional to intensity) in the nth subband 4. Compute the SPL in each subband from step 3 It's unclear what kind of scaling factor and reference level you will use to have to correctly calculate SPL in step 4. Also, there is likely a way to reduce the number of multiplies in step 3, if you only consider a certain set of non-zero entries in fn to multiply with. Chuck On Thu, Oct 8, 2009 at 10:08 AM, Don Morgan (E-mail) wrote: > Hi. I think this is a real simple one. > > In the past, I have always used 1/3 octave filters to develop the spl > for each band, but in this product we want to use an fft. > > My concern is in the scaling. Bandpass filters 'shape' and integrate a > signal differently than an fft but we need this to look like it was > done with 1/3 octave filters. Can someone direct me to a reference > that can shed some light on this? > > Thanks, > Don > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From rbj at audioimagination.com Thu Oct 8 13:30:58 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Thu, 8 Oct 2009 13:30:58 -0400 Subject: [music-dsp] intellectual properties in softwaredevelopment In-Reply-To: <6D704F48-3C1A-46D0-B4D5-89539BD77F11@silberstein.de> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <71762F20-BC2D-4420-AEF4-BC352AAFBD2D@silberstein.de> <014201ca45e7$59ab2230$0d016690$@co.uk> <3C33878C-53BA-43B5-94D1-D58FF99D0DF2@silberstein.de> <6D704F48-3C1A-46D0-B4D5-89539BD77F11@silberstein.de> Message-ID: <90E23386-EF8A-4D9D-9158-4B01109A0BBA@audioimagination.com> On Oct 8, 2009, at 12:36 PM, bastian.schnuerle wrote: > sorry guys, my last statement was also not a very professional. this is a professional list? i'm just here to have fun. onward to NYC and AES. see ya guys. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From dgm at baykitty.com Thu Oct 8 13:35:28 2009 From: dgm at baykitty.com (Don Morgan) Date: Thu, 8 Oct 2009 10:35:28 -0700 Subject: [music-dsp] fft scaling, shaping In-Reply-To: <518fe7b20910080939j7344ca0bj2bbc671fc392afd2@mail.gmail.com> References: <6914A789-115B-484C-8499-C19A74879AD9@baykitty.com> <518fe7b20910080939j7344ca0bj2bbc671fc392afd2@mail.gmail.com> Message-ID: <029d01ca483d$ba90fef0$2fb2fcd0$@com> Thanks for the information. I appreciate it. I will be using a calibrated microphone as an input that references x millivolts/Pascal. Don -----Original Message----- From: music-dsp-bounces at music.columbia.edu [mailto:music-dsp-bounces at music.columbia.edu] On Behalf Of Charles Henry Sent: Thursday, October 08, 2009 9:40 AM To: A discussion list for music-related DSP Subject: Re: [music-dsp] fft scaling, shaping If you need to get the output from the fft as numbers in the 1/3rd octave filters: 1. Take the fft of each of your filters impulse response (sample if continuous), and store the results into vectors f1...fN 2. Take the fft of your input, x 3. Sum up the squares of fft(x)*fn to get raw ~p^2 numbers (proportional to intensity) in the nth subband 4. Compute the SPL in each subband from step 3 It's unclear what kind of scaling factor and reference level you will use to have to correctly calculate SPL in step 4. Also, there is likely a way to reduce the number of multiplies in step 3, if you only consider a certain set of non-zero entries in fn to multiply with. Chuck On Thu, Oct 8, 2009 at 10:08 AM, Don Morgan (E-mail) wrote: > Hi. I think this is a real simple one. > > In the past, I have always used 1/3 octave filters to develop the spl > for each band, but in this product we want to use an fft. > > My concern is in the scaling. Bandpass filters 'shape' and integrate a > signal differently than an fft but we need this to look like it was > done with 1/3 octave filters. Can someone direct me to a reference > that can shed some light on this? > > Thanks, > Don > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > -- dupswapdrop -- the music-dsp mailing list and website: subscription info, FAQ, source code archive, list archive, book reviews, dsp links http://music.columbia.edu/cmc/music-dsp http://music.columbia.edu/mailman/listinfo/music-dsp From bastian.schnuerle at silberstein.de Thu Oct 8 13:48:01 2009 From: bastian.schnuerle at silberstein.de (bastian.schnuerle) Date: Thu, 8 Oct 2009 19:48:01 +0200 Subject: [music-dsp] intellectual properties in softwaredevelopment In-Reply-To: <90E23386-EF8A-4D9D-9158-4B01109A0BBA@audioimagination.com> References: <037A2915F3DB403B9A6B63C503F5F515@GOLAMD><56FB32C8-9BA2-4C93-816A-BE1623F34A93@audioimagination.com> <6D776234-1B7A-4DA8-AFEE-F17D94C7FC70@audioimagination.com> <18E97DEC-43B0-4FC3-AE03-5E529BFD94AC@audioimagination.com> <71762F20-BC2D-4420-AEF4-BC352AAFBD2D@silberstein.de> <014201ca45e7$59ab2230$0d016690$@co.uk> <3C33878C-53BA-43B5-94D1-D58FF99D0DF2@silberstein.de> <6D704F48-3C1A-46D0-B4D5-89539BD77F11@silberstein.de> <90E23386-EF8A-4D9D-9158-4B01109A0BBA@audioimagination.com> Message-ID: hehe, thanks .. have fun guys, i am a bit envious, would love to be there, too. but i am still afraid to get imprisoned and i need the money here .. ;) good time Am 08.10.2009 um 19:30 schrieb robert bristow-johnson: > > On Oct 8, 2009, at 12:36 PM, bastian.schnuerle wrote: > >> sorry guys, my last statement was also not a very professional. > > > this is a professional list? i'm just here to have fun. > > > onward to NYC and AES. see ya guys. > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." > > > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From batuhan at batuhanbozkurt.com Thu Oct 8 13:50:37 2009 From: batuhan at batuhanbozkurt.com (Batuhan Bozkurt) Date: Thu, 8 Oct 2009 20:50:37 +0300 Subject: [music-dsp] Standardized symbols for diagrams Message-ID: <42B3677E-C3FF-49BE-9ED3-20B50A3F3D58@batuhanbozkurt.com> Hi all, I'm about to draw some diagrams for describing the topology of a synthesizer, and I'll also draw some basic graphs for simple DSP operations (mostly filter like stuff with sample feedbacks etc.). I was wondering if there are any standardized symbols for visualizing building blocks (envelopes, oscillators etc. for describing a synthesizer topology) that are used commonly in diagrams of this sort. I've always been fond of the basic diagrams commonly encountered in the books of Curtis Roads, they make some good sense visually. If there is a commonly referenced source for this, can someone please provide it? Thanks, Batuhan Bozkurt /* http://www.earslap.com */ From czhenry at gmail.com Thu Oct 8 14:28:24 2009 From: czhenry at gmail.com (Charles Henry) Date: Thu, 8 Oct 2009 13:28:24 -0500 Subject: [music-dsp] fft scaling, shaping In-Reply-To: <029d01ca483d$ba90fef0$2fb2fcd0$@com> References: <6914A789-115B-484C-8499-C19A74879AD9@baykitty.com> <518fe7b20910080939j7344ca0bj2bbc671fc392afd2@mail.gmail.com> <029d01ca483d$ba90fef0$2fb2fcd0$@com> Message-ID: <518fe7b20910081128w24f86284q2ba19490d0608dde@mail.gmail.com> The key properties of the Fourier transform that make it work this way are: 1. Isometry--the sum of complex normed squares is the same in time domain as in frequency domain (specifically the L2 and little-L2 norms) 2. orthogonality--each "bin" in the frequency domain does not contain energy from any other "bin" but... frequencies between "bin"s in the Fourier transform are not orthogonal to any of the "bin"s. So, the impulse response of your bandlimited filters may look a little weird in the fft, but is nonetheless correct. You may want to consider some different problems that may arise and adopt changes to the simple steps I provided. You may want to consider windowing for dealing with non-stationary measurement. Also, the length of the window determines the lowest sub-band you can support--the impulse response may be much longer than your window size, which is not practical. Also, assuming your 1/3 octave filters are nearly orthogonal, you will have to have at least n points in your fft to support n filters. There's probably more considerations that I haven't thought of yet. Chuck On Thu, Oct 8, 2009 at 12:35 PM, Don Morgan wrote: > Thanks for the information. I appreciate it. > > I will be using a calibrated microphone as an input that references x > millivolts/Pascal. > > Don > > -----Original Message----- > From: music-dsp-bounces at music.columbia.edu > [mailto:music-dsp-bounces at music.columbia.edu] On Behalf Of Charles Henry > Sent: Thursday, October 08, 2009 9:40 AM > To: A discussion list for music-related DSP > Subject: Re: [music-dsp] fft scaling, shaping > > If you need to get the output from the fft as numbers in the 1/3rd > octave filters: > > 1. ?Take the fft of each of your filters impulse response (sample if > continuous), and store the results into vectors f1...fN > 2. ?Take the fft of your input, x > 3. ?Sum up the squares of fft(x)*fn to get raw ~p^2 numbers > (proportional to intensity) in the nth subband > 4. ?Compute the SPL in each subband from step 3 > > It's unclear what kind of scaling factor and reference level you will > use to have to correctly calculate SPL in step 4. ?Also, there is > likely a way to reduce the number of multiplies in step 3, if you only > consider a certain set of non-zero entries in fn to multiply with. > > Chuck > > On Thu, Oct 8, 2009 at 10:08 AM, Don Morgan (E-mail) > wrote: >> Hi. I think this is a real simple one. >> >> In the past, I have always used 1/3 octave filters to develop the spl >> for each band, but in this product we want to use an fft. >> >> My concern is in the scaling. Bandpass filters 'shape' and integrate a >> signal differently than an fft but we need this to look like it was >> done with 1/3 octave filters. Can someone direct me to a reference >> that can shed some light on this? >> >> Thanks, >> Don >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book reviews, > dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp >> > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp > links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From amusingmuses at gmail.com Thu Oct 8 14:54:46 2009 From: amusingmuses at gmail.com (Amusing Muses) Date: Thu, 8 Oct 2009 14:54:46 -0400 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? Message-ID: Hi I'm investigating the Blackfin as a platform for a music DSP toolkit, unfortunately all the examples for simple effects like choruses & flangers I can find utilize floating-point arithmetic--which cripples their performance on the Blackfin because it has no FPU. Does anyone know of any open source DSP effects packages that use fixed-point arithmetic? Could save me a bunch of time rewriting these effects myself... or should I just use a floating-point DSP? I'm looking for something that is supported well by open source tools (gcc, u-boot, Linux, etc) and that is low-cost enough for a high volume consumer product... The Blackfin meets these requirements except the lack of floating-point is turning out to be a hassle. Any suggestions? Thanks. From vboehm at gmx.ch Thu Oct 8 15:05:07 2009 From: vboehm at gmx.ch (=?ISO-8859-1?Q?volker_b=F6hm?=) Date: Thu, 8 Oct 2009 21:05:07 +0200 Subject: [music-dsp] open source effect implementations @ COST-G6--DAfx ? In-Reply-To: <4AC618CD.20501@dcs.qmul.ac.uk> References: <011D5299-BFFB-46A8-B88A-5DD75B06909C@gmx.ch> <4AC618CD.20501@dcs.qmul.ac.uk> Message-ID: thanks, jean-baptiste. vincent pointed me to the matlab files from the dafx book, but somehow i thought there must be some other (constantly updated) collection around, as stated in one of the papers. well, it looks like this is not the case. regards, volker. On 02.10.2009, at 17:14, Jean-Baptiste Thiebaut wrote: > I know that Vincent Verfaille gathered a huge collection of matlab > code > for audio effects, which eventually should have found their way to the > DAFx page. > > I think that he has the matlab codes for the effects presented on this > page: http://adafx.free.fr/textes/english/dafx_perception_en.htm > > You can reach him at McGill University, Montreal. > > Regards, > Jean-Baptiste > > volker b?hm wrote: >> hi all, >> i'm reading a paper by bernardini, arfib and de g?tzen: "Traditional >> (?) implementations of a phase-vocoder..." which was presented at >> DAfx-00 in verona. the paper references additional matlab code which >> is supposed to reside at the COST-G6--DAfx website. >> also they mention that there is something like an open source effect >> implementations collection to be found at the same place. >> the link http://echo.gaps.ssr.upm.es/COSTG6/ however is outdated... >> >> searching www.dafx.de website and the dafx-00 conference website (http://profs.sci.univr.it/~dafx/ >> ) i couln't find anything. >> >> does anybody know where the matlab files (and/or the code collection) >> can be found? >> is this still around at all? >> >> thanks for any pointers, >> volker. >> >> >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book >> reviews, dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp >> > > > -- > Jean-Baptiste Thiebaut > Lecturer > Interaction, Media and Communication Research Group, > School of Electronic Engineering and Computer Science, > West Square, > Queen Mary University of London, > London E1 4NS. > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From bogac at bteaudio.com Thu Oct 8 16:21:18 2009 From: bogac at bteaudio.com (Bogac Topaktas) Date: Thu, 8 Oct 2009 13:21:18 -0700 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? Message-ID: <427c6489$3c566b90$2c94b86a$@com> If your budget allows, use floating-point DSP (for instance Sharc), the development effort would be much less..and you would not re-invent the wheel for elementary effects: http://www.analog.com/static/imported-files/application_notes/21065L_Audio_T utorial.pdf If your budget requires a fixed-point DSP, you may check out Chameleon Developer Resource pages for tutorials and example source code (for Motorola/Freescale DSP56xxx platform): http://www.chameleon.synth.net/english/developers/resources.shtml http://www.chameleon.synth.net/english/developers/techdocs.shtml -------- Original Message -------- > From: "Amusing Muses" > Sent: Thursday, October 08, 2009 9:55 PM > To: music-dsp at music.columbia.edu > Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? > > Hi I'm investigating the Blackfin as a platform for a music DSP > toolkit, unfortunately all the examples for simple effects like > choruses & flangers I can find utilize floating-point > arithmetic--which cripples their performance on the Blackfin because > it has no FPU. > > Does anyone know of any open source DSP effects packages that use > fixed-point arithmetic? Could save me a bunch of time rewriting these > effects myself... or should I just use a floating-point DSP? I'm > looking for something that is supported well by open source tools > (gcc, u-boot, Linux, etc) and that is low-cost enough for a high > volume consumer product... The Blackfin meets these requirements > except the lack of floating-point is turning out to be a hassle. Any > suggestions? > > Thanks. > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From dgm at baykitty.com Thu Oct 8 16:26:33 2009 From: dgm at baykitty.com (Don Morgan (E-mail)) Date: Thu, 8 Oct 2009 13:26:33 -0700 Subject: [music-dsp] fft scaling, shaping In-Reply-To: <518fe7b20910081128w24f86284q2ba19490d0608dde@mail.gmail.com> References: <6914A789-115B-484C-8499-C19A74879AD9@baykitty.com> <518fe7b20910080939j7344ca0bj2bbc671fc392afd2@mail.gmail.com> <029d01ca483d$ba90fef0$2fb2fcd0$@com> <518fe7b20910081128w24f86284q2ba19490d0608dde@mail.gmail.com> Message-ID: <7787EF37-1E0B-4387-A52D-713605FA1A52@baykitty.com> Thanks again, Chuck. When you mentioned the technique, of course, I realized how it worked and felt somewhat foolish for not thinking of it. But there is a lot to think of and I am a long way from knowing everything so I really appreciate your help here. thanks, Don ? Oct 8, 2009?11:28 AM? Charles Henry ??? > The key properties of the Fourier transform that make it work this > way are: > 1. Isometry--the sum of complex normed squares is the same in time > domain as in frequency domain (specifically the L2 and little-L2 > norms) > 2. orthogonality--each "bin" in the frequency domain does not contain > energy from any other "bin" > but... frequencies between "bin"s in the Fourier transform are not > orthogonal to any of the "bin"s. So, the impulse response of your > bandlimited filters may look a little weird in the fft, but is > nonetheless correct. > > You may want to consider some different problems that may arise and > adopt changes to the simple steps I provided. You may want to > consider windowing for dealing with non-stationary measurement. Also, > the length of the window determines the lowest sub-band you can > support--the impulse response may be much longer than your window > size, which is not practical. Also, assuming your 1/3 octave filters > are nearly orthogonal, you will have to have at least n points in your > fft to support n filters. There's probably more considerations that I > haven't thought of yet. > > Chuck > > On Thu, Oct 8, 2009 at 12:35 PM, Don Morgan wrote: >> Thanks for the information. I appreciate it. >> >> I will be using a calibrated microphone as an input that references x >> millivolts/Pascal. >> >> Don >> >> -----Original Message----- >> From: music-dsp-bounces at music.columbia.edu >> [mailto:music-dsp-bounces at music.columbia.edu] On Behalf Of Charles >> Henry >> Sent: Thursday, October 08, 2009 9:40 AM >> To: A discussion list for music-related DSP >> Subject: Re: [music-dsp] fft scaling, shaping >> >> If you need to get the output from the fft as numbers in the 1/3rd >> octave filters: >> >> 1. Take the fft of each of your filters impulse response (sample if >> continuous), and store the results into vectors f1...fN >> 2. Take the fft of your input, x >> 3. Sum up the squares of fft(x)*fn to get raw ~p^2 numbers >> (proportional to intensity) in the nth subband >> 4. Compute the SPL in each subband from step 3 >> >> It's unclear what kind of scaling factor and reference level you will >> use to have to correctly calculate SPL in step 4. Also, there is >> likely a way to reduce the number of multiplies in step 3, if you >> only >> consider a certain set of non-zero entries in fn to multiply with. >> >> Chuck >> >> On Thu, Oct 8, 2009 at 10:08 AM, Don Morgan (E-mail) > > >> wrote: >>> Hi. I think this is a real simple one. >>> >>> In the past, I have always used 1/3 octave filters to develop the >>> spl >>> for each band, but in this product we want to use an fft. >>> >>> My concern is in the scaling. Bandpass filters 'shape' and >>> integrate a >>> signal differently than an fft but we need this to look like it was >>> done with 1/3 octave filters. Can someone direct me to a reference >>> that can shed some light on this? >>> >>> Thanks, >>> Don >>> -- >>> dupswapdrop -- the music-dsp mailing list and website: >>> subscription info, FAQ, source code archive, list archive, book >>> reviews, >> dsp links >>> http://music.columbia.edu/cmc/music-dsp >>> http://music.columbia.edu/mailman/listinfo/music-dsp >>> >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book >> reviews, dsp >> links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp >> >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book >> reviews, dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp >> > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From bj at mhlabs.com Thu Oct 8 16:31:29 2009 From: bj at mhlabs.com (B.J. Buchalter) Date: Thu, 8 Oct 2009 16:31:29 -0400 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? In-Reply-To: <427c6489$3c566b90$2c94b86a$@com> References: <427c6489$3c566b90$2c94b86a$@com> Message-ID: On Oct 8, 2009, at 4:21 PM, Bogac Topaktas wrote: > > If your budget allows, use floating-point DSP (for instance Sharc), > the > development effort would be much less..and you would not re-invent > the wheel for elementary effects: > > http://www.analog.com/static/imported-files/application_notes/21065L_Audio_T > utorial.pdf > > If your budget requires a fixed-point DSP, you may check out Chameleon > Developer Resource > pages for tutorials and example source code (for Motorola/Freescale > DSP56xxx platform): > > http://www.chameleon.synth.net/english/developers/resources.shtml > http://www.chameleon.synth.net/english/developers/techdocs.shtml But neither of these supports linux or a standard tool-chain -- so if that is really important, then they are out. Don't know about pricing, but you might want to look at some of the newer TI parts that have an ARM that can run linux and a floating point DSP core on the same chip. Or, if your DSP needs are small enough, you may want to look at an ARM part. B.J. Buchalter Metric Halo http://www.mhlabs.com From bastian.schnuerle at silberstein.de Thu Oct 8 16:44:21 2009 From: bastian.schnuerle at silberstein.de (bastian.schnuerle) Date: Thu, 8 Oct 2009 22:44:21 +0200 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? In-Reply-To: References: <427c6489$3c566b90$2c94b86a$@com> Message-ID: <398BE37C-B754-4618-9B9F-2890B2F65F64@silberstein.de> what does ARM mean ? Am 08.10.2009 um 22:31 schrieb B.J. Buchalter: > > On Oct 8, 2009, at 4:21 PM, Bogac Topaktas wrote: > >> >> If your budget allows, use floating-point DSP (for instance Sharc), >> the >> development effort would be much less..and you would not re-invent >> the wheel for elementary effects: >> >> http://www.analog.com/static/imported-files/application_notes/ >> 21065L_Audio_T >> utorial.pdf >> >> If your budget requires a fixed-point DSP, you may check out >> Chameleon >> Developer Resource >> pages for tutorials and example source code (for Motorola/Freescale >> DSP56xxx platform): >> >> http://www.chameleon.synth.net/english/developers/resources.shtml >> http://www.chameleon.synth.net/english/developers/techdocs.shtml > > But neither of these supports linux or a standard tool-chain -- so if > that is really important, then they are out. > > Don't know about pricing, but you might want to look at some of the > newer TI parts that have an ARM that can run linux and a floating > point DSP core on the same chip. Or, if your DSP needs are small > enough, you may want to look at an ARM part. > > B.J. Buchalter > Metric Halo > http://www.mhlabs.com > > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From dan.heidebrecht at gmail.com Thu Oct 8 16:52:28 2009 From: dan.heidebrecht at gmail.com (dan) Date: Thu, 8 Oct 2009 14:52:28 -0600 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? In-Reply-To: <398BE37C-B754-4618-9B9F-2890B2F65F64@silberstein.de> References: <427c6489$3c566b90$2c94b86a$@com> <398BE37C-B754-4618-9B9F-2890B2F65F64@silberstein.de> Message-ID: it's a risc architecture used mostly in low power and embedded devices: http://en.wikipedia.org/wiki/ARM_architecture On Thu, Oct 8, 2009 at 2:44 PM, bastian.schnuerle wrote: > what does ARM mean ? > > Am 08.10.2009 um 22:31 schrieb B.J. Buchalter: > >> >> On Oct 8, 2009, at 4:21 PM, Bogac Topaktas wrote: >> >>> >>> If your budget allows, use floating-point DSP (for instance Sharc), >>> the >>> development effort would be much less..and you would not re-invent >>> the wheel for elementary effects: >>> >>> http://www.analog.com/static/imported-files/application_notes/ >>> 21065L_Audio_T >>> utorial.pdf >>> >>> If your budget requires a fixed-point DSP, you may check out >>> Chameleon >>> Developer Resource >>> pages for tutorials and example source code (for Motorola/Freescale >>> DSP56xxx platform): >>> >>> http://www.chameleon.synth.net/english/developers/resources.shtml >>> http://www.chameleon.synth.net/english/developers/techdocs.shtml >> >> But neither of these supports linux or a standard tool-chain -- so if >> that is really important, then they are out. >> >> Don't know about pricing, but you might want to look at some of the >> newer TI parts that have an ARM that can run linux and a floating >> point DSP core on the same chip. Or, if your DSP needs are small >> enough, you may want to look at an ARM part. >> >> B.J. Buchalter >> Metric Halo >> http://www.mhlabs.com >> >> >> >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book >> reviews, dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From ebrombaugh1 at cox.net Thu Oct 8 16:55:43 2009 From: ebrombaugh1 at cox.net (Eric Brombaugh) Date: Thu, 08 Oct 2009 13:55:43 -0700 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? In-Reply-To: <398BE37C-B754-4618-9B9F-2890B2F65F64@silberstein.de> References: <427c6489$3c566b90$2c94b86a$@com> <398BE37C-B754-4618-9B9F-2890B2F65F64@silberstein.de> Message-ID: <4ACE51CF.4060403@cox.net> On 10/08/2009 01:44 PM, bastian.schnuerle wrote: > what does ARM mean ? http://en.wikipedia.org/wiki/Advanced_RISC_Machines From contact at quikquak.com Thu Oct 8 17:43:03 2009 From: contact at quikquak.com (contact) Date: Thu, 8 Oct 2009 22:43:03 +0100 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? References: <427c6489$3c566b90$2c94b86a$@com> <398BE37C-B754-4618-9B9F-2890B2F65F64@silberstein.de> <4ACE51CF.4060403@cox.net> Message-ID: <62FE9534C13845D2AB2F6B34E2944F89@DaveUpstairs> > On 10/08/2009 01:44 PM, bastian.schnuerle wrote: >> what does ARM mean ? > > http://en.wikipedia.org/wiki/Advanced_RISC_Machines I remember the ARM2 on the Archimedes! Always thought it was the way everything was heading - back in the 80's! Only about 45 instructions, yet powerful enough to have 16 usable registers, and multiply two different registers and add another and put the result into yet another register - all in one instruction - great fun. *old computer nerd mode off* Dave From jerry at novadsp.com Thu Oct 8 18:30:13 2009 From: jerry at novadsp.com (Jerry Evans) Date: Thu, 08 Oct 2009 23:30:13 +0100 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? In-Reply-To: References: Message-ID: <4ACE67F5.6030104@NovaDSP.com> > low-cost enough for a high volume consumer How about the popular, evergreen, x86 line? floating point, some vector processing, good support for, and easy access to free tools, operating systems, examples and test cases. Plus planet-wide suppliers and technical support. Google pitches up a UK link to a *retail* 1.5Ghz C7 board for ?37 or $58 : http://linitx.com/viewproduct.php?prodid=11878 And it's got HDA, USB 2, SATA, Video, ethernet ... missing a CPU fan. I bet VIA would have some wickedly competitive prices for this board at multi K order levels - Last time I checked a 600Mhz Blackfin evaluation board was $900 direct from AD. Spend the money on a proper RT/OS and create great things. Jerry. No, not that one, the other one. Amusing Muses wrote: > Hi I'm investigating the Blackfin as a platform for a music DSP > toolkit, unfortunately all the examples for simple effects like > choruses & flangers I can find utilize floating-point > arithmetic--which cripples their performance on the Blackfin because > it has no FPU. > > Does anyone know of any open source DSP effects packages that use > fixed-point arithmetic? Could save me a bunch of time rewriting these > effects myself... or should I just use a floating-point DSP? I'm > looking for something that is supported well by open source tools > (gcc, u-boot, Linux, etc) and that is low-cost enough for a high > volume consumer product... The Blackfin meets these requirements > except the lack of floating-point is turning out to be a hassle. Any > suggestions? > > Thanks. > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > > From amusingmuses at gmail.com Thu Oct 8 19:30:14 2009 From: amusingmuses at gmail.com (Amusing Muses) Date: Thu, 8 Oct 2009 19:30:14 -0400 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? In-Reply-To: <4ACE67F5.6030104@NovaDSP.com> References: <4ACE67F5.6030104@NovaDSP.com> Message-ID: I haven't seriously considered the x86 for my embedded application, intuitively it doesn't seem like people use x86 for embedded DSP. Though I could try. The algorithms I need run just fine on my 1.5 GHz Centrino in Linux in just about real-time, and they would probably run fine on something more lightweight too--maybe I don't need the specific capabilities of a DSP at all. A 600MHz BF533 EZKIT goes for about $500 from ADI now and they have the best Linux & GCC toolchain support around for DSPs it seems. So as far as the hardware is concerned I'm probably going to try an ARM w/ FP support from TI, or maybe an x86 like you suggested if fixed-point is too much of a hurdle. Thanks. On Thu, Oct 8, 2009 at 6:30 PM, Jerry Evans wrote: >> low-cost enough for a high volume consumer > > > How about the popular, evergreen, ?x86 line? floating point, some vector > processing, good support for, and easy access to free tools, operating > systems, examples and test cases. Plus planet-wide suppliers and > technical support. > > Google pitches up a UK link to a *retail* 1.5Ghz C7 board for ?37 or $58 > : http://linitx.com/viewproduct.php?prodid=11878 > > And it's got HDA, USB 2, SATA, Video, ethernet ... missing a CPU fan. > > I bet VIA would have some wickedly competitive prices for this board at > multi K order levels - > > Last time I checked a 600Mhz Blackfin evaluation board was $900 direct > from AD. > > Spend the money on a proper RT/OS and create great things. > > Jerry. > No, not that one, the other one. > > Amusing Muses wrote: >> Hi I'm investigating the Blackfin as a platform for a music DSP >> toolkit, unfortunately all the examples for simple effects like >> choruses & flangers I can find utilize floating-point >> arithmetic--which cripples their performance on the Blackfin because >> it has no FPU. >> >> Does anyone know of any open source DSP effects packages that use >> fixed-point arithmetic? Could save me a bunch of time rewriting these >> effects myself... or should I just use a floating-point DSP? I'm >> looking for something that is supported well by open source tools >> (gcc, u-boot, Linux, etc) and that is low-cost enough for a high >> volume consumer product... The Blackfin meets these requirements >> except the lack of floating-point is turning out to be a hassle. Any >> suggestions? >> >> Thanks. >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book reviews, dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp >> >> > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From richarddobson at blueyonder.co.uk Thu Oct 8 19:58:54 2009 From: richarddobson at blueyonder.co.uk (Richard Dobson) Date: Fri, 09 Oct 2009 00:58:54 +0100 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? In-Reply-To: References: <4ACE67F5.6030104@NovaDSP.com> Message-ID: <4ACE7CBE.2040105@blueyonder.co.uk> Amusing Muses wrote: > I haven't seriously considered the x86 for my embedded application, > intuitively it doesn't seem like people use x86 for embedded DSP. > Though I could try. The algorithms I need run just fine on my 1.5 GHz > Centrino in Linux in just about real-time "just about"? That describes a very heavy process, if its on a 1.5GHz machine. even a stereo phase vocoder will not consume much more than 10% CPU load on such a machine (unless really badly implemented). I developed my first pvoc VST plugin on a 333MHz machine, and that did dance around the 50% point, making stereo iffy. I thought the Blackfin was a 16bit device. That's a bit tight for audio dsp; a 24bit device would give you far fewer headaches, especially if you have any interest in full-bandwidth filtering, etc. The issue of fixed-point v floating point is less central than the raw wordsize itself. Filter coefficients (esp for low cutoff frequencies etc) need a ~minimum~ of 24bit precision, as the numbers can get really small. The classic 24bit devices, such as the Motorola 56K series (now Freescale) are nominally 24bit devices, but have 56bit accumulators for fixed-point arithmetic. Richard Dobson From rossb-lists at audiomulch.com Fri Oct 9 01:44:43 2009 From: rossb-lists at audiomulch.com (Ross Bencina) Date: Fri, 9 Oct 2009 16:44:43 +1100 Subject: [music-dsp] Standardized symbols for diagrams References: <42B3677E-C3FF-49BE-9ED3-20B50A3F3D58@batuhanbozkurt.com> Message-ID: <024d01ca48a3$9b6001f0$0773a8c0@rossmacbook> Hi Batuhan Roads' book sounds like a reasonable source to me. I don't know a source of standard symbols but I recommend looking at some of the early synthesizer texts like Allen Strange's Electronic Music: Systems, Techniques, and Controls. For computer music the instrument design diagrams in Max Matthew's The Technology of Computer Music are pretty seminal. I don't completely remember where I learnt my symbols, but the diagrams in my blog use quite a few which I consider "standard usage": http://www.audiomulch.com/blog What's not covered there are the filter topology ones which you commonly see in engineering text books (boxes with Z^-1 for unit delays) , various notations for summing junctions. Ross. > Hi all, > > I'm about to draw some diagrams for describing the topology of a > synthesizer, and I'll also draw some basic graphs for simple DSP > operations (mostly filter like stuff with sample feedbacks etc.). I > was wondering if there are any standardized symbols for visualizing > building blocks (envelopes, oscillators etc. for describing a > synthesizer topology) that are used commonly in diagrams of this sort. > I've always been fond of the basic diagrams commonly encountered in > the books of Curtis Roads, they make some good sense visually. If > there is a commonly referenced source for this, can someone please > provide it? > > Thanks, > Batuhan Bozkurt > /* http://www.earslap.com */ > > > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From jpff at cs.bath.ac.uk Fri Oct 9 10:03:48 2009 From: jpff at cs.bath.ac.uk (jpff) Date: Fri, 9 Oct 2009 15:03:48 +0100 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? In-Reply-To: <62FE9534C13845D2AB2F6B34E2944F89@DaveUpstairs> (contact@quikquak.com) References: <427c6489$3c566b90$2c94b86a$@com> <398BE37C-B754-4618-9B9F-2890B2F65F64@silberstein.de> <4ACE51CF.4060403@cox.net> <62FE9534C13845D2AB2F6B34E2944F89@DaveUpstairs> Message-ID: <8939-Fri09Oct2009150348+0100-jpff@cs.bath.ac.uk> >>>>> "c" == contact writes: >> On 10/08/2009 01:44 PM, bastian.schnuerle wrote: >>> what does ARM mean ? >> >> http://en.wikipedia.org/wiki/Advanced_RISC_Machines c> I remember the ARM2 on the Archimedes! Always thought it was the way c> everything was heading - back in the 80's! c> Only about 45 instructions, yet powerful enough to have 16 usable registers, c> and multiply two different registers and add another and put the result into c> yet another register - all in one instruction - great fun. c> *old computer nerd mode off* *Very old computer nerd mode on* An ARM had (has) an outstanding C compiler *off and back to lurking* ==John ffitch From hybridalienrob at hotmail.com Fri Oct 9 12:00:06 2009 From: hybridalienrob at hotmail.com (Rob Belcham) Date: Fri, 9 Oct 2009 17:00:06 +0100 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? In-Reply-To: <4ACE67F5.6030104@NovaDSP.com> References: <4ACE67F5.6030104@NovaDSP.com> Message-ID: Just to put that into context - the cheap blackfin are in the order of $5 a piece. The $900 tag is for the development board, not what it'd cost to produce a board for yourself. All depends the application & on what resources you have available i guess. Rob -------------------------------------------------- From: "Jerry Evans" Sent: Thursday, October 08, 2009 11:30 PM To: "A discussion list for music-related DSP" Subject: Re: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? >> low-cost enough for a high volume consumer > > > How about the popular, evergreen, x86 line? floating point, some vector > processing, good support for, and easy access to free tools, operating > systems, examples and test cases. Plus planet-wide suppliers and > technical support. > > Google pitches up a UK link to a *retail* 1.5Ghz C7 board for ?37 or $58 > : http://linitx.com/viewproduct.php?prodid=11878 > > And it's got HDA, USB 2, SATA, Video, ethernet ... missing a CPU fan. > > I bet VIA would have some wickedly competitive prices for this board at > multi K order levels - > > Last time I checked a 600Mhz Blackfin evaluation board was $900 direct > from AD. > > Spend the money on a proper RT/OS and create great things. > > Jerry. > No, not that one, the other one. > > Amusing Muses wrote: >> Hi I'm investigating the Blackfin as a platform for a music DSP >> toolkit, unfortunately all the examples for simple effects like >> choruses & flangers I can find utilize floating-point >> arithmetic--which cripples their performance on the Blackfin because >> it has no FPU. >> >> Does anyone know of any open source DSP effects packages that use >> fixed-point arithmetic? Could save me a bunch of time rewriting these >> effects myself... or should I just use a floating-point DSP? I'm >> looking for something that is supported well by open source tools >> (gcc, u-boot, Linux, etc) and that is low-cost enough for a high >> volume consumer product... The Blackfin meets these requirements >> except the lack of floating-point is turning out to be a hassle. Any >> suggestions? >> >> Thanks. >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book reviews, >> dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp >> >> > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From batuhan at batuhanbozkurt.com Fri Oct 9 12:06:19 2009 From: batuhan at batuhanbozkurt.com (Batuhan Bozkurt) Date: Fri, 9 Oct 2009 19:06:19 +0300 Subject: [music-dsp] Standardized symbols for diagrams In-Reply-To: <024d01ca48a3$9b6001f0$0773a8c0@rossmacbook> References: <42B3677E-C3FF-49BE-9ED3-20B50A3F3D58@batuhanbozkurt.com> <024d01ca48a3$9b6001f0$0773a8c0@rossmacbook> Message-ID: Hi Ross, and thank you. That was helpful. Best, Batuhan Bozkurt /* http://www.earslap.com */ On Oct 9, 2009, at 8:44 AM, Ross Bencina wrote: > Hi Batuhan > > Roads' book sounds like a reasonable source to me. I don't know a > source of > standard symbols but I recommend looking at some of the early > synthesizer > texts like Allen Strange's Electronic Music: Systems, Techniques, and > Controls. For computer music the instrument design diagrams in Max > Matthew's > The Technology of Computer Music are pretty seminal. > > I don't completely remember where I learnt my symbols, but the > diagrams in > my blog use quite a few which I consider "standard usage": > http://www.audiomulch.com/blog > > What's not covered there are the filter topology ones which you > commonly see > in engineering text books (boxes with Z^-1 for unit delays) , various > notations for summing junctions. > > Ross. > > > > > >> Hi all, >> >> I'm about to draw some diagrams for describing the topology of a >> synthesizer, and I'll also draw some basic graphs for simple DSP >> operations (mostly filter like stuff with sample feedbacks etc.). I >> was wondering if there are any standardized symbols for visualizing >> building blocks (envelopes, oscillators etc. for describing a >> synthesizer topology) that are used commonly in diagrams of this >> sort. >> I've always been fond of the basic diagrams commonly encountered in >> the books of Curtis Roads, they make some good sense visually. If >> there is a commonly referenced source for this, can someone please >> provide it? >> >> Thanks, >> Batuhan Bozkurt >> /* http://www.earslap.com */ >> >> >> >> >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book >> reviews, >> dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From radarsat1 at gmail.com Fri Oct 9 12:50:01 2009 From: radarsat1 at gmail.com (Stephen Sinclair) Date: Fri, 9 Oct 2009 12:50:01 -0400 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? In-Reply-To: <8939-Fri09Oct2009150348+0100-jpff@cs.bath.ac.uk> References: <427c6489$3c566b90$2c94b86a$@com> <398BE37C-B754-4618-9B9F-2890B2F65F64@silberstein.de> <4ACE51CF.4060403@cox.net> <62FE9534C13845D2AB2F6B34E2944F89@DaveUpstairs> <8939-Fri09Oct2009150348+0100-jpff@cs.bath.ac.uk> Message-ID: <9b3e2dc20910090950l6b9edde3t8979c5f6847e2277@mail.gmail.com> Just wondering on this topic, has anyone used the gumstix Overo + Summit expansion board for real-time DSP processing? It provides a stereo in/out pair for audio, comes to ~ $250.. http://www.gumstix.com/store/catalog/product_info.php?cPath=32&products_id=220 Wondering how well it works for doing embedded audio stuff. (With or without Linux..) Steve On Fri, Oct 9, 2009 at 10:03 AM, jpff wrote: >>>>>> "c" == contact ? writes: > > ?>> On 10/08/2009 01:44 PM, bastian.schnuerle wrote: > ?>>> what does ARM mean ? > ?>> > ?>> http://en.wikipedia.org/wiki/Advanced_RISC_Machines > > ?c> ? I remember the ARM2 on the Archimedes! Always thought it was the way > ?c> everything was heading - back in the 80's! > ?c> Only about 45 instructions, yet powerful enough to have 16 usable registers, > ?c> and multiply two different registers and add another and put the result into > ?c> yet another register - all in one instruction - great fun. > ?c> *old computer nerd mode off* > > *Very old computer nerd mode on* > > An ARM had (has) an outstanding C compiler > > *off and back to lurking* > ==John ffitch > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From bogac at bteaudio.com Fri Oct 9 14:19:07 2009 From: bogac at bteaudio.com (Bogac Topaktas) Date: Fri, 9 Oct 2009 11:19:07 -0700 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? Message-ID: <2f528f99$2777f47d$3dfb9d6c$@com> What will be your production volume? Will you design your own board? If the volume is relatively low and power consumption is not an issue then consider an off-the-shelf x86 based board for the most open development environment. Some large mixing desks (i.e. Harrison) and some sophisticated keyboards (i.e. Korg OASYS) employ x86 for embedded audio DSP. I feel that this trend will continue.. On the other hand, if the production volume is high then you will want to do whatever it takes to save the last penny per unit cost. This will involve designing a dedicated board around a dedicated DSP chip. Initial development effort/cost will not be a big deal since the high production volume will compensate it. When the clock frequencies are above 100Mhz, PCB design becomes rather tricky due to signal integrity issues. You will need at least four layers to keep everything under control. And you will also need CAD software with signal integrity aware auto-routers. It would be a nightmare to design a RF safe four-layer PCB with open source tools like Kicad at clock frequencies above 100Mhz. -------- Original Message -------- > From: "Amusing Muses" > Sent: Friday, October 09, 2009 2:38 AM > To: "A discussion list for music-related DSP" > Subject: SPAM-LOW: Re: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? > > I haven't seriously considered the x86 for my embedded application, > intuitively it doesn't seem like people use x86 for embedded DSP. > Though I could try. The algorithms I need run just fine on my 1.5 GHz > Centrino in Linux in just about real-time, and they would probably run > fine on something more lightweight too--maybe I don't need the > specific capabilities of a DSP at all. > > A 600MHz BF533 EZKIT goes for about $500 from ADI now and they have > the best Linux & GCC toolchain support around for DSPs it seems. > > So as far as the hardware is concerned I'm probably going to try an > ARM w/ FP support from TI, or maybe an x86 like you suggested if > fixed-point is too much of a hurdle. > > Thanks. > > On Thu, Oct 8, 2009 at 6:30 PM, Jerry Evans wrote: > >> low-cost enough for a high volume consumer > > > > > > How about the popular, evergreen, x86 line? floating point, some vector > > processing, good support for, and easy access to free tools, operating > > systems, examples and test cases. Plus planet-wide suppliers and > > technical support. > > > > Google pitches up a UK link to a *retail* 1.5Ghz C7 board for ?37 or $58 > > : http://linitx.com/viewproduct.php?prodid=11878 > > > > And it's got HDA, USB 2, SATA, Video, ethernet ... missing a CPU fan. > > > > I bet VIA would have some wickedly competitive prices for this board at > > multi K order levels - > > > > Last time I checked a 600Mhz Blackfin evaluation board was $900 direct > > from AD. > > > > Spend the money on a proper RT/OS and create great things. > > > > Jerry. > > No, not that one, the other one. > > > > Amusing Muses wrote: > >> Hi I'm investigating the Blackfin as a platform for a music DSP > >> toolkit, unfortunately all the examples for simple effects like > >> choruses & flangers I can find utilize floating-point > >> arithmetic--which cripples their performance on the Blackfin because > >> it has no FPU. > >> > >> Does anyone know of any open source DSP effects packages that use > >> fixed-point arithmetic? Could save me a bunch of time rewriting these > >> effects myself... or should I just use a floating-point DSP? I'm > >> looking for something that is supported well by open source tools > >> (gcc, u-boot, Linux, etc) and that is low-cost enough for a high > >> volume consumer product... The Blackfin meets these requirements > >> except the lack of floating-point is turning out to be a hassle. Any > >> suggestions? > >> > >> Thanks. > >> -- > >> dupswapdrop -- the music-dsp mailing list and website: > >> subscription info, FAQ, source code archive, list archive, book reviews, dsp links > >> http://music.columbia.edu/cmc/music-dsp > >> http://music.columbia.edu/mailman/listinfo/music-dsp > >> > >> > > > > > > -- > > dupswapdrop -- the music-dsp mailing list and website: > > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > > http://music.columbia.edu/cmc/music-dsp > > http://music.columbia.edu/mailman/listinfo/music-dsp > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From amusingmuses at gmail.com Tue Oct 13 20:27:05 2009 From: amusingmuses at gmail.com (Amusing Muses) Date: Tue, 13 Oct 2009 20:27:05 -0400 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? In-Reply-To: <2f528f99$2777f47d$3dfb9d6c$@com> References: <2f528f99$2777f47d$3dfb9d6c$@com> Message-ID: On Fri, Oct 9, 2009 at 2:19 PM, Bogac Topaktas wrote: > > What will be your production volume? Will you design your own board? > Going for high volume with a custom PCB. Power consumption is an optional concern. I do intend to have a custom board designed, but not going to do any custom VLSI to design my own DSP or anything. > If the volume is relatively low and power consumption is not an issue then > consider an off-the-shelf x86 based board for the most open development > environment. Some large mixing desks (i.e. Harrison) and some sophisticated > keyboards (i.e. Korg OASYS) employ x86 for embedded audio DSP. I feel > that this trend will continue.. > > On the other hand, if the production volume is high then you will want to do whatever > it takes to save the last penny per unit cost. This will involve designing a dedicated board > around a dedicated DSP chip. Initial development effort/cost will not be a big deal since the > high production volume will compensate it. > > When the clock frequencies are above 100Mhz, PCB design becomes rather tricky due > to signal integrity issues. You will need at least four layers to keep everything under control. > And you will also need CAD software with signal integrity aware auto-routers. > It would be a nightmare to design a RF safe four-layer PCB with open source tools like Kicad at > clock frequencies above 100Mhz. > Thanks for pointing this issue out, me and my novice engineers were unaware of this consideration... could you recommend such a CAD software that could do this type of auto-routing? Best Regards, -A From amusingmuses at gmail.com Tue Oct 13 20:32:43 2009 From: amusingmuses at gmail.com (Amusing Muses) Date: Tue, 13 Oct 2009 20:32:43 -0400 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? In-Reply-To: <4ACE7CBE.2040105@blueyonder.co.uk> References: <4ACE67F5.6030104@NovaDSP.com> <4ACE7CBE.2040105@blueyonder.co.uk> Message-ID: On Thu, Oct 8, 2009 at 7:58 PM, Richard Dobson wrote: > Amusing Muses wrote: >> I haven't seriously considered the x86 for my embedded application, >> intuitively it doesn't seem like people use x86 for embedded DSP. >> Though I could try. The algorithms I need run just fine on my 1.5 GHz >> Centrino in Linux in just about real-time > > > "just about"? That describes a very heavy process, if its on a 1.5GHz > machine. even a stereo phase vocoder will not consume much more than 10% > CPU load on such a machine (unless really badly implemented). I > developed my first pvoc VST plugin on a 333MHz machine, and that did > dance around the 50% point, making stereo iffy. > Whoops, by "just about" I meant that the path introduces a short lag time, however the pipeline never stalls or anything. > > I thought the Blackfin was a 16bit device. That's a bit tight for audio > dsp; a 24bit device would give you far fewer headaches, especially if > you have any interest in full-bandwidth filtering, etc. The issue of > fixed-point v floating point is less central than the raw wordsize > itself. Filter coefficients ?(esp for low cutoff frequencies etc) need a > ~minimum~ of 24bit precision, as the numbers can get really small. The > classic 24bit devices, such as the Motorola 56K series (now Freescale) > are nominally 24bit devices, but have 56bit accumulators for fixed-point > arithmetic. > The Blackfin supports both 16 and 32 bit operations, with 40 bit accumulators. Thanks for pointing out the importance of the word size, from a high level my main concern is quality. I figured that a combination of a decent number of bits per sample, and a high enough sampling rate would be indicators I could rely on to select components for use in a professional quality audio application. However it is good to know that the word size must be at least 24 bits for some filtering applications. > > Richard Dobson > > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From vboehm at gmx.ch Wed Oct 14 10:43:24 2009 From: vboehm at gmx.ch (=?ISO-8859-1?Q?volker_b=F6hm?=) Date: Wed, 14 Oct 2009 16:43:24 +0200 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? In-Reply-To: <9b3e2dc20910090950l6b9edde3t8979c5f6847e2277@mail.gmail.com> References: <427c6489$3c566b90$2c94b86a$@com> <398BE37C-B754-4618-9B9F-2890B2F65F64@silberstein.de> <4ACE51CF.4060403@cox.net> <62FE9534C13845D2AB2F6B34E2944F89@DaveUpstairs> <8939-Fri09Oct2009150348+0100-jpff@cs.bath.ac.uk> <9b3e2dc20910090950l6b9edde3t8979c5f6847e2277@mail.gmail.com> Message-ID: not a lot i could tell you here, but i managed to run PDa (a pure data port for integer cpus) on a gumstix verdex with the audiostix expansion. it worked for basic synthesis quite well. i didn't do any extended tests or benchmarking, though. i suppose it should work for overo+summit just the same. volker. On 09.10.2009, at 18:50, Stephen Sinclair wrote: > Just wondering on this topic, has anyone used the gumstix Overo + > Summit expansion board for real-time DSP processing? It provides a > stereo in/out pair for audio, comes to ~ $250.. > > http://www.gumstix.com/store/catalog/product_info.php?cPath=32&products_id=220 > > Wondering how well it works for doing embedded audio stuff. (With or > without Linux..) > > Steve > From bogac at bteaudio.com Wed Oct 14 15:59:04 2009 From: bogac at bteaudio.com (Bogac Topaktas) Date: Wed, 14 Oct 2009 12:59:04 -0700 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? Message-ID: <4f49a66f$5f515560$184b591e$@com> > > What will be your production volume? Will you design your own board? > > > > Going for high volume with a custom PCB. Power consumption is an > optional concern. I do intend to have a custom board designed, but not > going to do any custom VLSI to design my own DSP or anything. If power consumption is an optional concern then a floating-point processor (although they consume relatively more power than fixed-point processors) would be a good choice for ease of development. However, if production volume is really high then a fixed-point processor (as they cost much less than floating-point processors) would be more suitable financially. For guidelines on choosing the right DSP chip, see Berkeley Design Technology's white papers: http://www.bdti.com/articles/info_articles.htm In particular: "Choosing a DSP Processor" http://www.bdti.com/articles/choose_2000.pdf "Choosing and Using DSPs" http://www.bdti.com/articles/20060405_ESC06_dsps.pdf In embedded high-end audio applications, two DSP families are widely used: DSP56xxx family of fixed-point devices from Motorola/Freescale and Sharc family of floating-point devices from Analog Devices. Since the production volume will be high, chip vendors may offer you the development tools (i.e. evaluation boards, sample chips and especially licenses for full IDE suites) for free, so do not forget to ask this first! I suggest you to get the most proper development tools as they do save a lot of time and effort. > > When the clock frequencies are above 100Mhz, PCB design becomes rather tricky due > > to signal integrity issues. You will need at least four layers to keep everything under control. > > And you will also need CAD software with signal integrity aware auto-routers. > > It would be a nightmare to design a RF safe four-layer PCB with open source tools like Kicad at > > clock frequencies above 100Mhz. > > > > Thanks for pointing this issue out, me and my novice engineers were > unaware of this consideration... could you recommend such a CAD > software that could do this type of auto-routing? Almost all high-end packages have this feature (i.e. Protel (now Altium), Cadence, Zuken etc.). Please be aware that designing for signal integrity involves much more then properly routing PCB traces (i.e. considering board geometry, component layout, layer organization etc.). Therefore, a signal integrity aware auto-router alone can not do all the work. If your team does not have previous experience in RF safe design then I suggest you to either consult to a third-party or master the contents of Dr. Howard Johnson's books (see http://www.sigcon.com ) before designing the first prototype (i.e. revising a faulty PCB design, re-manufacturing new PCBs, re-soldering components and re-testing costs more than paying for a consultant). Most DSP chip vendors employ application engineers who specialize in RF safe design. As a free (or sometimes on a paid basis) service to their customers, these engineers provide consulting services and author application notes on RF safe design for their particular chips. So do not forget to check this too. -------- Original Message -------- > From: "Amusing Muses" > Sent: Wednesday, October 14, 2009 3:27 AM > To: "A discussion list for music-related DSP" > Subject: Re: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? > > On Fri, Oct 9, 2009 at 2:19 PM, Bogac Topaktas wrote: > > > > What will be your production volume? Will you design your own board? > > > > Going for high volume with a custom PCB. Power consumption is an > optional concern. I do intend to have a custom board designed, but not > going to do any custom VLSI to design my own DSP or anything. > > > If the volume is relatively low and power consumption is not an issue then > > consider an off-the-shelf x86 based board for the most open development > > environment. Some large mixing desks (i.e. Harrison) and some sophisticated > > keyboards (i.e. Korg OASYS) employ x86 for embedded audio DSP. I feel > > that this trend will continue.. > > > > On the other hand, if the production volume is high then you will want to do whatever > > it takes to save the last penny per unit cost. This will involve designing a dedicated board > > around a dedicated DSP chip. Initial development effort/cost will not be a big deal since the > > high production volume will compensate it. > > > > When the clock frequencies are above 100Mhz, PCB design becomes rather tricky due > > to signal integrity issues. You will need at least four layers to keep everything under control. > > And you will also need CAD software with signal integrity aware auto-routers. > > It would be a nightmare to design a RF safe four-layer PCB with open source tools like Kicad at > > clock frequencies above 100Mhz. > > > > Thanks for pointing this issue out, me and my novice engineers were > unaware of this consideration... could you recommend such a CAD > software that could do this type of auto-routing? > > Best Regards, > -A > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From amusingmuses at gmail.com Wed Oct 14 20:03:52 2009 From: amusingmuses at gmail.com (Amusing Muses) Date: Wed, 14 Oct 2009 20:03:52 -0400 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? In-Reply-To: <4f49a66f$5f515560$184b591e$@com> References: <4f49a66f$5f515560$184b591e$@com> Message-ID: On Wed, Oct 14, 2009 at 3:59 PM, Bogac Topaktas wrote: > > If power consumption is an optional concern then a floating-point processor > (although they consume relatively more power than fixed-point processors) > would be a good choice for ease of development. However, if production > volume is really high then a fixed-point processor (as they cost much less > than floating-point processors) would be more suitable financially. > The initial run should be around 10k - 100k units. But if things really take off we could be making a few million units per year. Would either of these classify as high volume? I've heard ~100,000 units/month is "high volume" in the electronics game. So I want to start off with a floating-point processor for the ease of development allowing me to get prototypes done quickly, but I might have to switch to a fixed-point DSP when I start mass producing. How hard is it usually, to port music-dsp algorithms from floating-point to fixed-point math? From my initial investigation: it's a pain. Are there any tools that automate or help out with this process? Or good resources for people doing this? > In embedded high-end audio applications, two DSP families are widely used: > DSP56xxx family of fixed-point devices from Motorola/Freescale and Sharc > family of floating-point devices from Analog Devices. Since the production > volume will be high, chip vendors may offer you the development tools (i.e. > evaluation boards, sample chips and especially licenses for full IDE > suites) for free, so do not forget to ask this first! I suggest you to get > the most proper development tools as they do save a lot of time and > effort. > Will keep that in mind, I mentioned I want to use open source tools though... this is not because of the cost. This is because part of the goal of my project is to be a mass-market friendly /and/ open source friendly, highly configurable consumer product. Being OSS compatible makes products really awesome in my opinion e.g. Linksys WRT54GL, the consumer router ever. So I would rather port GCC to the SHARC if that's what it takes, rather than get VisualDSP for free. > Please be aware that designing for signal integrity involves much more then > properly routing PCB traces (i.e. considering board geometry, component > layout, layer organization etc.). Therefore, a signal integrity aware > auto-router alone can not do all the work. > > If your team does not have previous experience in RF safe design then I > suggest you to either consult to a third-party or master the contents of > Dr. Howard Johnson's books (see http://www.sigcon.com ) before designing > the first prototype (i.e. revising a faulty PCB design, re-manufacturing > new PCBs, re-soldering components and re-testing costs more than paying for > a consultant). > Wow that's a great insight to have, I'll be careful when it comes time to design the PCB and use your advice. > Most DSP chip vendors employ application engineers who specialize in RF > safe design. As a free (or sometimes on a paid basis) service to their > customers, these engineers provide consulting services and author > application notes on RF safe design for their particular chips. So do not > forget to check this too. > Also good to know! Thanks. From gwenhwyfaer at gmail.com Wed Oct 14 22:40:15 2009 From: gwenhwyfaer at gmail.com (Gwenhwyfaer) Date: Thu, 15 Oct 2009 03:40:15 +0100 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? In-Reply-To: References: <4f49a66f$5f515560$184b591e$@com> Message-ID: On 15/10/2009, Amusing Muses wrote: > The initial run should be around 10k - 100k units. But if things > really take off we could be making a few million units per year. Would > either of these classify as high volume? I've heard ~100,000 > units/month is "high volume" in the electronics game. Bear in mind that in the pro audio game you're doing really well if you manage to sell 10k units... *EVER*. The biggest selling synth in the history of production - and it really was a runaway success - is only estimated to have sold 250k (the Korg M1); the number of synths that sold 6 figures can be counted on one hand (or at any rate, one pair of them). And that's not because they didn't crack the market - that IS the market. So if you're talking high volume, you're either explicitly targeting the consumer market, at which point you'll be looking at making everything as intensely cheap as possible (even to the point of view of hiring a chip designer and fabbing your own hardware - sure, the startup cost will be hideous, but for millions of units it'll probably be worth it. In which case, you need to be checking out FPGAs right now, and not worrying about DSP chips)... or you're being vastly over-optimistic. (Not saying it's impossible for you to do that well. Am saying that it's much better to be surprised by runaway success than by catastrophic failure.) And on that cautionary note... *shuffles off back to the comfy chair* From douglas at music.columbia.edu Thu Oct 15 07:00:01 2009 From: douglas at music.columbia.edu (douglas repetto) Date: Thu, 15 Oct 2009 07:00:01 -0400 (EDT) Subject: [music-dsp] [admin] music-dsp FAQ Message-ID: <20091015110001.00E46755472@music.columbia.edu> Hi, Just a reminder that if you are new to the list you should read the music-dsp FAQ. It contains answers to both technical _and_ adminstrative questions that often come up on the list. If your question appears in the FAQ it is safe to assume that it has been discussed on the list many times in the past, and you should probably have a look through the list archives before posting your question to the list. http://music.columbia.edu/cmc/music-dsp/musicdspFAQ.html Also of interest to new and not-so-new list members: The music-dsp list archives http://music.columbia.edu/cmc/music-dsp/musicdsparchives.html The music-dsp source code archive http://www.musicdsp.org music-dsp books and reviews http://music.columbia.edu/cmc/music-dsp/dspbooks.html All this and more at: http://music.columbia.edu/cmc/music-dsp Hasta la pasta, douglas (this is an automated message sent out on the 1st and 15th of each month) From bogac at bteaudio.com Thu Oct 15 08:43:32 2009 From: bogac at bteaudio.com (Bogac Topaktas) Date: Thu, 15 Oct 2009 05:43:32 -0700 Subject: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? Message-ID: <4398be9c$4f65a6cb$48dd9e2$@com> > The initial run should be around 10k - 100k units. But if things > really take off we could be making a few million units per year. Would > either of these classify as high volume? Yes, indeed. > So I want to start off with a floating-point processor for the ease of > development allowing me to get prototypes done quickly, but I might > have to switch to a fixed-point DSP when I start mass producing. How > hard is it usually, to port music-dsp algorithms from floating-point > to fixed-point math? From my initial investigation: it's a pain. Are > there any tools that automate or help out with this process? Or good > resources for people doing this? Well, if cost is no object then the best environment for algorithm design and implementation is Matlab with the following add-ons: Simulink, Signal Processing Toolbox, DSP Block Set, Fixed-Point Toolbox and targets (automatic code generators) for ADI SHARC or TI C6xxx families (depending on your processor choice). With these tools you can easily and rapidly develop and deploy your algorithms in either fixed or floating-point processors. For more information see: http://www.mathworks.com/applications/dsp_comm/ Fixed-Point MATLAB: Getting Your Algorithms DSP Ready http://www.techonline.com/learning/techpaper/200001059 BittWare Delivers MATLAB Target for SHARC DSPs http://www.controlled.com/pc104/news20001101205546.html Floating-Point to Fixed-Point Transformation Toolbox http://users.ece.utexas.edu/~bevans/projects/wordlength/converter/ I would not recommend shifting from a floating-point device to a fixed-point device in between production runs, especially if you are conceiving an open platform that encourages community involvement. -------- Original Message -------- > From: "Amusing Muses" > Sent: Thursday, October 15, 2009 3:04 AM > To: "A discussion list for music-related DSP" > Subject: SPAM-LOW: Re: [music-dsp] Fixed-point effects lib? Linux friendly floating-point DSP? > > On Wed, Oct 14, 2009 at 3:59 PM, Bogac Topaktas wrote: > > > > If power consumption is an optional concern then a floating-point processor > > (although they consume relatively more power than fixed-point processors) > > would be a good choice for ease of development. However, if production > > volume is really high then a fixed-point processor (as they cost much less > > than floating-point processors) would be more suitable financially. > > > > The initial run should be around 10k - 100k units. But if things > really take off we could be making a few million units per year. Would > either of these classify as high volume? I've heard ~100,000 > units/month is "high volume" in the electronics game. > > So I want to start off with a floating-point processor for the ease of > development allowing me to get prototypes done quickly, but I might > have to switch to a fixed-point DSP when I start mass producing. How > hard is it usually, to port music-dsp algorithms from floating-point > to fixed-point math? From my initial investigation: it's a pain. Are > there any tools that automate or help out with this process? Or good > resources for people doing this? > > > In embedded high-end audio applications, two DSP families are widely used: > > DSP56xxx family of fixed-point devices from Motorola/Freescale and Sharc > > family of floating-point devices from Analog Devices. Since the production > > volume will be high, chip vendors may offer you the development tools (i.e. > > evaluation boards, sample chips and especially licenses for full IDE > > suites) for free, so do not forget to ask this first! I suggest you to get > > the most proper development tools as they do save a lot of time and > > effort. > > > > Will keep that in mind, I mentioned I want to use open source tools > though... this is not because of the cost. This is because part of the > goal of my project is to be a mass-market friendly /and/ open source > friendly, highly configurable consumer product. Being OSS compatible > makes products really awesome in my opinion e.g. Linksys WRT54GL, the > consumer router ever. So I would rather port GCC to the SHARC if > that's what it takes, rather than get VisualDSP for free. > > > Please be aware that designing for signal integrity involves much more then > > properly routing PCB traces (i.e. considering board geometry, component > > layout, layer organization etc.). Therefore, a signal integrity aware > > auto-router alone can not do all the work. > > > > If your team does not have previous experience in RF safe design then I > > suggest you to either consult to a third-party or master the contents of > > Dr. Howard Johnson's books (see http://www.sigcon.com ) before designing > > the first prototype (i.e. revising a faulty PCB design, re-manufacturing > > new PCBs, re-soldering components and re-testing costs more than paying for > > a consultant). > > > > Wow that's a great insight to have, I'll be careful when it comes time > to design the PCB and use your advice. > > > Most DSP chip vendors employ application engineers who specialize in RF > > safe design. As a free (or sometimes on a paid basis) service to their > > customers, these engineers provide consulting services and author > > application notes on RF safe design for their particular chips. So do not > > forget to check this too. > > > > Also good to know! > > Thanks. > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From research at ottomaneng.com Sat Oct 17 01:03:42 2009 From: research at ottomaneng.com (research at ottomaneng.com) Date: Sat, 17 Oct 2009 01:03:42 -0400 Subject: [music-dsp] What is this crap at 8 - 10Khz? Message-ID: <4AD9502E.5050504@ottomaneng.com> Hello World, I'm a EE student at George Washington U and I'm working on putting together a 90dB SNR amplifier. I'm starting with first trying to get a 90dB pure tone at 1khz. Ofcourse, it wasnt as easy as I expected, the school's gear had 60Hz hum at -60dBFS. I tried to use my firewire audio interface as a signal generator and that was slightly better at -80dBFS 60Hz hum. Ofcourse, you should be asking what is 0dBFS? Well, that would be my `spectrum analyzer'. Which is really a Texas Instruments evaluation module for the ADS 1672 ADC. It has an SNR around -110dB. Well, the cleanest signal I was able to get is by generating a 1khz sinusoid using my ADI 21369 EZ Kit. However, I see some nasty stuff somewhere in the 8 - 10kHz range. Anyone know what is the source of this noise? It seems to be somewhat present in my audio interface output. Note that I am using unbalanced output from my audio interface and from my EZKIT (AD1835). I am then using a 9v battery hooked up to an LM 317 regulator set at 2.5vdc. http://ottomansignalprocessing.com/EZKit.png << ADSP 21369 EZKit (tested in my lab) http://ottomansignalprocessing.com/Fireface.png << my audio interface (tested in my lab) http://ottomansignalprocessing.com/TektronixAFG3021B.png << the school's newly acquired arbitrary waveform generator (tested at school) Tips? Tricks? Mucho gracias, Omer Osman From dan.stowell at elec.qmul.ac.uk Mon Oct 19 12:32:07 2009 From: dan.stowell at elec.qmul.ac.uk (Dan Stowell) Date: Mon, 19 Oct 2009 17:32:07 +0100 Subject: [music-dsp] [Fwd: Win an iPod in the OMRAS2 Vamp/VamPy Contest] Message-ID: <4ADC9487.8070304@elec.qmul.ac.uk> Dear all, We are proud to announce the first OMRAS2 Vamp/VamPy Plugin Contest, aimed at Music IR researchers around the world. We develop the free and open software Sonic Visualiser (http://www.sonicvisualiser.org/) and other Vamp hosts that give Vamp plugins immediate world-wide exposure. Our Vamp hosts run on Windows, Mac and Linux -- out of the box. We believe that the Vamp interface can help MIR researchers exchange their algorithms and use their results, e.g. for visualisation in Sonic Visualiser or Audacity, or automate the extraction with the batch processing Vamp host Sonic Annotator. That's why we want to encourage you to add to the growing set of available Vamp plugins (http://www.vamp-plugins.org/download.html). That's also why, additional to all the benefits of having your own Vamp/VamPy plugin, you can now win an iPod! For more information on why it's the thing to do, and how to do it, visit http://omras2.org/VampContest Or, if you come to the ISMIR conference in Kobe, why not chat about it with one of the OMRAS2 people! Your OMRAS2 Team at the Centre for Digital Music, Queen Mary, University of London __________________________________ Matthias Mauch Research Student Centre for Digital Music, Queen Mary, University of London Email: matthias.mauch at elec.qmul.ac.uk Phone: +44 20 7882 5528 From sbilbao at staffmail.ed.ac.uk Fri Oct 23 10:46:42 2009 From: sbilbao at staffmail.ed.ac.uk (sbilbao) Date: Fri, 23 Oct 2009 07:46:42 -0700 (PDT) Subject: [music-dsp] new physical modeling book Message-ID: <26027718.post@talk.nabble.com> Hi folks, i just wanted to announce that the new text, Numerical Sound Synthesis: Finite Difference Schemes and Simulation in Musical Acoustics http://eu.wiley.com/WileyCDA/WileyTitle/productCd-0470510463.html is out, as of today---hope you like it (and I'm sure I'll hear about it if you don't!). I'm just now putting together a companion page with lots of sound examples on it, at http://www2.ph.ed.ac.uk/~sbilbao/nss.html Stefan -- View this message in context: http://www.nabble.com/new-physical-modeling-book-tp26027718p26027718.html Sent from the Music-DSP mailing list archive at Nabble.com. From dan.stowell at elec.qmul.ac.uk Fri Oct 23 11:05:03 2009 From: dan.stowell at elec.qmul.ac.uk (Dan Stowell) Date: Fri, 23 Oct 2009 16:05:03 +0100 Subject: [music-dsp] sc140 - new electronic music in only 140 characters Message-ID: <4AE1C61F.3040008@elec.qmul.ac.uk> Hi all - I have curated a collection of electronic music, each piece having been composed using only 140 characters of SuperCollider code: http://supercollider.sf.net/sc140 Hopefully interesting to folks on this list. The 140-character limit is pretty extreme, so I was impressed by many of the results. Naturally the tight limits lead to coding tricks which don't exactly make good pedagogy! But the sourcecode is there as well as the music, both CC-licensed. Best Dan -- Dan Stowell Centre for Digital Music School of Electronic Engineering and Computer Science Queen Mary, University of London Mile End Road, London E1 4NS http://www.elec.qmul.ac.uk/department/staff/research/dans.htm http://www.mcld.co.uk/ From rbj at audioimagination.com Fri Oct 23 11:55:56 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Fri, 23 Oct 2009 11:55:56 -0400 Subject: [music-dsp] sc140 - new electronic music in only 140 characters In-Reply-To: <4AE1C61F.3040008@elec.qmul.ac.uk> References: <4AE1C61F.3040008@elec.qmul.ac.uk> Message-ID: On Oct 23, 2009, at 11:05 AM, Dan Stowell wrote: > Hi all - > > I have curated a collection of electronic music, each piece having > been composed using only 140 characters of SuperCollider code: > > http://supercollider.sf.net/sc140 > > Hopefully interesting to folks on this list. The 140-character > limit is > pretty extreme, what is this?? synthesis via twitter? i don't get it. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From bastian.schnuerle at silberstein.de Fri Oct 23 12:00:07 2009 From: bastian.schnuerle at silberstein.de (bastian.schnuerle) Date: Fri, 23 Oct 2009 18:00:07 +0200 Subject: [music-dsp] sc140 - new electronic music in only 140 characters In-Reply-To: References: <4AE1C61F.3040008@elec.qmul.ac.uk> Message-ID: hahaha Am 23.10.2009 um 17:55 schrieb robert bristow-johnson: > > On Oct 23, 2009, at 11:05 AM, Dan Stowell wrote: > >> Hi all - >> >> I have curated a collection of electronic music, each piece having >> been composed using only 140 characters of SuperCollider code: >> >> http://supercollider.sf.net/sc140 >> >> Hopefully interesting to folks on this list. The 140-character >> limit is >> pretty extreme, > > what is this?? synthesis via twitter? i don't get it. > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." > > > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From dan.stowell at elec.qmul.ac.uk Mon Oct 26 12:17:52 2009 From: dan.stowell at elec.qmul.ac.uk (Dan Stowell) Date: Mon, 26 Oct 2009 16:17:52 +0000 Subject: [music-dsp] sc140 - new electronic music in only 140 characters In-Reply-To: References: <4AE1C61F.3040008@elec.qmul.ac.uk> Message-ID: <4AE5CBB0.8080609@elec.qmul.ac.uk> robert bristow-johnson wrote: > On Oct 23, 2009, at 11:05 AM, Dan Stowell wrote: > >> Hi all - >> >> I have curated a collection of electronic music, each piece having >> been composed using only 140 characters of SuperCollider code: >> >> http://supercollider.sf.net/sc140 >> >> Hopefully interesting to folks on this list. The 140-character >> limit is >> pretty extreme, > > what is this?? synthesis via twitter? i don't get it. Yes, that's what it is. A while ago I started posting little fragments of synthesis algorithms on twitter. Others took the idea and ran with it, eventually creating some impressive entire works with just 140 chars. So I curated an album which I think shows some of the best pieces. It's an interesting challenge for a coder in a DSP/music language. A nice illustration is this article which builds a pretty decent recreation of the THX "Deep Note" in SuperCollider, then right at the end tries to boil it down to a 140-character version: Best Dan -- Dan Stowell Centre for Digital Music Queen Mary, University of London Mile End Road, London E1 4NS http://www.elec.qmul.ac.uk/digitalmusic/people/dans.htm http://www.mcld.co.uk/ From josh.reiss at elec.qmul.ac.uk Wed Oct 28 05:06:42 2009 From: josh.reiss at elec.qmul.ac.uk (Josh Reiss) Date: Wed, 28 Oct 2009 09:06:42 +0000 Subject: [music-dsp] Audio Engineering Society 128th Convention, London, May 2010- Call for Papers Message-ID: <9A6BBBBE2AAD6746A6D961B57357426206835980D7@staff-mail2.vpn.elec.qmul.ac.uk> Apologies if you receive multiple copies of this message. AUDIO ENGINEERING SOCIETY 128th Convention, 2010 CALL for PAPERS London, UK Dates: 2010 May 20 - May 23 www.aes.org/events/128 The AES 128th Convention Committee invites submission of technical papers for presentation at the 2010 May 20 to 23 meeting in London. By 2009 December 18, a proposed title, 60- to 120-word abstract, and 500- to 750-word pr?cis of the paper must be submitted electronically to the AES 128th proposal submission site at www.aes.org/128th_authors. Submissions will be accepted starting approximately 2009 November 4. Presenting authors (one per paper) who are members of the AES or student members will be required to pay 60% of the member or student convention registration fees and they will receive a CD-ROM of the papers. Presenting authors who are nonmembers will pay the full nonmember registration fee and receive a CD-ROM. Acceptance of proposed papers will be determined by a peer-review committee based on an assessment of the abstract and pr?cis. Presenting authors who are student members and whose papers are accepted for presentation will be eligible for the Student Paper Award at the 128th. The pr?cis must clearly describe the work performed, methods employed, conclusions and significance of the paper with respect to other published work in the field. During the online submission process you will be asked to specify whether you prefer to present your paper in a lecture or poster session. Highly detailed papers are better suited to poster sessions, which permit greater interaction between author and audience. The convention committee reserves the right to reassign papers to any session. Whether a lecture or a poster, a complete electronic manuscript submitted before 2010 March 12 is required before the paper can be accepted for presentation at the convention. During the submission process, authors will be asked if their convention papers should be considered for possible publication in the AES Journal. Proposed topics for papers include but are not limited to: ---------------------------------------------------------- Applications in Audio Audio for games Digital broadcasting Forensic audio Automotive audio Audio for mobile and handheld devices Audio in education Networked, Internet, and remote audio Audio content management Archiving and restoration Digital libraries Automatic content description Audio information retrieval Audio Processing Analysis and synthesis of sound Machine listening Music and speech signal processing High resolution audio Audio coding and compression Recording, Production, and Reproduction Live event and stage audio Mixing, remixing, and mastering Multichannel and spatial audio Room and architectural acoustics Sound design and reinforcement Studio recording techniques Audio Equipment Microphones, converters, and amplifiers Loudspeakers and headphones Wireless and wearable audio Instrumentation and measurement Protocols and data formats Perception Audio perception Hearing loss, protection, and enhancement Listening tests and evaluation Speech intelligibility Psychoacoustics Emerging Audio Technologies Innovative applications Interactive sound New audio interfaces Web 2.0 technologies Submission of papers schedule ----------------------------- Proposal deadline: 2009 December 18 Acceptance emailed: 2010 January 20 Paper deadline: 2010 March 12 By 2010 January 20 authors will be advised whether or not their proposed papers have been accepted. Please submit proposed title and abstract at www.aes.org/128th_authors no later than 2009 December 18. If you have any questions, contact 128th_papers at aes.org GENERAL CHAIR: Josh Reiss, Centre for Digital Music, Queen Mary University of London PAPERS CHAIR: Peter Mapp, Peter Mapp Associates From stephen.blinkhorn at audiospillage.com Wed Oct 28 18:02:51 2009 From: stephen.blinkhorn at audiospillage.com (Stephen Blinkhorn) Date: Wed, 28 Oct 2009 16:02:51 -0600 Subject: [music-dsp] sc140 - new electronic music in only 140 characters In-Reply-To: <4AE1C61F.3040008@elec.qmul.ac.uk> References: <4AE1C61F.3040008@elec.qmul.ac.uk> Message-ID: <60F39563-DE0A-4AE6-8F5A-9DED8443949B@audiospillage.com> Thanks for this Dan. I always intended to try out the examples being posted on the SC list but never found the time - so this is a nice compilation that you can just load up and listen to. Surprisingly devoid of novelty factor too. Of course there's a difference between writing DSP code and writing SuperCollider code but SC is always so refreshing to return to after some time spent in C/C++ land. Stephen On 23 Oct 2009, at 09:05, Dan Stowell wrote: > Hi all - > > I have curated a collection of electronic music, each piece having > been composed using only 140 characters of SuperCollider code: > > http://supercollider.sf.net/sc140 > > Hopefully interesting to folks on this list. The 140-character limit > is > pretty extreme, so I was impressed by many of the results. Naturally > the > tight limits lead to coding tricks which don't exactly make good > pedagogy! But the sourcecode is there as well as the music, both > CC-licensed. > > Best > Dan > -- > Dan Stowell > Centre for Digital Music > School of Electronic Engineering and Computer Science > Queen Mary, University of London > Mile End Road, London E1 4NS > http://www.elec.qmul.ac.uk/department/staff/research/dans.htm > http://www.mcld.co.uk/ > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From bruno.ronzani at utbm.fr Thu Oct 29 05:13:27 2009 From: bruno.ronzani at utbm.fr (Ronzani Bruno) Date: Thu, 29 Oct 2009 10:13:27 +0100 Subject: [music-dsp] FFT and Stuff Message-ID: Hi everyone ! This is my first post on that mailing list, and I'm glad someone will probably help me with my little issue :) I want to do a filter using a FFT (Fast Fourier Translation) on a real time music stream. I spent some hours trying to do it, and I've got some results. So far what I've managed to do is : * i get my input signal buffer: 512 discrete values * i "cut" that signal into n different parts, for instance 4*128 parts (of course i tried 1*512) * for each part, I compute the FFT * there I have to do something on the frequencies I get * then I compute the IFFT to get my signal back * I put that signal in my output buffer What I have is : if I don't do any operations between the FFT and the IFFT, everything is fine : I hear my original signal without any perturbation. But if I try to do something - what I did was : in my frequencies array (complex numbers), I put all the real and imaginaries values down to zero in a certain range to have a low-pass filter for instance - I heard a distorded sound in output, very bad sound actually. I don't know if I am very clear, maybe it's the operation itself (putting all a certain range of values equal to 0) which is bad, but I didn't find any other way to do what I want. Basically I just want to make a filter... Any ideas ? Thanks a lot, Bruno Ronzani From andrew.capon at zen.co.uk Thu Oct 29 05:25:40 2009 From: andrew.capon at zen.co.uk (Andrew Capon) Date: Thu, 29 Oct 2009 09:25:40 +0000 Subject: [music-dsp] FFT and Stuff In-Reply-To: References: Message-ID: <229A522B-29E9-4432-87FA-9BB40A03F51E@zen.co.uk> Well I am not expert but you don't really need FFT to make a filter. Have a look at the code here: http://www.musicdsp.org/archive.php?classid=3#38 Cheers Andy On 29 Oct 2009, at 09:13, Ronzani Bruno wrote: > Hi everyone ! > > This is my first post on that mailing list, and I'm glad someone will > probably help me with my little issue :) > > I want to do a filter using a FFT (Fast Fourier Translation) on a > real time music stream. > > I spent some hours trying to do it, and I've got some results. > > So far what I've managed to do is : > > * i get my input signal buffer: 512 discrete values > * i "cut" that signal into n different parts, for instance 4*128 parts > (of course i tried 1*512) > * for each part, I compute the FFT > * there I have to do something on the frequencies I get > * then I compute the IFFT to get my signal back > * I put that signal in my output buffer > > What I have is : if I don't do any operations between the FFT and the > IFFT, everything is fine : I hear my original signal without any > perturbation. > > But if I try to do something - what I did was : in my frequencies > array (complex numbers), I put all the real and imaginaries values > down to zero in a certain range to have a low-pass filter for instance > - I heard a distorded sound in output, very bad sound actually. > > I don't know if I am very clear, maybe it's the operation itself > (putting all a certain range of values equal to 0) which is bad, but I > didn't find any other way to do what I want. > > Basically I just want to make a filter... > > Any ideas ? > > Thanks a lot, > > > Bruno Ronzani > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From laurent.de.soras at free.fr Thu Oct 29 06:02:02 2009 From: laurent.de.soras at free.fr (Laurent de Soras) Date: Thu, 29 Oct 2009 11:02:02 +0100 Subject: [music-dsp] FFT and Stuff In-Reply-To: References: Message-ID: <4AE9681A.6020308@free.fr> Ronzani Bruno wrote: > > But if I try to do something - what I did was : in my frequencies > array (complex numbers), I put all the real and imaginaries values > down to zero in a certain range to have a low-pass filter for instance > - I heard a distorded sound in output, very bad sound actually. This is not the proper way to use the FFT to filter a signal. The reason is that the Fourier transform you're using is intended to work on periodic signals (of the same period as the FFT length). Therefore if you modify a block of data in the frequency domain, the resulting signal back in the time domain will sound as expected only if it is looped ! If you try to joind such blocks, you'll end up with a lot of discontinuities generating clicks and distortion. You can attenuate this effect by windowing and overlapping chunks of data, but you'll still get annoying artifacts. You'd probably better design a filter working in the time domain (look on http://www.musicdsp.org as suggested by Andrew Capon). Anyway if you want to use an FFT, you can use it to achieve the convolution needed to process a large FIR filter. Search for overlap-add or overlap-save techniques. But you'll have to design a regular FIR before. -- Laurent de Soras | Ohm Force DSP developer & Software designer | Digital Audio Software http://ldesoras.free.fr | http://www.ohmforce.com From ronzani.bruno at gmail.com Thu Oct 29 06:28:15 2009 From: ronzani.bruno at gmail.com (Bruno Ronzani) Date: Thu, 29 Oct 2009 11:28:15 +0100 Subject: [music-dsp] FFT and Stuff In-Reply-To: <4AE9681A.6020308@free.fr> References: <4AE9681A.6020308@free.fr> Message-ID: Thanks a lot, Andrew and Laurent (merci Laurent !) I'm currently trying that simple LP filter ( http://www.musicdsp.org/archive.php?classid=3#38 ). The thing is I still have a distortion in the sound. It may be because of the 2 first elements in out(n) = a1 * in + a2 * in(n-1) + a3 * in(n-2) - b1*out(n-1) - b2*out(n-2) Because I am working on real time audio, with 512 points buffers, I don't really know what to do with that elements. I tried to store the 2 last element of in and out of the previous buffer, and use them in my new buffer, but it doesn't seem to work. any suggestions ? thanks again 2009/10/29 Laurent de Soras : > Ronzani Bruno wrote: >> >> But if I try to do something - what I did was : in my frequencies >> array (complex numbers), I put all the real and imaginaries values >> down to zero in a certain range to have a low-pass filter for instance >> - ?I heard a distorded sound in output, very bad sound actually. > > This is not the proper way to use the FFT to filter a signal. > The reason is that the Fourier transform you're using is > intended to work on periodic signals (of the same period as > the FFT length). Therefore if you modify a block of data in > the frequency domain, the resulting signal back in the time > domain will sound as expected only if it is looped ! If you > try to joind such blocks, you'll end up with a lot of > discontinuities generating clicks and distortion. You > can attenuate this effect by windowing and overlapping > chunks of data, but you'll still get annoying artifacts. > > You'd probably better design a filter working in the time > domain (look on http://www.musicdsp.org as suggested by > Andrew Capon). > > Anyway if you want to use an FFT, you can use it to achieve > the convolution needed to process a large FIR filter. Search > for overlap-add or overlap-save techniques. But you'll have > to design a regular FIR before. > > > > > -- > Laurent de Soras ? ? ? ? ? ? ? ? ?| ? ? ? ? ? ? ? Ohm Force > DSP developer & Software designer | ?Digital Audio Software > http://ldesoras.free.fr ? ? ? ? ? | http://www.ohmforce.com > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From neolit123 at gmail.com Thu Oct 29 11:17:18 2009 From: neolit123 at gmail.com (Lubomir I. Ivanov) Date: Thu, 29 Oct 2009 17:17:18 +0200 Subject: [music-dsp] FFT and Stuff References: <4AE9681A.6020308@free.fr> Message-ID: <002701ca58aa$eb4431c0$0201a8c0@LuboPC> ----- Original Message ----- From: "Bruno Ronzani" > Thanks a lot, Andrew and Laurent (merci Laurent !) > > I'm currently trying that simple LP filter ( > http://www.musicdsp.org/archive.php?classid=3#38 ). > > The thing is I still have a distortion in the sound. > > It may be because of the 2 first elements in out(n) = a1 * in + a2 * > in(n-1) + a3 * in(n-2) - b1*out(n-1) - b2*out(n-2) > the distortion could be caused, for example by internal clipping if some of the registers overflows, but i cannot really guess for any particular reason. could be related to other parts of the whole algorithm "chain" as well (i.e not the filter causing it) to clarify: this is difference equation / recursive sequence with constant (presumably) coefficients for a "direct form I" implementation of a digital biquad filter. in this case, the "a"s are the coefficients for the zeros, while the "b"s are for the poles. seeing something written as "in(n-1)" is a previous value (difference) with an offset/age of 'n' samples, which should be stored in register-variables for the recursion to work properly. > Because I am working on real time audio, with 512 points buffers, I > don't really know what to do with that elements. > > I tried to store the 2 last element of in and out of the previous > buffer, and use them in my new buffer, but it doesn't seem to work. > just run an entire buffer trough the algorithm in a way, that once a buffer is processed completely, the subsequent buffer should enherit the last 4 register values as intermediate. if that makes any sense... :) //------------------- // calculate coefficients here //.... //------------------- // to process each sample of the buffer with DF-I out = a1*in + a2*in_n1 + a3*in_n2 - b1*out_n1 - b2*out_n2; in_n2 = in_n1; in_n1 = in; out_n2 = out_n1; out_n1 = out; --- all the best lubomir http://www.tu-varna.bg From ronzani.bruno at gmail.com Thu Oct 29 12:05:08 2009 From: ronzani.bruno at gmail.com (Bruno Ronzani) Date: Thu, 29 Oct 2009 17:05:08 +0100 Subject: [music-dsp] FFT and Stuff In-Reply-To: <002701ca58aa$eb4431c0$0201a8c0@LuboPC> References: <4AE9681A.6020308@free.fr> <002701ca58aa$eb4431c0$0201a8c0@LuboPC> Message-ID: Hey back :) So I did manage to improve everything a bit but I still have too many perturbations. Note that : 1. the filter is correct, I mean the sound is actually filtered as I would like it to be. (but with creaks) 2. if I don't apply the filter, my sound is perfect I use a filter of 800 Hz. You can find a sample (sorry for the song!) of what I hear there : http://akhost.free.fr/video.wav Here is my code : void CFilter::load(StkFloat *bufferIn, StkFloat *bufferOut) { int n = CSoundUtilities::getnBufferFrames(); this->lowPass(bufferIn,bufferOut,_freq,1.4142135623731); _last[0] = bufferIn[n-2]; _last[1] = bufferIn[n-1]; _last[2] = bufferOut[n-2]; _last[3] = bufferOut[n-1]; } void CFilter::lowPass(StkFloat *in, StkFloat *out, double f, double r) { int N = CSoundUtilities::getnBufferFrames(); double c = 1.0 / tan(PI * f / 44100); double a1 = 1.0 / ( 1.0 + r * c + c * c); double a2 = 2* a1; double a3 = a1; double b1 = 2.0 * ( 1.0 - c*c) * a1; double b2 = ( 1.0 - r * c + c * c) * a1; out[0] = a1 * in[0] + a2 * _last[0] + a3 * _last[1] - b1*_last[2] - b2*_last[3]; out[1] = a1 * in[1] + a2 * _last[1] + a3 * in[0] - b1*_last[3] - b2*out[0]; for(int n=2;n: > ----- Original Message ----- > From: "Bruno Ronzani" >> Thanks a lot, Andrew and Laurent (merci Laurent !) >> >> I'm currently trying that simple LP filter ( >> http://www.musicdsp.org/archive.php?classid=3#38 ). >> >> The thing is I still have a distortion in the sound. >> >> It may be because of the 2 first elements in out(n) = a1 * in + a2 * >> in(n-1) + a3 * in(n-2) - b1*out(n-1) - b2*out(n-2) >> > > the distortion could be caused, for example by internal clipping if some of > the registers overflows, but i cannot really guess for any particular > reason. could be related to other parts of the whole algorithm "chain" as > well (i.e not the filter causing it) > > to clarify: > this is difference equation / recursive sequence with constant (presumably) > coefficients for a "direct form I" implementation of a digital biquad > filter. in this case, the "a"s are the coefficients for the zeros, while the > "b"s are for the poles. > > seeing something written as "in(n-1)" is a previous value (difference) with > an offset/age of 'n' samples, which should be stored in register-variables > for the recursion to work properly. > >> Because I am working on real time audio, with 512 points buffers, I >> don't really know what to do with that elements. >> >> I tried to store the 2 last element of in and out of the previous >> buffer, and use them in my new buffer, but it doesn't seem to work. >> > > just run an entire buffer trough the algorithm in a way, that once a buffer > is processed completely, the subsequent buffer should enherit the last 4 > register values as intermediate. if that makes any sense... :) > > //------------------- > // calculate coefficients here > //.... > > //------------------- > // to process each sample of the buffer with DF-I > out = a1*in + a2*in_n1 + a3*in_n2 - b1*out_n1 - b2*out_n2; > in_n2 = in_n1; > in_n1 = in; > out_n2 = out_n1; > out_n1 = out; > > --- > > all the best > lubomir > http://www.tu-varna.bg > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From contact at quikquak.com Thu Oct 29 12:26:34 2009 From: contact at quikquak.com (contact) Date: Thu, 29 Oct 2009 16:26:34 -0000 Subject: [music-dsp] FFT and Stuff References: <4AE9681A.6020308@free.fr> <002701ca58aa$eb4431c0$0201a8c0@LuboPC> Message-ID: ----- Original Message ----- From: "Bruno Ronzani" To: "A discussion list for music-related DSP" Sent: Thursday, October 29, 2009 4:05 PM Subject: Re: [music-dsp] FFT and Stuff > Hey back :) > > So I did manage to improve everything a bit but I still have too many > perturbations. > > Note that : > 1. the filter is correct, I mean the sound is actually filtered as I > would like it to be. (but with creaks) > 2. if I don't apply the filter, my sound is perfect > > I use a filter of 800 Hz. You can find a sample (sorry for the song!) > of what I hear there : http://akhost.free.fr/video.wav > > Here is my code : > > > void CFilter::load(StkFloat *bufferIn, StkFloat *bufferOut) > { > > int n = CSoundUtilities::getnBufferFrames(); > this->lowPass(bufferIn,bufferOut,_freq,1.4142135623731); > _last[0] = bufferIn[n-2]; > _last[1] = bufferIn[n-1]; > _last[2] = bufferOut[n-2]; > _last[3] = bufferOut[n-1]; > > } > > > void CFilter::lowPass(StkFloat *in, StkFloat *out, double f, double r) > { > > int N = CSoundUtilities::getnBufferFrames(); > > double c = 1.0 / tan(PI * f / 44100); > double a1 = 1.0 / ( 1.0 + r * c + c * c); > double a2 = 2* a1; > double a3 = a1; > double b1 = 2.0 * ( 1.0 - c*c) * a1; > double b2 = ( 1.0 - r * c + c * c) * a1; > > out[0] = a1 * in[0] + a2 * _last[0] + a3 * _last[1] - b1*_last[2] - > b2*_last[3]; > out[1] = a1 * in[1] + a2 * _last[1] + a3 * in[0] - b1*_last[3] - > b2*out[0]; > > for(int n=2;n { > out[n] = a1 * in[n] + a2 * in[n-1] + a3 * in[n-2] - b1*out[n-1] - > b2*out[n-2]; > } > > } It may be less confusing to store the last samples in the filter loop as you go, most examples of this are like the following: // n goes from 0 to full buffer size. out[n] = a1 * in[n] + a2 * x1 + a3 * x2 - b1 * y1 - b2* y2; x2 = x1; x1 = in[n]; y2 = y1; y1 = out[n]; This way you'll also be O.K. if your output buffer is the same location as your input buffer. Only reset all the x and y variabls to 0 at the initiation of your code, and they do not need to be reset if you change filter coeffs. Dave p.s. wav link broken. From ronzani.bruno at gmail.com Thu Oct 29 12:37:10 2009 From: ronzani.bruno at gmail.com (Bruno Ronzani) Date: Thu, 29 Oct 2009 17:37:10 +0100 Subject: [music-dsp] FFT and Stuff In-Reply-To: References: <4AE9681A.6020308@free.fr> <002701ca58aa$eb4431c0$0201a8c0@LuboPC> Message-ID: Sorry for the broken link. I did exactly what you told me to do. ... AND IT WORKS ! thank you so much everyone ! Here is the code of my class : CFilter::CFilter(double intensity, int frequency): CEffect(intensity), _freq(frequency), x1(0),x2(0), y1(0),y2(0) { } void CFilter::load(StkFloat *bufferIn, StkFloat *bufferOut) { this->lowPass(bufferIn,bufferOut,_freq,1); } void CFilter::lowPass(StkFloat *in, StkFloat *out, double f, double r) { int N = CSoundUtilities::getnBufferFrames(); double c = 1.0 / tan(PI * f / 44100); double a1 = 1.0 / ( 1.0 + r * c + c * c); double a2 = 2* a1; double a3 = a1; double b1 = 2.0 * ( 1.0 - c*c) * a1; double b2 = ( 1.0 - r * c + c * c) * a1; for(int n=0;n: > > ----- Original Message ----- > From: "Bruno Ronzani" > To: "A discussion list for music-related DSP" > Sent: Thursday, October 29, 2009 4:05 PM > Subject: Re: [music-dsp] FFT and Stuff > > >> Hey back :) >> >> So I did manage to improve everything a bit but I still have too many >> perturbations. >> >> Note that : >> 1. the filter is correct, I mean the sound is actually filtered as I >> would like it to be. (but with creaks) >> 2. if I don't apply the filter, my sound is perfect >> >> I use a filter of 800 Hz. You can find a sample (sorry for the song!) >> of what I hear there : http://akhost.free.fr/video.wav >> >> Here is my code : >> >> >> void CFilter::load(StkFloat *bufferIn, StkFloat *bufferOut) >> { >> >> int n = CSoundUtilities::getnBufferFrames(); >> this->lowPass(bufferIn,bufferOut,_freq,1.4142135623731); >> _last[0] = bufferIn[n-2]; >> _last[1] = bufferIn[n-1]; >> _last[2] = bufferOut[n-2]; >> _last[3] = bufferOut[n-1]; >> >> } >> >> >> void CFilter::lowPass(StkFloat *in, StkFloat *out, double f, double r) >> { >> >> int N = CSoundUtilities::getnBufferFrames(); >> >> double c = 1.0 / tan(PI * f / ?44100); >> double a1 = 1.0 / ( 1.0 + r * c + c * c); >> double a2 = 2* a1; >> double a3 = a1; >> double b1 = 2.0 * ( 1.0 - c*c) * a1; >> double b2 = ( 1.0 - r * c + c * c) * a1; >> >> out[0] = a1 * in[0] + a2 * _last[0] + a3 * _last[1] - b1*_last[2] - >> b2*_last[3]; >> out[1] = a1 * in[1] + a2 * _last[1] + a3 * in[0] - b1*_last[3] - >> b2*out[0]; >> >> for(int n=2;n> { >> out[n] = a1 * in[n] + a2 * in[n-1] + a3 * in[n-2] - b1*out[n-1] - >> b2*out[n-2]; >> } >> >> } > > It may be less confusing to store the last samples in the filter loop as you > go, most examples of this are like the following: > > // n goes from 0 to full buffer size. > out[n] = a1 * in[n] + a2 * x1 + a3 * x2 - b1 * y1 - b2* y2; > x2 = x1; x1 = in[n]; > y2 = y1; y1 = out[n]; > > This way you'll also be O.K. if your output buffer is the same location as > your input buffer. > Only reset all the x and y variabls to 0 at the initiation of your code, and > they do not need to be reset if you change filter coeffs. > > Dave > > p.s. wav link broken. > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From thomazchaves at gmail.com Thu Oct 29 17:55:44 2009 From: thomazchaves at gmail.com (Thomaz Oliveira) Date: Thu, 29 Oct 2009 19:55:44 -0200 Subject: [music-dsp] platform choice Message-ID: Hi, I?m going to start some dsp coding and I need some advice, Platform choice is my issue. basically I would like an environment so I can intercharge codes with other people specially in this comunity... I would like it to have some built in funtions and it to be popular among developers.. so people could help me out... is matlab popular here in musicdsp?? thanks Thomaz From lgustavomartins at gmail.com Fri Oct 30 06:04:11 2009 From: lgustavomartins at gmail.com (Luis Gustavo Martins) Date: Fri, 30 Oct 2009 10:04:11 +0000 Subject: [music-dsp] platform choice In-Reply-To: References: Message-ID: Hi Thomaz, In case you are into C++, have a look at Marsyas: http://marsyas.sf.net It's a pretty active and fairly documented audio analysis and processing framework, quite well known in the Music Information Retrieval (MIR) community. I hope this helps, Cheers, Gustavo Luis Gustavo Martins lgustavomartins at gmail.com On 29 Oct, 2009, at 21:55 , Thomaz Oliveira wrote: > Hi, > I?m going to start some dsp coding and I need some advice, > Platform choice is my issue. > basically I would like an environment so I can intercharge codes with > other people specially in this comunity... > I would like it to have some built in funtions and it to be popular > among developers.. > so people could help me out... > is matlab popular here in musicdsp?? > > thanks > > Thomaz > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From thomazchaves at gmail.com Fri Oct 30 18:33:21 2009 From: thomazchaves at gmail.com (Thomaz Oliveira) Date: Fri, 30 Oct 2009 20:33:21 -0200 Subject: [music-dsp] platform choice In-Reply-To: References: Message-ID: thanks a lot, what do folks in here use most?? C++ is pretty cool. I?m used to C programming... thanks a lot Thomaz From richarddobson at blueyonder.co.uk Fri Oct 30 18:55:28 2009 From: richarddobson at blueyonder.co.uk (Richard Dobson) Date: Fri, 30 Oct 2009 22:55:28 +0000 Subject: [music-dsp] platform choice In-Reply-To: References: Message-ID: <4AEB6EE0.4080204@blueyonder.co.uk> Matlab is ~very~ expensive - targetted at professional (industrial, etc) developers. Unless you are fortunate enough to have free academic access. Octave is a widely uses alternative, high level of compatibility, but not completely (especially with regard to DSP). I am not aware of an especially active user community though. The most widely used/shared environment by far (for classic text-based audio programming) is Csound. You can design dsp processes directly in it, and then implement them (in C) as opcodes for efficiency. The builtin functions (i.e. opcodes) are second-to-none (IMO). The user and development communities are much overlapped, and very active in the mailing lists. Richard Dobson Thomaz Oliveira wrote: > Hi, > I?m going to start some dsp coding and I need some advice, > Platform choice is my issue. > basically I would like an environment so I can intercharge codes with > other people specially in this comunity... > I would like it to have some built in funtions and it to be popular > among developers.. > so people could help me out... > is matlab popular here in musicdsp?? > > thanks > > Thomaz > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > > From Victor.Lazzarini at nuim.ie Fri Oct 30 19:04:38 2009 From: Victor.Lazzarini at nuim.ie (Victor Lazzarini) Date: Fri, 30 Oct 2009 23:04:38 +0000 Subject: [music-dsp] platform choice In-Reply-To: <4AEB6EE0.4080204@blueyonder.co.uk> References: <4AEB6EE0.4080204@blueyonder.co.uk> Message-ID: <3A5113B0-8466-48E5-A624-322AD97556DC@nuim.ie> As an alternative to MatLab, I would recommend looking at Python plus its scientific libraries. They're pretty good. Victor On 30 Oct 2009, at 22:55, Richard Dobson wrote: > Matlab is ~very~ expensive - targetted at professional (industrial, > etc) > developers. Unless you are fortunate enough to have free academic > access. Octave is a widely uses alternative, high level of > compatibility, but not completely (especially with regard to DSP). I > am > not aware of an especially active user community though. > > The most widely used/shared environment by far (for classic text-based > audio programming) is Csound. You can design dsp processes directly in > it, and then implement them (in C) as opcodes for efficiency. The > builtin functions (i.e. opcodes) are second-to-none (IMO). The user > and > development communities are much overlapped, and very active in the > mailing lists. > > Richard Dobson > > Thomaz Oliveira wrote: >> Hi, >> I?m going to start some dsp coding and I need some advice, >> Platform choice is my issue. >> basically I would like an environment so I can intercharge codes with >> other people specially in this comunity... >> I would like it to have some built in funtions and it to be popular >> among developers.. >> so people could help me out... >> is matlab popular here in musicdsp?? >> >> thanks >> >> Thomaz >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book >> reviews, dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp >> >> > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From thomazchaves at gmail.com Fri Oct 30 19:38:33 2009 From: thomazchaves at gmail.com (Thomaz Oliveira) Date: Fri, 30 Oct 2009 21:38:33 -0200 Subject: [music-dsp] platform choice In-Reply-To: References: Message-ID: well I'm studing at a university and we have a matlab license, Unicamp in Brazil do you you think that it has enough functions for audio programming?? I?m basically implement tube Ordinary Differencial Equations to model them... Cheers From rbj at audioimagination.com Fri Oct 30 20:52:05 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Fri, 30 Oct 2009 20:52:05 -0400 Subject: [music-dsp] platform choice In-Reply-To: References: Message-ID: <28248CA0-1133-460F-9C8B-BD2876C1C115@audioimagination.com> On Oct 30, 2009, at 7:38 PM, Thomaz Oliveira wrote: > well > I'm studing at a university and we have a matlab license, Unicamp > in Brazil > do you you think that it has enough functions for audio programming?? if you're not doing real-time processing, it's fine. so would a C or C++ environment, using std I/O and some boilerplate software to read and write sound files of whatever format. i'm not sure, but perhaps MATLAB is only smart enough to I/O .wav files, but i dunno. > I?m basically implement tube Ordinary Differencial Equations to > model them... so is your desired platform something you want to do to sound files or something that you want to do to an electric guitar? if the latter, maybe getting some Line6 pod and their SDK and coding it in a 56K. you would still model and research with MATLAB, but if you don't mind porting it from MATLAB to 56K assembly (piece of cake), you can test it out with your yer axe and Line6 pod. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From czhenry at gmail.com Fri Oct 30 21:16:57 2009 From: czhenry at gmail.com (Charles Henry) Date: Fri, 30 Oct 2009 20:16:57 -0500 Subject: [music-dsp] platform choice In-Reply-To: References: Message-ID: <518fe7b20910301816w19cf76bbh61fb6beb0cfeb36c@mail.gmail.com> On Fri, Oct 30, 2009 at 5:33 PM, Thomaz Oliveira wrote: > thanks a lot, > what do folks in here use most?? > > C++ ?is pretty cool. ?I?m used to C programming... If you're good at C, use Pure Data. You can get a rudimentary signal processing external written with just a few lines of code and an appropriate template to get started. I have had lots of fun coding signal processing effects in Pure Data. It works well on Linux platforms. Chuck > > thanks a lot > > Thomaz > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > From michael.gogins at gmail.com Fri Oct 30 21:51:35 2009 From: michael.gogins at gmail.com (michael.gogins at gmail.com) Date: Fri, 30 Oct 2009 21:51:35 -0400 Subject: [music-dsp] platform choice References: <518fe7b20910301816w19cf76bbh61fb6beb0cfeb36c@mail.gmail.com> Message-ID: There is an embarrassment of riches. You need to know what you are trying to do, in the sense of your ULTIMATE goal. If that is to understand DSP or to research new methods, matlab is good, Octave works, Mathematica works, C++ works. Faust (see below) might work for you. If you want to develop software instruments or effects to sell, you will need to use C or C++ because only they truly are fast enough. I recommend gcc (MinGW on Windows) because it is free and the code it makes seems about as good as Microsoft C++. In production, to make money, I would want to use the Intel compiler (which is better) and the Intel performance libraries. Ditto, if you want to develop synthesizers. If you want to develop stuff because ULTIMATELY you want to make music, use Csound, Pure Data, or something like that. You can write plugins for these systems in C or C++. (This is what I do!) In any event, one of these systems makes an excellent test-bed for your ideas developed in other ways. In addition to writing plugins in C or C++, you can use Faust (http://faust.grame.fr) which has its own DSP language that it translates into C++ for various synthesis systems. A workable alternative to C/C++ is functional programming, see Nyquist, sndlib, etc. But you will not have the vast resources of stuff developed by other people that you can read and use in C/C++. Note well: military signal processing software, which is the state of the art, is now written almost exclusively in C++. Commercial signal processing software, mostly ditto. Hope this helps, Mike Gogins ----- Original Message ----- From: "Charles Henry" To: "A discussion list for music-related DSP" Sent: Friday, October 30, 2009 9:16 PM Subject: Re: [music-dsp] platform choice On Fri, Oct 30, 2009 at 5:33 PM, Thomaz Oliveira wrote: > thanks a lot, > what do folks in here use most?? > > C++ is pretty cool. I?m used to C programming... If you're good at C, use Pure Data. You can get a rudimentary signal processing external written with just a few lines of code and an appropriate template to get started. I have had lots of fun coding signal processing effects in Pure Data. It works well on Linux platforms. Chuck > > thanks a lot > > Thomaz > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp > -- dupswapdrop -- the music-dsp mailing list and website: subscription info, FAQ, source code archive, list archive, book reviews, dsp links http://music.columbia.edu/cmc/music-dsp http://music.columbia.edu/mailman/listinfo/music-dsp From rossb-lists at audiomulch.com Fri Oct 30 22:45:05 2009 From: rossb-lists at audiomulch.com (Ross Bencina) Date: Sat, 31 Oct 2009 13:45:05 +1100 Subject: [music-dsp] platform choice References: Message-ID: <01db01ca59d4$2804c320$0773a8c0@rossmacbook> Hi Thomaz: >what do folks in here use most?? I mainly use C/C++ and a little IA32ASM now and then. My impression is that when code gets posted here its usually in C or C++. Rarely in matlab. I'm sure there are big communities around 56K and SHARC dsp code (on other mailing lists, on comp.dsp) My impression is that matlab is popular in university research contexts, but I've never seen it used by independent developers. If you need to publish research papers /thesis with source code it might be a good option. I always found it awkward to use compared to C/C++... but perhaps there are advantages over C/C++ if you want to leverage the built-in functions and libraries for analysis, filter design, graphing etc. SciPy is often cited as an alternative. PureData is one option if you want to code real-time processing in C, another is to develop VST plugins -- I think there's a much wider user audience for VST plugins (see kvraudio.com for example) than PD externals -- but it depend how much you want to buy into the whole FOSS thing. You might want to check out the #musicdsp irc channel .. there are people floating around doing tube sim stuff there (also check out musicdsp.org if you havn't already) Just my 2 .au cents Ross. ---- AudioMulch 2, now for Mac and PC http://www.audiomulch.com From richarddobson at blueyonder.co.uk Sat Oct 31 06:06:02 2009 From: richarddobson at blueyonder.co.uk (Richard Dobson) Date: Sat, 31 Oct 2009 10:06:02 +0000 Subject: [music-dsp] platform choice In-Reply-To: <01db01ca59d4$2804c320$0773a8c0@rossmacbook> References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook> Message-ID: <4AEC0C0A.7040008@blueyonder.co.uk> Ross Bencina wrote: > Hi Thomaz: >> what do folks in here use most?? > > I mainly use C/C++ and a little IA32ASM now and then. > > My impression is that when code gets posted here its usually in C or C++. > Rarely in matlab. > > I'm sure there are big communities around 56K and SHARC dsp code (on other > mailing lists, on comp.dsp) > Funnily enough, few comp.dsp regulars post code or even maths (rbj being a notable exception for both); it is mainly a question/answer list expert to expert, peppered with the occasional flame war and complaints about students (or suspected students) wanting solutions to homework problems. And the occasional maverick who insists "dsp theory is all wrong", etc. And a number of entertaining excursions into OT territory. It is not a comfortable place for anyone who is relatively a novice, or who is seen as not knowing what they are talking about. I've lurked for many years, but have not yet, IIRC, actually asked a question there (but have answered a few on music/audio topics, as one does). I find it useful and stimulating for reading about techniques I have never heard of before, much less know anything about. But I would not call it a generous source of code examples. > My impression is that matlab is popular in university research contexts, but > I've never seen it used by independent developers. If you need to publish > research papers /thesis with source code it might be a good option. I always > found it awkward to use compared to C/C++... but perhaps there are > advantages over C/C++ if you want to leverage the built-in functions and > libraries for analysis, filter design, graphing etc. SciPy is often cited as > an alternative. It probably crops up on comp.dsp more than any other language. Matlab can also be made to output code for the leading dsp chips (I think the Sharc is supported, and one or more TI chips, not so sure about 56x). And Simulink is a module wire-up system that I think is also mainly used in industry. So I would guess it is maybe 50/50 academia and industry, overall. Companies such as Nvidia and Clearspeed produce massively-parallel accelerator hardware with support libraries that can hook into both Matlab and Mathematica, to enable it to run much faster. Matlab is far from being only a tool for dsp. Statistics, financial modelling etc etc etc also figure largely. But for the truly independent developer, matlab is simply too expensive to consider (you would have to buy at least the DSP Toolkit on top), and the other choices mentioned, particularly Octave and Scilab, are correspondingly popular. A custom version of Scilab was supplied with the SDK for the Chameleon 56K-based audio system. Richard Dobson From richarddobson at blueyonder.co.uk Sat Oct 31 06:19:53 2009 From: richarddobson at blueyonder.co.uk (Richard Dobson) Date: Sat, 31 Oct 2009 10:19:53 +0000 Subject: [music-dsp] platform choice In-Reply-To: <4AEC0C0A.7040008@blueyonder.co.uk> References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook> <4AEC0C0A.7040008@blueyonder.co.uk> Message-ID: <4AEC0F49.6040605@blueyonder.co.uk> I wrote: .. > Funnily enough, few comp.dsp regulars post code or even maths (rbj being > a notable exception for both); ...and he has just posted a terrific reply to a short comment of mine in a thread on the subject of, in essence, are imaginary numbers "real"? Nothing comes even close to comp.dsp in "mathological" debates of that kind. Richard Dobson From didid at skynet.be Sat Oct 31 07:31:22 2009 From: didid at skynet.be (Didier Dambrin) Date: Sat, 31 Oct 2009 12:31:22 +0100 Subject: [music-dsp] platform choice In-Reply-To: <4AEC0C0A.7040008@blueyonder.co.uk> References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook> <4AEC0C0A.7040008@blueyonder.co.uk> Message-ID: I think there are 2 kinds of people here, programmers (like me, except that I picked the wrong language) who know how to program in general and came to DSP afterwards, and had never heard of Matlab or anything like that, and then people with a scientific background who first learnt about DSP & then the practice. There can only be some kind of miscommunication between both. When I read papers I rarely find readable code, most often formulas in scientific notation I can't read. 2 different worlds with different knowledge & different approaches. (I've also noticed that people with a scientific background sometimes like to write about hot hair, especially in their school thesis (but that's normal afterall) :) So when you read some online paper that's someone's thesis, it's to be taken lightly as what's described most likely doesn't work very well in practice) > Ross Bencina wrote: >> Hi Thomaz: >>> what do folks in here use most?? >> >> I mainly use C/C++ and a little IA32ASM now and then. >> >> My impression is that when code gets posted here its usually in C or C++. >> Rarely in matlab. >> >> I'm sure there are big communities around 56K and SHARC dsp code (on >> other >> mailing lists, on comp.dsp) >> > > Funnily enough, few comp.dsp regulars post code or even maths (rbj being > a notable exception for both); it is mainly a question/answer list > expert to expert, peppered with the occasional flame war and complaints > about students (or suspected students) wanting solutions to homework > problems. And the occasional maverick who insists "dsp theory is all > wrong", etc. And a number of entertaining excursions into OT territory. > It is not a comfortable place for anyone who is relatively a novice, or > who is seen as not knowing what they are talking about. I've lurked for > many years, but have not yet, IIRC, actually asked a question there (but > have answered a few on music/audio topics, as one does). I find it > useful and stimulating for reading about techniques I have never heard > of before, much less know anything about. But I would not call it a > generous source of code examples. > > >> My impression is that matlab is popular in university research contexts, >> but >> I've never seen it used by independent developers. If you need to publish >> research papers /thesis with source code it might be a good option. I >> always >> found it awkward to use compared to C/C++... but perhaps there are >> advantages over C/C++ if you want to leverage the built-in functions and >> libraries for analysis, filter design, graphing etc. SciPy is often cited >> as >> an alternative. > > > It probably crops up on comp.dsp more than any other language. Matlab > can also be made to output code for the leading dsp chips (I think the > Sharc is supported, and one or more TI chips, not so sure about 56x). > And Simulink is a module wire-up system that I think is also mainly > used in industry. So I would guess it is maybe 50/50 academia and > industry, overall. Companies such as Nvidia and Clearspeed produce > massively-parallel accelerator hardware with support libraries that can > hook into both Matlab and Mathematica, to enable it to run much faster. > Matlab is far from being only a tool for dsp. Statistics, financial > modelling etc etc etc also figure largely. > > But for the truly independent developer, matlab is simply too expensive > to consider (you would have to buy at least the DSP Toolkit on top), and > the other choices mentioned, particularly Octave and Scilab, are > correspondingly popular. A custom version of Scilab was supplied with > the SDK for the Chameleon 56K-based audio system. > > Richard Dobson > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book reviews, > dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp -------------------------------------------------------------------------------- No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.423 / Virus Database: 270.14.40/2471 - Release Date: 10/31/09 07:53:00 From Victor.Lazzarini at nuim.ie Sat Oct 31 09:14:23 2009 From: Victor.Lazzarini at nuim.ie (Victor Lazzarini) Date: Sat, 31 Oct 2009 13:14:23 +0000 Subject: [music-dsp] platform choice In-Reply-To: References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook> <4AEC0C0A.7040008@blueyonder.co.uk> Message-ID: <5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie> you're dead right: two worlds. A while ago when I used to only use C or C++ to prototype ideas, some engineer friends looked at me as if I was some kind of freak. Matlab is for prototyping, they'd say. But I could never get into it, never felt like a proper programming language. When I discovered Python & its libraries, it was just right for me. A nice, readable language and good tools for graphics, etc.. So now for much of what I do I write Python scripts to go with it. I am also considering extending my range and starting to use SAGE, which might just have the tools for some things I was contemplating doing in the past. Interesting reading these posts, because I had the impression lots of folks here would favour Matlab, but it does not seem to be the case. As an aside, for someone interested in a tutorial on using free tools by Julius Smyth http://lac.linuxaudio.org/2008/download/papers/22.pdf Regards Victor On 31 Oct 2009, at 11:31, Didier Dambrin wrote: > I think there are 2 kinds of people here, programmers (like me, > except that > I picked the wrong language) who know how to program in general and > came to > DSP afterwards, and had never heard of Matlab or anything like that, > and > then people with a scientific background who first learnt about DSP > & then > the practice. > > There can only be some kind of miscommunication between both. When I > read > papers I rarely find readable code, most often formulas in scientific > notation I can't read. 2 different worlds with different knowledge & > different approaches. > > > (I've also noticed that people with a scientific background > sometimes like > to write about hot hair, especially in their school thesis (but that's > normal afterall) :) > So when you read some online paper that's someone's thesis, it's to > be taken > lightly as what's described most likely doesn't work very well in > practice) > > > > > > >> Ross Bencina wrote: >>> Hi Thomaz: >>>> what do folks in here use most?? >>> >>> I mainly use C/C++ and a little IA32ASM now and then. >>> >>> My impression is that when code gets posted here its usually in C >>> or C++. >>> Rarely in matlab. >>> >>> I'm sure there are big communities around 56K and SHARC dsp code (on >>> other >>> mailing lists, on comp.dsp) >>> >> >> Funnily enough, few comp.dsp regulars post code or even maths (rbj >> being >> a notable exception for both); it is mainly a question/answer list >> expert to expert, peppered with the occasional flame war and >> complaints >> about students (or suspected students) wanting solutions to homework >> problems. And the occasional maverick who insists "dsp theory is all >> wrong", etc. And a number of entertaining excursions into OT >> territory. >> It is not a comfortable place for anyone who is relatively a >> novice, or >> who is seen as not knowing what they are talking about. I've lurked >> for >> many years, but have not yet, IIRC, actually asked a question there >> (but >> have answered a few on music/audio topics, as one does). I find it >> useful and stimulating for reading about techniques I have never >> heard >> of before, much less know anything about. But I would not call it a >> generous source of code examples. >> >> >>> My impression is that matlab is popular in university research >>> contexts, >>> but >>> I've never seen it used by independent developers. If you need to >>> publish >>> research papers /thesis with source code it might be a good >>> option. I >>> always >>> found it awkward to use compared to C/C++... but perhaps there are >>> advantages over C/C++ if you want to leverage the built-in >>> functions and >>> libraries for analysis, filter design, graphing etc. SciPy is >>> often cited >>> as >>> an alternative. >> >> >> It probably crops up on comp.dsp more than any other language. Matlab >> can also be made to output code for the leading dsp chips (I think >> the >> Sharc is supported, and one or more TI chips, not so sure about 56x). >> And Simulink is a module wire-up system that I think is also mainly >> used in industry. So I would guess it is maybe 50/50 academia and >> industry, overall. Companies such as Nvidia and Clearspeed produce >> massively-parallel accelerator hardware with support libraries that >> can >> hook into both Matlab and Mathematica, to enable it to run much >> faster. >> Matlab is far from being only a tool for dsp. Statistics, financial >> modelling etc etc etc also figure largely. >> >> But for the truly independent developer, matlab is simply too >> expensive >> to consider (you would have to buy at least the DSP Toolkit on >> top), and >> the other choices mentioned, particularly Octave and Scilab, are >> correspondingly popular. A custom version of Scilab was supplied with >> the SDK for the Chameleon 56K-based audio system. >> >> Richard Dobson >> >> >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book >> reviews, >> dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp > > > -------------------------------------------------------------------------------- > > > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.423 / Virus Database: 270.14.40/2471 - Release Date: > 10/31/09 > 07:53:00 > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From contact at quikquak.com Sat Oct 31 10:34:11 2009 From: contact at quikquak.com (contact) Date: Sat, 31 Oct 2009 14:34:11 -0000 Subject: [music-dsp] platform choice References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook><4AEC0C0A.7040008@blueyonder.co.uk> <5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie> Message-ID: <99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs> For me, code needs to be fast to be competitive. And that's about it - well it also has to work. : ) So when I see math software like Matlab, it just appears to be the ultimate procrastination! Now that I've built up a bunch of C++ filter and effect classes, I can prototype quickly and as closely to the finished product as possible. But that's not helping Thomaz much. Matlab's comunity forums and blogs are extensive, and there appears to be a large file exchange system. For example, here someone posted a real-time filter and designer with GUI:- http://www.mathworks.com/matlabcentral/fileexchange/24654-real-time-filters-gui Personally I can't read it, and its black-box approach to functions like Chebyshev filters for example, means that I learn nothing about the processes. Matlab's a maths tool of course - why code a filter if you can just call a function, so you'll find most examples don't give away much low level DSP secrets. This free book is a great introduction to what goes on under the hood: http://www.dspguide.com/ Dave H. ----- Original Message ----- From: "Victor Lazzarini" To: "A discussion list for music-related DSP" Sent: Saturday, October 31, 2009 1:14 PM Subject: Re: [music-dsp] platform choice > you're dead right: two worlds. A while ago when I used to only use C > or C++ to prototype ideas, some engineer friends looked at me as if I > was some kind of freak. Matlab is for prototyping, they'd say. But I > could never get into it, never felt like a proper programming language. > > When I discovered Python & its libraries, it was just right for me. A > nice, readable language and good tools for graphics, etc.. So now for > much of what I do I write Python scripts to go with it. > > I am also considering extending my range and starting to use SAGE, > which might just have the tools for some things I was contemplating > doing in the past. > > Interesting reading these posts, because I had the impression lots of > folks here would favour Matlab, but it does not seem to be the case. > > As an aside, for someone interested in a tutorial on using free tools by > Julius Smyth > http://lac.linuxaudio.org/2008/download/papers/22.pdf > > Regards > > Victor > > > > On 31 Oct 2009, at 11:31, Didier Dambrin wrote: > >> I think there are 2 kinds of people here, programmers (like me, >> except that >> I picked the wrong language) who know how to program in general and >> came to >> DSP afterwards, and had never heard of Matlab or anything like that, >> and >> then people with a scientific background who first learnt about DSP >> & then >> the practice. >> >> There can only be some kind of miscommunication between both. When I >> read >> papers I rarely find readable code, most often formulas in scientific >> notation I can't read. 2 different worlds with different knowledge & >> different approaches. >> >> >> (I've also noticed that people with a scientific background >> sometimes like >> to write about hot hair, especially in their school thesis (but that's >> normal afterall) :) >> So when you read some online paper that's someone's thesis, it's to >> be taken >> lightly as what's described most likely doesn't work very well in >> practice) From ebrombaugh1 at cox.net Sat Oct 31 10:48:27 2009 From: ebrombaugh1 at cox.net (Eric Brombaugh) Date: Sat, 31 Oct 2009 07:48:27 -0700 Subject: [music-dsp] platform choice In-Reply-To: <4AEC0C0A.7040008@blueyonder.co.uk> References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook> <4AEC0C0A.7040008@blueyonder.co.uk> Message-ID: On Oct 31, 2009, at 3:06 AM, Richard Dobson wrote: > Funnily enough, few comp.dsp regulars post code or even maths (rbj > being > a notable exception for both); it is mainly a question/answer list > expert to expert, peppered with the occasional flame war and > complaints > about students (or suspected students) wanting solutions to homework > problems. And the occasional maverick who insists "dsp theory is all > wrong", etc. And a number of entertaining excursions into OT > territory. > It is not a comfortable place for anyone who is relatively a novice, > or > who is seen as not knowing what they are talking about. I've lurked > for > many years, but have not yet, IIRC, actually asked a question there > (but > have answered a few on music/audio topics, as one does). I find it > useful and stimulating for reading about techniques I have never heard > of before, much less know anything about. But I would not call it a > generous source of code examples. This is an excellent 'nutshell' description of comp.dsp. I've been lurking there for more than a decade and although I occasionally answer questions on topics I know about, I've never asked a question - seems like there are too many sharks in the waters. It's a great way to broaden one's view though. >> My impression is that matlab is popular in university research >> contexts, but >> I've never seen it used by independent developers. > > It probably crops up on comp.dsp more than any other language. Matlab > can also be made to output code for the leading dsp chips (I think the > Sharc is supported, and one or more TI chips, not so sure about 56x). > And Simulink is a module wire-up system that I think is also mainly > used in industry. I use Matlab & Simulink heavily in my day job to model wireless systems. Although I have done a little bit of off-line synthesis stuff with it, as well as filter design for some audio projects, I've never really thought of it as a particularly musical tool. Maybe it's just that it seems like work to me. > But for the truly independent developer, matlab is simply too > expensive > to consider (you would have to buy at least the DSP Toolkit on top), > and > the other choices mentioned, particularly Octave and Scilab, are > correspondingly popular. A custom version of Scilab was supplied with > the SDK for the Chameleon 56K-based audio system. Matlab is not cheap - I believe that the total cost of the my current license probably approaches $10k, and annual maintenance is on the order of $2k. Octave is an excellent FOSS alternative to Matlab though and is _almost_ code compatible - there are enough minor differences to be frustrating, so it's best to pick one or the other and not try to write code for both. Eric From contact at quikquak.com Sat Oct 31 11:08:36 2009 From: contact at quikquak.com (contact) Date: Sat, 31 Oct 2009 15:08:36 -0000 Subject: [music-dsp] platform choice References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook><4AEC0C0A.7040008@blueyonder.co.uk> Message-ID: <1A2E0AF77CF846FAA10CD499FA281DA6@DaveUpstairs> > On Oct 31, 2009, at 3:06 AM, Richard Dobson wrote: > >> Funnily enough, few comp.dsp regulars post code or even maths (rbj >> being >> a notable exception for both); it is mainly a question/answer list >> expert to expert, peppered with the occasional flame war and >> complaints >> about students (or suspected students) wanting solutions to homework >> problems. And the occasional maverick who insists "dsp theory is all >> wrong", etc. And a number of entertaining excursions into OT >> territory. >> It is not a comfortable place for anyone who is relatively a novice, >> or >> who is seen as not knowing what they are talking about. I've lurked >> for >> many years, but have not yet, IIRC, actually asked a question there >> (but >> have answered a few on music/audio topics, as one does). I find it >> useful and stimulating for reading about techniques I have never heard >> of before, much less know anything about. But I would not call it a >> generous source of code examples. > > This is an excellent 'nutshell' description of comp.dsp. I've been > lurking there for more than a decade and although I occasionally > answer questions on topics I know about, I've never asked a question - > seems like there are too many sharks in the waters. It's a great way > to broaden one's view though. But he forgot to mention Vlad the Impaler! ; ) And there's the odd spam tidal wave that hits it. But, yeah, despite that, 'comp.dsp' is great. From richarddobson at blueyonder.co.uk Sat Oct 31 11:14:07 2009 From: richarddobson at blueyonder.co.uk (Richard Dobson) Date: Sat, 31 Oct 2009 15:14:07 +0000 Subject: [music-dsp] platform choice In-Reply-To: <99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs> References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook><4AEC0C0A.7040008@blueyonder.co.uk> <5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie> <99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs> Message-ID: <4AEC543F.3010504@blueyonder.co.uk> contact wrote: .. > Matlab's comunity forums and blogs are extensive, and there appears to be a > large file exchange system. > For example, here someone posted a real-time filter and designer with GUI:- > http://www.mathworks.com/matlabcentral/fileexchange/24654-real-time-filters-gui > > Personally I can't read it, and its black-box approach to functions like > Chebyshev filters for example, means that I learn nothing about the > processes. > Matlab's a maths tool of course - why code a filter if you can just call a > function, so you'll find most examples don't give away much low level DSP > secrets. The only thing I would say about this is that you won't necessarily learn much "about Chebyshev filters" by reading source code either (whether in Matlab-ese or C, for that matter). You may see the code is using cosh here, and tanh there; what the code won't tell you is ~why~. Tools like Matlab are very much aimed at R&D and rapid prototyping - that is, to use it you already need to know about Chebyshev filters (and about the maths involved); and why you would choose them (or avoid them) over elliptical or Butterworth. Hence, books and study! Still working on it... Richard Dobson From rbj at audioimagination.com Sat Oct 31 12:04:53 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Sat, 31 Oct 2009 12:04:53 -0400 Subject: [music-dsp] platform choice In-Reply-To: <99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs> References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook><4AEC0C0A.7040008@blueyonder.co.uk> <5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie> <99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs> Message-ID: <2385BDC6-B628-47DC-80C7-01236EDE1635@audioimagination.com> On Oct 31, 2009, at 10:34 AM, contact wrote: > Personally I can't read it, and its black-box approach to functions > like > Chebyshev filters for example, means that I learn nothing about the > processes. so what do you wanna learn about Tchebyshev filters? if you said Elliptical filters, i would say "tough luck, get a damn textbook that tells you something about the Jacobi elliptical function and then get that book "Digital Filters" (can't remember the author) who has a big messy appendix doing the math details). the first issue is to learn how Tchebyshev functions (which turn out to be polynomials) work. then how to make them do something for you with a rational function of s (the Type 1 and Type 2 Tchebyshev filters). then how to get the poles and zeros (from which analog coefficients are derived). then convert to digital with bilinear transform. like the Butterworth (which is really a special case of either the Type 1 or 2 Tchebyshev), the math is straightforward. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From andrew.capon at zen.co.uk Sat Oct 31 12:11:52 2009 From: andrew.capon at zen.co.uk (Andrew Capon) Date: Sat, 31 Oct 2009 16:11:52 +0000 Subject: [music-dsp] platform choice In-Reply-To: <2385BDC6-B628-47DC-80C7-01236EDE1635@audioimagination.com> References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook><4AEC0C0A.7040008@blueyonder.co.uk> <5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie> <99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs> <2385BDC6-B628-47DC-80C7-01236EDE1635@audioimagination.com> Message-ID: Ah, is that what comp.dsp is like then! On 31 Oct 2009, at 16:04, robert bristow-johnson wrote: > > On Oct 31, 2009, at 10:34 AM, contact wrote: > >> Personally I can't read it, and its black-box approach to functions >> like >> Chebyshev filters for example, means that I learn nothing about the >> processes. > > so what do you wanna learn about Tchebyshev filters? if you said > Elliptical filters, i would say "tough luck, get a damn textbook that > tells you something about the Jacobi elliptical function and then get > that book "Digital Filters" (can't remember the author) who has a big > messy appendix doing the math details). > > the first issue is to learn how Tchebyshev functions (which turn out > to be polynomials) work. then how to make them do something for you > with a rational function of s (the Type 1 and Type 2 Tchebyshev > filters). then how to get the poles and zeros (from which analog > coefficients are derived). then convert to digital with bilinear > transform. like the Butterworth (which is really a special case of > either the Type 1 or 2 Tchebyshev), the math is straightforward. > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." > > > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From contact at quikquak.com Sat Oct 31 12:50:16 2009 From: contact at quikquak.com (contact) Date: Sat, 31 Oct 2009 16:50:16 -0000 Subject: [music-dsp] platform choice References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook><4AEC0C0A.7040008@blueyonder.co.uk><5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie><99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs><2385BDC6-B628-47DC-80C7-01236EDE1635@audioimagination.com> Message-ID: > Ah, is that what comp.dsp is like then! > > On 31 Oct 2009, at 16:04, robert bristow-johnson wrote: > >> >> On Oct 31, 2009, at 10:34 AM, contact wrote: >> >>> Personally I can't read it, and its black-box approach to functions >>> like >>> Chebyshev filters for example, means that I learn nothing about the >>> processes. >> >> so what do you wanna learn about Tchebyshev filters? if you said >> Elliptical filters, i would say "tough luck, get a damn textbook that >> tells you something about the Jacobi elliptical function and then get >> that book "Digital Filters" (can't remember the author) who has a big >> messy appendix doing the math details). >> >> the first issue is to learn how Tchebyshev functions (which turn out >> to be polynomials) work. then how to make them do something for you >> with a rational function of s (the Type 1 and Type 2 Tchebyshev >> filters). then how to get the poles and zeros (from which analog >> coefficients are derived). then convert to digital with bilinear >> transform. like the Butterworth (which is really a special case of >> either the Type 1 or 2 Tchebyshev), the math is straightforward. It was just an example of the way scripts often read like in Matlab - "....[b,a] =cheby2(N,As,wn,'bandpass');....." I was trying to suggest to the OP that sharing Matlab code might not be as useful as those in a computer language like C - which 'musicdsp.org' demonstrates quite well. I wasn't disputing the need for education. From bastian.schnuerle at silberstein.de Sat Oct 31 13:02:17 2009 From: bastian.schnuerle at silberstein.de (bastian.schnuerle) Date: Sat, 31 Oct 2009 18:02:17 +0100 Subject: [music-dsp] platform choice In-Reply-To: References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook><4AEC0C0A.7040008@blueyonder.co.uk><5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie><99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs><2385BDC6-B628-47DC-80C7-01236EDE1635@audioimagination.com> Message-ID: <948B7ACA-0446-4E45-923D-E2A928C37A7E@silberstein.de> but cool about matlab is, if you use such a function cheby2(..) .. you can just dig into the .m file and learn a lot on how this function works .. this then can easily be translated into c++ dsp code for eg vst.. Am 31.10.2009 um 17:50 schrieb contact: >> Ah, is that what comp.dsp is like then! >> >> On 31 Oct 2009, at 16:04, robert bristow-johnson wrote: >> >>> >>> On Oct 31, 2009, at 10:34 AM, contact wrote: >>> >>>> Personally I can't read it, and its black-box approach to functions >>>> like >>>> Chebyshev filters for example, means that I learn nothing about the >>>> processes. >>> >>> so what do you wanna learn about Tchebyshev filters? if you said >>> Elliptical filters, i would say "tough luck, get a damn textbook >>> that >>> tells you something about the Jacobi elliptical function and then >>> get >>> that book "Digital Filters" (can't remember the author) who has a >>> big >>> messy appendix doing the math details). >>> >>> the first issue is to learn how Tchebyshev functions (which turn out >>> to be polynomials) work. then how to make them do something for you >>> with a rational function of s (the Type 1 and Type 2 Tchebyshev >>> filters). then how to get the poles and zeros (from which analog >>> coefficients are derived). then convert to digital with bilinear >>> transform. like the Butterworth (which is really a special case of >>> either the Type 1 or 2 Tchebyshev), the math is straightforward. > > It was just an example of the way scripts often read like in Matlab - > "....[b,a] =cheby2(N,As,wn,'bandpass');....." > > I was trying to suggest to the OP that sharing Matlab code might > not be as > useful as those in a computer language like C - which 'musicdsp.org' > demonstrates quite well. > I wasn't disputing the need for education. > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From rbj at audioimagination.com Sat Oct 31 13:14:38 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Sat, 31 Oct 2009 13:14:38 -0400 Subject: [music-dsp] platform choice In-Reply-To: <948B7ACA-0446-4E45-923D-E2A928C37A7E@silberstein.de> References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook><4AEC0C0A.7040008@blueyonder.co.uk><5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie><99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs><2385BDC6-B628-47DC-80C7-01236EDE1635@audioimagination.com> <948B7ACA-0446-4E45-923D-E2A928C37A7E@silberstein.de> Message-ID: On Oct 31, 2009, at 1:02 PM, bastian.schnuerle wrote: > but cool about matlab is, if you use such a function cheby2(..) .. > you can just dig into the .m file and learn a lot on how this > function works .. yeah, but you gotta turn their stupid indexing convention around sometimes. not only the stupid "all arrays have origin 1" thing, but their polyfit and polyval functions have the high order coefficient first. untangling that in anything non-trivial is, well, non-trivial. reverse-engineering MATLAB spaghetti code is about as bad as reverse- engineering decade old uncommented spaghetti code at Kurzweil. -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From Victor.Lazzarini at nuim.ie Sat Oct 31 13:31:34 2009 From: Victor.Lazzarini at nuim.ie (Victor Lazzarini) Date: Sat, 31 Oct 2009 17:31:34 +0000 Subject: [music-dsp] platform choice In-Reply-To: References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook> <4AEC0C0A.7040008@blueyonder.co.uk> <5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie> <99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs> <2385BDC6-B628-47DC-80C7-01236EDE1635@audioimagination.com> <948B7ACA-0446-4E45-923D-E2A928C37A7E@silberstein.de> Message-ID: <907277ED-F2A7-4AD6-8DEB-07B1EB45B12E@nuim.ie> That has been my opinion for years re the matlab language. I'm so glad to hear that I'm not alone or such a freak after all. Victor On 31 Oct 2009, at 17:14, robert bristow-johnson wrote: > > On Oct 31, 2009, at 1:02 PM, bastian.schnuerle wrote: > >> but cool about matlab is, if you use such a function cheby2(..) .. >> you can just dig into the .m file and learn a lot on how this >> function works .. > > yeah, but you gotta turn their stupid indexing convention around > sometimes. not only the stupid "all arrays have origin 1" thing, but > their polyfit and polyval functions have the high order coefficient > first. untangling that in anything non-trivial is, well, non-trivial. > > reverse-engineering MATLAB spaghetti code is about as bad as reverse- > engineering decade old uncommented spaghetti code at Kurzweil. > > -- > > r b-j rbj at audioimagination.com > > "Imagination is more important than knowledge." > > > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From thomas at pdp7.org Sat Oct 31 13:44:49 2009 From: thomas at pdp7.org (Thomas Strathmann) Date: Sat, 31 Oct 2009 18:44:49 +0100 Subject: [music-dsp] platform choice In-Reply-To: <907277ED-F2A7-4AD6-8DEB-07B1EB45B12E@nuim.ie> References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook> <4AEC0C0A.7040008@blueyonder.co.uk> <5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie> <99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs> <2385BDC6-B628-47DC-80C7-01236EDE1635@audioimagination.com> <948B7ACA-0446-4E45-923D-E2A928C37A7E@silberstein.de> <907277ED-F2A7-4AD6-8DEB-07B1EB45B12E@nuim.ie> Message-ID: <4AEC7791.6000600@pdp7.org> Victor Lazzarini wrote: > That has been my opinion for years re the matlab language. I'm so glad > to hear that I'm not alone or such a freak after all. That makes two of us. I have used Matlab (either with or without Simulink/Stateflow) for uni stuff and I never once got the feeling that I am dealing with a programming language. It was more the experience of learning how to do X in a foreign interactive shell of an ancient operating system (and that's just because of the help function which in a positive way reminds me of the good features of DCL). The thing that bothers me about my feelings towards Matlab is that I cannot point out the specific issues that cause me to dislike Matlab as a language. Perhaps people on this list have thought longer and harder about this problem and are willing to share their insights. Thomas From music.maker at gte.net Sat Oct 31 13:56:21 2009 From: music.maker at gte.net (Scott Gravenhorst) Date: Sat, 31 Oct 2009 10:56:21 -0700 Subject: [music-dsp] platform choice Message-ID: <200910311756.n9VHuLQS016891@linux7.lan> A discussion list for music-related DSP wrote: >That has been my opinion for years re the matlab language. I'm so glad >to hear that I'm not alone or such a freak after all. >Victor As am I. I will use Octave (because it is free) for specific things such as working out coefficients for IIR or FIR filters and to display their spectral and phase graphics. But when it comes down to creating a test model to see what the numbers do, I prefer to use C. I've been a C (and assembly) programmer for 30+ years, so I understand it, it looks natural to me and I know what everything does. I use Verilog with FPGAs for DSP and I find that I can translate from my C model to a prototype Verilog model fairly easily once the C model is working. Whenever I work with Octave, I find myself using the help function and Google too often for my liking. Still, there are things that it does very well and for those things I am thankful I have Octave installed. I was a C programmer long before I started learning DSP. >On 31 Oct 2009, at 17:14, robert bristow-johnson wrote: > >> >> On Oct 31, 2009, at 1:02 PM, bastian.schnuerle wrote: >> >>> but cool about matlab is, if you use such a function cheby2(..) .. >>> you can just dig into the .m file and learn a lot on how this >>> function works .. >> >> yeah, but you gotta turn their stupid indexing convention around >> sometimes. not only the stupid "all arrays have origin 1" thing, but >> their polyfit and polyval functions have the high order coefficient >> first. untangling that in anything non-trivial is, well, non-trivial. >> >> reverse-engineering MATLAB spaghetti code is about as bad as reverse- >> engineering decade old uncommented spaghetti code at Kurzweil. >> >> -- >> >> r b-j rbj at audioimagination.com >> >> "Imagination is more important than knowledge." >> >> >> >> >> -- >> dupswapdrop -- the music-dsp mailing list and website: >> subscription info, FAQ, source code archive, list archive, book >> reviews, dsp links >> http://music.columbia.edu/cmc/music-dsp >> http://music.columbia.edu/mailman/listinfo/music-dsp > >-- >dupswapdrop -- the music-dsp mailing list and website: >subscription info, FAQ, source code archive, list archive, book reviews, dsp links >http://music.columbia.edu/cmc/music-dsp >http://music.columbia.edu/mailman/listinfo/music-dsp > -- ScottG ________________________________________________________________________ -- Scott Gravenhorst -- FPGA MIDI Synthesizer Information: home1.gte.net/res0658s/FPGA_synth/ -- FatMan: home1.gte.net/res0658s/fatman/ -- NonFatMan: home1.gte.net/res0658s/electronics/ -- When the going gets tough, the tough use the command line. From nospam2009 at softsynth.com Sat Oct 31 14:20:23 2009 From: nospam2009 at softsynth.com (Phil Burk) Date: Sat, 31 Oct 2009 11:20:23 -0700 Subject: [music-dsp] platform choice In-Reply-To: References: Message-ID: <4AEC7FE7.4010400@softsynth.com> For music experimentation, I like to use Java. I find that I can get performance that is about 80% of 'C'. That's enough for my applications. Who cares whether I use 8% or 10% of the CPU? (Although, yes, there is a big difference between 90% and 112%!) Another nice thing about Java is that you can use Eclipse as an IDE. The refactoring tools in Eclipse make programing a delight. Eclipse is free. http://www.eclipse.org Also Java is a real industrial strength programming language. So you will be developing useful skills if you ever have to get a real job. ;-) One downside to Java is that you can not use SIMD intrinsics like you can in 'C'. So if you need to really crank some numbers then I recommend 'C' or C++ with SIMD. Note that use of SIMD is not portable across CPUs. Another plus to using Java is that it is cross platform so you can build an app with a GUI, multi-threading, and audio output and it will work on Windows, Mac, and Linux without even recompiling. You can even make an Applet and post it on the web. I wrote a library called JSyn for music synthesis. I started in 1997. In those days I had to use native JNI code in 'C' to get audio output and fast low level synthesis. But with the HotSpot JVM the performance of Java has greatly improved. And JavaSound is nearly adequate. The native JNI code is a real pain to maintain. So I am converting all my projects to pure Java. What ever you use, have fun making music. Phil Burk www.softsynth.com From thomas at pdp7.org Sat Oct 31 14:33:27 2009 From: thomas at pdp7.org (Thomas Strathmann) Date: Sat, 31 Oct 2009 19:33:27 +0100 Subject: [music-dsp] platform choice In-Reply-To: <4AEC7FE7.4010400@softsynth.com> References: <4AEC7FE7.4010400@softsynth.com> Message-ID: <4AEC82F7.3010908@pdp7.org> > Another plus to using Java is that it is cross platform so you can build > an app with a GUI, multi-threading, and audio output and it will work on > Windows, Mac, and Linux without even recompiling. You can even make an > Applet and post it on the web. That is true and certainly a point in favor of Java (as a platform). But in the wild you sometimes might want to use MIDI I/O together with sample playing. If using MIDI is even a remote possibility I would from personal experience with severe cross-platform issues advise against using Java. There are certainly ways to make it work on most platforms, but it requires more work than necessary if the Java platform were truly cross-platform all the way down (excepting JNI). Thomas From rbj at audioimagination.com Sat Oct 31 15:16:04 2009 From: rbj at audioimagination.com (robert bristow-johnson) Date: Sat, 31 Oct 2009 15:16:04 -0400 Subject: [music-dsp] platform choice In-Reply-To: <4AEC7791.6000600@pdp7.org> References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook> <4AEC0C0A.7040008@blueyonder.co.uk> <5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie> <99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs> <2385BDC6-B628-47DC-80C7-01236EDE1635@audioimagination.com> <948B7ACA-0446-4E45-923D-E2A928C37A7E@silberstein.de> <907277ED-F2A7-4AD6-8DEB-07B1EB45B12E@nuim.ie> <4AEC7791.6000600@pdp7.org> Message-ID: <463E662C-B3B2-47E4-9E83-6D41B22BEBCE@audioimagination.com> On 31 Oct 2009, at 17:14, robert bristow-johnson wrote: > > On Oct 31, 2009, at 1:02 PM, bastian.schnuerle wrote: > > >> but cool about matlab is, if you use such a function cheby2(..) .. >> you can just dig into the .m file and learn a lot on how this >> function works .. >> > > yeah, but you gotta turn their stupid indexing convention around > sometimes. not only the stupid "all arrays have origin 1" thing, but > their polyfit and polyval functions have the high order coefficient > first. On Oct 31, 2009, at 1:44 PM, Thomas Strathmann wrote: > Victor Lazzarini wrote: >> That has been my opinion for years re the matlab language. I'm so >> glad >> to hear that I'm not alone or such a freak after all. > > That makes two of us. I have used Matlab (either with or without > Simulink/Stateflow) for uni stuff and I never once got the feeling > that > I am dealing with a programming language. It was more the > experience of > learning how to do X in a foreign interactive shell of an ancient > operating system (and that's just because of the help function > which in > a positive way reminds me of the good features of DCL). The thing that > bothers me about my feelings towards Matlab is that I cannot point out > the specific issues that cause me to dislike Matlab as a language. > Perhaps people on this list have thought longer and harder about this > problem and are willing to share their insights. over a decade ago, before moving to VT, when i was living in NJ, this was widely discussed on together comp.soft-sys.matlab and comp.dsp. the obvious superficial problem with this is that in MATLAB, the FFT puts the value of its DC component in bin 1. and the frequency of DC is not 1 unit of any unit system. i was probably the leading proponent of fixing this with a backward compatible extension that would allow one to redefine the origins of any dimension in the array. anyway, using Google Groups to research isn't as good as it used to be. it used to do exhaustive searches, at least within a newsgroup and it not longer does. but if anyone can find that old thread and point to it, you can see the back and forth. essentially none of the non-DSP MATLAB programmers didn't like it because they didn't think it was needed and they worried about this breaking old programs (which was crap, i was able to show definitively that it would not). and nearly all of the people that hang out at comp.dsp saw the need for the it and also wanted the fix. it's amazing how things would be different if mistakes were fixed soon after they're pointed out. if they fixed this back then in 1998 or whenever, it would be used and appreciated widely now and people would wonder how it could be without this fix (or "feature"). -- r b-j rbj at audioimagination.com "Imagination is more important than knowledge." From thomas at pdp7.org Sat Oct 31 15:42:04 2009 From: thomas at pdp7.org (Thomas Strathmann) Date: Sat, 31 Oct 2009 20:42:04 +0100 Subject: [music-dsp] platform choice In-Reply-To: <463E662C-B3B2-47E4-9E83-6D41B22BEBCE@audioimagination.com> References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook> <4AEC0C0A.7040008@blueyonder.co.uk> <5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie> <99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs> <2385BDC6-B628-47DC-80C7-01236EDE1635@audioimagination.com> <948B7ACA-0446-4E45-923D-E2A928C37A7E@silberstein.de> <907277ED-F2A7-4AD6-8DEB-07B1EB45B12E@nuim.ie> <4AEC7791.6000600@pdp7.org> <463E662C-B3B2-47E4-9E83-6D41B22BEBCE@audioimagination.com> Message-ID: <4AEC930C.3050002@pdp7.org> robert bristow-johnson wrote: > On Oct 31, 2009, at 1:44 PM, Thomas Strathmann wrote: > >> Victor Lazzarini wrote: >>> That has been my opinion for years re the matlab language. I'm so >>> glad >>> to hear that I'm not alone or such a freak after all. >> That makes two of us. I have used Matlab (either with or without >> Simulink/Stateflow) for uni stuff and I never once got the feeling >> that >> I am dealing with a programming language. It was more the >> experience of >> learning how to do X in a foreign interactive shell of an ancient >> operating system (and that's just because of the help function >> which in >> a positive way reminds me of the good features of DCL). The thing that >> bothers me about my feelings towards Matlab is that I cannot point out >> the specific issues that cause me to dislike Matlab as a language. >> Perhaps people on this list have thought longer and harder about this >> problem and are willing to share their insights. > > over a decade ago, before moving to VT, when i was living in NJ, this > was widely discussed on together comp.soft-sys.matlab and comp.dsp. > the obvious superficial problem with this is that in MATLAB, the FFT > puts the value of its DC component in bin 1. and the frequency of DC > is not 1 unit of any unit system. i was probably the leading > proponent of fixing this with a backward compatible extension that > would allow one to redefine the origins of any dimension in the array. Array indexing is a problem, of course. But this problem is not limited to a discussion about Matlab or specific functions implemented in Matlab. A mathematician would probably say, 1 is the first index. A programmer and many computer scientists will probably disagree and declare 0 as the only sensible start index of an array or virtually anything (that has semanttics close to arrays). If one were to allow both conventions to coexist in a language or even move to a notion of encoding the first index of an array and its length in the type, what would happen? Total anarchy? Horribly unreadable programs? > anyway, using Google Groups to research isn't as good as it used to > be. it used to do exhaustive searches, at least within a newsgroup > and it not longer does. but if anyone can find that old thread and > point to it, you can see the back and forth. essentially none of the > non-DSP MATLAB programmers didn't like it because they didn't think > it was needed and they worried about this breaking old programs > (which was crap, i was able to show definitively that it would not). > and nearly all of the people that hang out at comp.dsp saw the need > for the it and also wanted the fix. > > it's amazing how things would be different if mistakes were fixed > soon after they're pointed out. if they fixed this back then in 1998 > or whenever, it would be used and appreciated widely now and people > would wonder how it could be without this fix (or "feature"). Seems like the Matlab user base is pretty much divided in different camps according to their particular usage of the program. That would be part of an explanation why Matlab seems to make little progress besides tweaking the "user experience" and adding new functionality/toolboxes. Thomas From lgustavomartins at gmail.com Sat Oct 31 16:33:49 2009 From: lgustavomartins at gmail.com (Luis Gustavo Martins) Date: Sat, 31 Oct 2009 20:33:49 +0000 Subject: [music-dsp] platform choice In-Reply-To: <4AEC930C.3050002@pdp7.org> References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook> <4AEC0C0A.7040008@blueyonder.co.uk> <5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie> <99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs> <2385BDC6-B628-47DC-80C7-01236EDE1635@audioimagination.com> <948B7ACA-0446-4E45-923D-E2A928C37A7E@silberstein.de> <907277ED-F2A7-4AD6-8DEB-07B1EB45B12E@nuim.ie> <4AEC7791.6000600@pdp7.org> <463E662C-B3B2-47E4-9E83-6D41B22BEBCE@audioimagination.com> <4AEC930C.3050002@pdp7.org> Message-ID: <46557D04-79A1-413B-99C5-B81496B62D5A@gmail.com> A nice post why array indexing starting at 0 is cleaner than starting at 1: http://groups.google.com/group/comp.lang.python/msg/1bf4d925dfbf368?pli=1 Cheers, Gustavo Luis Gustavo Martins lgustavomartins at gmail.com http://web.me.com/lgustavomartins On 31 Oct, 2009, at 19:42 , Thomas Strathmann wrote: > robert bristow-johnson wrote: >> On Oct 31, 2009, at 1:44 PM, Thomas Strathmann wrote: >> >>> Victor Lazzarini wrote: >>>> That has been my opinion for years re the matlab language. I'm so >>>> glad >>>> to hear that I'm not alone or such a freak after all. >>> That makes two of us. I have used Matlab (either with or without >>> Simulink/Stateflow) for uni stuff and I never once got the feeling >>> that >>> I am dealing with a programming language. It was more the >>> experience of >>> learning how to do X in a foreign interactive shell of an ancient >>> operating system (and that's just because of the help function >>> which in >>> a positive way reminds me of the good features of DCL). The thing >>> that >>> bothers me about my feelings towards Matlab is that I cannot point >>> out >>> the specific issues that cause me to dislike Matlab as a language. >>> Perhaps people on this list have thought longer and harder about >>> this >>> problem and are willing to share their insights. >> >> over a decade ago, before moving to VT, when i was living in NJ, this >> was widely discussed on together comp.soft-sys.matlab and comp.dsp. >> the obvious superficial problem with this is that in MATLAB, the FFT >> puts the value of its DC component in bin 1. and the frequency of DC >> is not 1 unit of any unit system. i was probably the leading >> proponent of fixing this with a backward compatible extension that >> would allow one to redefine the origins of any dimension in the >> array. > > Array indexing is a problem, of course. But this problem is not > limited > to a discussion about Matlab or specific functions implemented in > Matlab. A mathematician would probably say, 1 is the first index. A > programmer and many computer scientists will probably disagree and > declare 0 as the only sensible start index of an array or virtually > anything (that has semanttics close to arrays). If one were to allow > both conventions to coexist in a language or even move to a notion of > encoding the first index of an array and its length in the type, what > would happen? Total anarchy? Horribly unreadable programs? > >> anyway, using Google Groups to research isn't as good as it used to >> be. it used to do exhaustive searches, at least within a newsgroup >> and it not longer does. but if anyone can find that old thread and >> point to it, you can see the back and forth. essentially none of the >> non-DSP MATLAB programmers didn't like it because they didn't think >> it was needed and they worried about this breaking old programs >> (which was crap, i was able to show definitively that it would not). >> and nearly all of the people that hang out at comp.dsp saw the need >> for the it and also wanted the fix. >> >> it's amazing how things would be different if mistakes were fixed >> soon after they're pointed out. if they fixed this back then in 1998 >> or whenever, it would be used and appreciated widely now and people >> would wonder how it could be without this fix (or "feature"). > > Seems like the Matlab user base is pretty much divided in different > camps according to their particular usage of the program. That would > be > part of an explanation why Matlab seems to make little progress > besides > tweaking the "user experience" and adding new functionality/toolboxes. > > Thomas > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From didid at skynet.be Sat Oct 31 16:01:19 2009 From: didid at skynet.be (Didier Dambrin) Date: Sat, 31 Oct 2009 21:01:19 +0100 Subject: [music-dsp] platform choice In-Reply-To: <4AEC930C.3050002@pdp7.org> References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook> <4AEC0C0A.7040008@blueyonder.co.uk> <5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie> <99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs> <2385BDC6-B628-47DC-80C7-01236EDE1635@audioimagination.com> <948B7ACA-0446-4E45-923D-E2A928C37A7E@silberstein.de> <907277ED-F2A7-4AD6-8DEB-07B1EB45B12E@nuim.ie> <4AEC7791.6000600@pdp7.org><463E662C-B3B2-47E4-9E83-6D41B22BEBCE@audioimagination.com> <4AEC930C.3050002@pdp7.org> Message-ID: <5EB704BFD6B940A188918AE971EA1974@GOLAMD> > If one were to allow > both conventions to coexist in a language or even move to a notion of > encoding the first index of an array and its length in the type, what > would happen? Total anarchy? Horribly unreadable programs? you mean that's not doable in C++? Weird, that's something I took for granted as it's possible in pascal. And yes, it's defined by the type. It's sometimes useful. From Victor.Lazzarini at nuim.ie Sat Oct 31 17:06:49 2009 From: Victor.Lazzarini at nuim.ie (Victor Lazzarini) Date: Sat, 31 Oct 2009 21:06:49 +0000 Subject: [music-dsp] platform choice In-Reply-To: <5EB704BFD6B940A188918AE971EA1974@GOLAMD> References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook> <4AEC0C0A.7040008@blueyonder.co.uk> <5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie> <99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs> <2385BDC6-B628-47DC-80C7-01236EDE1635@audioimagination.com> <948B7ACA-0446-4E45-923D-E2A928C37A7E@silberstein.de> <907277ED-F2A7-4AD6-8DEB-07B1EB45B12E@nuim.ie> <4AEC7791.6000600@pdp7.org> <463E662C-B3B2-47E4-9E83-6D41B22BEBCE@audioimagination.com> <4AEC930C.3050002@pdp7.org> <5EB704BFD6B940A188918AE971EA1974@GOLAMD> Message-ID: Of course, you can create a C++ template to do this (I am not sure there is one in STL, but there might be). The question is why, since 0-indexing makes much more sense. Victor On 31 Oct 2009, at 20:01, Didier Dambrin wrote: > >> If one were to allow >> both conventions to coexist in a language or even move to a notion of >> encoding the first index of an array and its length in the type, what >> would happen? Total anarchy? Horribly unreadable programs? > > > you mean that's not doable in C++? > > Weird, that's something I took for granted as it's possible in > pascal. And > yes, it's defined by the type. > It's sometimes useful. > > > -- > dupswapdrop -- the music-dsp mailing list and website: > subscription info, FAQ, source code archive, list archive, book > reviews, dsp links > http://music.columbia.edu/cmc/music-dsp > http://music.columbia.edu/mailman/listinfo/music-dsp From thomas at pdp7.org Sat Oct 31 17:16:28 2009 From: thomas at pdp7.org (Thomas Strathmann) Date: Sat, 31 Oct 2009 22:16:28 +0100 Subject: [music-dsp] platform choice In-Reply-To: <5EB704BFD6B940A188918AE971EA1974@GOLAMD> References: <01db01ca59d4$2804c320$0773a8c0@rossmacbook> <4AEC0C0A.7040008@blueyonder.co.uk> <5B2EBE2A-C010-4D11-94BD-51338850FE98@nuim.ie> <99B2E82E95AE42F79EF287843BF18A7C@DaveUpstairs> <2385BDC6-B628-47DC-80C7-01236EDE1635@audioimagination.com> <948B7ACA-0446-4E45-923D-E2A928C37A7E@silberstein.de> <907277ED-F2A7-4AD6-8DEB-07B1EB45B12E@nuim.ie> <4AEC7791.6000600@pdp7.org><463E662C-B3B2-47E4-9E83-6D41B22BEBCE@audioimagination.com> <4AEC930C.3050002@pdp7.org> <5EB704BFD6B940A188918AE971EA1974@GOLAMD> Message-ID: <4AECA92C.7000401@pdp7.org> Didier Dambrin wrote: >> If one were to allow >> both conventions to coexist in a language or even move to a notion of >> encoding the first index of an array and its length in the type, what >> would happen? Total anarchy? Horribly unreadable programs? > > > you mean that's not doable in C++? > > Weird, that's something I took for granted as it's possible in pascal. And > yes, it's defined by the type. > It's sometimes useful. I was talking about hypothetical languages with those features. There is a difference between declaring an indexing convention for array beforehand and having function signatures that permit only arrays with a certain indexing convention. In my opinion this is a way to avoid trivial errors likely to occur in DSP or optimized imperative code. Thomas PS: Pascal is my favorite example of a purely pragmatic use of dependent types.