You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
eeeeeta f05adff081 {backend, ui}: modularizations, waveform improvements 4 years ago
rosc@8f2591f08e backend: quick'n'dirty playback demo! 5 years ago
sqa-backend {backend, ui}: modularizations, waveform improvements 4 years ago
sqa-backend-test ui: add config & prefs subsystem, connection menu items 4 years ago
sqa-engine {backend, engine, ui}: audio action fixes, fix "edit separately" 4 years ago
sqa-ffmpeg {ui, backend, engine}: rework duration & fading to support pausing 4 years ago
sqa-jack *: clarify licensing situation 4 years ago
sqa-osc-custom-derive {ui, backend}: Down the Rabbit Hole of adding Waveforms (see details) 4 years ago
sqa-ui {backend, ui}: modularizations, waveform improvements 4 years ago
.gitignore {backend, ui}: modularizations, waveform improvements 4 years ago
.gitmodules backend: replace protocol with OSC, decruftify 5 years ago
Cargo.lock {ui, backend}: Down the Rabbit Hole of adding Waveforms (see details) 4 years ago
Cargo.toml backend, osc-custom-derive: introduce new custom derive system 5 years ago
README.md *: clarify licensing situation 4 years ago

README.md

SQA: the Stuttery QLab Alternative

Looking for SQAv1? See the master branch, accessible by faddling about with the "Branch" button somewhere above.

wat

This project aims to create an audio player & cue system for live shows and staged productions, à la Figure53's QLab. All its code is written in the Rust programming language, a new language that prevents memory unsafety and improves programming ergonomics.

This one large repo contains many different crates that all help accomplish that aim. (See the individual crates' README files for more information!) The crates are distributed in the hope that some of them will be useful outside this project; for example, sqa-jack is a rather nice JACK library.

why version 2

SQA v1, although it does have a pretty good UI, and was a nice first attempt, isn’t really suitable for its usecase: a reliable, professional live theatre audio application with accurate timing. It's none of those things in bold. Sticking with the current codebase is too much effort, when I want to redesign the whole thing - the command system is not ideal, the audio engine is unsuitable, and that's pretty much the whole application apart from the UI (which may actually be salvaged).

Also, as mentioned above, giving back to the Rust community and all that.

further information & devlog

Want to follow along with the development of SQA? Check out pro.theta.eu.org, where I blog about its ongoing development (here's the first post).

licensing

sqa-backend and sqa-ui are both licensed under the GNU GPL version 3. Essentially, this means that you have to share your changes if you distribute modified versions of SQA (as well as enforcing some other freedom-related protections). This is done in the hope that SQA will remain free and open-source software.

However, the libraries used by and created for SQA, sqa-jack, sqa-ffmpeg, sqa-engine, and sqa-osc-custom-derive, are licensed under the Creative Commons Zero license. This means that you can do whatever the hell you want with these libraries.