osc2laser (OSC to laser) is a completely free, open source, solution to create stunning lasershows - live or pre-programmed by timeline.
It enables you to simply control your showlasers via any OSC-compatible software.
2D laser preview of animated timeline using Ableton Live
- Easy laser output preview (2D)
- Multiple static and animated laser objects
- Change parameters of laser objects
- Many effects for laser objects available
- Python 3 runtime
- Any supported Laser DAC:
- Any software for sending OSC commands like:
- open-stage-control (free)
- Ableton Live
- Vezér
- TouchOSC
- Chataigne (free)
- OSSIA score (free)
- TWO (free)
- OSC See
- Millumin
- QLab
- ...
For Max for Live developers:
- osc-receiver: The server component which receives OSC commands and translates them to a laser DAC. Also provides 2D preview window.
- osc-senders/open-stagecontrol: Template for open-stage-control GUI (OSC client with desktop and web UI)
- osc-senders/max-for-live-device/osc2laser.amxd: Max for Live instrument
- Install .pkg file
- Review config
- Browse to /Applications
- Right click -> Show package content
- Browse to Contents -> MacOS
- Edit and save config_laser1.txt
- Launch application (via /Applications -> right click on osc2laser -> Open)
- Python 3:
- Install the Python 3 runtime which matches your operating system (Windows, Mac, Linux,...).
- Install virtual environment:
python -m venv venv
- Change to venv:
source venv/bin/activate
- Change to osc-receiver directory:
cd osc-receiver
- Install requirements:
python -m pip install -r requirements.txt
- Laser DAC driver:
- Get the right
osc-receiver/libHeliosDacAPI.so
from here to match your OS (driver for x86_64 macOS already included)
- Get the right
- Configuration:
- Edit and save config_laser1.txt
- Run:
- Start OSC receiver:
python main.py
- Start OSC receiver:
This starts an OSC server on localhost at UDP port 2345. See config_laser1.txt for more optional settings.
- Download and install software.
- Run and open profile osc-senders/open-stage-control/osc2laser-client.config.
- Click play icon.
- Open session osc-senders/open-stage-control/osc2laser-template.config.
Setup of the Max for Live device in Ableton Live
- Start Ableton Live
- Create a new project
- Switch to session view (tab key)
- Drag
osc-senders/max-for-live-device/osc2laser.amxd
into the session window to create a new track. - Right click the UI elements (laser object, X position, Y position,...) to show its automation track in a new lane
- Add key frames to the automation lanes and watch the output in the laser preview window.
- /globals/scan_rate
- 100 to 40000: scan rate (points per second)
- /laserobject
- 0 = blank
- 1 = green horizontal line
- 2 = red vertical line
- 3 = blue static wave
- 4 = blue animated wave
- 5 = green static circle
- 6 = green static point
- 7 = white static stars
- /parameters/wave_amplitude
- 0-5000: Wave amplitude
- /parameters/wave_length
- 5000-15000: Wave length
- /parameters/wave_speed
- 0-75: Wave speed
- /effect/x_pos and /effect/y_pos
- -4095 to 4095: move X or Y position of laserobject
- /effect/xy_pos
- (-4095 to 4095, -4095 to 4095): move X and Y position of laserobject at once
- /effect/rgb_intensity
- 0 to 255: brightness of the RGB colors
- /effect/scale_factor
- -10 to 10: scaling factor of shape (1 = no scale)
- /effect/rotation_degrees
- 0 to 360: degrees of static rotation (0 = no static rotation)
- /effect/rotation_speed
- 0 to 1024: speed of continuous rotation (0 = no continuous rotation)
- /effect/color_change/[r, g, b]
- 0 to 255: color intensity of red, green and blue
- Increase version number in
make_installer_mac.sh
- Run:
make_installer_mac.sh
- Find Mac package in
dist/osc2laser.pkg
Here you can discuss your ideas and issues.
Feel free to work on any issue by forking and creating a pull request.
- goodtimes | Interactive showlaser technology: lasershows, laser art, laser games, laser control software
- sync.blue® | Technology partner