Design your show-controller with Lemur
In this tutorial, we will see how we can automate a show with the help of Lemur.
Lemur is an application that send and receive OSC, just as TouchOSC, but it offers the possibility to create bricks with far more control on the OSC messages.
You will learn various methods through the following parts :
1 / Lemur Overview
2 / Layers Control
3 / Time Control
4 / Customize your Show-Controller
1 / Lemur Overview
Installation
Bricks for Millumin are available in
the developer-kit.
The projects and templates used in this tutorial
are available here.
The Lemur App is downloadable directly on
the AppStore or Android market.
To upload and modify the Lemur files, you will need
the Lemur editor available here.
First we will upload the Lemur file to your phone or tablet.
Open the file story.jzml file you got downloaded above.
Open « Lemur editor » and click on the play button.
It’s important that your computer and your device are connected to the same network.
Select your device and click « OK ».
Connect your device
Your device is connected to your computer, and every modification on your computer will be automatically visible on your device, so you can test the results directly.
Setting up OSC
Open the OSC setup panel in Lemur, type your IP and Millumin input port.
Setup OSC
Open the Millumin project called « story.millumin » and access the device panel (CMD+K).
Enter your device IP and port. By default, Lemur input port is 8000.
Also tick the API feedback button : this allowed, Millumin sends feedback to the device.
Millumin configuration
Hitting the next button will ask Millumin to go to the next column. Notice that the columns names and transition times are present in this interface.
Navigate through columns
2 / Layers Control
Going on the second tab allows you to control the selected layers properties as in TouchOSC.
Control properties with Lemur
3 / Time Control
The third tab shows you a basic time control.
This brick shows the elapsed time of the current media, in the layer called « movies ».
You can edit the watched layers by changing the « WatchedLayerName » property in Lemur.
Editing the clock brick
4 / Customize your Show-Controller
Lemur’s flexibility allows you to adjust the interface depending on the column played in Millumin.
This brick is available in the developer-kit, and you will have to customize it by yourself.
The fourth tab contain a sample for the "story" project.
Custom show-controller
For example, on the first column, you just want to control the pyramids opacity. Once it’s finished you can go on the next columns and the needed controls appear.
Now, let's see how to create your own show-controller.
First create a new Lemur page, so you can keep the rest of the sample clean.
Create a new page
Now open the « ShowController » brick you got in the developer-kit.
Open a custom brick
This brick is organized in containers. Each container can integrate several controls : sliders, faders, clocks, ... First we gonna edit the container called « Column1 ». We can remove the fader (select it and hit backspace) .
We can also edit the text field : select it and edit the text in the right part of the interface.
Editing the text
You can then had a custom knob for example. Select it in the library. then edit the address (/millumin/UFO/rotation) and the scale (from 0 to 360). You should now be able to control the UFO rotation.
Add a custom control
Now we have to decide on which column this container will be visible. Since in our Millumin project, the UFO layer is only visible on the fourth column, we have to specify the « visibleOnColumn » variable to 4.
Editing the container.
You can use the same interface for several columns just type {1,2,3,4} if you want to have it on the fourth first columns.
Now we will customize a second container. The same provide one called « Column2 » otherwise you can create a new one just by duplicating « Column1 « : right-click then duplicate.
To make that block visible you have to right click on it and select « bring to front ».
Bring "Column2" to front
Now you just have to insert your components and customize their OSC address.
You can no repeat those steps and create a custom show-controller with cues indications, see the time remaining in a specific media, ...