Coder Social home page Coder Social logo

kpr0th / qlcplus Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mcallegari/qlcplus

1.0 0.0 0.0 67.05 MB

Q Light Controller Plus (QLC+) - kpr0th edits

License: Apache License 2.0

Shell 0.43% JavaScript 3.07% Ruby 0.19% C++ 68.93% Python 0.39% C 1.19% AppleScript 0.02% CSS 0.12% HTML 8.38% QML 13.51% QMake 1.48% NSIS 0.12% GLSL 0.23% Batchfile 0.01% Roff 0.06% CMake 1.87%

qlcplus's Introduction

QLC Logo

Q Light Controller Plus

GitHub release) QLC+ Github Actions CI Build

Introduction

QLC+ is a powerful and user-friendly software designed for lighting control. Whether you're an experienced lighting professional or just getting started, QLC+ empowers you to take control of your lighting fixtures with ease. The primary goal of this project is to bring QLC+ to the level of available commercial software. QLC+ runs on Linux, Windows (7+), macOS (10.7+) and the Raspberry Pi.

Copyright © Heikki Junnila, Massimo Callegari

Key Resources:

Home Page Static Badge
Documentation Static Badge
Official Forum Static Badge
GitHub Sponsorship GitHub Sponsors
Official Merch Static Badge

QLC+ Social Media:

Instagram YouTube Facebook

Contributing

We welcome contributions from the community to help make QLC+ even better. Before diving into coding, we encourage you to start a discussion in our Software Development forum if you're considering adding a new feature or making significant changes. This provides an opportunity for feedback, collaboration, and ensuring alignment with the project's goals.

Further guidelines are available in the CONTRIBUTING.md document.

🚧 DEVELOPERS AT WORK 🚧

If you're compiling QLC+ from sources and you regularly do "git pull" to get the latest sources, you probably end up seeing some compiler warnings and errors from time to time. Since the whole source package is under development, you might even encounter unresolved symbols etc. If such a thing occurs, you should do a "make distclean" on qlcplus (top-most source directory) and then "qmake" and "make" again. We attempt to keep the GIT master free of fatal errors and it should compile all the time. However, some inter-object dependencies do get mixed up sometimes and you need to compile the whole package instead of just the latest changes. Sometimes even that doesn't work, because QLC+ installs its common libraries to system directories, where (at least unixes) fetch them instead of the source directory. In those cases, you might try going to the libs directory, compile it with "make" and install with "make install" and then attempt to re-compile the whole package with "make".

Compiling And Installation

Please refer to the online wiki pages: https://github.com/mcallegari/qlcplus/wiki

Requirements

Linux

  • Qt >= 5.0 development libraries & tools
  • libudev-dev, libmad0-dev, libsndfile1-dev, libfftw3-dev
  • DMX USB plugin: libftdi-dev, pkg-config
  • MIDI plugin: libasound, libasound-dev, pkg-config
  • OLA plugin: libola, ola-dev, pkg-config (see libs/olaout/README)
  • uDMX plugin: libusb, libusb-dev, pkg-config
  • Peperoni plugin: libusb, libusb-dev, pkg-config
  • Velleman plugin: Not available

Windows

Mac OS X

Support & Bug Reports

For discussions, feedbacks, ideas and new fixtures, go to: https://www.qlcplus.org/forum/index.php

For developers wiki and code patches, go to: https://github.com/mcallegari/qlcplus

Contributors

QLC+ owes its success to the dedication and expertise of numerous individuals who have generously contributed their time and skills. The following list recognizes those whose remarkable contributions have played a pivotal role in shaping QLC+ into what it is today.

QLC+ 5:

  • Eric Arnebäck (3D preview features)
  • Santiago Benejam Torres (Catalan translation)
  • Luis García Tornel (Spanish translation)
  • Nils Van Zuijlen, Jérôme Lebleu (French translation)
  • Felix Edelmann, Florian Edelmann (fixture definitions, German translation)
  • Jannis Achstetter (German translation)
  • Dai Suetake (Japanese translation)
  • Hannes Bossuyt (Dutch translation)
  • Aleksandr Gusarov (Russian translation)
  • Vadim Syniuhin (Ukrainian translation)
  • Mateusz Kędzierski (Polish translation)

