MLV App 1.14 - All in one MLV Video Post Processing App [Windows, Mac and Linux]

Started by ilia3101, July 08, 2017, 10:19:19 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Danne

Quote from: IDA_ML on September 27, 2018, 07:01:22 PM
BUG REPORT
Unfortunately, files are huge and it is very difficult to choose a short one for upload in which conversion fails after the first one or two seconds.

Shorten a troublesome MLV file to let´s say 5 seconds and upload? You can cut the MLV in Mlv app.

IDA_ML

Quote from: masc on September 27, 2018, 07:31:42 PM
Thanks IDU_ML,

1) That's no bug - it is as expected. Dual ISO MLV to MLV export does not exist. MLV export is completely untouched RAW data, even RAW Correction is not applied. But could be an enhancement for the future... (@bb, is that theoretically possible?!) ... but then it would not be so fast.

2) Do you run the official MLVApp release, or did you compile yourself? 2nd was buggy for a while using openMP, and exactly this happened very often. In the last revisions bouncyball made some other changes on dual iso for more stability. Have you tried this? @bb: could you explain what you improved?
Unfortunately my 5D2 is not able to record dualiso MLV (or is it?!).


Thanks, Masc for tis clarification.

1) Do I understand properly that MLV to MLV export is just for applying the Cut-in and Cut-out function?  This makes a lot of sense, of course.  However, if MLVApp could be used to convert Dual ISO MLV clips to normal ones (somewhat dark but with enrmous dynamic range), along with the Cut-in and -out function preserved, that would be extremely practical and helpful, especially keeping in mind the excellent quality of Dual ISO MLV video.

2) I use the official version of MLVApp1.0 linked on the first page of this thread.  I will  see if I can shoot a Dual ISO file with the bug in the beginning so that it is uploadable after shortening as Danne suggested.  My idea was to provide also the original Dual ISO file for comparison.


reddeercity

Quote from: masc on September 27, 2018, 07:31:42 PM
Thanks IDU_ML,
Unfortunately my 5D2 is not able to record dualiso MLV (or is it?!).
5D2212_Video_dual_iso.zip

It's uses to be only for Photo mode on 5d2 but for some reasons it no longer included (maybe is broken on D4) but waza57 back in 2016
figured out how to code it to work on the 5D2 , start reading here on the Video - dual iso for 5D2 thread .
Limitations : No fasts pans or very quick movements , this will cause a liveview freeze & will need a battery pull to un-freeze , it is safe to use beyond that .
best setting are 100/800 ISO (100 iso base & 800 iso revovery) this give around 14 stops (100 ISO = 11.75 stops default) ,
You can try different combinations , keep in mind anything over 800 iso will be noisy
Here a sample dual ISO frame from my 5D2,  I shot back in 2016 as a test I thing I tried it at 200/800 ISO
M19-2200_1_2016-03-19_0001_C0000_000023.dng I mainly use MLVProducer & or BarracudaGUI for cr2hdr dual iso raw post-processing (Windows XP/7/8) or MLVFS .
I haven't tested it on the latest builds like 10-12bit or mlv_lite  but it work fine with plain vanilla builds 14bit , you may have to use a older build .

bouncyball

Hey guys!

Quote from: masc on September 27, 2018, 07:31:42 PM
(@bb, is that theoretically possible?!) ... but then it would not be so fast.
Yes theoretically it is possible but I don't wanna even think about it ;), and yes it will be as slow as dual iso processing can get, e.g very slow :D

Quote from: masc on September 27, 2018, 07:31:42 PM
In the last revisions bouncyball made some other changes on dual iso for more stability. Have you tried this? @bb: could you explain what you improved?
Yes sure. In earlier versions there was a "feature" (not so good as it turned out): detecting dual iso validity for every frame, it is built into dual iso code itself.

You know why? b/c dual iso's been invented and implemented by a1ex with still photography in mind.

In marginal cases (very bright/black, overexposed/underexposed) the detection fails and therefore forcing dual iso processing fails too. Now this behavior changed and only very extreme cases are affected where dual iso processing can not be done by the actual code.

bouncyball

Quote from: IDA_ML on September 27, 2018, 11:04:54 PM
1) Do I understand properly that MLV to MLV export is just for applying the Cut-in and Cut-out function? 
Yes that's correct.

