Dual ISO - massive dynamic range improvement (dual_iso.mo)

Started by a1ex, July 16, 2013, 06:33:50 PM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.


tools used
dng frames and an mlv

I completely forgot mlvapp is capable of this, thanks for reminding

Uploaded on "dng frames and mlv"
0_corrected_I_raw_corr_disabled.dng is that i made outside of mlvapp, the others are from the original, exported with different raw correction settings.
Mine does not look good as dng somehow, but i attached an mlv that contains the first frame of the round trip file. There is looks okay.

I have MLV App v1.11
Also i zipped the tools as "tools used"
EOS 100D, Xiaomi A1


Trying to wrap my head around this. So, the first dng is the one that converts successful?

Could you tell me or upload a dng that you know for sure you are able to convert that looks ok? I just tried cr2hdr from 2016 but still getting stripes.I just need one of your dng files that you are able to convert, nothing else.


It works...
I've no words kayman1021.
With your apps' version my dual-ISOs get solved. I don't even need raw2mlv because I uploaded the DNGs directly into Davinci... and it finally works.

Now, just to be fussy, passing throuh cr2hdr is a "pain-in-the-a@@" workflow: very-very-very time-consuming.

@Danne: is there any future chance to see this sort of "legacy" dual-ISO-conversion option in Switch?


If I know what version and from what branch I could look into what's going on. If it's even cr2hdr but probably is.
Shouldn't be too hard for a windows user to obtain this info.

Thanks for the file @kayman1021. It doesn´t wothout lines convert on my mac so it depends on your version of cr2hdr. If you could find from what branch and version I could look into it.


I'm not really a Windows user and I'm not a coder, anyway the working cr2hdr.exe has been created 4 Dec 2017, and HERE i found Commit 06fae84 dated 4 Dec 2017... Is it anything useful?


I am at work now, if arrive at home i'll check (5 hours from now)
It's probably the version on ML Downloads/Utilities
EOS 100D, Xiaomi A1


No specified branch but should be included in the binary info I think.


Quote from: kayman1021 on June 10, 2020, 10:10:03 AMIt's probably the version on ML Downloads/Utilities
Apparently yes: same creation date. Perhaps silly question: does libraw.dll matter somehow?

Quote from: Danne on June 10, 2020, 10:16:52 AMNo specified branch but should be included in the binary info I think.
Can you tell me how can I extract this info for you? (In OSX I opened the .exe with Keka, and now I have some docs in a folder. I opened them with an Hex editor and the only one not-in-alien-language is a doc named "19" in which there is written «GNU C 4.9.0 20130523 (experimental) -m32 -mtune=generic -march=pentiumpro -g -O2 -std=gnu99». Is it anything useful? I guess not...)


Ok, compiled from cr2hdr branch which seems to be the one used successfully here:

I managed to convert the uploaded dng correctly with a mac binary so obviously it should work.

I updated Switch, please test:

Also a mac binary here:

EDIT: Tested Switch and problem still persists so @kayman1021 round trip to rebake the dng fixed it. We need to examine what data is missing originally. Phew, complicated stuff.

EDIT: Tested again and the mlv_dump not coming from bouncyball works straight out of the box with the updated version of cr2hdr. In Switch select (m)  mlv_dump(MLV)

So, the problem seems related to mlv_dump version. cr2hdr doesn´t like the dng from the updated mlv_dump code.


@Danne: do you see the difference between the versions? Is it the same algorithm as in MLVApp? Worth to change it?
5D3.113 | EOSM.202


Yes. Mlv App has those issues. Will probably fix those flickery bugs and maybe finally dual iso will become reliable.


What works now in Switch for dual iso for both mlv_dump version are:
    (05) do not fix cold pixels  added!
    (07) disable vertical stripes in highlights  added!

Disable cold pixel and vertical stripes. Now cr2hdr chews the files normally again...


