Author Topic: MLV App 1.14 - All in one MLV Video Post Processing App [Windows, Mac and Linux]  (Read 1156804 times)

masc

  • Contributor
  • Hero Member
  • *****
  • Posts: 2058
As I am not a Coder, google Algo gives me unrelated responses. If you can send me one of your google query results, I'll be able to start from there.

Here is the terminal output of the compiling script (To the left) And the Qt GUI output (To the right)
The script doesn't give me an app, but I get an app with Qt (The App works, but export is slow)

Compilers-Output" border="0
If you compile MLVApp with Apple standard Clang compiler, you get what you're talking about. All the app works, looks the same, all features available, BUT: it is slow, because OpenMP is not available with Apple's compiler. We use it a lot for accelerating some algorithms. Those algorithms work single threaded for you now. You can change that, but the workflow is a little complicated, when doing it manually. With Dannes compiler app, all this should be done automatically, if I remember right.
You must install llvm compiler via brew, because this one has OpenMP included. Then you configure a new toolchain in Qt settings, using this llvm compiler with the Qt version installed in one "kit". Then, on the top of the mlvapp.pro file, there are some compiler configuration lines commented out. Search for the section which describes your system and uncomment the lines. Then, add the new toolchain for your project, qmake, build.
For making the app working without Qt, you must use Qt "macdeployqt" - this copys all needed libraries into the .app and makes it running without Qt SDK.
5D3.113 | EOSM.202

Danne

  • Developer
  • Hero Member
  • *****
  • Posts: 7571
I think my app needs some rework  8). I messed around with it when getting it to compile on my Macbook pro m1 so I am not sure about status with it atm. Lots of good stuff in there though to get most of it done :).

gabriielangel

  • Member
  • ***
  • Posts: 112
Thank you for the replies.

Keep in mind, it took me 8 hours to find the proper Qt version and download everything on my system. So all of this is beyond my current "Do-it-in-a-timely-manner" Capabilities.
I just needed the latest MB/s and filesize display, and the Histogram lines (Which are brillant additions by the way).

So I will use my compiled version for setup, and render in the official version, until the Official release.

Danne

  • Developer
  • Hero Member
  • *****
  • Posts: 7571

masc

  • Contributor
  • Hero Member
  • *****
  • Posts: 2058
Could you test this version mac version?
https://bitbucket.org/Dannephoto/mlv_app_compiler-git/downloads/MLV_App.zip
No luck for me to start. Looks like macOS blocks the start, but all known terminal commands don't help here.
5D3.113 | EOSM.202

Danne

  • Developer
  • Hero Member
  • *****
  • Posts: 7571
Thanks. Compiled with an older compiler. Rework needed but will personally stick with the M1 version for now.

Icaab

  • New to the forum
  • *
  • Posts: 47
Hello.
Canon 650d. Shooting in the morning with dual iso 100/400 fusion with the sun. After incorporating dual iso in mlvapp -  appears a strange spot in the sun:
M14-0716-000051" border="0
Photo with dual iso - in order
Sources:
https://mega.nz/folder/HlxkhZaa#xB_W3KI5mMn9mwOHuhiB8g
Is there any way to fix this? Such a problem on many source videos
(Highlight Reconstruction and White Level Change - do not help)

elenhil

  • Freshman
  • **
  • Posts: 52
See the answer to a similar question here: https://www.magiclantern.fm/forum/index.php?topic=26593.msg239861#msg239861

Отправлено с моего SM-G965F через Tapatalk


masc

  • Contributor
  • Hero Member
  • *****
  • Posts: 2058
For the high iso part of the dualiso image, the sun is very overexposed. I don't know about an easy fix for that. What I did in past: Use a small round object layer with the correct sun color and move it with tracking over the bad area.
5D3.113 | EOSM.202

ilia3101

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 991
Just realised the black sun effect could be used as information to extend dynamic range in processing. Would need a fancy new algorithm tho.