Quote from: IDA_ML on September 27, 2018, 11:04:54 PM
However, if MLVApp could be used to convert Dual ISO MLV clips to normal ones (somewhat dark but with enrmous dynamic range), along with the Cut-in and -out function preserved, that would be extremely practical and helpful, especially keeping in mind the excellent quality of Dual ISO MLV video.
Export DNGs instead. Keep original MLVs. It's possible there will be more advanced (quality wise) and quick dual iso processing code written by someone in the future.

bouncyball

@IDA_ML

Quote from: IDA_ML on September 27, 2018, 07:01:22 PM
the following happens:  The first few seconds of the exported file are normally  exported and then MLVApp fails to convert the rest of the clip - the Dual ISO stripes appear again on the remaining unconverted footage.  This happens randomly and that is why I did not notice this bug earlier when I was playing with short Dual ISO files.
It was reproduced long time ago and it turned out the reason was the fact that in very bright conditions dual iso exposures could not be matched.

Now I fixed that behavior here

Please compile latest version and share your findings.

IDA_ML

Quote from: bouncyball on September 28, 2018, 09:17:35 AM
In marginal cases (very bright/black, overexposed/underexposed) the detection fails and therefore forcing dual iso processing fails too. Now this behavior changed and only very extreme cases are affected where dual iso processing can not be done by the actual code.

I noticed that this instability is time variant.  The same Dual ISO file failed to convert several times yesterday at different elapsed intervals from the beginning (from 3 sec. to 20 sec.).  This morning, I tried the conversion again, using the same file and exactly the same MLVApp settings and it converted fine - all 40 sec. of the clip.  Trying a second conversion with the same settings a few minutes later and conversion failed again after 2 sec.  These experiments I performed on a normally exposed Dual ISO 100/800 flle shot at 3072x1728 resolution at 14-bit lossless without any extreme under or overexposure.  I set the export conversion to ProRes422LT (my favorite).

But anyway, I am very happy that even just once, the above file converted fine in its full length.  So, there is hope that the instability issue might be successfully resolved, hopefully !!!  By the way, Bouncyball, the above 40 sec. clip (about 6 GB MLV) took between 22 and 32 minutes to convert on an i7 3,8 GHz PC dependent on the settings applied.  If with the Dual ISO ON option only exposure, shadows, darks and lights are applied, it takes about 22 min.  If you activate all options you can think of, it takes 32 min.  CPU operates 100% load during conversion and chip temperature varies between 95 and 100 deg. C.  Not bad, hey!  Just like DaVinci Resolve but slower  :-))).  Video quality at the above Dual ISO resolution is stunning though - well worth the effort.

IDA_ML

Quote from: bouncyball on September 28, 2018, 11:46:02 AM
@IDA_ML
It was reproduced long time ago and it turned out the reason was the fact that in very bright conditions dual iso exposures could not be matched.

Now I fixed that behavior here

Please compile latest version and share your findings.

Unfortunately, I do not have any compiling skills at all.  But if you provide a compiled experimental version and post a link here, I will be more than happy to test and provide feedback.  Other people can test too.  Would you like to do that, Bouncyball?

bouncyball

Here is the latest WINx64 build

1. Fixed dual iso issue
2. More speedup to dual iso
3. Reworked audio loading
3. Now creates MAPP v2 files
    This speeds up second loading dramatically, no matter MLV with audio or not
    @mask said for 9.5GB file loading time decreased from 32sec to 2 sec 8)
4. Lots of cool additions and fixes from @mask :D (more than he wrote down there)
5. Some scripting fixes from Danne (not related to windows build though)

You can see commits here.

masc

Quote from: bouncyball on September 28, 2018, 12:55:25 PM
Here is the latest WINx64 build

1. Fixed dual iso issue
2. More speedup to dual iso
3. Reworked audio loading
3. Now creates MAPP v2 files
    This speeds up second loading dramatically, no matter MLV with audio or not
    @mask said for 9.5GB file loading time decreased from 32sec to 2 sec 8)
4. Copy mask
5. PNG 16bit export (@70MM13) & jp2000 export in .mov container
6. Linear Gradient
7. Very simple 2D median denoiser
8. Help Dialog
9. New vertical stretch factors 0.333 and 3.0
...
@bouncyball, Ilia and Danne... if I count all the new stuff here... time for v1.1? (See also discussion on github.)

