At some point in the last 5 months, Adobe appears to have published "Addendum: Externally Controlling LIghtroom", an addendum to the Lightroom Classic SDK Programmers Guide: https://console.adobe.io/downloads/lr
This guide demonstrates how to use the Lightroom SDK to write a plug-in that enables external control of the application (for example, to allow a hardware device like a physical knob to control a slider in the Develop module).
The intended audience for this guide are hardware manufacturers who wish to integrate their controller device with Lightroom, which involves authoring a companion Lightroom plug-in which their device driver sends commands to. More generally, this guide is for developers who want to enable communication between a Lightroom plug-in and another application.
It's got an extended example.
Glad they cared enough to notify the community.
Are there actually new capabilities or APIs in this doc? I downloaded it and read it and it just seems to be a whitepaper describing a possible approach to implementing external hardware control using existing APIs.
I just skimmed it, so I can't say much about the details. I'm reasonably sure no new functions, methods, or LrDevelopController parameter names were introduced between LR 6.9 and LR 7.0.1: SDK API differences between LR 7.0.1 and LR 6.9
It looks like it's documenting existing capabilities with particular reference to those parts of the SDK that might be used to for external control; sockets, develop controller and the like.
About a year ago I put together an external control setup for lightroom using sockets and it's working pretty well, after a lot of messing about figuring out LrSockets. I have a small menubar app running on a mac (mac only, sorry) that maps shortcut key presses to commands which it sends to Lightroom. It also runs a web server that lets you build browser based user interfaces, also for sending commands to Lightroom with an API for building sliders, buttons used to control lightroom.
I have hotkeys for controlling most dev parameters, also for adding tags, adding images to collections & whatnot. I also have browser pages with sliders & buttons that can also display information about selections.
It works very well and I'm now wondering whether to make it availble and how to do so if I do. The main issue I have is that it works by sending Lua code to Lightroom, which is very powerful but not so user friendly, especially if you're not techy or familiar with the LR SDK. It will also need a deal of beta testing and code tidying. Time is an issue. Maybe I'm looking for a partner, or someone who could take it off my hands; I'm not sure but it seems a shame to keep it entirely to myself.
did you continue your project ?
The controller SDK guide is no longer present at the downloads. I think they forgot to add it to the new SDK. In any case, they should have added an example plugin for this.
Here's a copy:
Normally I'd find a link to this in the Internet Archive, but it was never directly published on the Web, only in the downloaded .zip for the SDK.