Does anyone know how to increase likelihood of black sun effect without using dual ISO?

Walter Schulz

  • Contributor
  • Hero Member
  • *****
  • Posts: 8547
AFAIK firmware will do black sun surpression on its own. No idea how to untweak the tweak.

On second thought: Silent pic may work.

elenhil

  • Freshman
  • **
  • Posts: 52
Indeed. FRSPs all suffer from this effect.

Отправлено с моего SM-G965F через Tapatalk


ilia3101

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 991
Oh interesting. Thanks for the FRSP idea.

But what about simple MLV videos? It seems pretty uncommon there, at least on 5D3.


Quote
AFAIK firmware will do black sun surpression on its own.

😢😢

Kharak

  • Hero Member
  • *****
  • Posts: 1025
I cant speak for mlv app, but working with dng in resolve, any clip with log conversion applied with the sun directly in shot will most likely give you “black sun” (pink) artifact.

Color managed workflow:
Input: Linear
Output Color space: <C-log2, Log-c or <slog 2 etc
Output Timeline color space: <C-log2, Log-c or <slog 2 etc

Basically any log conversion that stretches the dynamic range beyond its input will show pink sun artifact.

I usually counter it by tracking a power window on the sun with Lens Blur and increasing green channel output until the magenta turns white(neutral).

Edit: those DNG’s have already been darkframe subtracted, not sure if that is causing the black sun artifact.
once you go raw you never go back

tupp

  • Member
  • ***
  • Posts: 130
Is there any way to fix this? Such a problem on many source videos
(Highlight Reconstruction and White Level Change - do not help)
I am not familiar with the peculiarities of ML Dual ISO nor FRSP.

However, would the recently added Sobatka AgX trasnsform help in reducing this clipping/black-sun problem?

Troy Sobatka also made a "Filmic" Blender module, which has been adapted to Darktable, and which seems to deal well with clipping and tonal shifting in the highlights:

https://www.youtube.com/watch?v=bnfBgK3j1Bg&t=165s


It would be great if MLV App featured a similarly versatile "filmic" module!

ilia3101

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 991
I cant speak for mlv app, but working with dng in resolve, any clip with log conversion applied with the sun directly in shot will most likely give you “black sun” (pink) artifact.

Ah yes the "black sun" can show up as pink, I forgot! I see that all the time. Thanks for reminding me.


However, would the recently added Sobatka AgX trasnsform help in reducing this clipping/black-sun problem?

It could help hide it, if it's pink, thanks to it's stronger film-ish highlight desaturation. But it won't truly fix it.

Black/pink sun needs to be handled at the raw correction stage.


Troy Sobatka also made a "Filmic" Blender module, which has been adapted to Darktable, and which seems to deal well with clipping and tonal shifting in the highlights:

Yes, filmic was created a few years ago. AgX is basically Troy's replacement for filmic, it's better. It might get added to Blender soon as well.

And while darktable filmic is "inspired" by Troy's filmic, it works totally differently, and the aesthetic is different.


It would be great if MLV App featured a similarly versatile "filmic" module!

It has so many parameters that don't make any meaningful change and just cause weird tonality distortions that don't look good whichever way you pull the slider. I don't love it.

I implemented AgX in MLV App because it was super convenient. The source code is a spaghetti house of cards and can't take much.

gabriielangel

  • Member
  • ***
  • Posts: 112
Hello,
The Value Lines added in the Histogram/Waveform/Parade are really useful, especially when exporting to Alexa Log-C. It allows to set the proper brightness (Slightly brighter than normal) to get an accurate color rendition and contrast.

As Canon outputs certain colors very saturated (Especially when using agX), it would be a nice addition to have a graph similar to the Waveform Monitor, but displaying the Chroma (For example, a chroma value between 10-15/127 gives the best skin tones)

It would also be helpful if the value would display under the cursor when pointing on the graph, or have one user set value to add a reference line.

