FOSSPicks
KnobKraft Orm
Over the past 40 years, the MIDI specification has enabled physical controllers, hardware synthesizers, software synthesizers, audio applications, and numerous other hardware categories to talk to one another. This is an incredible achievement for a protocol born before TCP/IP. Even today, MIDI has never been more popular. Which is why it's particularly bemusing that there isn't a decent open source settings librarian for MIDI devices. Librarians are essential if you want to save a set of MIDI values for a device and also for computer-driven archival and patch management. MIDI devices are usually limited in their storage capacity and user-interface design, which means you often need to save your data to a computer. The easiest way to generate this data is usually via a system-exclusive data dump from your hardware, which is a transfer of the raw internal device data over MIDI as opposed to data common to each device, such as note or volume data. These dumps can usually be sent back to the device to reactivate the configuration, but you need a librarian if you want to save these dumps individually and to manage, preview, and categorize them. Without a librarian, this saved data simply exists as a single file without any further context or structure.
![](/var/linux_magazin/storage/images/issues/2021/252/fosspicks/fig5b861e2db0e41a207da456e32b916cbc.png/793698-1-eng-US/fig5b861e2db0e41a207da456e32b916cbc.png_large.png)
One possible solution is the brilliant Ctrlr platform, which offers many different kinds of editors and librarians as well as plugin compatibility and scripting. But it's also a victim of its own success: Data management and librarian functions are often left wanting, and the editors themselves vary hugely in their quality. What's needed is a simple, high-quality MIDI librarian that focuses on a finite number of devices and supports those well. This is exactly what the oddly named KnobKraft Orm does. KnobKraft Orm can natively talk to and save data from many devices, including various Access Virus, Kawai, Roland and Sequential synths, and Behringer's RD-8 drum machine and its BCR2000 control unit. All of these can have their internal data captured, saved, and re-sent, and the user interface works the same for each. Data dumps, or patches, are shown in a grid, with color used to differentiate between different patch categories. These can then be filtered quickly, excluded, or searched for, much as you would with a tag cloud. This is something you cannot accomplish on the hardware, and it makes it trivially easy to manage collections containing thousands of data dumps. Selecting one will usually send it to the device for immediate preview, avoiding the need to save the data on the external device. While you can't edit parameters within those patches, KnobKraft Orm does free you from the tyranny of using a device's limited storage and patch management.
KnobKraft Orm's best feature is the ability to add your own support for your favorite hardware, even when it's not a native part of the application. This is through what KnobKraft Orm calls an adaptation, and there are already many. An adaptation is written in Python and exists as a script outside the (C++ written and compiled) main application. This is a much more powerful solution than using a static syntax such as JSON to handle the system-exclusive data, because Python lets you easily process the data. You still need access to the device's MIDI specification, but thanks to the excellent programming guide, turning the specification into an adaption is actually fun if you already have good knowledge of the MIDI device. An adaption then becomes just as integrated as the native device support, theoretically letting you manage every device in your studio – something that hasn't been possible since development on the venerable Sound Diver was abandoned in 2005.
Project Website
https://github.com/christofmuc/KnobKraft-orm
![](/var/linux_magazin/storage/images/issues/2021/252/fosspicks/figa486857d9a97d0fa3cd747528972611e.png/793701-1-eng-US/figa486857d9a97d0fa3cd747528972611e.png_large.png)
Multi-user space station
Among sus
There can't be many people who haven't heard of the game Among Us, especially if you've been around young adults over the past 12 months. It's an ingenious 2D, top-down game set on a space station. As you might expect from a game with a young following, it is also fundamentally online multiplayer. At the start of each round, each player appears on the station in the cafeteria. One player is designated the imposter, and all the other players are regular crewmates, none of whom know who the imposter is. Crewmates need to perform tasks while the imposter attempts to "kill" them, but if anyone gets a whiff of who the imposter might be, they can summon a discussion, and everyone votes to try and tease the identity of the imposter from the ship's roster. The non-imposter crewmates win if they correctly determine the imposter's identity.
Among sus is an open source reimagining of Among Us built purely as an interactive text game run through a server for multiplayer access. With the server running, anyone can connect with a simple Telnet or Netcat (nc
) command, and each new connection becomes a new player. The first player can initiate the game, pulling everyone into the text description of the cafeteria. Players then use commands such as go reactor
, examine room
, or check tasks
to interact with the game. Just like in the original, one player is dubbed the imposter. Players can "kill" another player when they're in the same location, but when a body is detected, the discussion stage is triggered. This is where players can raise their suspicions and ultimately vote for who they believe to be the imposter. As with the original game, whoever they decide on as the imposter will be ejected from the ship and loses the game. The crew can only win if they find the imposter and complete all their tasks. Similarly, the imposter can only win by removing all their crewmates from the game. This text reinterpretation may have started as a joke, but it's actually strangely compelling and addictive!
Project Website
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
![Learn More](https://www.linux-magazine.com/var/linux_magazin/storage/images/media/linux-magazine-eng-us/images/misc/learn-more/834592-1-eng-US/Learn-More_medium.png)
News
-
NVIDIA Released Driver for Upcoming NVIDIA 560 GPU for Linux
Not only has NVIDIA released the driver for its upcoming CPU series, it's the first release that defaults to using open-source GPU kernel modules.
-
OpenMandriva Lx 24.07 Released
If you’re into rolling release Linux distributions, OpenMandriva ROME has a new snapshot with a new kernel.
-
Kernel 6.10 Available for General Usage
Linus Torvalds has released the 6.10 kernel and it includes significant performance increases for Intel Core hybrid systems and more.
-
TUXEDO Computers Releases InfinityBook Pro 14 Gen9 Laptop
Sporting either AMD or Intel CPUs, the TUXEDO InfinityBook Pro 14 is an extremely compact, lightweight, sturdy powerhouse.
-
Google Extends Support for Linux Kernels Used for Android
Because the LTS Linux kernel releases are so important to Android, Google has decided to extend the support period beyond that offered by the kernel development team.
-
Linux Mint 22 Stable Delayed
If you're anxious about getting your hands on the stable release of Linux Mint 22, it looks as if you're going to have to wait a bit longer.
-
Nitrux 3.5.1 Available for Install
The latest version of the immutable, systemd-free distribution includes an updated kernel and NVIDIA driver.
-
Debian 12.6 Released with Plenty of Bug Fixes and Updates
The sixth update to Debian "Bookworm" is all about security mitigations and making adjustments for some "serious problems."
-
Canonical Offers 12-Year LTS for Open Source Docker Images
Canonical is expanding its LTS offering to reach beyond the DEB packages with a new distro-less Docker image.
-
Plasma Desktop 6.1 Released with Several Enhancements
If you're a fan of Plasma Desktop, you should be excited about this new point release.