Episode 160: Photivo

Download the Video! (22:16 42.3 MB)
Download the mobile version (22:16 21.6 MB)
Download the companion file! (13.0 MB)
Download the torrent file!

Let’s quote the website:

About Photivo

Photivo is a free and open source (GPL3) photo processor. It handles your RAW files as well as your bitmap files in a non-destructive 16 bit processing pipe with gimp workflow integration and batch mode.

Photivo tries to provide the best algorithms available; even if this implies some redundancy. So, to my knowledge, it offers the most flexible and powerful denoise, sharpen and local contrast (fake HDR) algorithms in the open source world. (If not, let’s port them ;-) ) Although, to get the desired results, there may be a quite steep learning curve ;-) .

Photivo is just a developer, no manager and no “Gimp”. It is intended to be used in a workflow together with digiKam/F-Spot/Shotwell and Gimp. It needs a quite strong computer and is not aimed at beginners.

Processed with Photivo

Basically it’s an image processing assembly line. You set the parameters, throw your RAW file in on top, wait for a moment and catch your image when it falls out of the machine.

Today I give it a try and rescue an image of a kite with it. It’s an impressive tool with a quite unique but understandable user interface. I’ll explore this further, perhaps it will enter my workflow.

The companion file contains both used RAW files and all the setting files created by Photivo.

Sorry, there is no TOC up to now.

Kite

JPEG out of camera

Creative Commons License
Meet the GIMP Video Podcast by Rolf Steinort and Philippe Demartin is licensed under a Creative Commons Attribution-Share Alike 3.0 Germany License.
Permissions beyond the scope of this license may be available at http://meetthegimp.org.

