darktable-org / darktable

darktable is an open source photography workflow application and raw developer
https://www.darktable.org
GNU General Public License v3.0
9.76k stars 1.14k forks source link

TangentWave Panel Support for Darktable #9882

Closed nemotyro closed 7 months ago

nemotyro commented 3 years ago

Is your feature request related to a problem? Please describe.

Colour Correction or Grading photographs is a lot more fun with Control Panels. I use the affordable Tangent Wave panel; to use this panel I’d have to map using keyboard shortcuts or mouse actions. The third way is to make use of OSC. I’ve contacted TangentWave, they haven’t heard of Darktable but will look into it. Apparently I’m the first to enquire with them. All they need is help from this community to allocate their resources. The copy of their response is copied, below: **Describe the solution you'd like**

“Hi,

Thank you for your enquiry.

We’ve not come across Darktable, so we’d have to take a look. Right now you’re the first person to mention it, so I’m not sure we’d be able to commit resources to doing anything.

In general, if the software doesn’t have an OSC interface that we can access, the software manufacturer would have to change their code so that it logs into our Tangent Hub. They then need to pass all the details of the controls they have available in an XML file. This would then allow users and us to create a control map for it.

If it supports OSC then this is something you can do for yourself.

Kind regards,

Support“

I’m not a programmer, I only wish to add my small contribution. Darktable is the first photo-editing software I’ve come across that supports the waveform scopes, perhaps not strictly necessary; but they sure do help me understand what’s going-on. Control Panel support will bring a little more fun.

Alternatives

Additional context

johnny-bit commented 3 years ago

Coming in darktable 3.8 is reworked input system called InputNG by @dterrahe that is absurdly powerful input handling system for key shortcuts, including midi devices, gamepads, normal keyboards etc. If "tangentwave" panel has midi interface it'll work out of the box.

If you're on linux (or mac) you can try build current master which has InputNG included. For windows additionally you can try "windows insider" program here https://discuss.pixls.us/t/darktable-insider-program-8-22/26566?u=johnny-bit

dterrahe commented 3 years ago

Looking at the tangentwave website it is hard to figure out if it can send midi. This may not be unlike other related products we've seen, like loupedeck(+ or original) or monogram, that have their own configuration system but also, in theory at least, can send midi.

With input ng, you can receive simple signals from external devices and configure a meaning for them inside darktable. Tangent Wave instead wants to work with a simple model of the actions dt can perform and do the configuration on their side. Approaching the same thing from different sides.

OSC looks, at least in intent, similar to MIDI, so it may be possible/easy to write an input module for it that can feed input ng. However, without having a device that sends OSC, it will be hard to develop/test. Or to have the motivation to do it. input ng may also not be able to use all the possibilities of OSC/Tangentwave.

Alternatively, you may be able to find a program that does on the fly OSC->Midi translation. A google search shows some efforts to produce these, but none that are open source/cross platform/complete.

nemotyro commented 3 years ago

Hi Jonny-bit & steerage,

Many thanks for your responses.

Photographers have been jealous of videographer’s access to Waveform Scopes & Control Panels for colour correction & grading; they’re eyeballing the screen picture and Scopes while there hands & fingers operate trackerballs, dials, buttons & knobs. Currently, Control Panels from tangentwave.org.uk have out-of-box firmware support for 50-55+ photo/film-editing programmes like CaptureOne or Davinci Resolve. Darktable could be the 56th!

May I suggest Darktable try entering a collaboration dialogue with TangentWave. TangentWave have expressed an interest to look into Darktable. It could be a win-win situation for Darktable users: photographers get to use what videographers have enjoyed for years, we’re half way there, we now have the full compliment of scopes; we just need a plug-n-play control panel. All I did was go to their website, clicked on Support, raised a support ticket, sent an email & they expressed an interest. They have the resources to help.

nemotyro commented 3 years ago

Oops! Sorry dterrahe , this app auto corrected your handle.

dterrahe commented 3 years ago

TangentWave have expressed an interest to look into Darktable. They have the resources to help.

I'm not sure where you read that in their reply. I see this:

Right now you’re the first person to mention it, so I’m not sure we’d be able to commit resources to doing anything.

Without them, or somebody else, providing a device (on loan) there's not much I could do. But anybody who has one could get involved with the programming, or at least investigation and testing, part. Input NG is very much intended and designed to allow others to extend it for more and different types of devices, so TangentWave support would be very welcome. But in open source, the work is done by those who have an interest...

Alternatively, if you can point me at a really cheap device that sends OSC and that can be used as a test case for simple support, it may be possible to kindle my interest a little more.

nemotyro commented 3 years ago

Hi dterrahe,

Maybe I stretched the following: “Hi,

Thank you for your enquiry.

We’ve not come across Darktable, so we’d have to take a look.“

… to mean taking an interest in Darktable, rather than literally taking a look. My apologies. In any case they now know of Darktable. As to:

“Right now you’re the first person to mention it, so I’m not sure we’d be able to commit resources to doing anything”

I took it to mean if more people had enquired they might see the project as worthwhile. Again, my apologies.

Further, I was assuming that “software manufacturer” in the following meant the “programmers of Darktable”.

“ In general, if the software doesn’t have an OSC interface that we can access, the software manufacturer would have to change their code so that it logs into our Tangent Hub. They then need to pass all the details of the controls they have available in an XML file. This would then allow users and us to create a control map for it.”

… I downloaded Darktable 3.6, I thought that was called software. Apologies.