You almost did it, Danne. Great job anyway!
I tested 7 most problematic dual-ISO mlvs, and new Switch does work for 6, and fails only for 1.
That one gives a weird result: the converted dngs are a sequence that alternates bunches of good-dngs and bunches of bad-dngs. The bunches contain different numbers of dngs, for example the first bunches contain respectively 8-good-dngs, 2-bad-dngs, 8-good-dngs, 10-bad-dngs, 2-good-dngs, etc.
Good-dngs have extension in uppercase (.DNG) whilst bad-dngs have extension in lowercase (.dng).
The curious thing is that importing the dngs-folder into Davinci, the software can't recognize a unique sequence, instead it imports all the bunches separately (each one with 8, 2, 8, 10, 2, etc. dng-frames)
I uploaded the first 30 dngs of the folder HERE, and also a shortened version of the problematic mlv HERE (the original file was 15GB, so I used MLVApp, RAW Correction disabled, codec MLV Fast Pass).


Usually when not all files are converted it means cr2hdr algoritm have a hard time detecting dualiso on the file. Trying a second time sometimes works but probably the file itself wasn´t a perfect dualiso example. Sorry, I can´t download atm, on a very slow connection. Could you upload maybe a single dng file that wouldn´t convert?


Tried a second chance with that single problematic file gave a perfect result.
I correct myself: you COMPLETELY did it.
Sincerely many congrats for your amazing work.


Are the flickering issues generally more pronounced with heavily underexposed shadows? I've got a telephoto shot of the full moon (well above the horizon, so very bright!) with some relatively dim buildings in the foreground. With 5D3 dual-iso at 100/1600, exposed for the moon at 100, I get crazy flickering with both MLV App and Switch. I've confirmed with exiftool the the black and white levels are constant. Besides the flickering, the individual processed DNGs look amazing!


Anyone tested Dual ISO in 48+ FPS mode?
for some reason i get a very weird flickering.


Hi, I am new to ML.
I just installed ML few days ago on my 6D and I have tryout dual iso module today which has got me some greyed out images.
As far as I know it needs a cr2hdr program to convert it to normal image and that is the only way to use it.
However, neither links of .c code/binary are still opened.
Any suggestion to do with my photos?



EOS 700D


Quote from: Danne on June 10, 2020, 01:04:16 PM
Yes. Mlv App has those issues. Will probably fix those flickery bugs and maybe finally dual iso will become reliable.
Ohh.. I just knew it, I thought it was dual iso module problem... thanks.
EOS 700D


I have just got an idea.. how if dual iso setting adjusted by interval?
for instance when we set iso to 100 with say 3 (interval or stop) then the second iso automaticaly set to 800
then when we set iso to auto, the second iso adjust also based on that interval if it's possible..

I hope you know what I mean.. :D
EOS 700D


For video, with dual ISO, am I correct with understanding that the exposure you're seeing on the screen is showing the full dynamic range set by the two iso values? You're seeing both values at the same time?
So the exposure meters such as the histogram etc are metering correctly? I can expose normally?
Then when put into MLV, the exposure is set to the lowest ISO value you have chosen, but the data for the higher dual iso is still there in the data for you to recover in post process?

I am also running Dannes experimental build for the 5diii, using the 1:3 binning anamorphic preset. I noticed that the vertical lines are visible in the higher dual iso value areas in the image. So the darker parts that has been brightened up in PP have these lines.
This is normal due to the nature of noise and the binning, correct?


Not working on 6D 1.1.6

ISOless PH err(3)

Mo load failed.

But if I use 1.1.3 with old ML+old dualiso.mo, it works just fine with 6D.

May this information helps.


Quote from: Levas on April 22, 2018, 08:52:12 PM
Haven't used dual iso for almost 2 years, but I wanted to give it a try now with crop mode video (1:1) on the 6d.
But I get an error:

ISOless PH err(3)

So it obviously doesn't work anymore on the 6d, I have no idea for how long.
I'm using the "crop_rec_4k.2018Mar10.6D116.zip" build from the experiments download page.

Same problem as yours, but I change to 1.1.3 with an old copy of ML, dual iso.mo works fine again, don't know why.