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 3 Guests are viewing this topic.

masc

MLVApp v1.6 is out. Changes:

- Added HDR blending for ffmpeg export
- Added vignette filter (neg. strength) / correction (pos. strength)
- Added "Uncolorscience Fix" matrix for better colors in thungsten scenes
- Added toning filter
- Changed behaviour of sliders, when log curve selected - activate all processing elements with "Allow Creative Adjustments" checkbox, or uncheck for correct color
- Added 8bit PNG sequence export
- Added "Skip all" for files that can't be found on MLV import
- Added final resolution label in transformation group box
- Added 3 new cinematic color filters
- Added recursive bilateral filter, with luminance, chroma and range control (use it as denoiser)
- Some bug fixes and some minor changes

Have fun.
5D3.113 | EOSM.202

timbytheriver

@masc Prezzies!  Thank you! :D

How do I achieve HDR blending? can't find that option in mac version.

Sorry – found it!!

Tim
5D3 1.1.3
5D2 2.1.2

theBilalFakhouri

This is Great Developers! MLVApp is getting better and better and it will be nice if you can enhance Shadows/Highlights functions; it is causing contrasty edges and this not too good, Could you apply some of Box Blur for these edges?

I don't know how to do it as programmer, But I had the same thing when merging two videos in different Exposures manually in After Effects.

First Expoure for Highlights
Second Expoure for Shadows or Meditone
Here is what I am doing to merge it together in After Effects timeline:

1-Highlights Expoure clip
2-Highlights Expoure clip (second copy)
3-Mediton/Shadows Exposure

First one:
I make a matte for Highlights clip by lifting the Highlights up to make it completely white and darkening the shadows to make it completely black then Applying tint to get rid of the remaining colors then applying fast blur and box blur to soften the matte which cuasing also nice edges between Highlights and Shadows clip.

Second one: (Second copy of Highlights)
Change it to Luma Matte without doing anything.

Third one:
The Shadows/Mediton , I don't play with it also.

The point is how we can smooth the edges as programmer in MLVApp and how the things work there?

Okay also, I inspired after I got the nice results of manual video Exposures merging (I didn't find any tutorial about that unfortunately) to try to Process Dual ISO clips in similar way of course not the RAW , the H.264 ones . . It's a lot easier to do it like not a programmer  :P .

Luther

Thanks for all the efforts in this project. MLVApp is amazing. I use it in every production to convert MLV to ProRes in Log-C.

@Ilia3101
A higher color space is the only thing holding me from using MLVApp exclusively to process MLV files.
It would be great if you actually achieve that. Is there any specific problem you can't solve?
I started reading some stuff and found this camera spectral sensitivity for 5DMKII. Maybe this could be used to create an IDT? It would not be precise for other cameras than 5DMKII, but could be just precise enough. The ODT's can be found here.

I was thinking something like this:



High bit-depth output is important too, as on some companies (like Netflix) it's mandatory now to send HDR (meaning 10-bit Rec.2020).

@masc
Do you think it would be possible to implement a filter like Black ProMist? The idea is something like: gaussian blur on shadows and then change the blending mode, where gaussian intensity controls the amount of diffusion and opacity controls the overall intensity. Of course, it wouldn't be the same as the filter itself, but it would be close enough to "hide" crispy edges that digital cameras produces. I simulate that on photoshop this way:


masc

@theBilalFakhouri:
Shadows/Highlights is working with a boxblur at the moment. We render a blurred copy of the picture and use it to modify the original picture. Maybe we could get better results with a fancy different blur algorithm... in past Ilia showed an example - but I forgot which exactly. Main problem in past was render time for such algorithms.

@Luther:
Right now you can simulate something very close to this effect: set contrast to 100 and clarity to -100. This should give what you are showing - just with boxblur instead of gaussian blur. ;)
5D3.113 | EOSM.202

masc

@theBilalFakhouri:
when thinking about what I wrote in last post... last week I added "a fancy blur algorithm" - a recursive biliteral filter. You can test it in Details section as denoiser. When using the same algorithm for highlights, shadows and clarity, I am really impressed by my first tests. No more ugly edges. Have a look: (left=boxblur, right=RBF)

Little side note: RBF is faster than boxblur. :D
5D3.113 | EOSM.202

theBilalFakhouri

Quote from: masc on March 21, 2019, 08:32:03 PM
@theBilalFakhouri:
when thinking about what I wrote in last post... last week I added "a fancy blur algorithm" - a recursive biliteral filter. You can test it in Details section as denoiser. When using the same algorithm for highlights, shadows and clarity, I am really impressed by my first tests. No more ugly edges. Have a look: (left=boxblur, right=RBF)

Little side note: RBF is faster than boxblur. :D

That's amazing and creative :D Goodbye ACR .
Thanks for this Big improvement!

masc

Playing around with this... and I have to say, it is not golden yet... RBF sometimes creates a kind of vertical stripes on some edges:

Very ugly... :P

But it should show how much shadows/highlights/clarity depend on a good edge-preserving blur algorithm.