I’ll have to revise my understanding of a definition of an expression of interest.

None-the-less, If I were given assurance that a senior Darktable rep was genuinely interested to work on the problem I would donate mine. I did say I wanted to do my bit.

dterrahe commented 3 years ago

Hey! No need to apologise so profusely! I didn't mean my reply to sound so negative, sorry. I understand you are hopeful; I just don't expect too much from them, because there's probably not going to be too much money in it.

If you are offering free machines, I'm sure somebody is willing to figure this out and implement something. Be clear what you expect though; you'd want it to work flawlessly (which might not be possible).

If nothing happens, when I have more time I might be interested myself...

johnny-bit commented 3 years ago

I browsed a bit and it looks like for it darktable's InputNG would have to expose OpenSoundControl interface according to spec published on http://opensoundcontrol.org/ and that would be a start... Looks like OSC was designed to be "more better midi" but as is usual things ran into xkcd 927.

A brief read told me that it looks like darktable should be OSC Receiver using their terminology... But the website & material are hard to easily follow :confused: I don't even know if there's ready-made osc library that's available in linux/msys/homebrew repos that we could use or would we need to develop socket reader (granted that it looks like it should be either TCP or UDP stuff :confused:) Browsing through https://github.com/topics/opensoundcontrol would take a lot more time ;)

What's cool however is that I see that there's free app from TangentWave that one can install on tablet and have test interface for free... but needs either iPad or 7" android tablet. Browsing around seems like OSC stuff is quite popular, especially in higher-end panels and some manufacturers do provide apps that simulate some of functionalities and communicate via osc.

Overall - this looks complex ;)

dterrahe commented 3 years ago

That was my takeaway as well. I suspect, like midi, OSC can be used in complex or simple mode. If the controller knows a lot about your setup, it can do a lot of configuration and send smart, tailored, commands. If not, it hopefully can just send simple "this knob was turned" messages and let dt do what it will. For example the BCR2000 has a whole configuration language built in. But I'm just asking it to send the message "knob one turned" when knob one is turned, rather than having it reconfigure all my keyboards, drumkits and stage lighting. And then when Input NG sees that knob one is turned, it does whatever you have configured it to do.

nemotyro commented 3 years ago

Hi guys,

I’m assuming there are many more professional & amateur photographers colour correcting & grading photos than there are videographers grading film for the screen. TangentWave’s reward would be getting units out the door.

The email I sent them was labelled, by them: “Tangent Support email - ID 2051”. There’s one way to find out if TangentWave would be interested in helping Darktable and that’s for someone with authority from Darktable to email TangentWave; it wouldn’t have taken much for them to “take a look.” ID 2051 is there reference.

To have something work flawlessly first off is a big ask, that’s why there are bug fixes and updated versions.

I very much appreciate that capable people had read my original post. If it helps, my machine is still available.

All the best.

dterrahe commented 3 years ago

someone with authority from Darktable

LOL

I'm not sure this is how it works around here. You mean authority to spend money? Authority to make other people do work?

Or just authority from knowing what they are talking about? In that case, in the area of input handling, I may be that person. But at the moment I'm finishing up the last bits of Input NG (see #8078 and #9487) and after that I'm moving house and after that I can't promise anything about my motivation levels in this area...

But anybody else can have a look at midi.c and OSC documentation and see if it is useful to have a conversation with TangentWave.

Out of curiosity; have you looked at the features Input NG offers (it currently supports midi devices and gamepads, besides keyboard) and assessed whether you think this could cover your wishes when linked to OSC? Because implementing the approach TangentWave proposes (writing a bunch of code specifically to tie into their system) seems unlikely to happen. Unless somebody pays somebody to do the work.

nemotyro commented 3 years ago

No worries, mate. Mia culpa. It looks like a control panel wont plug-n-play with Darktable any time soon, but I’d just like to say you guys have done a fine job implementing the waveform scopes. All the best in moving house.

On 29 Aug 2021, at 17:10, dterrahe @.***> wrote:

 someone with authority from Darktable

LOL

I'm not sure this is how it works around here. You mean authority to spend money? Authority to make other people do work?

Or just authority from knowing what they are talking about? In that case, in the area of input handling, I may be that person. But at the moment I'm finishing up the last bits of Input NG (see #8078 and #9487) and after that I'm moving house and after that I can't promise anything about my motivation levels in this area...

But anybody else can have a look at midi.c and OSC documentation and see if it is useful to have a conversation with TangentWave.

Out of curiosity; have you looked at the features Input NG offers (it currently supports midi devices and gamepads, besides keyboard) and assessed whether you think this could cover your wishes when linked to OSC? Because implementing the approach TangentWave proposes (writing a bunch of code specifically to tie into their system) seems unlikely to happen. Unless somebody pays somebody to do the work.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

github-actions[bot] commented 3 years ago

This issue did not get any activity in the past 60 days and will be closed in 365 days if no update occurs. Please check if the master branch has fixed it and report again or close the issue.

dterrahe commented 1 year ago

Maybe this would be useful https://github.com/Andymann/ofxOscMidi ? Not having an actual device I cannot play around with it.

github-actions[bot] commented 1 year ago

This issue has been marked as stale due to inactivity for the last 60 days. It will be automatically closed in 300 days if no update occurs. Please check if the master branch has fixed it and report again or close the issue.

github-actions[bot] commented 7 months ago

This issue was closed because it has been inactive for 300 days since being marked as stale. Please check if the newest release or nightly build has it fixed. Please, create a new issue if the issue is not fixed.