Houdini Pipe Reader (SourceForge Project Page)

Intro

This program is an add-on for Side Effects Software’s Houdini. It reads data from the Pipe Out CHOP (running in network mode), and sends out corresponding Open Sound Control (OSC) messages. There are two main types of output that you can send – single CHOP channel values for the current frame, and an array of all the values in the animation range. The type is determined by the settings of your Pipe Out CHOP.

It would probably be better to have a custom CHOP to do this, but I haven’t done enough with the HDK to know how to do this.

Note: To get OSC messages into Houdini, see the project https://sourceforge.net/projects/houdini-osc/ (which unfortunately doesn’t currently work out of the box for Houdini 10+ or Windows).

Download

Executable

Source

Usage

Just run the exe file, it’s pretty much automatic. Please let me know if it goes weird or crashes on you!

Platform

Currently, Windows with .Net v4. Tested on Houdini 10.734.

I would like to port this to Mono/Linux in future.

Config

Settings are defined in PipeReader.exe.config. Edit this if you wish to change anything, but be careful. The defaults are:

Maximum number of input channels

1024

Incoming host (Houdini)

localhost

Incoming port

5001

Destination host (OSC app)

localhost

Destination port

10000

OSC Address Prefix

/houdini-out/

Debug output enabled[1]

True

Debug port

4444

Mapping overrides

None

Channel–Address Mapping

By default, OSC messages are sent with address “/houdini-out/[CHOP_channel_name]”. You can assign custom destination addresses to channel indices by adding some lines in the config file, along the lines of:


<setting name="MappingOverrides" serializeAs="Xml">
                <value>
                    <ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                        xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                        <string>0=Volume</string>
                        <string>1=Pan</string>
                    </ArrayOfString>
                </value>
            </setting>

 

Dev

IDE is Visual C# Express 2010, and dependencies include the .Net Framework v4 and the Bespoke OSC library.

The format of the Houdini Pipe CHOPs is described in the official documentation, here:  http://www.sidefx.com/docs/houdini10.0/nodes/chop/pipein.
A rough visualisation is given in
Figure 1. This program is based on one of the examples provided in $HH/public/PPD.tar.Z.

Currently, the program outputs OSC messages. However, it should be fairly straight forward to implement alternative output forms, e.g. MIDI.

 

Figure 1: Protocol at 4-byte token level

 



[1] If true, duplicate OSC messages are sent to another port (on the same host). Useful for debugging and monitoring.