@reddeercity: thanks. I'll go reading this weekend!  8)
5D3.113 | EOSM.202

Danne

Quote from: masc on September 28, 2018, 12:58:01 PM
@bouncyball, Ilia and Danne... if I count all the new stuff here... time for v1.1? (See also discussion on github.)
Absolutely.

benoit

Yeah for v1.1 ! great release, more stable on dual iso !  Thanks

IDA_ML

Wow, you guys are moving really fast!  Thanks a lot, Bouncyball, Masc, Ilia, Danne  and everyone else involved.  I will test Dual ISO as soon as I can and will provide feedback.

theBilalFakhouri

Yes now Dual ISO is perfect now I had before some issues like some randomly unprocessed frames or process few frames in the beginning then skipping the rest.

Thanks for fixes also for new stretch values this is big time saver!

bouncyball

@theBilalFakhouri

Thanks for feedback, I have not tested the windows build myself :D

bouncyball

Hey guys in post processing section of the forum this tread leads by replies and pages :). By views mlrawviewer thread is the leader.

theBilalFakhouri

@bouncyball

Thanks for you too! :D and for @masc and @Ilia3101 for this really great App!

Can we make Time-Lapse export mode?

I shot MLV video @ 6 FPS and I don't want to render and process all the frames which are 6895 and size of 29.5 GB then speed it up in editing software I want to export 1 Frame after every 25 Frames for example or 1 Frame after 50 Frames this is changeable choice depending on the Time-Lapse speed you want but you got the Idea.

Is this doable?

Thanks :D

masc

Quote from: theBilalFakhouri on September 28, 2018, 07:46:22 PM
Can we make Time-Lapse export mode?

I shot MLV video @ 6 FPS and I don't want to render and process all the frames which are 6895 and size of 29.5 GB then speed it up in editing software I want to export 1 Frame after every 25 Frames for example or 1 Frame after 50 Frames this is changeable choice depending on the Time-Lapse speed you want but you got the Idea.

Is this doable?
I did a quick check and it seems doable, if we want it for export only. For playback the change would be huge. We only have to think about, how to bring it into export settings, that everyone is able to understand what it does. ;) Maybe: "Timelapse frame skip [xx frames]+-" or something (that makes me not really happy, better ideas?)...
5D3.113 | EOSM.202

a1ex

If you already captured all this data, it's best to keep it, i.e. rather than exporting one frame out of 25, I believe it's better to average all of them in a way that minimizes temporal aliasing.

Somewhat like this: http://tessive.com/the-time-filter

I have yet to experiment with this, but any of these should give much better results than keeping just one frame out of 25:
- 180-degree averaging (i.e. average half of the frames in each group)
- use variable weights when averaging, such as a Gaussian bell curve

e.g.

- 180-degree averaging: weights = [  0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 ] / 13  # i.e. average 13 frames out of 25
- "Gaussian" weighting (just an example): [ 0.001 0.002 0.004 0.008 0.014 0.023 0.034 0.047 0.061 0.075 0.087 0.095 0.098 0.095 0.087 0.075 0.061 0.047 0.034 0.023 0.014 0.008 0.004 0.002 0.001 ]



To get the above "Gaussian" weights in octave:

w0 = [  0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 ] / 5;
w1 = conv(w0,w0)(25-12:25+12);
w2 = conv(w1,w1)(25-12:25+12);
w3 = conv(w2,w2)(25-12:25+12);
printf("%.3f ", w3);


Of course, the processing time will be much higher.

I hope to be able to perform this kind averaging on the camera's image processor at some point...

zalbnrum

I have experinced a problem in 1.1.; if selecting "none"  in reciept mask setup, it does not save it, and if you select only one clip, there is no "paste reciept" when right clicking it. Maybe it's just me, but could somebody please check? Using windows x64 version from Reply #2033

In 1.0 I just unchecked "enable raw correction", copied reciept and pasted to other mlv's on the left pane.

Othervise it is much more stable with dual ISO and so on. Congrats!

togg

Quote from: bouncyball on September 28, 2018, 05:34:57 PM
Hey guys in post processing section of the forum this tread leads by replies and pages :). By views mlrawviewer thread is the leader.