28 thoughts on “Episode 160: Photivo

  1. Getting this thing to build is a nightmare. The instructions in the photivo wiki are no help. There are cmake rules, but they’re outdated and broken (seems like they were not touched for quite a long time). Building is intended to be done by the old qmake which is not good in finding dependencies. And any changes you do to the cmake or .pro files will be lost on the next update…
    I’ve now spent almost four full hours trying to get it built with no success :(

  2. This looks very interesting, thanks for flagging it! I’ve yet to play with it extensively, but I think UFRaw (as useful as it is) will soon be taking a back seat.

    There is a PPA available for Ubuntu users which should automagically keep a fairly up to date version on your machine, no compiling necessary.

    https://launchpad.net/~dhor/+archive/myway

  3. @Rolf
    I got it built finally by editing the makefiles directly. It looks as if none of the developer ever built Photivo out of source and with a separate prefix, because the project rules are wrong. Cflags and ldlflags from pkgconfig are not carried over (seems like a case of copy&paste gone wrong as in the win and mac sections they are there), so e.g. lcms2 includes are not found if it resides outside /usr(/local). This is a problem with qmake, if something is found in /usr it won’t look for it in the install prefix. I also removed all ccache uses, one dependency less.
    All together the project files are a mess, seems like they were generated by some tool. It just doesn’t make sense. And I don’t see a point in fixing them, I’d rather try my luck in getting the cmake files working.

    Oh, btw: That I got it built doesn’t mean it’s running. All I get is “lcms: Error #12288; cmsWhitePointFromTemp: invalid temp” I suppose there’s still a hard-coded lcms reference somewhere I missed…

  4. Hi Rolf,

    thanks for the video. It’s a nice introduction.
    It seems you missed to try the right mouse button at many places ;-) There are several more context menus and it resets the sliders and combos. On curves you can add or delete points or change the curve mode… and some things more… I don’t know if you just did it for the video but it’s usually more handy to have the left size smaller, so you can see several curves at once.
    I’m really looking forward to your next steps with it.

    The built system is not perfect, but it works on several different distributions and I think my time is better invested in spot repair and new features ;-) However, I would be happy if someone is willing to work on the cmake system to get it working well.

    greets mike

  5. @mike
    Well, I’ll take a look into it – but no promises. Atm it’s a mess.
    I’ve never really used qmake projects as KDE uses cmake, so I’m no expert there. But it seems to me prefix is not taken into account for include path and cflags/ldflags.

  6. Well,
    I never worked on the cmake files, and the qmake ones just work but no dependency tracking or so. Just installing every needed package in before and using qmake works well.

    Cross platform cmake files would be very welcome, so if you want to give it a try, we would be happy.

    greets mike

  7. @nachbarnebenan
    If I was able to build it on OS X should say something. Also no issues with Debian. The instructions on photivo site are pretty clear, get the dependencies, run qmake and make, not exactly a nightmare.

  8. i have been running it very happily for the last six months since I switched out away Mac OS X. Prior to this I used Aperture for several years, and find Photivo ever bit as powerful and useful for RAW editing.

    As a Linux novice I was able to set it up and run it in Kubuntu 10.10 and then 11.04 with no difficulties.

    I think Mike has done an amazing job getting this software up and running. It would be great to see others get involved. This software rocks.

  9. @andu
    The project files contain sections for mac and win but the unix ones are incomplete. As I wrote before, to me this seems like a case of copy&paste gone wrong.
    Also, just pulling in or installing all dependencies as system-wide packages is no option. I keep my graphics-related stuff in /opt/mtg, an nfs mount, and use it from different systems. So, installing packages on one system won’t help the others, especially as lcms2 and liblqr are built from source.
    I’ve sent Mike corrected build files, though.

  10. Is there a reason for Photivo linking to BOTH ‘lcms’ and ‘lcms2′? And if so, shouldn’t ‘lcms’ also be listed as a dependency on the WIKI page (http://photivo.org/photivo/download_and_setup/linux)?

    Other than that, I had no trouble building Photivo on Slackware. Even the lcms dependency shouldn’t have been a problem but I had removed it thinking lcms2 would serve as a substitute (GIMP seemed to accept lcms2 without re-linking, though I didn’t try other programs).

  11. Wow!
    @Mike: really ingenious software!
    @Rolf: very instructive show!
    @Liam: very helpful link (successful installation via PPA without any effort within seconds on my Kubuntu Natty 64)!

    Thank you all you guys! :-)

  12. @Bert: still interested in learning some coding ;-)

    @saulgode: It should only be lcms2, where did you find the reference to lcms? That needs to be changed…

    Since it’s hard to track this comments thread, please consider our flickr forum for Photivo questions or so.

    greets mike

  13. mike, I appreciate the difficulty of fielding questions outside your preferred channels, however, I am not willing to sign up for flickr at this time.

    The ‘lcms’ dependency appears to be brought in the by the following line in ‘photivoProject//photivoProject.pro’:

    LIBS += $$system(GraphicsMagick++-config –libs)

    mike, I appreciate the difficulty of fielding questions outside your preferred channels, however, I am not willing to sign up for flickr at this time so I will share my assessment here.

    GraphicsMagick uses lcms if available and its -config tool will report that dependency to your ‘photivoProject//photivoProject.pro’ (and this gets incorporated into the Makefile as an ‘-llcms’). Availability of lcms2 is ignored by GraphicsMagick.

    My problem resulted from my having built GraphicsMagick while lcms was installed, then removing lcms and installing lcms2 before compiling Photivo. If instead I’d built GM after replacing lcms then Photivo’s Makefile would not have included the lcms dependency (though GraphicsMagick would not have color management).

    The proper thing would seem to be having both lcms and lcms2 installed (providing color management for both GraphicsMagick and Photivo). I have not investigated whether lcms2 is specifically designed to co-exist with lcms, though the naming suggests that it is (and I have not yet encountered a problem).

  14. mike, I appreciate the difficulty of fielding questions outside your preferred channels, however, I am not willing to sign up for flickr at this time so I will share my assessment here.

    GraphicsMagick uses lcms if available and its -config tool will report that dependency to your ‘photivoProject//photivoProject.pro’ (and this gets incorporated into the Makefile as an ‘-llcms’). Availability of lcms2 is ignored by GraphicsMagick.

    My problem resulted from my having built GraphicsMagick while lcms was installed, then removing lcms and installing lcms2 before compiling Photivo. If instead I’d built GM after replacing lcms then Photivo’s Makefile would not have included the lcms dependency (though GraphicsMagick would not have color management).

    The proper thing would seem to be having both lcms and lcms2 installed (providing color management for both GraphicsMagick and Photivo). I have not investigated whether lcms2 is specifically designed to co-exist with lcms, though the naming suggests that it is (and I have not yet encountered a problem).

  15. I got it installed in Kubuntu 11.04 using Ubuntu PPA. Everything works fine except it takes forever to load an image. Even longer than Lightroom 3, on my system that has 2GB RAM. Other than that, great job, and will use it from now on. Lot of customizations.

  16. @Bob
    Photivo needs quite a considerable amount of memory, when there’s not enough the system will start swapping and get very slow therefore.

  17. I plan on upgrading my PC in the next few weeks. I will have 8GB RAM and a Pentium i5 2600. So I should be fine.

  18. Hey thanks Rolf

    Great find. I’m very impressed with Photivo. Previously I had been using Darktable (another very nice app).
    Initially I spent 3 hours trying to get Photivo to compile. All went well till it failed almost at the very end with some references to gobject or something. Anyways I finally gave up and installed thru the Ubuntu ppa (debian I’m using).

    There is a lot to learn here, I’m particularly happy about the LAB processes that are available.

    Thanks again

    regards Pete

  19. @Pete
    Yes, compiling is still somewhat of an issue. I’ve put updated building instructions into the MTG wiki. Also, I’m in the process of getting the cmake files into shape, but I’m still missing some pieces there.

  20. Here’s a TOC:

    http://meetthegimp.org/episode-160-photivo/
    Episode 160: Photivo
    00:24 Welcome
    02:00 Photivo
    02:40 Introduction to the user interface
    04:45 Load an image
    06:55 Geometry adjustment
    08:09 RGB adjustments
    08:25 LAB colour adjustments
    10:18 More LAB adjustments
    11:04 LAB Eye Candy
    12:09 Other eye candy
    12:25 Output
    15:00 More about the user interface
    17:18 Photivo web-site
    17:52 Summary and differences to GIMP
    22:16 The End

  21. @uwe
    Ich benutze auch eine 11.4 Suse 64bit. Wie wurde Photivo installiert? Pakete oder selbstgebaut? Zu den Paketen kann ich nichts sagen, habe ich nie benutzt. Die Selbstbauanleitung im Wiki sollte jedenfalls klappen.

    Und was genau funktioniert denn nicht – wird es nicht compiliert, stürzt es ab, irgendwelche Fehlermeldungen?

  22. @Uwe
    Das Repo ist ein bischen merkwürdig aufgeteilt, einige Libs sind doppelt unter verschiedenen Namen. Lensfun gibt es als lensfun und liblensfun0, ich würde aber sagen, beide sind schlicht zu alt für Photivo. UFRaw und Darktable reichen eine ältere Version.
    Versuche es mal mit der Anleitung zum Selberbauen aus dem Wiki. Das liblcms2-devel und GraphicsMagick aus dem Repo sowie libqt4-devel von Suse sollten reichen, nur liblqr musst Du noch selberbauen. Alles andere ist bei Suse dabei.

  23. Pingback: Photivo, otro revelador RAW

Anything to add from your side of the computer?