[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [pygame] 2P: Sound synthesis / drum machine



In general Python's not so fast, and you probably don't want to be
generating synth effects in it.  But it works great to control synths
written in other languages.
I'd say you might want to look into using CSound or Supercollider as
your synth basis and controlling the synth parameters via your Python
interface.  That's likely to be the easiest / best way to get it
"right".  I would also do the MIDI input on the Python side if I were
you, it will likely be easier that way.

I've worked on a simple Kaossilator-type pygame program, taking the
x/y coordinates and sending them to a Supercollider synth.  Was quite
fast and worked well.

Good luck though, and keep me updated!  I'm always interested to see
how people use Python for sound synthesis, 'cause it's one of the
fields I'm very interested in.

-Luke

On Sun, Apr 25, 2010 at 1:54 AM, jake b <ninmonkeys@xxxxxxxxx> wrote:
> Do you have any sound sythesis or music generation projects ? Looking for
> the ability to play / synth notes.
> I don't know if I should be looking at synth, or midi usage, or where for
> this project. Ideally there is lib / code for basic saw / poly waves (or
> whatever it is )
>
> I'm interested in seeing any projects. [pygame only had 2 under sound.
> suprised. ]
> I found wiki.python.org/moin/PythonInMusic , however the list is so huge I
> don't know where to start. Any recommendations good / bad?
>
> I've been thinking about different kinds of input, and playing with
> ipodtouch apps. [ There are some cool ones under 'music generation' or
> 'sound synth[esis]' , etc... ] possibly collaborative game? editor?
>
> I have two directions. One is a single user editor. The second is a two
> person collaboration, a modified version of the editor. Both players own a
> chain, playing at the same time. Can do some editing to the other's chain.
>
> It will create sound, but not as a traditional drum machine or piano-roll.
>
> I have a pipeline or chain. You can thow notes on it. As well as
> 'modifiers'. It
> contains nodes which can be abstract. They can be a single note, sound file,
> modifier, logic node, or pattern. The graph can branch, firing multiple
> chains together, which can connect back onto self. (see video)
>
> Here's a related sound graph I did a long time ago, however it gives you a
> better idea:
> http://www.youtube.com/watch?v=rj9-bezGc6E
>
> modifiers: (global and relative)
>     Set / add to tempo. toggle to save new setting when outside parent
> chain.
>     Notes pitch/note. [move +2steps]. If looped, keeps getting higher.
> decay:
>     toggle to allow infinite loop.
> logic:
>     gate: 3 way node. Default every odd run nextA, else nextB.
>     gaterand: same thing, but picks random gate.
>     gate1time: can link to earlier in chain, but doesn't apply later runs.
>     gatepause: pause for X updates, then continue.
> pattern:
>     simply another chain.  collapsable a la code folding.
>     ie:    pattern->next = this->next ; this->next = pattern
>
> I'll have to experiment with the interface, since if I use a mouse, ipod,
> gamepad, or wacom as input, it would allow/require very different controls.
> I plan on having the user edit all numbers visually. Ie: for amplitude,
> soundwave is rendered, and your dragging squeezes it.
>
> thanks,
> --
> Ninmonkey
>