GoXLR-on-Linux / goxlr-utility

An unofficial GoXLR App replacement for Linux, Windows and MacOS
MIT License
654 stars 36 forks source link

GoXLR Initialiser #12

Closed FrostyCoolSlug closed 2 years ago

FrostyCoolSlug commented 2 years ago

Simple module, designed to be as dependency and code light as possible, simply to execute the commands needed to initialise a GoXLR device on boot, enough so the daemon can communicate with it.

eNBeWe commented 2 years ago

If I understand it correctly, this only runs at boot time, right? So if I plug in a GoXLR during runtime it wouldn't be picked up and I need to run this again or reboot, right?

FrostyCoolSlug commented 2 years ago

If I understand it correctly, this only runs at boot time, right? So if I plug in a GoXLR during runtime it wouldn't be picked up and I need to run this again or reboot, right?

Correct, currently hotplugging the GoXLR isn't supported under Linux for quite a few reasons, mostly related to the relatively kludgy nature of getting the device working properly to start with. This tool needs to detach the GoXLR from ALSA temporarily to be able to issue the relevant USB commands to pull the device into a 'ready' state, then resets it to allow ALSA to correctly reload it back to an audio device. If this is done after the jack and pulse configurations are done, audio will be lost.

As time goes on, and everything becomes a little more refined, it may be possible to track hotplugs and configure the devices on-the-fly as they're plugged in (this would actually be substantially easier if the current kernel issue didn't exist), but that's something that's likely going to be looked into down the road, for now, this is the best we can do.

Cheers.