Minimal cue-based show controller, the free alternative to QLab
- Built not to stall. The sounds of the next GO are opened and decoded ahead of time, and loading, saving, and keeping unsaved changes all run in the background, so a slow disk does not hold up GO or Panic.
- Your work survives. Unsaved changes are kept as you make them, through closing the window or a crash, and come back as one change that undo takes back. Undo covers every edit, and nothing ever asks before acting.
- Keyboard first. vi and CUA keymaps, rebindable in a file that reloads as you save it. GO and Panic act from anywhere, even halfway through another key sequence, apart from Space while a text field has the keyboard.
- Audio cues in WAV, FLAC, Ogg Vorbis, MP3, or AAC, with start and end times, seamless loops, and levels that change while they play.
- Video cues in H.264 and MP4, with their sound, which cinq decodes itself with rust_h264 rather than handing them to another player, and picture cues in PNG or JPEG, which hold until something stops them. Both show on a stage window that each GO of one makes fullscreen. A fade that stops a picture or a video, and Panic, fade it out along with its sound, to black or to the picture that shows on under it.
- Fade, stop, wait, and memo cues, chained by auto-continue and auto-follow, with pre-waits and post-waits.
- Panic fades everything out in a second, and a second Panic stops at once.
- Show mode locks editing during a performance.
- Several cue lists, and a warnings list that says why any cue cannot play.
- Readable show files in TOML, which
cinq SHOWopens, easy to diff and keep under version control.
- Cargo
- scdoc, for the manual pages that a build lays out, as below
- pkg-config
- ALSA
- Wayland
- libxkbcommon
- D-Bus
- XDG desktop portal with a file chooser
cargo install cinq builds cinq from crates.io and installs its program
alone, in the bin directory of Cargo, which needs no scdoc.
A build lays out what cinq installs besides its program in the directory
that CINQ_SHARE_DIR names, which is target/share in the repository, as
the share directory of a prefix holds it: the manual pages, completions for
bash, zsh, fish, and Nushell, and, for GNU/Linux and the BSDs, the desktop
entry with its icon and the type of show files. The Nix package installs it
all. Elsewhere, after cargo build --release, copy target/release/cinq
into the bin directory of the prefix, which is often /usr, and what
target/share holds into its share directory, then run
update-mime-database with its share/mime directory.
Builds for Darwin also lay out the app bundle, cinq.app, in
target/Applications, with all but the program, which goes into its
Contents/MacOS. Each Nix package of cinq goes by the name of the system
that it runs on, which names the native build too, as .#x86_64-linux does
on x86_64 GNU/Linux. On GNU/Linux, nix build cross-builds it for the
other systems as well: .#x86_64-linux, .#aarch64-linux, and
.#riscv64-linux for GNU/Linux, .#x86_64-freebsd and .#aarch64-freebsd
for FreeBSD, .#aarch64-darwin for Apple silicon, and .#x86_64-windows
and .#aarch64-windows, which build cinq.exe, for Windows. There
.#deb, .#rpm, and .#archlinux build packages for other distributions,
which need a glibc as new as that of Nixpkgs. On GNU/Linux and on Apple
silicon, .#darwin-pkg builds an installer package for Darwin on Apple
silicon. It puts cinq.app in /Applications and the cinq command, the
manual pages, the completions, and the tutorial with its demo in
/usr/local. The package is unsigned, so Darwin opens a copy that a
browser downloaded only after Open Anyway in the Privacy & Security
settings, while sudo installer -pkg installs it from a terminal. The
tutorial takes its screenshots in sway, which runs on GNU/Linux alone, so
other systems build it on a GNU/Linux builder, such as the virtual machine
of nix.linux-builder in nix-darwin.
See cinq(5).
See cinq-show(5).
cinq is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.