Wednesday, July 22, 2015

Lightroom SDK opens up the development module

sooooo....Adobe opened up the Lightroom SDK to make adjustments in the develop module.

geek link: http://lightroomsolutions.com/sdk/modules/LrDevelopController.html

Lightroom always had a way to write "plugins" in an obscure language called LUA. Now for the first time in LR CC, these plugins can influence the slider settings in the develop module. To be clear: you can now write a native plugin that changes the sliders in the develop module. The friends over at Knobroom will use this it seems. this is cool. However, Paddy has traditionally taken a very different course (since this wasn't available before). What was a strength (it worked) now is a weakness (old tech). I also have no idea how LUA works.

I am sitting here, pondering the following:

1. This new interface doesn't allow everything, but can influence a lot of the sliders in the panels.
2. It's really cool and a sign for more to come
3. Communicating with this would require me to learn a bunch of new things, like how to send HTML requests to Lightroom, receive from Lightroom, and mostly, learn LUA
4. I have no inclination to learn LUA as it is super obscure and I am too old for this. I am not a programmer by trade (nor a professional photographer)
5. Maybe I can make the old tech work, maybe not. It will be a pain
6. Lots of work in my real job, and lots of family stuff
7. New cool products for professionals that use this start popping up (expensive but cool)

Right now, I am concluding that Paddy is not a priority for me. It is a pain in the behind and I am not moving to CC (yet?).

However, what we have is really cool. So, if somebody out there wants to learn how to use LUA, and write an HTML receiver/sender in LUA for this new Plugin module, I am happy to implement that in Paddy - I would in fact be delighted. Short of that, I will play with a few things going forward but not pushing as hard as I had previously. It's just not fun at the moment



Monday, May 4, 2015

Is LR6 a beta?

As a side note, I think LR 6 is really what used to be called a beta. Here is a trace with a Windows debug utility. Clearly, Adobe is worried about startup times. In the past, this kind of stuff was spat out by the beta builds but not by the release

[11192] ==============================>It took 0.063054382801056 (0.064055979251862 overhead) to make maybeMakeScrollableAdjustmentsPanel
[11192]
[11192] L:
[11192] ==============================>It took 0 (0 overhead) to make makeDevelopOpenNegativeDebugPanel
[11192]
[11192] L:
[11192] ==============================>It took 0 (0 overhead) to make makeDevelopRenderingDebugPanel
[11192]
[11192] L:
[11192] ==============================>It took 0.01000964641571 (0.01000964641571 overhead) to make makeBasicPanel
[11192]
[11192] L:
[11192] ==============================>It took 0.0040031671524048 (0.0040031671524048 overhead) to make makeToneCurvePanel
[11192]
[11192] L:
[11192] ==============================>It took 0 (0 overhead) to make makeAdjustmentsPanel
[11192]
[11192] L:
[11192] ==============================>It took 0.0020016431808472 (0.0020016431808472 overhead) to make makeSplitToningPanel
[11192]
[11192] L:
[11192] ==============================>It took 0.0060063600540161 (0.0060063600540161 overhead) to make makeDetailPanel
[11192]
[11192] L:
[11192] ==============================>It took 0.00900799036026 (0.00900799036026 overhead) to make makeLensCorrectionPanel
[11192]
[11192] L:
[11192] ==============================>It took 0.0040032267570496 (0.0040032267570496 overhead) to make makeEffectsPanel
[11192]
[11192] L:
[11192] ==============================>It took 0.0030031800270081 (0.0030031800270081 overhead) to make makeCameraCalibrationPanel
[11192]
[11192] L:
[11192] ==============================>It took 0.00099998712539673 (0.00099998712539673 overhead) to make makeSyncResetButtons

When perfectionism kills timelines

OK, on the computer crash...long story, but fixed it. turns out, my 12 year old had the right idea - the USB 3.0 drivers on my old motherboard couldn't take some newer hardware. Learned a lot, cursed a lot.

On Paddy, weeeellll......there was the simple way. LR6 is not that different from LR5. Had I kept that long startup process, updated all the indices for the Paddy sliders, I would have been fine. Now, I went down a route to make this all much more flexible. It's a bit idiotic, really. But remember, I am in it for the challenge of programming....So, I am in the swamp right now. Deep. Revisiting old routines and wondering "what did I do there". Not good. But fun.

So, here is where we are

  • The good news: This will be a good update. It will work ultimately, and for those who do not use Midi, the startup will be much faster if you are willing to have the panels pop up on first use. (Sending the Midi values still requires opening the panels first)
  • The bad news: This will take time. As in, it will take weeks. I apologize, but you knew what you were getting into 

As a general note - LR 6 is really not that impressive from a photography point. I like the brush in the filter, but that's about it. I have 50k plus personal pics tagged with names (family archive back to the 1930s - hobby), and the face recognition doesn't really help that much. The assignments I have have don't require face recognition.  I like the Auto-angle for my landscape stuff, but I survived without it. Overall, if I didn't have CC, I probably wouldn't buy LR 6.

So, recommendation if your high throughout workflow relies on Paddy: Stay with 5.x until this one is stable. LR 6 ain't worth the curses if you were able to make your income with LR 5.x


Sunday, April 26, 2015

Well, and then there was a crash

Unrelated to LR or Paddy, my development machine crashed. Hard. Also, my BCF 2000 died. I almost cried. That was the machine that got me hooked on MIDI for picture editing in LR 3. So I spent all weekend free time doing Windows stuff and being cranky. And ordering a new hard drive. The BCF replacement....maybe. I have a BCR 2000 that I almost like better now because I have more controllers without switching presets. I miss the "woooosh" of the mechanical sliders, though.

While I couldn't push the issues forward, thanks to online backup, I now have my Paddy development environment set up on my work laptop again. Not as good as three screens, but between airport lounges in London, the U.S. Midwest, and Canada, I might get done something this and next week even on a small laptop screen. Yes, that's where I will be earning the money to pay the bills in the next 14 days.

For those of you who are impatient: I have a really, really (really) well paying day job with lots of travel that is as unrelated to Photography as you can imagine, and then some. I also have three kids, one of which has a general health issue, one has a learning disability, and one has an anxiety issue stemming from the fact that the parents spend probably too much time with the other two. Between photography and them, they come first. Also, other stuff like going out with my wife. Paddy is what I do when I have time and don't  sleep. So, I would guess Paddy CC will be out in 6-8 weeks. But I can promise right here that we will get there. It's just a matter of time. I have the sliders working under certain conditions, but not under others (e.g., grad filter selected with a JPG in 2003 mode......arg!). I just want to change some other things as well while I am at it to make this thing more robust..

Also, I am not impressed with LR CC. The facial recognition is fun, but I don't use mobile (zero need), touch interface. there is no real improvement for what I do other than the brush in the grad filter. that is great, I love it, but.....not a new release to me. More like a small additional feature set. I would have loved content-aware fill......

So, if Paddy is important to your high-throughput workflow, stay with LR 5 until I am done.


Friday, April 24, 2015

Friday development status

This update shows that LR6 really has not that much new. I have most of the sliders running, even the complex ones like HSL that change assignment. The only really new piece is the brush in the gradient filter, but it doesn't ruin Paddy. The work a while ago with LR 5 did pay off. Now I need to test a few reset buttons, and then make sure everything works in the old process modes and for JPG, but good progress

LR CC - Paddy CC

Now that LR CC is finally out, I am starting to update Paddy. Bad news is that this will be a slow process as I am very much in demand in my day job and for the family.

The good news is that the LR control scheme is close to the old one. I did some forensic science during the week, updated the Paddy source codes for the renames of control schemes last night, and I got some basics working - for instance, the main sliders! Yeah!

The bad news is that they didn't change the dynamic control scheme, so the startup for the beta version will still be awkward.

Here is the path forward


  • Get a Beta version out that has the same functionality as we had for LR 5 (with no registration)
  • Set up a new discussion board - the old is broken
  • Gather feedback and improve, and in parallel work on a new startup scheme
  • Set up new Webpage
  • Update User guide

Now, I have LR CC. I am unlikely to buy the stand alone in addition, so I will just hope that Paddy will work for it


Monday, August 4, 2014

User guide up again

The Wiki/User guide is up again. New link: http://paddy.sourceforge.net/wiki/index.php/Paddy_user_guide

Thursday, June 26, 2014

Board is back up but buggy and different link

I was able to recover the boards. They are now at http://paddy.sourceforge.net/forum/index.php

There still seem to be some bugs. I might have to migrate to a different host from sourceforge

Sourceforge help

Sourceforge discontinued both the Forum application and the media Wiki I used for documentation. Apparently, the material is still somewhere in a backup, but accessing it requires all kinds of stuff that I don't understand (e.g., https://sourceforge.net/p/forge/community-docs/Migrating%20MediaWiki%20from%20Hosted%20Apps/). Can anybody help with this?

Thanks

Saturday, November 30, 2013

What's new

Ok, it's cold outside, and despite travel every week across the continent or the Atlantic, we have life back under control. Moved in new house, kids are in a new school and therapy rythm - time to pick it up again with Paddy!


  1. If you are interested in helping with programming, the code is now hosted and you can run from the source. See here: https://sourceforge.net/apps/phpbb/paddy/viewtopic.php?f=4&t=685
  2. I found one of the major hikups in the startup. If Paddy for you is constantly a few sliders of, try (1) start Paddy in suspended mode, (2) Open and close the Crop tool, (3) Start Paddy. I know this is dumb, but it seems to be a workaround until we find a solution
  3. Working on that solution and a few other things.
  4. Due to the long break, I might have to lock some topics and get a good bug reporting going again. I apologize - lots of discussion, but too much to go back, and 80% boild down to the issue under (2)

When LR 5.3 is Prime, I will push out the next update

Thursday, September 26, 2013

I will need to rethink this

LR 5.x continues to be a headache. Just when I thought I solved it all, there are issues when users have subpanels hidden in the develop module. This is not that big a deal - we could just say that Paddy requires all subpanels to be open - but this whole thing just pains me.

I have an idea on how to rework Paddy's core. It will be a parallel project, but once done, Paddy  should be much more flexible and faster to adapt to new LR versions. It's a lot of legwork, not that much programming. Basically, I need to map LR's user interface to be able to say "Paddy slider #100 is the 5th slider in the Panel called "details", then get the windows handle for that slider. This is just a lot of legwork (some less obvious than it appears from the panels, especially for the filters), plus some adjustment for the HSL panel, but I have reached the point where I suspect I should have done that a long time ago. It would have saved me a lot of time now.

Stay tuned, we are nowhere near the end.



Monday, September 23, 2013

On a personal note

I know I am behind on everything.

Just a a way to explain, in the past 3 months

  • We moved from a house to a rental apartment
  • Moved last week from the apartment to a larger house
  • Discovered that the just bought house needs some fixes in the cost range of a medium sized car (This being the U.S., as a German Engineer, don't get me started on rotten wood)
  • Negotiated with contractors
  • Had to work for a living
  • And confirmed than the middle son has a learning disability that needs a lot of attention
So I have to admit, Paddy is the least of my priorities right now. The whole 5.0/5.2 situation is not pleasant for Paddy. I am sorry if you rely on Paddy for your professional work and had to deal with frustrating issues. I will make it work for all of us, just give me some time


Sunday, September 22, 2013

Paddy 5.2 Beta 2

Find it here: https://sourceforge.net/projects/paddy/files/01%20Latest%20Version/

I know there are bugs, but the main things should work. This will also install the fast update channel for Paddy 5.2, so you will be informed of new versions.

This doesn't support LR 5.0 or below any more, be warned

Saturday, August 31, 2013

Paddy 5.2 - where are we

After a crazy summer with no time on Paddy, a quick update. Essentially, three points


  • If I only support LR5 going forward, Paddy Startup is much faster. MUCH faster
  • LR 5.2 is still in in RC, with new sliders etc
  • Between RC and actual release, enough things change in the background that it's a lot of work to support RC and new version

So, as soon as LR 5.2 is out as release, I will update Paddy to have a fast start and work with 5.2, but not 5.0 or LR4.x any more (old version will be available)

I know this is not ideal, but life has a habit of interfering with hobbies

Saturday, June 8, 2013

Paddy 5.0 Beta is available

Down load here: https://sourceforge.net/projects/paddy/files/01%20Latest%20Version/Paddy%205.0%20beta.lrdevplugin.zip/download

This is the module directory.
 - LR 5.0 sliders now work
- the panel setup is restored after Paddy read the information
- The version check is now a separate thread, which should improve startup time on slow internet connections

Wednesday, May 15, 2013

Paddy 5.0 Alpha is available

Paddy 5.0 Alpha is available for download.

Module directory: https://sourceforge.net/projects/paddy/files/01%20Latest%20Version/Paddy5.0%20Alpha%20.lrdevplugin.zip/download

This should work more or less with LR 5.0 (and continue to work with LR 4.4). None of the new sliders was mapped, the goal here was to just make the old stuff work. Please report bugs here: https://sourceforge.net/apps/phpbb/paddy/viewtopic.php?f=5&t=621

Note that this uses the crutch outlined earlier: When LR opens, Paddy will go through all the tabs on the development panel. This might leave the configuration somewhat messed up. We will deal with that later - Basically restoring it to what we found. Right now, I am just trying to make sure that we can do this.

Also, this probably will not work with the RC, just by the nature of what Paddy does. But that's OK, if we can get this to work here, we know that the principle is sound.



Monday, May 13, 2013

LR5 - status

Now that move #1 is over, and work is less crazy, I had some time to think about LR5 again. I still suspect that ultimately, I need a more robust way to address LR changes. However, for the time being, I think I came up with a way to make Paddy work with LR5 reasonably quickly with limited pain for the users.

To make it short, When Paddy starts under LR5, it will effectively open and close all subpanels and tools in the develop module once. This will take (most likely) -5 seconds. But after that's done, it looks like control handles (The addresses I use to move sliders) are stable and Paddy can just plow ahead like before. While not exactly an elegant solution, it should work nicely. Also, I should be able to do this (and the necessary adjustments to the control addresses, which is always a lot of hunting and gathering) relatively quickly so we can all go on and use Paddy happily.


Saturday, April 20, 2013

Paddy update

Thanks to a lot of testing and push from our German users (after Paddy was featured in a local internet show on digital photography), I was able to significantly improve the keyword handling. The experience should be better, foreign characters are handled correctly (as long as they are ANSI - so German, French, Danish works, Russian, Japanese etc doesn't). Also, Paddy now recognizes the keywords that Lightroom tagged as Synonyms as asks the user what to do with them.

This was likely the last big update to Paddy for LR 4, bar any bugfixes, which I will of course always try to do. The next two weeks I will be moving (from house to temporary apartment), then I will need to focus any significant paddy activity on LR 5. I will try to get an updated Nocturn video out, as well as an video on how to use the XBox controller, and if I am bored I iwll try to work on the user guide, but compared to the challenge that LR 5 brings, these ar eboring.


Friday, April 19, 2013

LR 5 - Maybe a way

I think I found a way, but it will be a lot of work, and I have to move over to C# for some stuff.

To make a long story short, I think I found a way to make this work in the new, dynamic LR 5 interface. But it will be lots of work, and it doesn't solver the Midi Out problem - Midi (and IPAD) will be blessfully unaware of any slider positions until the subpanels have been opened at least once. After that, no problem 9I think, cross your fingers), as most handles stay static once created.

The stupid exception as before is of course the HSL panel. LR "destroys" the controls as you switch around there. But we had that issue before.

It will be a lot of work to do this as I am quite literally analyzing every single control in the interface to get the handle associated with a function.

Wednesday, April 17, 2013

More on LR 5 - real issue for Midi

So, I looked further into the issue with the slider controls (not even thinking about other issues this creates, like presets). It looks like they are indeed dynamically added when needed. It used to be that a slider had a number that wouldn't change. Now, it can be anything. Example: You open LR with all subpanels closed. Then you open the Effects panel. The first slider here ("Amount") is now Edit1. Now you open the Basic Panel. Now the temperature slider is Edit1 (for JPG -  Edit3 for raw, but that was always the case). The Effects slider is now Edit21. And it changes again when other panels open.

This is bad for keyboard shortcuts and disaster for Midi.

The keyboard shortcuts used to work when the subpanels were closed. This will not work any more. Since the controls simply do not exist when the panel isn't open, I have to force the panel open when the user moves the slider. That's bad, but doable.

It's a complete disaster for Midi out, which relies on the fact that the value are available at any point in time. I read them, no matter whether the panel is open or not. Now, the values are simply not available if I don't force all the panels open.

The only good news is that the number never seems to go down. So, creative, I already see several workarounds here. But it will not be pretty.

[Edited: para added]: the second piece of good news is that the handles seem to stay with us. In other words, once I have them I can move the sliders. This gives us several options to work with

My hope is that this is a bug/feature in the beta that will go away in the release.

For those who wonder, I am not in touch with anybody at Adobe - I don't have much time for this this week. I might try to contact whatever support they have for Plugins, but since I am using an officially unsupported route, I am not optimistic