I want to share with you some results from my recent laser project which used QLC+.
I'm a hobbyist programmer and laser enthusiast. I do neither professionally and do both purely for my own enjoyment in my free time.
For this project, I created a 7-hour laser show synchronised to music, intended for viewing in a residential setting like a lounge room. The show consisted of 92 songs, and I used my own program to generate the code for the Script Editor. Using my program, the show took approximately 45 hours of manual work to create.
The show used 4 lasers aimed at each other to form an X-shaped convergence point, with a mirrorball positioned slightly off-center from this convergence point. To protect the audience, adhesive felt was used to cover problematic mirrors.
I recorded some videos at random moments during the show, and after watching them back I felt they turned out well, so I decided to share them here.
Video examples
Example 1:
Example 1 with QLC+ Simple Desk overlay:
Example 2:
Example 2 with QLC+ Simple Desk overlay:
How was QLC+ used?
I'd like to explain how QLC+ was used for this project. Because you might be thinking that since I created a program which can generate a laser show and output all the relevant DMX values, why do I even need QLC+? The answer is that while my program now handles the show generation, QLC+ is still a key part of the process.
Before I even started developing my own program, I relied entirely on QLC+ for everything. When I first got into the hobby, QLC+ made it so easy to get started, from connecting to my lasers to basic control, which allowed me to develop a deeper understanding of DMX over time. Eventually, I came up with the idea of writing a basic program to assist with creating simple sequences. At first, this worked well as a complement to QLC+, making it easier to generate some customisable sequences. But as I gradually added complexity, I offloaded more and more of the show creation process to my program. Over time, it reached the point where it could generate the code for an entire song from start to finish, requiring only copy-paste into QLC+’s Script Editor.
QLC+ remains an important part of my workflow. While my program handles the show generation, I still rely on QLC+ tools such as the Virtual Console, Simple Desk, and Function Manager for everything else. Even though my approach has evolved over time, I wouldn’t have reached this point without QLC+, and I don’t see myself moving away from it anytime soon. Hopefully, this conveys just how much I appreciate what an amazing program it is.
How did I make the show?
For this project, I programmed a sort of overly complex number generator that outputs code for the Script Editor in QLC+. This is a program I've been working on and off for the past 3 years.
While my program automates a large part of the laser show generation, there’s still a lot of manual work required for each song before I can run it through my program. For example, I have to manually collate all the details of each song into a spreadsheet, such as song name, bpm, and duration. I then manually locate all my desired cue points within the song and between each cue point assign a numerical value to reflect the relative "energy" of that part in the song. This might not sound like a lot of work, but on average this process takes about 10 minutes per song.
A couple more things each song needs before the program can generate the laser show are a beatmap and a notemap, which are essentially arrays of stored millisecond values, with beatmaps marking every beat in the song and notemaps marking every note in the song. The beatmap is calculated simply using the bpm and duration of the song, whereas the notemap is generated using python and Aubio's onset detection feature. I then run a simple script to align the beatmap to the notemap and manually verify its accuracy. On average, this task takes about 2 minutes per song.
My program has about 3,000 parameters that influence the laser show generation. So this means that to give each song a unique feel, these parameters need to be manually adjusted for each song. Unfortunately, since any adjustment can make the show better or worse, this creates a trial-and-error type situation, where I have to continuously repeat the following steps: adjust the parameters, generate the show, watch the show to assess the outcome. As a result, this quickly becomes very time consuming, therefore the average time it takes me is about 17 minutes per song to get it to the point I am happy with the show.
So in total, creating a laser show for one song takes me about 29 minutes. Considering the uniqueness I achieve with each song, I think this is quite reasonable, though I’m constantly looking for ways to bring this number down. This is actually something I’d be very curious to get other opinions on: how long do you generally spend per song creating your laser/light show? What level of complexity do you aim for?
Lounge room laser show
-
- Posts: 13
- Joined: Mon Aug 22, 2022 3:21 pm
- Real Name: Brad_
I hope this post inspires you. If you’re new to the laser hobby, I encourage you to keep going. It takes a very long time to pay off but if you stick with it, it eventually becomes a deeply rewarding hobby. Unfortunately, I’ve noticed that in recent years, the laser hobby has become more and more associated with being expensive. But if you’re just interested in lasers as a hobby rather than a profession, you really don’t need all the fancy gear or expensive programs!! It doesn’t have to be an expensive hobby unless you want it to be. For example, I’ve spent less than USD $1000 in total on this hobby. My setup consists of: 4 fit-S type lasers (4x $163), Enttec Open DMX USB (1x $70), DMX cables (4x $30), tripod stand T-bar (2x $75), and QLC+ (free!!!).
-
- Posts: 32
- Joined: Tue Jul 09, 2024 9:57 pm
- Real Name: Robert Dobbs
Nice work and thanks for sharing. I'm curious about your approach to the programming as DMX is typically one of the least useful methods of laser control and if you're willing to entertain 3000 parameters (?) why not use ILDA or similar for full control of the beams?
-
- Posts: 13
- Joined: Mon Aug 22, 2022 3:21 pm
- Real Name: Brad_
It's a good question. The main reason is simply that I'm severely budget restricted. I started with a single DMX laser and slowly worked my way up to buying 4 DMX lasers. I never really had the intention to get this invested into DMX lasers, it kind of just happened naturally and gradually. I never really felt the need for more, DMX could do everything I wanted it to do.Lampy101 wrote: ↑Tue Feb 18, 2025 11:54 am Nice work and thanks for sharing. I'm curious about your approach to the programming as DMX is typically one of the least useful methods of laser control and if you're willing to entertain 3000 parameters (?) why not use ILDA or similar for full control of the beams?
Additionally, DMX lasers have a kind of charm that ILDA lasers don't, their mechanical quirks cause a slight wobble to their patterns, giving them an organic and almost analog feel that makes each pattern feel more alive. This is a desirable effect in certain settings like a lounge room, but I understand would be undesirable in others like professional stage productions where precision is required.
-
- Posts: 32
- Joined: Tue Jul 09, 2024 9:57 pm
- Real Name: Robert Dobbs
Yes fair points, I get it and 100% stick with what works best. For any others - the ILDA options don't cost much in terms of buying used fixtures but deciding on a hardware/software controller combination will probably add up over time. Incidentally much of the US has very strict laws about laser safety in public while EU has almost none.brad992 wrote: ↑Wed Feb 19, 2025 12:18 pmIt's a good question. The main reason is simply that I'm severely budget restricted. I started with a single DMX laser and slowly worked my way up to buying 4 DMX lasers. I never really had the intention to get this invested into DMX lasers, it kind of just happened naturally and gradually. I never really felt the need for more, DMX could do everything I wanted it to do.Lampy101 wrote: ↑Tue Feb 18, 2025 11:54 am Nice work and thanks for sharing. I'm curious about your approach to the programming as DMX is typically one of the least useful methods of laser control and if you're willing to entertain 3000 parameters (?) why not use ILDA or similar for full control of the beams?
Additionally, DMX lasers have a kind of charm that ILDA lasers don't, their mechanical quirks cause a slight wobble to their patterns, giving them an organic and almost analog feel that makes each pattern feel more alive. This is a desirable effect in certain settings like a lounge room, but I understand would be undesirable in others like professional stage productions where precision is required.