Those additions would make it possible to squeeze the most out of the Raw, before going to Log-C 422, and then use DaVinci tools only for minor tweaks/ power windows.

dpjpandone

  • Senior
  • ****
  • Posts: 405
Can someone briefly explain the difference between vertical stripes and fixed pattern noise? I used to experience vertical stripes with the 7d and 5d, I don't seem to get them with the EOSM. It seems that either algorithm can be used to treat the vertical stripes, which one is superior? If you have firsthand experience with EOSM can you please share your raw processing settings? I would like to do the bare minimum raw processing in MLV app and treat the files for noise in Resolve.

ilia3101

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 991
@dpjpandone

Vertical stripes are like a different ISO in each column (multiplicative), same pattern repeats every 8 columns.

Fixed pattern noise is an offset (additive) - specific to each pixel, not repetitive or preditable.

Algorithm for one will not really fix the other.

iaburn

  • Freshman
  • **
  • Posts: 97
Hi, I use Dual ISO a lot and I thought about trying to understand that part of the code in MLVApp and see if it can be optimized or at least divide it on parallel tasks to speed things up on Apple silicon.

I installed the latest Qt 6.4.0, the latest llvm 15, did some changes so the code will compile on the new Qt version and everything looked fine at first... I was getting a few more fps with less CPU usage while playing MLV (20fps vs 17fps on the current Apple silicon release), DNG export worked, but export to other video formats where video and audio are combined is failing.
When the progress gets to 100%, it stays at a 100%, the separate video "_tmp" and audio files are generated, but they are not joined and I have to abort the export.

Any idea where to start debugging? Wasn't MLVApp using ffmpeg for the compression process? Thanks a lot!

Danne

  • Developer
  • Hero Member
  • *****
  • Posts: 7571
Those fixes for latest llvm should be ported or included in first post maybe?
Try replacing ffmpeg with the apple silicon version here.
http://www.osxexperts.net/

iaburn

  • Freshman
  • **
  • Posts: 97
Those fixes for latest llvm should be ported or included in first post maybe?
Try replacing ffmpeg with the apple silicon version here.
http://www.osxexperts.net/
Thank you, I'll try this afternoon :)
I wanted to have everything working properly and replace as much deprecated code as I can before posting, but it was very straightforward,  just minor changes required

masc

  • Contributor
  • Hero Member
  • *****
  • Posts: 2058
Hi, I use Dual ISO a lot and I thought about trying to understand that part of the code in MLVApp and see if it can be optimized or at least divide it on parallel tasks to speed things up on Apple silicon.
Cool!

I installed the latest Qt 6.4.0, the latest llvm 15, did some changes so the code will compile on the new Qt version and everything looked fine at first... I was getting a few more fps with less CPU usage while playing MLV (20fps vs 17fps on the current Apple silicon release), DNG export worked, but export to other video formats where video and audio are combined is failing.
You think this is possible? Qt 6.4.0 doesn't support QtMultimedia as Qt5 did - so some things (mostly audio based, and I think some of the graphics viewer features) don't work anymore. It was the reason why I stopped porting. Did you find a solution for this?
5D3.113 | EOSM.202

iaburn

  • Freshman
  • **
  • Posts: 97
Cool!
You think this is possible? Qt 6.4.0 doesn't support QtMultimedia as Qt5 did - so some things (mostly audio based, and I think some of the graphics viewer features) don't work anymore. It was the reason why I stopped porting. Did you find a solution for this?

Hi, regarding audio, yes, I had to replace a couple of things like QAudioOutput by QAudioSink, but the compiler was not complaining about any graphic function and seems to be working.
I would need to test a bit more, because there are some methods of QAudioFormat that are missing on the new version (setCodec, setByteOrder, setSampleType). I commented them out and audio was playing normally, but needs to be cheked.

masc

  • Contributor
  • Hero Member
  • *****
  • Posts: 2058
Wow. Interesting! Do you have a fork on github? I would be really interested how you did that!
5D3.113 | EOSM.202