Niiice :)


Got back to my camera. I've tried mlv lite with sound a little bit and reported a few bugs in the crop rec topic, curious to know if you get the same experience.
Lossless files are great and it is also nice that it has a audio delay option.


Coming back to MLV App.

1) I can confirm that dng export in v1.0 is a inch slower than v0.17 with simple raw corrections enabled (vertical stripes), surelly not faster. And using way more resources

2) Preview run at 7 fps on a rmbp from 2012, 2.3 i7 and GT650 1GB.

3) Couldn't test indexing times througly because I only took small videos.



masc

@a1ex: very interesting! Will think about it! :)

Quote from: RÁTNEEK on September 29, 2018, 02:50:55 PM
I have experinced a problem in 1.1.; if selecting "none"  in reciept mask setup, it does not save it, and if you select only one clip, there is no "paste reciept" when right clicking it. Maybe it's just me, but could somebody please check? Using windows x64 version from Reply #2033

In 1.0 I just unchecked "enable raw correction", copied reciept and pasted to other mlv's on the left pane.

Othervise it is much more stable with dual ISO and so on. Congrats!
Sry, don't understand: if you select "none" you just copy nothing and paste nothing. What should be saved?
If only one clip is selected, there is no paste receipt in rightclick menu - right. This is because if only one clip is selected the paste always goes to the viewers clip - not to the one selected in the session view.

Quote from: togg on September 29, 2018, 04:27:06 PM
Coming back to MLV App.
1) I can confirm that dng export in v1.0 is a inch slower than v0.17 with simple raw corrections enabled (vertical stripes), surelly not faster. And using way more resources
I can't say at all. In my test on a MBP 2010 Core2Duo, same raw corrections as you told: v0.17 14sec for my testclip, same in v.1.0 8sec. More ressources: yes, it is multithreaded.
5D3.113 | EOSM.202

togg

That is so weird. How about other people? Are you getting better speed? I'll try to test it again tomorrow.

zalbnrum

@masc: I just want to uncheck "enable raw correction". Exporting to cdng. In 1.0 I put multiple mlv's in "session", unchecked at the selected one, clicked "copy the reciept to clipboard", selected other mlv's in "session" and right clicked "paste reciept" and that was it.

In 1.1. when I click "copy the reciept to clipboard" the new "receipt mask setup" opens, if I uncheck all = select "none" at the left bottom, and click "OK" nothing is saved to clipboard, as I understand, cause there is when right clicking other mlv's no "paste reciept" option.

I hope I wrote it clearly enough, not a native ENG speaker. Thank you.

masc

Quote from: zalbnrum on September 29, 2018, 09:33:24 PM
@masc: I just want to uncheck "enable raw correction". Exporting to cdng. In 1.0 I put multiple mlv's in "session", unchecked at the selected one, clicked "copy the reciept to clipboard", selected other mlv's in "session" and right clicked "paste reciept" and that was it.

In 1.1. when I click "copy the reciept to clipboard" the new "receipt mask setup" opens, if I uncheck all = select "none" at the left bottom, and click "OK" nothing is saved to clipboard, as I understand, cause there is when right clicking other mlv's no "paste reciept" option.

I hope I wrote it clearly enough, not a native ENG speaker. Thank you.
In <=v1.0 without the copy mask you always copied "All->Ok", but without this dialog. If you have different settings on each clip in the session, and in the end you just want to uncheck raw corrections:
in <=v1.0: you have to select each clip and uncheck it manually
in >v1.0: you uncheck it once, copy with "None, check only raw corrections, Ok" and paste to all clips. Now all other settings still exists, but the raw correction is always disabled.
If you just import the clips (=standard setup) and you want just to uncheck raw corrections on all clips: uncheck it once, copy with "All, Ok", and paste to all clips.

The rightclick -> paste has nothing to do with copy mask setup. It has to do with pasting in general. If you have 2 clips, 2nd is active and you paste: you'll paste on 2nd clip. Now you just click (don't activate) 1st clip, paste: you again paste on 2nd. -> if one clip is selected, you always paste on active one. That is why rightclick paste isn't there. It would nearly never do, what the user would expect.
5D3.113 | EOSM.202