Edit: playing around with RBF parameters can minimize those artifacts.
5D3.113 | EOSM.202

dariSSight

Quote from: Luther on March 21, 2019, 03:56:16 PM
Thanks for all the efforts in this project. MLVApp is amazing. I use it in every production to convert MLV to ProRes in Log-C.

@Ilia3101
A higher color space is the only thing holding me from using MLVApp exclusively to process MLV files.
It would be great if you actually achieve that. Is there any specific problem you can't solve?
I started reading some stuff and found this camera spectral sensitivity for 5DMKII. Maybe this could be used to create an IDT? It would not be precise for other cameras than 5DMKII, but could be just precise enough. The ODT's can be found here.

I was thinking something like this:



High bit-depth output is important too, as on some companies (like Netflix) it's mandatory now to send HDR (meaning 10-bit Rec.2020).

@masc
Do you think it would be possible to implement a filter like Black ProMist? The idea is something like: gaussian blur on shadows and then change the blending mode, where gaussian intensity controls the amount of diffusion and opacity controls the overall intensity. Of course, it wouldn't be the same as the filter itself, but it would be close enough to "hide" crispy edges that digital cameras produces. I simulate that on photoshop this way:



Luther I am a proud ML Canon 5D Mark II User, I use MLVFS to convert MLV files to Temp DNG, Use AfterEffect to edit DNG in Adobe Camera Raw, then AfterEffect Render DNG to ProRes 4444XQ. I would like to know what do you think is the best log profile to use and What is your Workflow.
Canon 5D Mark II

Danne

Did some hdr blending(48fps HDR on my eosm). Hdr iso settings can be found under Crop mode sub menu since HDR mode is broken on this model otherwise when it comes to raw recording. Export render time is about the same as any other file thanks to averaging filter instead of enfusing, aligning etc.



Also exported with H265(7 sec clip). The file size 897kb! Very high quality.
https://bitbucket.org/Dannephoto/magic-lantern/downloads/h265.mov

High iso


Low iso


final result:


bouncyball

Quote from: masc on March 21, 2019, 08:52:04 PM
... Have a look: (left=boxblur, right=RBF)

Edit: playing around with RBF parameters can minimize those artifacts.
This is amazing!

dariSSight

Quote from: Danne on March 22, 2019, 06:59:44 AM
Did some hdr blending(48fps HDR on my eosm). Hdr iso settings can be found under Crop mode sub menu since HDR mode is broken on this model otherwise when it comes to raw recording. Export render time is about the same as any other file thanks to averaging filter instead of enfusing, aligning etc.



Also exported with H265(7 sec clip). The file size 897kb! Very high quality.
https://bitbucket.org/Dannephoto/magic-lantern/downloads/h265.mov

High iso


Low iso


final result:


Is that Dual ISO, and please can you share your workflow and setting of camera also?
Canon 5D Mark II

masc

This is not DualIso, it is HDR. Workflow is described in the post you quoted (first picture).
5D3.113 | EOSM.202

timbytheriver

@masc I know the HDR blending is done on export, but I can't see how to adjust the relative exposures of the two ISO frames in MLV App? I can't apply two different settings to individual frames can I?

5D3 1.1.3
5D2 2.1.2

Danne

You set corrections to the movie file the same as any other file. The problem here is previewing since it will flicker until it´s exported through HDR blending option. No blended preview capability yet. I usually correct the higher iso and do color corrections fixes. Export a short test file and if ok I send the whole file through rendering. Higher frame rate recommended to avoid ghosting(no aligning or deghosting is applied).

timbytheriver

@Danne

Got it. Thanks! Almost a rival for dual_iso ...  Maybe there should be a dual_iso_hdr.mo mixture! ;)
5D3 1.1.3
5D2 2.1.2

IDA_ML

What you guys are doing with MLVApp is absolutely insane!  These new denoiser filters are highly desirable and seem very promising.  Masc, I was wondering if you may be able to suggest a suitable workflow for noise cleaning that provide optimum results with high-ISO footage.

masc

Quote from: timbytheriver on March 22, 2019, 04:29:52 PM
@masc I know the HDR blending is done on export, but I can't see how to adjust the relative exposures of the two ISO frames in MLV App?
This is the main reason why we did not add it in past - "you won't see what you'll get". You'll have to do it as Danne proposed.

Quote from: IDA_ML on March 22, 2019, 05:06:33 PM
Masc, I was wondering if you may be able to suggest a suitable workflow for noise cleaning that provide optimum results with high-ISO footage.
Thanks, IDA_ML. I found that algorithm by accident and was very surprised. The workflow was mostly different for all test clips I played with. There is no general receipt, special clips need special settings. But mostly my workflow is like that:
- RBF chroma 70..100
- RBF luma 0..50
- then play with radius...
- maybe lower RBF luma if it becomes too smooth
- maybe try to get a little more sharpness, by sharpen 10..30 (more will just show what moiree is... as always) :P
5D3.113 | EOSM.202

Luther

