Jump to content

Implementing a JUCE sequencer into Houdini


Recommended Posts

Good day everyone,

for our current project (in the scale of 7 people, 4 months), we are trying to implement a sequencer into Houdini that was built with the audio-programming tool called JUCE (https://juce.com/). Essentially, this is just a library to create audio tools in C++ through a graphical interface.

Now currently, my audio programming colleague built a sequencer for our project that allows us to accumulatingly, randomly assign sounds from a library to the slots in the sequencer which then get played back.

The goal of this implementation is to tell the sequencer which objects of my simulation are currently in frame and then feed this list of objects to the sequencer. The sequencer then builds a structure of playback and outputs which objects get triggered when in order to play their animation. Ideally, I will use the HDK to implement this code (while linking the custom libraries of JUCE) and have this run as a plugin inside Houdini.

I do have a somewhat of a background in programming (but not with C++) and a long history with Houdini, but this undertaking exceeds my capabilities.
What I am looking for is advice on where to even get started in tackling such an implementation or plugin building in general. (And if this undertaking is even doable.)
Unfortunately the HDK documentation is already a little too advanced for me and I couldn't find a way into the subject matter.

I would be very grateful for any help.

Cheers,
Martin

Link to comment
Share on other sites

What are the advantages of implementing it as Houdini plugin? Is it really necessary? My thinking is that Houdini won't play, in general, simulation (even cached) in realtime[1]. Wouldn't be more elegant to create a play list for the sequencer as a post simulation process in Houdini and pass it to the sequencer via file? There are probably a dozen of different ways of accomplish this. The easiest one doesn't even require C++ nor Python. Just select objects visible in camera's frustrum at time x and save that list to a cvs file with corresponding timing. 

In case that's not an option, CHOPs are nice place to pass sequence of events to different places. Making custom OBJ level object alike. SOPs can do that also with nice advantage of taking result of 'pruning' procedure as input. You would have to provide more information though. 

[1] - Houdini isn't realtime application and it has full civil right to snap a few miliseconds for an unknown reason from time to time... (its cousin Touch Designer is realtime application though and can read almebics - a hint!). 

Link to comment
Share on other sites

  • 3 months later...

So after posting this, my project changed directions quite a bit and we no longer pursued generative sound design - somewhat unfortunately. However, I did get around at a later time to recreate a setup of a sequencer in Houdini in a very basic solver and a CHOP-Net.

Here's a quick video with sound:

hou-sequencer_double_1 (1).mp4

And the HIP is here: meg_hou-sequencer_v07.hipnc

And this is the basic Copy-CHOP-Setup:

screenie.jpg?version=1&modificationDate=1544637019000&api=v2

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...