QLC+ 4:

  • Jano Svitok (bugfix, new features and improvements)
  • David Garyga (bugfix, new features and improvements)
  • Lukas Jähn (bugfix, new features)
  • Robert Box (fixtures review)
  • Thomas Achtner (ENTTEC wing improvements)
  • Joep Admiraal (MIDI SysEx init messages, Dutch translation)
  • Florian Euchner (FX5 USB DMX support)
  • Stefan Riemens (new features)
  • Bartosz Grabias (new features)
  • Simon Newton, Peter Newman (OLA plugin)
  • Janosch Frank (webaccess improvements)
  • Karri Kaksonen (DMX USB Eurolite USB DMX512 Pro support)
  • Stefan Krupop (HID DMXControl Projects e.V. Nodle U1 support)
  • Nathan Durnan (RGB scripts, new features)
  • Giorgio Rebecchi (new features)
  • Florian Edelmann (code cleanup, German translation)
  • Heiko Fanieng, Jannis Achstetter (German translation)
  • NiKoyes, Jérôme Lebleu, Olivier Humbert, Nils Van Zuijlen (French translation)
  • Raymond Van Laake (Dutch translation)
  • Luis García Tornel (Spanish translation)
  • Jan Lachman (Czech translation)
  • Nuno Almeida, Carlos Eduardo Porto de Oliveira (Portuguese translation)
  • Santiago Benejam Torres (Catalan translation)
  • Koichiro Saito, Dai Suetake (Japanese translation)

QLC:

  • Stefan Krumm (Bugfixes, new features)
  • Christian Suehs (Bugfixes, new features)
  • Christopher Staite (Bugfixes)
  • Klaus Weidenbach (Bugfixes, German translation)
  • Lutz Hillebrand (uDMX plugin)
  • Matthew Jaggard (Velleman plugin)
  • Ptit Vachon (French translation)

Apache 2.0

GitHub License

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.


C++ Qt CMake JavaScript

qlcplus's People

Contributors

mcallegari avatar janosvitok avatar plugz avatar boxy321 avatar hjtappe avatar kripton avatar sbenejam avatar erkaman avatar joepadmiraal avatar floedelmann avatar peternewman avatar siegmund42 avatar kiilerix avatar fxedel avatar nils-van-zuijlen avatar hfanieng avatar edogawa23 avatar nikoyes avatar grebecchi avatar itay-lifshitz avatar magcho avatar trebmuh avatar lady-darkness avatar wazzledi avatar yestalgia avatar nedmech avatar denkytuna avatar manuco avatar daveol avatar jeromelebleu avatar

Stargazers

Justin Wayne avatar

qlcplus's Issues

v4 ShowManager hides scene functions when adding to a track

mcallegari/qlcplus -> issues/1393

Describe the bug
When adding a Scene function to a track in showmanager, it ends up hidden and can no longer be used directly. This is a result of logic that automatically creates a new sequence and binds it to the selected scene, which then causes the selected scene to be marked as hidden and disappear the next time the showfile is opened.

Although this behavior is documented, it's surprising to a new user. Also, if other functions or widgets referenced the selected scene, such as a chaser or collection, they still reference it after it becomes hidden, even though it can no longer be directly edited.

To Reproduce
Steps to reproduce the behavior:

  1. Create a scene function
  2. Create a new show function and add the scene
  3. Observe that a new sequence is created that's bound to the selected scene
  4. Save and re-open the show file and observe that the scene is no longer visible.

Expected behavior
The selected scene should not get hidden.

Suggested change to obtain expected behavior
Have the software clone the scene automatically, before creating the new sequence, and bind the scene to the clone of the original scene.

Desktop (please complete the following information):

  • OS: Windows 11
  • QLC+ Version 4.12.7.xxx (built off of the git head as of last week)

[ENHANCEMENT] Direct external-input mode for Cue Lists

When driven by external input, Cue Lists currently react to the passed-in value by scaling the full 0..255 DMX range across however many steps are in the cue list's Chaser Function. This means if steps are added or removed from the Chaser, the values passed in from external inputs may have to change to map to the desired step.

This new mode will allow external input to specify the desired step by the step's number, rather than it's relative position across the full DMX range. This way, an external value of 1 will always mean step 1, and so on.

In addition, because MIDI external input only has values from 0..127, and its values are multiplied by 2 before entering the DMX realm, an additional new mode will be added to support MIDI external input, which will divide the DMX value by 2 before selecting the desired step.

[ENHANCEMENT] Direct on/off external-input mode for buttons

Create an alternate toggle mode for buttons, to allow external-input sources to explicitly turn a button on or off based on the value. The current behavior for external-input to a toggle button causes the button to toggle between on and off any time the value is > 0. This new mode would allow a value > 0 to always mean toggle to ON, and a value = 0 to mean toggle to OFF.

The new mode will not default to enabled, and it will not affect existing .qxw files.

The use case is for external automation (multiplay, ableton live, etc) to avoid unwanted toggling if the same cue is sent again. This could occur if the cue is assigned within a looping sound, for example.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.