OM-1 Support in Darktable

@MetalMick99 Sorry for not making it clear. My instructions are not intended to be complete for someone wanting to build darktable for the first time or so. They assume darktable in general already builds successfully on your system. The only difference from the standard darktable build would be to use my fork instead of GitHub - sarunasb/darktable: darktable is an open source photography workflow application and raw developer. Changes to support the new brand OM System and the new OM-1 camera are both in darktable’s main tree (noise profiles and WB presets) and the rawspeed submodule (base support).

1 Like

@Juha_Lintula I’m not a git guru either. You are free to git clone or fork my fork/branch and incorporate them in your repositories in any way you wish.

If you just want OM-1 support, just take my branch and compile it as you would do for darktable as usual.

1 Like

Thanks for letting me know. Much appreciated.

In this case we need to add not only a new camera model, but also a new
brand, OM System. So it takes more changes in both darktable and its
rawspeed module.

For noise and white balance, data needs to be added to corresponding
JSON files as well as the new brand to corresponding JSON schema files.
This is in darktable.

For base camera support, which is in rawspeed, adding new brand involves
changes in 5 source files. Then individual cameras can be added by
adding sensor data to cameras.xml only.

My understanding anyway.

2 Likes

@sugarbravo Thanks for the info. I see that the URL for the rawspeed submodule has been changed to point to your fork, so I suppose this will fetch the right branch with OM-1 support. With this info I think I can easily adapt any future updates of darktable.

Do you get any loss of information by converting ORF files to DNG files?

Happy new year Sugarbravo

I have tried compiling this OM version but had lots of trouble with dependencies (I am using ubuntu 22.04 64bit gnome 42.5 windowing system x11). I am not an experienced compiler so may have missed something essential.

I followed the info given on page GitHub - darktable-org/darktable: darktable is an open source photography workflow application and raw developer

but after going through

sudo apt-get update
sudo apt install --fix-broken -y
sudo apt autoremove

The following packages still have unmet dependencies:
liblcms2-dev : Depends: liblcms2-2 (= 2.12~rc1-2build2) but 2.13.1-0xiota0~ubuntu20.04 is to be installed

Is there a way to get around this ? I have tried using ART but can’t seem to get files as good as the SOC camera jpg’s.

Any help would be much appreciated, thanks :):slight_smile:

I came across a reference that renaming the files to CR3 causes them to be opened by libraw. Short term you could open DT with a secondary database only for these files and set DT in this case not to write xmp files and then DT will use Libraw and open them…

Its quirky but if you need something to get it to work asap you could try it and then just edit that database later if you need to rename them or just dont worry…people using DNG have files that are renamed after all…

1 Like

I have just tried this and it works!!! Thanks so very much :slight_smile: :slight_smile:

And have a happy new year ahead * * *

Hi Margaret,

I’ve looked at the images that were converted and checked them against the DNG files, and they appear to be unaltered.

If you’re enquiring about Exif data then at lot gets pulled across with the conversion. That said, when I commence the conversion process, there is a warning that some DNG info will be absent, and that a plug-in needs to be installed to include this in the conversion. Digikam is available as a downloadable file that, if you mark as executable in its properties, will run Digikam without the need to install, and you can see the warning message in one of the windows. I have tried - but admittedly not very hard - to install the plug-in but not been successful so far.

1 Like

Thanks so very much :slight_smile: :slight_smile: I will try this as well !!

Have a happy year ahead bouncing through the year of the bunny :heart_eyes: :rabbit: :heart_eyes:

1 Like

@Margaret_Wong There might be an issue with your configured repositories. I can’t guide you through fixing that, but you may start at checking where those liblcms2-dev versions are coming from

apt policy liblcms2-dev

and then perhaps adjusting repositories, if possible at all.

1 Like

Thanks very much for your reply :slight_smile: :slight_smile:

my result from

apt policy liblcms2-dev

liblcms2-dev:
Installed: (none)
Candidate: 2.12~rc1-2build2
Version table:
2.12~rc1-2build2 500
500 AARNet Mirror jammy/main amd64 Packages

Is there another repository I could/should try ?

Any help appreciated :slight_smile: :slight_smile:

