[PD] Would PD be a good solution for WFS?

mazarick at bellsouth.net mazarick at bellsouth.net
Wed Dec 10 18:37:54 CET 2008


Greetings!!

I am a real 'newbie' at pure data and need your help and opinions.

I've got a particular audio problem I need to solve, and I would like other people's opinion if using PD is the best way to solve it. 

The particular problem I am trying to solve is setting up the sound for each speaker/channel in a Wave Field Synthesis setup.  

I would like to take an arbitrary placement of speakers/channels (which will change less often than other things, but will generally be in a vertical plane in a room), and add all sounds to all speakers, but create a slightly different 'delay' for each virtual sound source to each speaker depending on the distance between the sound's virtual location and the speaker's real location.   The distance will need to be 3 dimensional distance measurement so that the virtual sound locations and speakers are not constrained to the same horizontal plane.    The delay value should probably be expressed in a multiple of samples for simplicity.   I'm guessing that virtual sound locations near the speakers would benefit from a 'multiply' or 'shift' so that a different volume would be given for each speaker, but the 'multiply factors' probably won't change a lot if the virtual sound source is far enough away from the speakers.   All of this calculation doesn't have to be done in real time, and can be considered simply a way of adding different 'wav' files together (which represent the source sound) with a different delay for each channel.

There are several different methods of solving this, and I am in process of evaluating some software called 'Wonder' which was specially crafted to solve this problem.   It is also possible to craft something with .NET and use mono to do the conversion since it doesn't really need real time.   There are probably several other already written solutions that can be bolted together to solve this problem.  However, I also noted that there is a short YouTube where the student used pd (However, I don't know how he used PD).
http://www.youtube.com/watch?v=_je7qaJsttU
(I don't have Toshiro Yamada's email address, so I sub'd in a 'co-conspirator')

There are some other potential benefits to using pd that I would be interested in.   For instance, there is probably a way to use pd to send pink noise out of a lot of channels so that the system can be equalized.   There are probably some other equalization steps that be included so that one tool can solve a couple of different problems.

I am working with a guy from Germany and am in process of setting up a 32 channel WFS system for my home (a new 'first').   I am using four old 8 channel PCI cards that have 24 bit/48khz capabilities and am using linux (alsa, jack, ardour).    I've got some old soundtracks from ProTools sessions that I've converted over to Ardour for isolated sources (the number of sound sources varies from recording to recording) and I have a bunch of self powered PC speakers (34), some general stuff a musician would have floating around (a set of 15" scoops, tweeters, an electronic crossover, amplifiers, audio snake, mixing board, etc).

If this whole thing 'rings your bell' and you would like to help with this project, there's always room for more people.   There is a long list of small things that need to be done (like pointing different moving head lights with DMX at the virtual source via the source software and separately by using an ambisonic mic that senses where the sound is located).  Contact me off list, as I don't want to bog this list down with WFS and general audio discussions.

Regards,

Mike Mazarick
mazarick at bellsouth.net
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20081210/3497d88e/attachment.htm>


More information about the Pd-list mailing list