MLVFS - a FUSE based, "on the fly" MLV to CDNG converter

Started by dmilligan, August 31, 2014, 02:01:24 AM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

Slasheal

Some info:
I tried to compare MLV MYSTIC / MIRAWVIEWVER / MLVFS

Size:
MLV MYSTIC : 3mo
MIRAWVIEWVER : 1.8mo
MLVFS : 3.4mo


White balance:
MLV MYSTIC : 5100K (even if manual WB)
MIRAWVIEWVER : 5000K (even if manual WB)
MLVFS: in AWB mode, it will take the value stored in manual WB.
If you set to a WB preset (ex: tungsten light), it will take the WB preset.


In short: DO NOT USE AWB with MLVFS.
Still, it's a good thing to be able to change WB before grading.
Most grading softwares don't have "photo" WB control. I don't want to waste my time on camera raw.

So yep, actually for me, MLVFS is THE best solution on OSX to manage raw video :).

dmilligan

I'm not 100% sure, but this may actually be an ML issue (AWB is not captured correctly in camera to the MLV format). Need to check. I'm pretty sure MLVFS handles WB as correctly as possible, at least according to the MLV format specification. It was a while ago that I implemented all the WB stuff, so I'm a bit fuzzy.

You can check yourself by using mlv_dump -v to see all the metadata from the MLV file.

mothaibaphoto

Some new observations regarding WB and different convertors. I shot Dual ISO silent timelapse in MLV yesterday. WB in camera was set to AWB. I usually process this kind of files with mlv_dump+cr2hdr routinely. This time I decided to try different converters while keeping eye on WB. First surprise - mlv_dump+cr2hdr produces DNG with correct WB - 4100 "As shot" in ACR. Second - I can't try anything else - raw2cdng.1.6.5 just crashes, mlvfs.dll mounts empty folders and crashes when I unmount such empty folder.

Danne

Do you mean Mlvfs+cr2hdr? Mlv_dump hardcode wb settings.
Mlvfs delivers correct wb for me.

mothaibaphoto

Quote from: Danne on August 02, 2015, 09:55:13 AM
Do you mean Mlvfs+cr2hdr?
I mean Mlvfs doesn't work at all with this kind of files, at least on Windows.

Quote from: Danne on August 02, 2015, 09:55:13 AM
Mlv_dump hardcode wb settings.
I know it. But this setup wonderfully produces correct WB :)

dmilligan

The Windows version is way behind the Mac/Linux version and does not handle WB correctly. I believe cr2hdr recomputes the WB, b/c the processing it does has an effect on WB (I could be wrong on this point).

I would not consider hardcoded WB that just so happens to be the same as the scene you shot "correct". More like "lucky".

Marsu42

Quote from: dmilligan on August 02, 2015, 07:14:40 PM
The Windows version is way behind the Mac/Linux version and does not handle WB correctly.

Doh - any chance to get the win version updated as the webdav solution isn't available anymore (and less straight forward than mounting) ... or are the code bases so different the win version will lag behind?

Quote from: dmilligan on August 02, 2015, 07:14:40 PMI believe cr2hdr recomputes the WB, b/c the processing it does has an effect on WB (I could be wrong on this point).

I dunno if it's supposed to recompute wb, but it definitely has an effect on wb at least with my cams (60d, 6d) so with the adobe raw converter I usually have to do some manual tint/temperature adjustments.

mothaibaphoto

Maybe cr2hdr will produce more accurate result dealing with input DNG files with actual, not "hardcoded" WB?

dmilligan

Quote from: Marsu42 on August 04, 2015, 12:04:24 AM
Doh - any chance to get the win version updated as the webdav solution isn't available anymore (and less straight forward than mounting) ... or are the code bases so different the win version will lag behind?
Main issue is I don't own a Windows box.

sggvideo

Hi. I was very excited to discover and use MLVFS with my mac, and it has been a charm!!

I recently noticed when I try to mount a folder with my entire 63.98gb of .MLV data I sometimes lose frames in the .DNG's. In the browser window that pops up it also says there are less frames than I recorded. BUT, If I put one .MLV file (and all of its parts .M01, .M02..) into a folder alone and run MLVFS it gives me all the frames!

Anyone else had this happen?

If it's been answered I apologize, I read some of the discussion then skipped to the end  :o

Slasheal

Another problem I have, I will test later if it's related to MLVFS or not:


The DNGs created with MLVFS, when opened with ACR, doesn't allow me tu properly use lens correction:

https://forums.adobe.com/message/7823545#7823545

dmilligan

I replied to the Adobe thread. Basically, it's going to be a challenge figuring out what the metadata needs to be for ACR to interpret the FOV correctly, so it can apply the lens corrections appropriately. Feel free to grab exiftool and the DNG spec and start fiddling with the metadata. ACR is a bit of a black box, so figuring this stuff out requires some trial and error (something, I don't really have time to do myself).

When I was looking into this, I stumbled upon a DNG tag I had apparently previously overlooked, it's called DefaultScale. Basically it's pixel aspect ratio (the name makes no sense, which is why I had never found it before). Filling in the correct value here should allow us to re-scale the squeezed 50/60fps automatically! ACR seems to respect this value, I haven't tried others (Premiere, Resolve, etc.). I'll need some sample MLV files of squeezed footage from various cameras for testing, so please upload it (post it here: http://www.magiclantern.fm/forum/index.php?topic=11899.0).

dmilligan

Updates:

I have implemented the automatic de-squeezing for 50/60 fps (and EOSM) 720p footage. Please test (and make sure also that it doesn't try to de-squeeze any sort of normal footage). Also, I have only tested ACR (which works correctly), other programs may or may not ignore this tag, so also let us know what programs work.

Danne

Gonna test this out tomorrow with my 5d mark III. Tried messing with exiftool yesterday but couldn, t get the tags in there. Thanks for sharing dng spec and really good find I must say.

N/A

Very nice update, looks like it works correctly with squashed 7d footage. This seems to give us better scaling quality than what AE includes, presumably since it's the raw data that's being scaled. Do you have any insight on this, dmilligan? AE's detail-preserving upscale works well but only allows for the footage to be scaled to match the comp width or height, making this a great time-saver as well.
7D. 600D. Rokinon 35 cine. Sigma 30 1.4
Audio and video recording/production, Random Photography
Want to help with the latest development but don't know how to compile?

dmilligan

It makes sense the quality might be slightly better since it allows the ACR debayer algorithm to be aware of the "non-square" pixels, and so it can take that into account when interpolating, resulting in slightly better interpolation.

Do you mind posting some 100% crop comparisons between the two methods for the pixel-peepers?

Danne

Did a test with three mlv clips filmed in 48, 50 and 60 fps with my 5d mark III. ACR interpretes the default scale value accordingly but couldn,t get the reading in Davinci resolve nor Premiere pro CC 2014.
Nice to use in an ACR workflow. Good one.

ACR


Davinci resolve


Premiere pro CC

Andy600

Premier and Resolve likely ignore the tag as it's not in CinemaDNG specs.

In Premier you can add custom pixel aspect ratios by editing a text file called 'Interpretation Rules.txt' (found in the Premier/Plugins directory - likely in a region specific folder i.e. en_US etc)

The aspect ratios must be integer values so if the unscaled image requires vertical scaling of say 1.67 you would scale by 100 and enter 100/167 in the text file - I haven't tried this BTW so you will have to experiment with the numbers.

Resolve is more limited as it has preset pixel aspect ratios so you would scale the frame size instead.

I'm not sure if either of the options above have any direct affect on the debayer algorithm itself but set Resolve's debayer to highest quality (and I suggest using the 'smoother' debayer option for these type of clips).
Colorist working with Davinci Resolve, Baselight, Nuke, After Effects & Premier Pro. Occasional Sunday afternoon DOP. Developer of Cinelog-C Colorspace Management and LUTs - www.cinelogdcp.com

Danne

Premiere state you can edit interpretation rules in the txt file. Me and several others have tried with no sucess. In Davinci resolve it,s very easy to unstretch the dng files. I think it,s "stretch footage to corners" or something like that.

Andy600

re: Resolve - that will only work correctly if the unstretched pixel aspect ratio correctly matches the output frame dimensions (i.e. 16:9 etc even if the actual stretched image is letterboxed) - a lot of users shoot odd frame sizes. It's better to choose 'Scale entire image to fit" in the main settings then scale the vertical dimension using the scale/framing controls in the color panel.
Colorist working with Davinci Resolve, Baselight, Nuke, After Effects & Premier Pro. Occasional Sunday afternoon DOP. Developer of Cinelog-C Colorspace Management and LUTs - www.cinelogdcp.com

Danne

Scale image to fit. That was what I meant :). Too bad however that the default scale tag isn, t read in cdng spec though...

dmilligan

Quote from: Andy600 on August 10, 2015, 02:44:45 PM
Premier and Resolve likely ignore the tag as it's not in CinemaDNG specs.
Well technically, it is in the CinemaDNG spec, since the cDNG spec is basically: reference to the DNG spec + some extra tags + file/folder naming convention. The real reason it's ignored is b/c these programs don't really try to conform to the spec, they simply implement it for the specific 'flavors' of cDNG produced by specific cameras, and there probably aren't any cameras they support with non-square pixels (though if using anamorphic lenses, any camera can have non-square pixels). But it's not like anybody even fully supports the DNG spec either (and Adobe, who wrote the spec, is often the worst offender).

Quote from: Andy600 on August 10, 2015, 02:44:45 PM
The aspect ratios must be integer values so if the unscaled image requires vertical scaling of say 1.67 you would scale by 100 and enter 100/167 in the text file - I haven't tried this BTW so you will have to experiment with the numbers.
The exact aspect ratio is 3:5, so wouldn't it be better to use 3/5?

N/A

Quote from: dmilligan on August 10, 2015, 03:00:49 AM
Do you mind posting some 100% crop comparisons between the two methods for the pixel-peepers?
Sure, I have a couple good examples. It may take a while though, my internet connection is pretty spotty right now.
7D. 600D. Rokinon 35 cine. Sigma 30 1.4
Audio and video recording/production, Random Photography
Want to help with the latest development but don't know how to compile?

Andy600

Yes, it's all down to what the devs choose to support beyond the mandatory tags.

I totally agree about Adobe. Their logic is more understandable when dealing with raw stills/print etc via ACR, Lightroom, Photoshop but I don't understand why they restrict Premier CDNG debayering to a display referred colorspace. It takes away some fundamental control of the raw image. Hopefully Resolve 12 has shown them how better to deal with colorspace management. I hope they move to something similar and also drop their reliance on ICC profiles - but I doubt it.

re: Pixel aspect ratio - of course, if that's the exact ratio it should be used.
Colorist working with Davinci Resolve, Baselight, Nuke, After Effects & Premier Pro. Occasional Sunday afternoon DOP. Developer of Cinelog-C Colorspace Management and LUTs - www.cinelogdcp.com

DeafEyeJedi

So far, I have been able to confirm with slo-mo files to be working fine with the latest updated MLVFS for both EOSM and 70D... it scales up nicely with ACR (SmartImport2) workflow in AE.



https://vimeo.com/136005690

I can't speak for DR but can confirm that PP does NOT read the tags for proper scaling.

Up next is the 5D3 slo-mo files.

Thanks, @dmilligan for the kind update!
5D3.113 | 5D3.123 | EOSM.203 | 7D.203 | 70D.112 | 100D.101 | EOSM2.* | 50D.109