Quote from: masc on March 21, 2019, 07:53:51 PM
@Luther:
Right now you can simulate something very close to this effect: set contrast to 100 and clarity to -100. This should give what you are showing - just with boxblur instead of gaussian blur. ;)

Tested it. Works very closely to what I was describing. Thanks!

Quote from: dariSSight on March 22, 2019, 01:41:09 AM
Luther I am a proud ML Canon 5D Mark II User, I use MLVFS to convert MLV files to Temp DNG, Use AfterEffect to edit DNG in Adobe Camera Raw, then AfterEffect Render DNG to ProRes 4444XQ. I would like to know what do you think is the best log profile to use and What is your Workflow.

@dariSSight I use Log-C from MLVApp. My workflow using MLV is: always get the best image first on camera (I normally ETTR to +1.5 stop) > Import on MLVApp > Exposure Correction (watch the histogram!) > WB Correction (using a 18% gray card you can just use the picker) > Change to Log-C > Export to ProRes 444.
Import on Premiere. Color grading using Lumetri curves and Filmconvert or Logarist (to simply transform to Rec.709). Denoise with NeatVideo and Sharpen with Samurai (from Digital Anarchy).

This is not the best workflow, though. For big productions the best would be to convert MLV to CinemaDNG, then use Resolve configure to use ACEScct.
If MLVApp adds ACES support and output to 10-bit Rec.2020 ProRes, I would easily just swith to do everything directly on MLVApp and use Premiere just to finish the video.

Quote from: Danne on March 22, 2019, 06:59:44 AM
Did some hdr blending(48fps HDR on my eosm). Hdr iso settings can be found under Crop mode sub menu since HDR mode is broken on this model otherwise when it comes to raw recording. Export render time is about the same as any other file thanks to averaging filter instead of enfusing, aligning etc.

That's very interesting @Danne. Would be possible to blend the raw data and export to MLV? So you could import and have the full preview. Probably not, right, because the merge uses ffmpeg tblend?
Another question: the averaging filter will work if you use a slower shutter speed (more than 1/96, for 48fps) or will generate ghosts?

Erkett

Hi there! :)
I have a question.
I will export my mlv-files to CDNG thru MLVapp with no camera matrix cuz I will have more space in Colorgrading later with colors and contrast.
But when I open my files i Davinci the camera matrix option is applied... Why is it so? Can I do something different?  :)

Best!

timbytheriver

Quote from: masc on March 22, 2019, 08:03:27 PM
This is the main reason why we did not add it in past - "you won't see what you'll get". You'll have to do it as Danne proposed.

@masc Thanks. It's fine for now! ;) MLV App kicks ass!  :P
5D3 1.1.3
5D2 2.1.2

masc

Quote from: Erkett on March 23, 2019, 07:41:27 AM
I will export my mlv-files to CDNG thru MLVapp with no camera matrix cuz I will have more space in Colorgrading later with colors and contrast.
But when I open my files i Davinci the camera matrix option is applied... Why is it so? Can I do something different?  :)
cDNG = RAW. This means none of the settings in the Edit area is applied to your exported clip - except RAW Corrections. You can enable or disable CameraMatrix - it won't have any effect on the exported footage, when using cDNG. I can't tell what Davinci does exactly with the RAW data.
5D3.113 | EOSM.202

IDA_ML

Quote from: masc on March 22, 2019, 08:03:27 PM
I found that algorithm by accident and was very surprised. The workflow was mostly different for all test clips I played with. There is no general receipt, special clips need special settings. But mostly my workflow is like that:
- RBF chroma 70..100
- RBF luma 0..50
- then play with radius...
- maybe lower RBF luma if it becomes too smooth
- maybe try to get a little more sharpness, by sharpen 10..30 (more will just show what moiree is... as always) :P

Thanks a lot, Masc.  Denoising is a very important and useful feature and I really am glad that you guys brought it this far with version 1.6.  I think, serious testing is a must if we wish to get the most out of it in terms of naturally looking results.  So, I would like to encourage everyone to share his experience with these new filters here.

jpegmasterjesse

I wonder if we can accomplish something similar to what Neat video does using a process similar to dark frame subtraction? If the user can identify an area of pure noise, could that be tiled and extracted from the base image?

For the hell of it, I shot a low light raw clip on my 5d2 at iso 6400. After white balancing in MLV App and denoising in neat it actually looked great. I know this might be apples and oranges, but I really wasn't able to get something comparable in MLVApp yet.

masc

We could add whatever you like. But remember: we always need the code of such algorithms. No code, no feature. Densoisers consists of a lot of math. At least for me it would be hard (if not impossible) to write a own better algorithm.

Out there in the internet I found some other, maybe still better looking free algorithms... but very hard to compile, very hard to include, and very very very slow. This was the reason why I did not include it to MLVApp.

If you own Neat, use it, because it is a very good software.

@IDA_ML:
are you able to compile MLVApp yourself? There is another hidden parameter in code (which I fixed after some tests). Maybe you also like to play with this one (it is just changing a number) ;) Maybe my parameter-set is not optimal.
5D3.113 | EOSM.202