apt policy liblcms2-2, as you may have some ‘xiota’ source configured for some software package, which provides conflicting version of liblcms.

This really has nothing to do with OM System support. You may just want to make sure that standard darktable can be built on your system, then 4.2-om branch will compile as well.

Thanks very much for this information:) You are correct I do appear have some ‘xiota’ software installed which seems to be because I upgraded from ubuntu 20.04 to 22.04 rather than doing a totally fresh install.

grep -i xio /var/lib/dpkg/status
Version: 0.7.0-20220426.105500-0xiota0~ubuntu22.04
Version: 2.13.1-0xiota0~ubuntu20.04
Version: 2.13.1-0xiota0~ubuntu20.04

Trying to remove `liblcms2’ was a major disaster but at least I now have a graphical system back!!

I will wait a while until I have some spare time and a completely backed up system before retrying

@sugarbravo thanks for these directions, I initially had some build dependency issues, but I got your branch to build successfully and run (the version is 4.2om1 in the top left by the darktable logo). However, when try to open a raw OM-5 file in darkroom I get the following error:

Here’s the log from the terminal:

$ /opt/darktable/bin/darktable
RawSpeed:Unable to find camera in database: 'OM Digital Solutions' 'OM-5' ''
Please consider providing samples on <https://raw.pixls.us/>, thanks!
[rawspeed] (P1070052.ORF) bool rawspeed::RawDecoder::checkCameraSupported(const rawspeed::CameraMetaData*, const string&, const string&, const string&), line 170: Camera 'OM Digital Solutions' 'OM-5', mode '' not supported, and not allowed to guess. Sorry.
[temperature] failed to read camera white balance information from `P1070052.ORF'!
[temperature] `OM Digital Solutions OM-5' color matrix not found for image
[temperature] failed to read camera white balance information from `P1070052.ORF'!
[temperature] failed to read camera white balance information from `P1070052.ORF'!
[lens correction] camera/lens not found
[colorin] could not find requested profile `standard color matrix'!

For context, this is on Ubuntu 22.04 and I also installed exiv2 from source from the 0.27-maintenance branch per @kmilos’s comment above.

Any ideas on how to troubleshoot this?

rename them *.cr3…they will open…its a hack but it makes DT use Libraw and it should open your files… if you can’t get all your builds to work you could at least do this for a work around…

Check whether there is OM-5 present in src/external/rawspeed/data/cameras.xml.

Also, as mentioned, only base support for OM-5 was added, no WB presets or noise profiles. Since OM-5 seems to be essentially an E-M5III clone, at least sensor-wise, sensor noise characteristics could be the same. Probably WB presets too, if firmware wasn’t tweaked by OMDS for that. Thankfully, in darktable 4.2 both noise profiles and WB presets can be added as JSON data without the to recompile. So those data structures can just be copied from E-M5III for OM-5. Ideally however they should be derived from RAW files from OM-5.

An easier approach might be to let src/common/imageio_libraw.c to process not only .cr3, but any supported RAWs. :slight_smile:

1 Like

There was no OM-5 entry in src/external/rawspeed/data/cameras.xml. I tried adding the entry from this OM-5 PR to cameras.xml, but that didn’t fix the error. I’m guessing I might need to rebuild darktable for it to take effect?

Also, is there a way to copy the EM5-III or EM1-III noise profiles and WB presets to the OM-5? if I remember correctly, the EM5-III, EM1-III, and OM-5 all use the same sensor, but the OM-5 and EM1-III use a different (more powerful) image processor than the EM5-III. If that’s the case then using the EM1-III data might be the way to go.

EDIT: Not sure where to confirm the sensor, but from B&H specs I can confirm that the EM5-III uses the Truepic VIII image processor while EM1-III and OM-5 use Truepic IX.

@priort this new om-1 build is not letting me import any CR3 files. Not sure why. However, I did use this hack with my stock darktable 4.2 install and it let me open the the CR3 files. The results can be a bit all over the place, though (image previews don’t show up in lighttable until you open a file in darkroom, etc.).

I rebuilt darktable with the added OM-5 entry mentioned above and I can now open the raw .ORF files :tada:

Some of the images appear completely white when I open them and I have to reset the raw black/white point module to fix that. I’m guessing that has to do with the lack of WB presets.