bitfocus / companion

Bitfocus Companion enables the reasonably priced Elgato Stream Deck and other controllers to be a professional shotbox surface for an increasing amount of different presentation switchers, video playback software and broadcast equipment.
http://bitfocus.io/companion
Other
1.62k stars 504 forks source link

Loupedeck plugin connection #2589

Open asysmala opened 1 year ago

asysmala commented 1 year ago

Is this a feature relevant to companion itself, and not a module?

Is there an existing issue for this?

Describe the feature

Loupedeck marketplace has a fully functional Companion plugin that allows the users to use Loupedeck devices as Companion control surfaces. https://marketplace.loupedeck.com/asset/Companion

The plugin uses the same API as the Streamdeck plugin. So in order to activate the plugin in Companion it requires the user to enable the option "Use Elgato Plugin for StreamDeck access (Requires Companion restart) Streamdeck".

To make it clear for the users, could there be additional option for Loupedeck plugin which would use the same API? e,g, "Use Loupedeck Plugin for access"

The plugin option don't seem to require restart either.

Usecases

When user has a Loupedeck supported control device and activates it via Companion plugin

Julusian commented 1 year ago

This is going to need some care and thought to avoid breaking things for various users.

The current toggle does more than just enabling the api, it also disables companion attempting to open streamdecks itself. On windows, if we dont do this then both bits of software will open the devices successfully, and will 'fight' over them (thinking they have exclusive control of the streamdeck) So this toggle is designed to avoid that situation as much as possible, by ensuring that either companion will use the streamdecks, or the plugin will be usable.

The question then is, how should the loupedeck software into this? Loupedecks have a nicer behaviour of that as they are serial ports, every os gives exclusive access to them as you would expect.

But should it share the same api toggle as streamdecks? I think that will be confusing. Or should a second instance of the plugin be run on a different port for the loupedeck? That could break setups for existing users unless the plugin handles this carefully

Something else to consider, is that the plugin you are referencing to is not made by the companion project, instead is made by a user. I dont know if that should have any impact on what we do here, but there is a question of how much to 'promote' something that we will get support questions for but have no control over

nocnestudio commented 11 months ago

Issue: When companion is native. Loupedeck (Razer) Don't view display next to dial...

oddbear commented 2 months ago

Hi. Is there any updates on this issue. Would there be possible for an Loupedeck API, similar to the StreamDeck one? If not, is it possible to add adjustments (knobs) for a plugin, either by the SD API or by a generic TCP, OSC, HTTP or similar API?