Atelier Hplank
Home | Audio Visual Compositions | HPKComposer | Tools | News
HPKComposer \ HPKComposerAV \ Tutorial | Tips | Download
HPKComposerAV is a tool for building real time interactive (via MIDI) Audio-Visual performances. It generates Csound files that are played with the CsoundAV program. This tool can be used for generating only sounds, but it has realy been designed to mix sound and graphics and to allow synchronization of the graphical parameter evolutions with those of the sound synthesis.
Another important paradigm is the focus on using continuous variations versus discrete events. There is no support for score events: sounds are generated continuously as well as the graphical objects. The performance control is through the parameter evolutions, the MIDI controls and of course the Csound opcodes. Of course, the Csound opcodes capabilties and the parameter evolution allow discrete sound transformations to happen.
The sound part is based on Csound, and is composed of a sound generator (named Sound in the GUI) and several sound effects that are running in parallel. The sound definition is done using the Csound opcodes and assist tools are provided for working with them, as well as for allowing the share and reuse of Sound and  Effects.
Real time performance beeing a key challenge, the sound generation is monophonic, but the sound effect ouput is stereophonic. 
The graphical part is based on the OpenGL opcodes of CsoundAV. HPKComposerAV provides a complete encapsulation of the opcodes in contrast to the sound part. The graphic structure requires less flexibility than the sound part: basically a graphical object has a shape, a material definition (color and texture), and a position in space. Links between the graphical properties and the sound is achieved through several ways. It is possible to synchronize the evolution of any graphical parameter with any sound parameter. It is also possible to use a Csound variable defined in the sound definition source, bringing a lot of synchronization capabilities or graphical parameter control.
  • Material attributes are diffuse, emissive and specular colors, transparency, ambient intensity, shiniess, blend function source, blend function destination.
  • A texture can be applied to the shape and can be an image or a video. The supported formats are those of CsoundAV. The texture can be scaled, translated and rotated. The texture image can be changed through a list of cycling images..
  • Geometry choice is rather limited versus what is offered in CsoundAV. Wavefront OBJ are supported and is the way to have diversity. Texture Coordinate Generation is available.
  • The graphical object can be scaled, translated and rotated.
Light can be added to the Performance. Two different types of Light, directional and point, are available. A global ambient light is defined by default, but it is recommended to uncheck it and to add a Light for better control of the position and color.
To learn more on the features, please follow the tutorial