Play sounds with GH2?


It would be super fun for me to do some parametric music. Like, link drawings with sounds. Change the geometry and get to another tune, etc.
There are many python libraries used to play and distort sounds. But cannot be imported.

I suggest this because i see Rhino being used alot in scenography design, installations, art, and all the time the design is backed by music.



As much as I think that would be awesome (because we work a lot with sound), there are actually much better tools out there for that. One we use a lot is vvvv. Sure, it has its own complexities, mainly because it doesn’t run inside a 3D software, but it has a ton of capabilities in terms of sounds and installations where you can actually program this parametically the same way you code in GH. Using Python for that in GH is sort of trying to avoid GH’s limitations by just writing “normal” code again. You will very soon realize why GH is not ideal for realtime stuff.

For some fun stuff you can link the 2 worlds though, which we have done a few times. You can for example use OSC or Midi to communicate between the 2 worlds and send or receive data. The good thing music software can already handle osc and midi, so there are a lot of possiblities there.

Max/MSP/Jitter also comes to mind here:

The point of doing it with GH is to intervene sound with geometry, that is, to create shape-music interfaces.

yes, @Dani_Abalde, that’s the main idea. Just as iannis xenakis did with le corbusier :smiley:

Sure, in that case, your first step is to make explicit exactly what it is you are planning to do, and explain why what you’re doing isn’t working for you (e.g. which Python libraries are using, what are you using them for, why aren’t they working for you etc.).

Perhaps the .NET media namespace is enough for your requirements:

Something with basic functionality (at least), allowing to change pitch, tempo, speed, volume…

Also, would be nice to somehow link max or vvvv to gh in real time.

Use OSC protocol for that. Firefly has components for that. But it depends a bit what your requirements for “real time” are.

Well, for example, once a slider is changed in GH, those changes should reflect instantly in the other software. (real time)
Don’t know how OSC protocol works. Is it like: From GH - OSC data output - OSC data input to trigger Max8 functions ?

Okay, so for that OSC is perfect. Yes, there is a OSC Sender and Receiver in GH from the Firefly plugin. Max8 has the same. I’m sure you will find some examples.

Using OSC is nice, because you can use other devices/software easily too, like TouchOSC.

Or gHowl, which seems to be made specifically for OSC communication…

Ah, yes, that’s the one I used before as well. It comes with some example files as well.