From douglas at music.columbia.edu Sun Feb 1 07:00:00 2009 From: douglas at music.columbia.edu (douglas repetto) Date: Sun Feb 1 07:00:11 2009 Subject: [music-dsp] [admin] music-dsp FAQ Message-ID: <20090201120000.0B90A2543B4@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 pfultz2 at yahoo.com Sun Feb 1 22:25:20 2009 From: pfultz2 at yahoo.com (paul Fultz) Date: Sun Feb 1 22:25:30 2009 Subject: [music-dsp] Alias-free sine wave generation Message-ID: <575956.11904.qm@web90608.mail.mud.yahoo.com> Im trying to implement an alias-free sine wave, i tried a couple of techniques but they always seem to alias really bad especially in the low frequencies, Here is sample code i had from calling the sin(): double Generate() { t += 1.0; if (t > period) t -= period; return gain * cos(freq * t); } void SetFreq(double pFreq) { freq = 2*pi*pFreq*GetSampleInterval(); period = GetSampleRate()/pFreq; t = 0; } Does this seems right? I dont understand why it still aliases. thanks, paul From amos.robinson at gmail.com Sun Feb 1 22:36:44 2009 From: amos.robinson at gmail.com (Amos Robinson) Date: Sun Feb 1 22:36:58 2009 Subject: [music-dsp] Alias-free sine wave generation In-Reply-To: <575956.11904.qm@web90608.mail.mud.yahoo.com> References: <575956.11904.qm@web90608.mail.mud.yahoo.com> Message-ID: I think that there should be divide, not a mul: freq = 2*pi*pFreq / GetSampleInterval(); On Mon, Feb 2, 2009 at 2:25 PM, paul Fultz wrote: > Im trying to implement an alias-free sine wave, i tried a couple of techniques but they always seem to alias really bad especially in the low frequencies, Here is sample code i had from calling the sin(): > double Generate() > { > t += 1.0; > if (t > period) t -= period; > return gain * cos(freq * t); > } > > void SetFreq(double pFreq) > { > freq = 2*pi*pFreq*GetSampleInterval(); > period = GetSampleRate()/pFreq; > t = 0; > } > > Does this seems right? I dont understand why it still aliases. > thanks, > paul > > > > -- > 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 pfultz2 at yahoo.com Sun Feb 1 23:44:23 2009 From: pfultz2 at yahoo.com (paul Fultz) Date: Sun Feb 1 23:44:37 2009 Subject: [music-dsp] Alias-free sine wave generation In-Reply-To: Message-ID: <610529.93957.qm@web90604.mail.mud.yahoo.com> well GetSampleInterval() = 1/GetSampleRate() which would make it: freq = 2*pi*pFreq / GetSampleRate(); --- On Sun, 2/1/09, Amos Robinson wrote: > From: Amos Robinson > Subject: Re: [music-dsp] Alias-free sine wave generation > To: "A discussion list for music-related DSP" > Date: Sunday, February 1, 2009, 10:36 PM > I think that there should be divide, not a mul: > > freq = 2*pi*pFreq / GetSampleInterval(); > > On Mon, Feb 2, 2009 at 2:25 PM, paul Fultz > wrote: > > Im trying to implement an alias-free sine wave, i > tried a couple of techniques but they always seem to alias > really bad especially in the low frequencies, Here is sample > code i had from calling the sin(): > > double Generate() > > { > > t += 1.0; > > if (t > period) t -= period; > > return gain * cos(freq * t); > > } > > > > void SetFreq(double pFreq) > > { > > freq = 2*pi*pFreq*GetSampleInterval(); > > period = GetSampleRate()/pFreq; > > t = 0; > > } > > > > Does this seems right? I dont understand why it still > aliases. > > thanks, > > paul > > > > > > > > -- > > 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 julius.smith at gmail.com Mon Feb 2 03:15:17 2009 From: julius.smith at gmail.com (Julius Smith) Date: Mon Feb 2 03:15:30 2009 Subject: [music-dsp] Alias-free sine wave generation In-Reply-To: <575956.11904.qm@web90608.mail.mud.yahoo.com> References: <575956.11904.qm@web90608.mail.mud.yahoo.com> Message-ID: <32fc6cec0902020015pb1e3151m9beaebc0f9700d3f@mail.gmail.com> You might check out osc.lib in the Faust distribution. The most common case I've seen used is the "modified coupled-form resonator" with zero damping. - jos On Sun, Feb 1, 2009 at 8:25 PM, paul Fultz wrote: > Im trying to implement an alias-free sine wave, i tried a couple of techniques but they always seem to alias really bad especially in the low frequencies, Here is sample code i had from calling the sin(): > double Generate() > { > t += 1.0; > if (t > period) t -= period; > return gain * cos(freq * t); > } > > void SetFreq(double pFreq) > { > freq = 2*pi*pFreq*GetSampleInterval(); > period = GetSampleRate()/pFreq; > t = 0; > } > > Does this seems right? I dont understand why it still aliases. > thanks, > paul > > > > -- > 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 > > -- "Anybody who knows all about nothing knows everything" -- Leonard Susskind From Victor.Lazzarini at nuim.ie Mon Feb 2 05:38:50 2009 From: Victor.Lazzarini at nuim.ie (victor) Date: Mon Feb 2 05:39:00 2009 Subject: [music-dsp] Alias-free sine wave generation References: <575956.11904.qm@web90608.mail.mud.yahoo.com> Message-ID: It seems a bit overcomplicated to me. I'd say double Generate(){ double out = gain*cos(phi); phi += incr; return out; } void SetFreq(double pFreq){ incr = twopi*pFreq/GetSampleRate(); } should do the trick. If you want to prevent overflow, if(phi > twopi) phi -= twopi; if(phi <= 0) phi += twopi; Victor ----- Original Message ----- From: "paul Fultz" To: Sent: Monday, February 02, 2009 3:25 AM Subject: [music-dsp] Alias-free sine wave generation > Im trying to implement an alias-free sine wave, i tried a couple of > techniques but they always seem to alias really bad especially in the low > frequencies, Here is sample code i had from calling the sin(): > double Generate() > { > t += 1.0; > if (t > period) t -= period; > return gain * cos(freq * t); > } > > void SetFreq(double pFreq) > { > freq = 2*pi*pFreq*GetSampleInterval(); > period = GetSampleRate()/pFreq; > t = 0; > } > > Does this seems right? I dont understand why it still aliases. > thanks, > paul > > > > -- > 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 ltramme1476 at earthlink.net Sun Feb 8 18:26:51 2009 From: ltramme1476 at earthlink.net (Larry Trammell (aka RidgeRat)) Date: Sun Feb 8 18:26:45 2009 Subject: [music-dsp] Alias-free sine wave generation In-Reply-To: <575956.11904.qm@web90608.mail.mud.yahoo.com> References: <575956.11904.qm@web90608.mail.mud.yahoo.com> Message-ID: <498F6A3B.8080107@earthlink.net> Are you sure that the effect you see is aliasing? If 'freq' ends up at any value less than pi radians per sample (you can check this easily) you have alias-free sampling... but that doesn't guarantee a spectrum appearing exactly as you expect with anything less than an infinite number of samples. Or that you can do perfect signal interpolation with any less than an infinite number of terms. If your are doing a DFT analysis with block length N, and your tone is not an EXACT harmonic of 2pi/N radians per sample, you can expect 'leakage' artifacts. paul Fultz wrote: > Im trying to implement an alias-free sine wave, i tried a couple of techniques but they always seem to alias really bad especially in the low frequencies, Here is sample code i had from calling the sin(): > double Generate() > { > t += 1.0; > if (t > period) t -= period; > return gain * cos(freq * t); > } > > void SetFreq(double pFreq) > { > freq = 2*pi*pFreq*GetSampleInterval(); > period = GetSampleRate()/pFreq; > t = 0; > } > > Does this seems right? I dont understand why it still aliases. > thanks, > paul > > > > -- > 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 xue.wen at elec.qmul.ac.uk Tue Feb 10 10:06:41 2009 From: xue.wen at elec.qmul.ac.uk (Wen X) Date: Tue Feb 10 10:06:57 2009 Subject: [music-dsp] Alias-free sine wave generation In-Reply-To: <575956.11904.qm@web90608.mail.mud.yahoo.com> References: <575956.11904.qm@web90608.mail.mud.yahoo.com> Message-ID: <4A0D7DB8DFAF496594D71BE426191FF6@wenmac> Have you checked that (freq*period-2*M_PI==0)? -------------------------------------------------- From: "paul Fultz" Sent: Monday, February 02, 2009 3:25 AM To: Subject: [music-dsp] Alias-free sine wave generation > Im trying to implement an alias-free sine wave, i tried a couple of > techniques but they always seem to alias really bad especially in the low > frequencies, Here is sample code i had from calling the sin(): > double Generate() > { > t += 1.0; > if (t > period) t -= period; > return gain * cos(freq * t); > } > > void SetFreq(double pFreq) > { > freq = 2*pi*pFreq*GetSampleInterval(); > period = GetSampleRate()/pFreq; > t = 0; > } > > Does this seems right? I dont understand why it still aliases. > thanks, > paul > > > > -- > 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 dsaritz at gmail.com Fri Feb 13 15:53:21 2009 From: dsaritz at gmail.com (Domagoj Šarić) Date: Fri Feb 13 15:53:41 2009 Subject: [music-dsp] multi-device 'ASIO++ SDK' Message-ID: <818421889F9A47C38E15AE74081BC93F@psiha> http://www.codeproject.com/KB/cpp/Wasiona.aspx to whom it may concern... ;) -- "That men do not learn very much from the lessons of history is the most important of all the lessons of history." Aldous Huxley From tduffy at tascam.com Fri Feb 13 19:05:08 2009 From: tduffy at tascam.com (Tom Duffy) Date: Fri Feb 13 19:08:49 2009 Subject: [music-dsp] multi-device 'ASIO++ SDK' In-Reply-To: <818421889F9A47C38E15AE74081BC93F@psiha> References: <818421889F9A47C38E15AE74081BC93F@psiha> Message-ID: <49960AB4.9050306@tascam.com> interesting read, but you can't use MMX in a 64 bit app, so it's only useful on 32 bit XP and Vista. Tom. NOTICE: This electronic mail message and its contents, including any attachments hereto (collectively, "this e-mail"), is hereby designated as "confidential and proprietary." This e-mail?may be viewed and used only by the person to whom it has been sent and his/her employer?solely for the express purpose for which it has been disclosed and only in?accordance with any confidentiality or non-disclosure (or similar) agreement between TEAC Corporation or its affiliates and said employer, and may not be disclosed to any other person or entity. ? ? ? From douglas at music.columbia.edu Sun Feb 15 07:00:00 2009 From: douglas at music.columbia.edu (douglas repetto) Date: Sun Feb 15 07:00:07 2009 Subject: [music-dsp] [admin] music-dsp FAQ Message-ID: <20090215120000.A41B52DC985@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 ugurguney at gmail.com Tue Feb 17 16:50:47 2009 From: ugurguney at gmail.com (=?UTF-8?B?VcSfdXIgR8O8bmV5?=) Date: Tue Feb 17 16:50:56 2009 Subject: [music-dsp] Crossplatform Threading Message-ID: <667f06560902171350h63851441h4410851e6c1e8be7@mail.gmail.com> # Hi all, # I tried to send this email to portaudio mail list. But somehow can not succeed. In FAQ http://music.columbia.edu/cmc/music-dsp/musicdspFAQ.html#apis it says portaudio started in this list. So, I hope my question is not off topic: # I just successfully built portaudio and bundled test programs under Windows Vista, using Visual Studio 2008, with WMME. # As I understand from the tutorials and some discussion on the mail list, intensive calculations should not be done in callback function. One has to made them in another thread. (I want to collect incoming audio samples in a buffer and when the buffer gets full (when I get 1 window of audio signal) want to calculate FFT (STFT), spectral peak detection, graph plotting etc.) # But I want to have a cross-platform application. Hence I avoid to use Windows specific threading methods. # Can you suggest me a way of building cross-platform application with more than one thread. Any link to a tutorial, example code or any info about which library to use for threading will be appreciated. # Have a nice day! -ugur guney- From nostromo at arkaos.net Tue Feb 17 17:00:17 2009 From: nostromo at arkaos.net (M-.-n) Date: Tue Feb 17 17:00:31 2009 Subject: [music-dsp] Crossplatform Threading In-Reply-To: <667f06560902171350h63851441h4410851e6c1e8be7@mail.gmail.com> Message-ID: <7j5ofh$8pge79@relay.skynet.be> Hi ugur, SDL is perfect for that. SDL has some audio support too but you are not forced to use it. Regards M. -----Original Message----- From: music-dsp-bounces@music.columbia.edu [mailto:music-dsp-bounces@music.columbia.edu] On Behalf Of Ugur G?ney Sent: mardi 17 f?vrier 2009 22:51 To: music-dsp@music.columbia.edu Subject: [music-dsp] Crossplatform Threading # Hi all, # I tried to send this email to portaudio mail list. But somehow can not succeed. In FAQ http://music.columbia.edu/cmc/music-dsp/musicdspFAQ.html#apis it says portaudio started in this list. So, I hope my question is not off topic: # I just successfully built portaudio and bundled test programs under Windows Vista, using Visual Studio 2008, with WMME. # As I understand from the tutorials and some discussion on the mail list, intensive calculations should not be done in callback function. One has to made them in another thread. (I want to collect incoming audio samples in a buffer and when the buffer gets full (when I get 1 window of audio signal) want to calculate FFT (STFT), spectral peak detection, graph plotting etc.) # But I want to have a cross-platform application. Hence I avoid to use Windows specific threading methods. # Can you suggest me a way of building cross-platform application with more than one thread. Any link to a tutorial, example code or any info about which library to use for threading will be appreciated. # Have a nice day! -ugur guney- -- 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 valerianmusic at gmail.com Tue Feb 17 17:05:31 2009 From: valerianmusic at gmail.com (NickMtl) Date: Tue Feb 17 17:05:41 2009 Subject: [music-dsp] Crossplatform Threading In-Reply-To: <667f06560902171350h63851441h4410851e6c1e8be7@mail.gmail.com> References: <667f06560902171350h63851441h4410851e6c1e8be7@mail.gmail.com> Message-ID: For a "live" example of PortAudio in a multi-threading environment, check the Audacity (http://audacity.sourceforge.net/ ) source. I think they use the thread facility in WxWindow/WxWidget for Linux and Windows. For Mac, they use Pthread (the low-level API encapsulated by NSThread). If you know enough Pthread, you can use that. Personally, I use Boost::Thread (http://www.boost.org/). Do a search on "Circular Buffer in Audio" as you will need to implement to consume audio while processing it. Regards, -- - Nick - From ugurguney at gmail.com Wed Feb 18 03:47:52 2009 From: ugurguney at gmail.com (=?UTF-8?B?VcSfdXIgR8O8bmV5?=) Date: Wed Feb 18 03:48:05 2009 Subject: [music-dsp] Crossplatform Threading In-Reply-To: <7j5ofh$8pge79@relay.skynet.be> References: <667f06560902171350h63851441h4410851e6c1e8be7@mail.gmail.com> <7j5ofh$8pge79@relay.skynet.be> Message-ID: <667f06560902180047o16668150gdf2ea6d6ecce88b9@mail.gmail.com> # Thanks! # SDL seems wonderful. I can use both its threading and graphics features. # But I can not find any information about how to real-time sound input (from microphone) or synthesis using a callback function with SDL. SDL audio is designed to play some audio files, isn't it? -ugur guney- On Wed, Feb 18, 2009 at 12:00 AM, M-.-n wrote: > Hi ugur, > > SDL is perfect for that. SDL has some audio support too but you are not > forced to use it. > > Regards > M. > > -----Original Message----- > From: music-dsp-bounces@music.columbia.edu > [mailto:music-dsp-bounces@music.columbia.edu] On Behalf Of Ugur G?ney > Sent: mardi 17 f?vrier 2009 22:51 > To: music-dsp@music.columbia.edu > Subject: [music-dsp] Crossplatform Threading > > # Hi all, > # I tried to send this email to portaudio mail list. But somehow can > not succeed. In FAQ > http://music.columbia.edu/cmc/music-dsp/musicdspFAQ.html#apis it says > portaudio started in this list. So, I hope my question is not off > topic: > > # I just successfully built portaudio and bundled test programs under > Windows Vista, using Visual Studio 2008, with WMME. > # As I understand from the tutorials and some discussion on the mail > list, intensive calculations should not be done in callback function. > One has to made them in another thread. (I want to collect incoming > audio samples in a buffer and when the buffer gets full (when I get 1 > window of audio signal) want to calculate FFT (STFT), spectral peak > detection, graph plotting etc.) > # But I want to have a cross-platform application. Hence I avoid to > use Windows specific threading methods. > > # Can you suggest me a way of building cross-platform application with > more than one thread. Any link to a tutorial, example code or any info > about which library to use for threading will be appreciated. > > # Have a nice day! > -ugur guney- > -- > 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 ugurguney at gmail.com Wed Feb 18 04:00:01 2009 From: ugurguney at gmail.com (=?UTF-8?B?VcSfdXIgR8O8bmV5?=) Date: Wed Feb 18 04:00:15 2009 Subject: [music-dsp] Crossplatform Threading In-Reply-To: References: <667f06560902171350h63851441h4410851e6c1e8be7@mail.gmail.com> Message-ID: <667f06560902180100n355d5074se6bc22b24742420e@mail.gmail.com> On Wed, Feb 18, 2009 at 12:05 AM, NickMtl wrote: > For a "live" example of PortAudio in a multi-threading environment, > check the Audacity (http://audacity.sourceforge.net/ ) source. > I think they use the thread facility in WxWindow/WxWidget for Linux > and Windows. For Mac, they use Pthread (the low-level API encapsulated > by NSThread). # Thanks Nick! # I'll study the Audacity source code. I saw AudioIO.cpp and Ringbuffer.cpp files. I'll learn from them. > If you know enough Pthread, you can use that. Personally, I use > Boost::Thread (http://www.boost.org/). # I looked at Boost library. It is huge, and I can not managed it. # As I understand Pthread is Unix' native threading mechanism and I found this page about porting it to Windows: http://sourceware.org/pthreads-win32/ If I can not handle SDL threading I'll try Pthread. > Do a search on "Circular Buffer in Audio" as you will need to > implement to consume audio while processing it. # That's true! Thanks for help! -ugur guney- > > Regards, > > -- > - Nick - > -- > 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 com1 at zenprobe.com Wed Feb 18 08:37:11 2009 From: com1 at zenprobe.com (com1@zenprobe.com) Date: Wed Feb 18 08:37:29 2009 Subject: [music-dsp] IEEE conference London 25-28 August Message-ID: The first IEEE Games Innovation Conference takes place in London 25th-28th August 2009. Papers are now invited for the Audio Technology track. For more information : http://ice-gic.ieee-cesoc.org/ Dylan Menzies Audio Technology Chair ICE-GIC09 From nospam2009 at softsynth.com Wed Feb 18 12:18:19 2009 From: nospam2009 at softsynth.com (Phil Burk) Date: Wed Feb 18 12:18:41 2009 Subject: [music-dsp] Crossplatform threading Message-ID: <499C42DB.5020909@softsynth.com> > # I tried to send this email to portaudio mail list. But somehow can > not succeed. In FAQ The PortAudio list is down because we lost our host. I am trying to get it back up but having problems with Mailman. If anyone is expert on Mailman on Linux with QMail, and wants to help, please contact me at phil att softsynth dott com. > # As I understand from the tutorials and some discussion on the mail > list, intensive calculations should not be done in callback function. Intensive math operations are OK, particularly if they are operating on small blocks of audio. Filters, oscillators, small FFTs are all fine in the callback. But you should avoid doing high level things like file I/O, database access, graphics, etc. These can block the CPU and wreak havoc with your audio callback. If you have to do those along with your audio then then do them in a thread and stream the audio to the device using a blocking write. Someone else suggested pthreads. We use that in many projects and it works well. Phil Burk From egbert at native-instruments.de Fri Feb 20 11:33:49 2009 From: egbert at native-instruments.de (Egbert Juergens) Date: Fri Feb 20 11:34:08 2009 Subject: [music-dsp] [OT] Job Posting: DSP Software Developer Message-ID: <9359E408C95E45ADBB47875841AE1D8E@NIBLN00317> Hello, Native Instruments is offering a job as a DSP Software Developer in Berlin. For detailed information please see the announcement below and http://www.native-instruments.com/index.php?id=jobsnew Best regards, Egbert Juergens Head of Research Native Instruments GmbH ----------------------------------------------------------------- DSP SOFTWARE DEVELOPER (f/m) Berlin. Full time. Starting as soon as possible. Your position - Development and evaluation of new technologies and algorithms - Implementation of optimized signal processing algorithms - Execution of sound comparisons and listening tests - Participation in product conception Your profile - Masters degree in electrical/communications engineering or equivalent knowledge - Very good knowledge in digital signal processing - Good C/C++ programming skills - Experience with music production - Knowledge about MIR, analog circuits or SIMD programming is a plus - Creative and analytical personality with high quality standards - Autonomous and results oriented working style - Good team player - Good English language skills What we offer We offer a responsible and exciting proposal with an international range, with a company which advances the technological evolution of music production. The position is within a highly-motivated team with a positive working climate that will allow you to express your talents fully. In addition we offer appropriate remuneration, and very good development chances within a dynamically growing enterprise. Beyond this the position offers an intensive integration in the international music scene as well as the metropolitan city of Berlin. Contact Your application will of course be treated confidentially. We ask prospective applicants to post serious applications (cover letter, resume, copies of certificates, potential start date as well as prospective salary) to jobs@native-instruments.de (Please state the position "DSP Software Developer" you are applying for in the subject of the email.) or to the following postal address: NATIVE INSTRUMENTS GmbH Human Resources Schlesische Str. 28 D-10997 Berlin Germany For further information please contact the human resources team on +49 (0)30 611035-1600 or at jobs@native-instruments.de --- Registergericht: Amtsgericht Charlottenburg Registernummer: HRB 72458 UST.-ID.-Nr. DE 20 374 7747 Gesch?ftsf?hrung: Daniel Haver (CEO), Mate Galic From dan.stowell at elec.qmul.ac.uk Mon Feb 23 16:15:27 2009 From: dan.stowell at elec.qmul.ac.uk (Dan Stowell) Date: Mon Feb 23 16:15:45 2009 Subject: [music-dsp] SuperCollider workshops at Harvestworks in New York, early April Message-ID: <49A311EF.6030105@elec.qmul.ac.uk> [apologies for cross postings] SUPERCOLLIDER WORKSHOPS APRIL 2009 All details and sign-up at: http://tinyurl.com/harvestcollider SuperCollider workshops will be offered at Harvestworks in New York in early April, in the run up to the 2009 SuperCollider Symposium to be held at Wesleyan. This is a rare opportunity to learn from some of the SuperCollider developers themselves. SuperCollider is an incredible environment and programming language for music and audio. It provides an interpreted object-oriented language which functions as a network client to a state of the art, realtime sound synthesis server. SuperCollider was written by James McCartney over a period of many years, and is now an actively maintained and developed open source project. It is used by musicians, scientists, and artists working with sound and audiovisuals. All workshops require attendees to bring their own laptops; tutors will assist with installation on OS X (10.4 or later recommended) and Windows as necessary (SC also runs on Linux but it's assumed you'd have compiled and installed it yourself in advance of the workshop if you're using that platform). The workshops being offered are: 1) Saturday 4th April: Beginners day (11am-6pm). A friendly introduction to SuperCollider for absolute beginners, aimed at artists and musicians. Aside from a little familiarity with the digital arts, no prerequisites, though some prior exposure to computer music (perhaps through Max/MSP or Csound) may be helpful. (led by Nick Collins, Dan Stowell, Jan Tr?tzschler) $100 2) Sunday 5th April: Intermediate workshop day (11am-6pm). For those with some experience, but wanting to refresh and broaden their SC skills. Topics will include sound synthesis and analysis, interaction via GUI and controllers, generative and network music, SC programming tips and tricks and SC architecture. We will also be adaptable to participants needs, can take requests for topics, and have some general question and answer sessions. (led by Nick Collins, Dan Stowell, Jan Tr?tzschler) $100 3) Monday 6th April evening (7-10pm). Beginner's evening session. A friendly introduction to SuperCollider for absolute beginners, aimed at artists and musicians. Aside from a little familiarity with the digital arts, no prerequisites, though some prior exposure to computer music (perhaps through Max/MSP or Csound) may be helpful. (led by Nick Collins, Dan Stowell, Jan Tr?tzschler) 4) Tuesday 7th April daytime (11-6). Abstract pressure cookers and virtual steam machines: Just in time programming in networks. Not tweaking machines, but writing letters: Programs that program programs, machines that recombine structures. Replacing their parts, in effect writing their user manual at runtime. Instead of giving in to pressure to become virtuosos, we listen how the machines take the pressure - from spooky action at a distance to new exploring logics of distributed noise music. A collective workshop for live coding, sound synthesis, randomness in order. (led by Powerbooks Unplugged) $100 5) Tuesday 7th April evening (7-10pm). Compact version of Tuesday daytime session (led by Powerbooks Unplugged) $50 6) Wednesday 8th April daytime (11-6) SuperCollider Clinic. Flexible topic sessions, following participant needs, adaptable to all intermediate levels (beginners would find Saturday or Mon night helpful before this workshop). Developers will be on hand to answer questions, to present on special topics, and to demonstrate projects and works built with SC. (led by an all star cast of developers) $100 Venue: Harvestworks Digital Media Arts Center 596 Broadway, #602 New York, NY 10012 -- 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 Cyrille.Damez at laposte.net Wed Feb 25 16:44:30 2009 From: Cyrille.Damez at laposte.net (Cyrille.Damez@laposte.net) Date: Wed Feb 25 15:05:50 2009 Subject: [music-dsp] Crossplatform Threading In-Reply-To: <667f06560902180100n355d5074se6bc22b24742420e@mail.gmail.com> References: <667f06560902171350h63851441h4410851e6c1e8be7@mail.gmail.com> <667f06560902180100n355d5074se6bc22b24742420e@mail.gmail.com> Message-ID: <200902252244.31049.Cyrille.Damez@laposte.net> On Wednesday 18 February 2009 10:00:01 U?ur G?ney wrote: > # I looked at Boost library. It is huge, and I can not managed it. There is a lot in it indeed, but as far as threads are concerned, you can use only the boost::thread library, and you only need to look at the documentation here: http://www.boost.org/doc/libs/1_38_0/doc/html/thread.html