Lightroom plugin cr2hdr v3.0 DEV (WIP)

Started by kichetof, March 18, 2014, 05:04:33 PM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.


Thanks @a1ex for the solution !

This isn't a bug with LR plugin :)

Walter Schulz

But it would be fine having a plug-in able to detect 10/12-bit on it's own and using mlv_dump before running cr2hdr. Or - at least - having an option to run mlv_dump. Yes, another button/switchbox! I'm convinced we can't have enough options in this plug-in. <sigh>


hmm why not !   :o

But, mlv_dump is only for MLV file no ? MLV files can't be imported in LR, so how to check 10/12 bit?

ISO blending didn't work is the default error if no 14bit ? I can parse this error and warn user :)


Hi Kichetof. No need specifiying 10/12-bit. It,s automated.
I like the idea being able to process mlv files from inside lightroom.


I like this challenge!!  8)

I've a great idea! But... I'm not a filmmaker so I don't use mlv file. I need some learning about post processing!

I already see the GUI!

Some questions:

MLV to DNG imported in Lr?
MLV (Dual ISO) to DNG (Dual ISO) converted to cr2hdr and imported in Lr?

All options? New plugin?

(and I need to set up my new MacBook Pro to be able to compile ML)


Quote from: kichetof on March 06, 2017, 05:01:11 PM
(and I need to set up my new MacBook Pro to be able to compile ML)

Takes just a few minutes.  :D
Setting up a Magic Lantern development environment on a Macintosh

Welcome back kichetof!


Thanks @dfoft! I'll run everything when I'll be at home! :)


Here is a mac verison of mlv_dump. Works with all bits. It,s not the very latest so compiling latest is not a bad idea. All functions are in there anyway.

windows version

A menu based on mlv_dump settings is not a bad idea. The processed mlv to dng files should be placed into folders and once that is done one could easily continue using your cr2hdr plugin and go from there. Of course if you like to have the full option to go from mlv file to processed dual iso dng file that,s up to you.
Welcome back man  8)


Thanks @dfort ! It was very easy to setup my new Mac ! :) Thanks a lot for your great job !

@Danne thanks for your link, but now I've the latest version! :)

Settings to be defined by user:

Usage: ./mlv_dump [-o output_file] [-rscd] [-l compression_level(0-9)] <inputfile>
-o output_file      set the filename to write into
-v                  verbose output
--batch             output message suitable for batch processing

-- DNG output --
--dng               output frames into separate .dng files. set prefix with -o
--no-cs             no chroma smoothing (default)
--cs2x2             2x2 chroma smoothing
--cs3x3             3x3 chroma smoothing
--cs5x5             5x5 chroma smoothing
--no-fixcp          do not fix cold pixels
--fixcp2            fix non-static (moving) cold pixels (slow)
--no-stripes        do not fix vertical stripes in highlights

-- Image manipulation --
-a                  average all frames in <inputfile> and output a single-frame MLV from it
--avg-vertical      [DARKFRAME ONLY] average the resulting frame in vertical direction, so we will extract vertical banding
--avg-horizontal    [DARKFRAME ONLY] average the resulting frame in horizontal direction, so we will extract horizontal banding
-s mlv_file         subtract the reference frame in given file from every single frame during processing
-t mlv_file         use the reference frame in given file as flat field (gain correction)

-- Processing --
-e                  delta-encode frames to improve compression, but lose random access capabilities
-X type             extract only block type
-I mlv_file         inject data from given MLV file right after MLVI header
-c                  (re-)compress video and audio frames using LZMA (set bpp to 16 to improve compression rate)
-d                  decompress compressed video and audio frames using LZMA
-l level            set compression level from 0=fastest to 9=best compression

-- bugfixes --
--black-fix=value   set black level to <value> (fix green/magenta cast)
--fix-bug=id        fix some special bugs. *only* to be used if given instruction by developers.

Only DNG could be used  8)

