{"id":17323832,"url":"https://github.com/lack/soundcraft-utils","last_synced_at":"2025-06-18T06:33:52.122Z","repository":{"id":43442428,"uuid":"238010790","full_name":"lack/soundcraft-utils","owner":"lack","description":"Linux Utilities for Soundcraft Mixers","archived":false,"fork":false,"pushed_at":"2021-07-02T12:50:31.000Z","size":199,"stargazers_count":29,"open_issues_count":5,"forks_count":8,"subscribers_count":10,"default_branch":"release","last_synced_at":"2025-06-15T14:20:01.062Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lack.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-02-03T16:32:49.000Z","updated_at":"2025-05-01T01:55:02.000Z","dependencies_parsed_at":"2022-08-29T10:01:53.311Z","dependency_job_id":null,"html_url":"https://github.com/lack/soundcraft-utils","commit_stats":null,"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/lack/soundcraft-utils","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lack%2Fsoundcraft-utils","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lack%2Fsoundcraft-utils/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lack%2Fsoundcraft-utils/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lack%2Fsoundcraft-utils/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lack","download_url":"https://codeload.github.com/lack/soundcraft-utils/tar.gz/refs/heads/release","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lack%2Fsoundcraft-utils/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260506280,"owners_count":23019410,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-15T14:09:05.095Z","updated_at":"2025-06-18T06:33:47.095Z","avatar_url":"https://github.com/lack.png","language":"Python","funding_links":[],"categories":["Software"],"sub_categories":["Audio utilities - Misc"],"readme":"Linux Utilities for Soundcraft Mixers\n=====================================\n\n[Soundcraft Notepad](https://www.soundcraft.com/en/product_families/notepad-series)\nmixers are pretty nice small-sized mixer boards with Harmon USB I/O built-in.\nWhile the USB audio works great in alsa without any additional configuration\nneeded, there are some advanced features available to the Windows driver that\nhave no Linux equivalent.  Most importantly, the USB routing for the capture\nchannels is software-controlled, and requires an additional utility.  For\nexample, by default the Notepad-12FX sends the Master L\u0026R outputs to USB\ncapture channels 3 and 4, but this routing can be changed to input 3\u00264, input\n5\u00266, or input 7\u00268.  This tool aims to give this same software control of the\nUSB capture channel routing to Linux users.\n\nSupported models:\n- Notepad-12FX\n- Notepad-8FX\n- Notepad-5\n\nPrerequisites\n-------------\n\nThe D-Bus service relies on [PyGObject](https://pygobject.readthedocs.io/en/latest/index.html)\nwhich is not available via pypi without a lot of dev libraries for\nit to compile against.  It is usually easier to install separately\nusing your distribution's package installation tools:\n\nUbuntu:\n```bash\nsudo apt install python3-gi\n```\n\nFedora:\n```bash\nsudo dnf install python3-gobject\n```\n\nInstallation\n------------\n\n### Installation\n\n```bash\nsudo pip install soundcraft-utils\n```\n\nIt is not recommended to use `--user` mode and install this\nsystem-wide so that the D-Bus service auto-start can reliably find the\nright python libs.\n\nSet up the D-Bus service so it can access the system bus and be\nauto-started on demand:\n\n```bash\nsudo soundcraft_dbus_service --setup\n```\n\nThe D-Bus service will run as root, providing access to the underlying\nUSB device so the `soundcraft_ctl` user-facing part can be run by an\nunprivileged account.\n\n### Upgrading\n\nSimply update your package from pip, and rerun the 'setup' to ensure\nthe D-Bus service is upgraded to the latest version:\n\n```bash\nsudo pip install -U soundcraft-utils\nsudo soundcraft_dbus_service --setup\n```\n\n\n### Uninstallation\n\nYou can remove the D-Bus and xdg files first by running the following as root:\n\n```bash\nsudo soundcraft_dbus_service --uninstall\n```\n\nThen remove the package with pip:\n\n```bash\nsudo pip uninstall soundcraft-utils\n```\n\n### Prepared Packages\n\n#### Arch Linux, Manjaro\nsoundcraft-utils are available in [AUR](https://aur.archlinux.org/packages/soundcraft-utils/): \n\n```bash\nyay -S soundcraft-utils\n```\n\n#### NixOS\nFor NixOS there exists an experimental\n[Nix expression](https://github.com/pakettiale/soundcraft-utils-nixos).\nFor instructions, check out the repo.\n\nUsage\n-----\n\n### GUI\n\n```bash\nsoundcraft_gui\n```\n\n- Select the desired input using the up and down arrow keys or using the mouse\n- Apply the selection by clicking \"Apply\" (ALT+A)\n- Instead of applying the selection, clicking \"Reset\" (ALT+R) will set the\n  selection back to the current state of the mixer (if known)\n\n![GUI Window](gui-screenshot.png)\n![GUI Window with dropdown open](gui-screenshot-with-dropdown.png)\n\n### CLI\n\nList possible channel routing choices:\n\n```bash\nsoundcraft_ctl [--no-dbus] -l\n```\n\nSet channel routing:\n\n```bash\nsoundcraft_ctl [--no-dbus] -s \u003cnumber\u003e\n```\n\nWhen using the `--no-dbus`, write access to the underling USB device is\nrequired. Normally only root can do this, unless you've added some custom\nudev rules.\n\nTODO\n----\n\n- Polkit restrictions on the D-Bus service\n- Multiple device support\n- Auto-duck feature\n- Firmware upgrade\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flack%2Fsoundcraft-utils","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flack%2Fsoundcraft-utils","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flack%2Fsoundcraft-utils/lists"}