Giter Site home page Giter Site logo

socranop's Introduction

Linux Utilities for Soundcraft Mixers

Soundcraft Notepad mixers are pretty nice small-sized mixer boards with Harmon USB I/O built-in. While the USB audio works great in alsa without any additional configuration needed, there are some advanced features available to the Windows driver that have no Linux equivalent. Most importantly, the USB routing for the capture channels is software-controlled, and requires an additional utility. For example, by default the Notepad-12FX sends the Master L&R outputs to USB capture channels 3 and 4, but this routing can be changed to input 3&4, input 5&6, or input 7&8. This tool aims to give this same software control of the USB capture channel routing to Linux users.

Supported models:

  • Notepad-12FX
  • Notepad-8FX
  • Notepad-5

Prerequisites

The D-Bus service relies on PyGObject which is not available via pypi without a lot of dev libraries for it to compile against. It is usually easier to install separately using your distribution's package installation tools:

Ubuntu:

sudo apt install python3-gi

Fedora:

sudo dnf install python3-gobject

Installation

Installation

sudo pip install soundcraft-utils

It is not recommended to use --user mode and install this system-wide so that the D-Bus service auto-start can reliably find the right python libs.

Set up the D-Bus service so it can access the system bus and be auto-started on demand:

sudo soundcraft_dbus_service --setup

The D-Bus service will run as root, providing access to the underlying USB device so the soundcraft_ctl user-facing part can be run by an unprivileged account.

Upgrading

Simply update your package from pip, and rerun the 'setup' to ensure the D-Bus service is upgraded to the latest version:

sudo pip install -U soundcraft-utils
sudo soundcraft_dbus_service --setup

Uninstallation

You can remove the D-Bus and xdg files first by running the following as root:

sudo soundcraft_dbus_service --uninstall

Then remove the package with pip:

sudo pip uninstall soundcraft-utils

Prepared Packages

Arch Linux, Manjaro

soundcraft-utils are available in AUR:

yay -S soundcraft-utils

NixOS

For NixOS there exists an experimental Nix expression. For instructions, check out the repo.

Usage

GUI

soundcraft_gui
  • Select the desired input using the up and down arrow keys or using the mouse
  • Apply the selection by clicking "Apply" (ALT+A)
  • Instead of applying the selection, clicking "Reset" (ALT+R) will set the selection back to the current state of the mixer (if known)

GUI Window GUI Window with dropdown open

CLI

List possible channel routing choices:

soundcraft_ctl [--no-dbus] -l

Set channel routing:

soundcraft_ctl [--no-dbus] -s <number>

When using the --no-dbus, write access to the underling USB device is required. Normally only root can do this, unless you've added some custom udev rules.

TODO

  • Polkit restrictions on the D-Bus service
  • Multiple device support
  • Auto-duck feature
  • Firmware upgrade

socranop's People

Contributors

lack avatar mergeymergemerge avatar ndim avatar pakettiale avatar udaemon avatar

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.