Which settings are mandatory ?


I wonder if you are building from the correct branch?
I think you have to build mlv_dump from the raw_video_10bit_12bit branch, not from unified if you want 10/12-bit working. Someone correct me if there,s a newer branch.

I keep these settings in workflow)


oh effectively I forgot to change branch before compiling. Options are the same ?


I think the added white level setting is new.


@a1ex Thanks for proper workflow.

But in Windows 7 Service Pack 1 64-bit, program mlv_dump not working.

mlv_dump crash

Problem signature:
   Problem Event Name: APPCRASH
   Application Name: mlv_dump.exe
   Application Version:
   Timestamp applications: 589fb28f
   The name of the module with an error: ntdll.dll
   The module version with the error: 6.1.7601.23455
   The timestamp of the module with an error: 573a5463
   Exception code: c0000005
   Moving the exception: 00012c22
   OS Version: 6.1.7601.
   Locale ID 1045
   Additional information 1: 0a9e
   Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
   Additional Information 3: 0a9e
   Additional Information 4: 0a9e372d3b4ad19135b953a78882e789

Read our online privacy statement:

If the principle of confidentiality of information online is not available, please read our privacy statement offline:
   C: \ Windows \ system32 \ en-US \ erofflps.txt
650d.104 ML • SX1.200h CHDK


Solved by bouncyball.
It was problem with .IDX xref file.

proper .idx file

Thanx for all.
650d.104 ML • SX1.200h CHDK


Something like that ?  :o

Which values for black and white ? (min & max)

Now I need to play with exec to know how it works :)


5D3.113 | 5D3.123 | EOSM.203 | 7D.203 | 70D.112 | 100D.101 | EOSM2.* | 50D.109


QuoteSomething like that ?  :o

I use workflow by a1ex in windows 7, but change code to:

mlv_dump.exe -x M04-1427.MLV
mlv_dump.exe M04-1427.MLV --dng --no-fixcp --no-stripes
cr2hdr.exe M04-1427_000010.dng

mlv_dump.exe -x M04-1427.MLV is for fix wrong .idx file.

Tommorrow i will test your plugin, kichetof.
650d.104 ML • SX1.200h CHDK


Nice progress Kichetof. Generally you just let mlv_dump process to dng files and you never touch the black and white levels. It,s automated. For those occasions you do want to set it manually(black level corruption for instance) around those numbers you are showing are correct. Peak white for the 5D mark III is 16383(14bit) and I think mlv_dump exports to this already.

Did I hear something about beer :)


I use mlv_dump and after your ligthroom plugin from 170305 with these settings and all frames is ok.
650d.104 ML • SX1.200h CHDK


@k2121 yeah great news!

Little update on the GUI (you can't set folders and you could enable/disable black/white level)

Windows user can't click'n'drop MLV file in the field to get the path. I think it's not userfriendly to copy/paste path and filename..

So I decided to rethink how to process file. In my mind:

User creates a subfolder directly in Lightroom and paste MLV file inside.
User selects the subfolder and run the import (plugin detects pathname for the MLV and check if folder contains more than 1 MLV (warn user if > 1)).

Why I do that ? Two things I see:
Lightroom API doesn't have a File browser, so user need to copy/paste...
User could process entire path with same settings after conversion

Any suggestions ?


For video files, cr2hdr --same-levels might help; I didn't really experiment with it on video files, but if it works well, you may consider enabling by default.


Yes that exactly what I think ! :)

But in 2 times:

  • import MLV
  • Use export preset

Maybe I'll rewrite the plugin and implement cr2hdr directly at import task.
I've some ideas


If I recollect correctly --same-levels will break cr2hdr if too many files are specified in a row which would more likely to happen with movie sequences.


That's likely to happen on Windows, but this should fix it. Not tested though.


@Danne break only on Windows

On Mac with same level on entire path option, you could run cr2hdr *.DNG

Windows maybe in this year ?? :)

Better approach ?