Category Archives: Tutorial

Divide To Infinity – Advanced Audiovisual Processing with OpenFrameWorks C++ Libraries

MIDI Maximilian Scope Synth

This program requires the use of a MIDI controller to work – compiled example can be found in the /bin folder. This requires .NET framework 4 (not 4.5) and Visual Studio 2010 libraries to be installed if you are on Windows. The program features a scope adapted from the ofxMaxim example in OpenFrameWorks and comprises of a mono legato triggering synthesizer. Filter cutoff is controlled by momentary on velocity switching and oscillator gate is permanantely on due to having no ADSR and quick and dirty MIDI triggering logic.

Bubblesort:

This program fills an array with random values based on the screen height and iterates through sending the value to a sawtooth oscillator. This implements switch cases – pressing 1 will Bubblesort the array to give a saw glissandi – while pressing 2 will randomise the array data again.

EEG Maximilian:

This was intended to be the main project however due to the nature of how the Emotiv headset examples are organised, I was sadly unable to suitably map the functionality to the way that OpenFrameWorks operates – this code is provided only as a means to see where I am with implementing this. The majority of the code is cut up examples from the emotiv library mixed in with MIDI and Maximilian.

MIDI Example:

I have modified this code slightly from the original supplied by the ofxMidi author Chris O’Shea. I added to the example by listing all MIDI ports by pressing ‘l’ for list and changing midi ports on the fly using a switch case with numeric input for easy testing.

videoPlayerTestModified:

This is a simple test to see how well the Quicktime library works on windows 7 x64, I simply looked into the API and set up a few cases by pressing 1,2,3 and 4 – video play speed, pause and play direction. Sadly this not work with my original video which had a higher bandwidth (had an error code -50 – I could not find the solution anywhere) so this uses the standard ‘fingers’ video.

The link to all of the above source code and materials can be found here.

Unzip these archives into your ‘myApps’ directory in OpenFrameworks.

For more info on OpenFrameWorks and creative coding as an art form, go here.

If you are on Windows, you can execute the debug app in the ‘bin’ folder provided you have all the correct Microsoft C++ Redistributable installed.

Precomplied versions of all projects can be found in their associated /bin folder for easy testing.

Mix Codex::Kore 2 User pages ‘jumping’ / changing when moving knobs to adjust sound parameters

I have been delving ‘under the hood’ with Native Instruments Kore 2 lately and I am having a problem with the hardware. Quite frequently I will be editing a parameter with the knobs and the user page switches to a different page. Obviously this is annoying as I am then editing the wrong parameter!

I am guessing you may have found this page as you are having the same problem? Well, you are in luck! Check out the solution below.

 

 

 

 

 

Solution/Workaround: This is definitely an electrical interference problem which is not alone solved with good earth as discussed in this thread (I checked with a multimeter). When touching and/or moving encoders be sure to make contact with the aluminium housing (I usually just rest my hand on the base of the controller) and this will dissipate the interference.

Alternatively, you could also make something to fit the kensington lock on the controller which conducts to the computer case or similar. Also worth noting is the quality of cables used and are any of them close to higher voltage wires (shielding issues).

On a similar note here is a video discussing the use of footswitches: