Danne's crop_rec_4k experiments for EOS M

Started by Danne, December 03, 2018, 06:10:17 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Danne

I did some changes in crop_rec but for pausing scanning lines in real time etc should be fairly easy to do for any cam.

theBilalFakhouri

Quote from: ML700D on February 09, 2023, 04:57:55 PM
can it be used in 700d?

What do you want to use on 700D?
Dual ISO waterfall lines fix is already implemented.

ArK

Quote from: otisw on February 09, 2023, 04:16:26 PM
I was using your last build from Feb 8th.  The timestamp after opening the zip file on windows was 5:59pm, not sure what time zone that is after opening on my system.

On the iso, it just seems it's stuck in auto when I select 1080p.  Neither the ML menu or Canon menus allow me to change it from Auto IF I'm in movie mode on the camera's top 3-position selector.  The steps I posted seem long, but it seems logical.  Clear any previous settings, load the firmware, select 1080p, set 24fps using the Canon Menu, then try to change the ISO from Auto, which is not possible.  When I enable Dual Iso, only the recovery ISO I think it's called is changeable. The ability to see the dynamic range improvement in the Dual Iso menu isn't there, and the "tool tip" says it can't calculate it because it's in Auto ISO.

@otisw Just guessing here, but you mentioned resetting your camera in the canon menu. Did you set your movie mode back to manual from auto in the canon touchscreen menu after resetting it?

ML700D

Quote from: theBilalFakhouri on February 09, 2023, 05:35:59 PM
What do you want to use on 700D?
Dual ISO waterfall lines fix is already implemented.

ow I didn't realize that..  :D
I thought this is something new

thank's bilal you are the best!
EOS 700D

gabriielangel

Quote from: otisw on February 09, 2023, 01:50:49 AM
Hello - Trying Dual ISO for the first time with latest Feb8 build and can't seem to set the ISO base when using 1080p.  I'm showing red "buttons" next to Memory Patches debug with this build, and also the Jan13 build as well, which I wonder is expected or is indicates is a real problem?  I also don't seem to be able to get it out of Auto ISO mode in any of the presets I've tried (when the top rotary switch is set to the Movie icon).

Dual ISO does seem to work, MLVAPP gets rid of horizontal lines when enabling dual ISO.  Some of the frames are corrupted after exporting from MLV app though, but only tried 1 recording.  My SD card is a Sandisk Extreme Pro 200 MB/s 128 GB and it records 1080p OK with a green boxed counter as the recording progresses IF I don't go higher than 24 fps.  I've only been following this thread for a few weeks, and it's difficult to be sure I've followed the proper protocol folks are using since the info is scattered throughout the thread.  I started from scratch with a new install of ML with a freshly reset camera and my steps are listed below.  If you see something I'm missing that would enable me to set both the base/recovery ISO's properly or some other step I've done wrong I'd appreciate some help.  Nice work with this in any case, very cool what I've managed to get working so far!

1 Uninstall ML
2 Clear camera settings (Canon)
3 Erase ML autoexec, ml-setup.fir, ML directories
4 Copy ML firmware from 2/8/2023 build to card (Sandisk 200MB/s 128 gig)
5 Power on EOSM, select AV mode, update firmware, reboot after update
6 Press down button on rotary dial, Select 1080p in ML Movie menu
7 Exit ML menu and set Movie Rec. Size to 1920x1080[24
8 Memory Patches debug screen shows 5 red circles, 2 green circles, 1 red circle from top to bottom8
9 Canon ISO speed menu is unchangeable from Auto
10 ML Expo ISO setting is unchangeable from Auto
11 Dual ISO Recovery ISO shows 100, can be changed, set to 800 and back to Expo menu, Dual ISO shows 0/800
12 Recent menu shows ISO Auto, Dual ISO 0/800, Dual ISO - Recovery ISO 800, presets HD 1080p, startup presets none selected

Thanks, Wayne

When you run into problems of stuck canon menu items (Movie Mode, ISO) , just remove the card, power on the camera and the stuck menu will likely be "Unstuck". Set it, turn off then power the camera on with the card installed.

But the he camera saves certain files internally and sometimes, those are very stubborn. The easiest way to reset those is to install a different working ML build, restart the camera, and then proceed to install a new build.

Both cams I purchased came with a cheap 8GB card. I use those cards to save an older working build in case something goes wrong. You won't be able to record anything with those, but that's not the purpose :)

Try starting from STEP 1. If this doesn't work, then redo it by starting from step A (For very stubborn lockups)

A-I nstall an older working build on a cheap card (I see you have Jan 2023Jan13 at your disposal. This one worked well)
B- Put the cheap card in, power on the camera in Photo Camera mode (The Mode in the Middle)
C- Press INFO, tap the icon on the screen, top left corner, Set it to manual.
D-Press MENU, go the the wrench menu with 4 squares (The wrench menu right before the star, extreme right)
E-Select Clear settings, then clear all camera settings.
F-Select the Last item (firmware ver.:2.0.2), press SET.  If it's not 2.0.2, you'll need to update the firmware.
G-Select Camera, press SET. Then Update firmware by clicking OK. The camera won't update the firmware, but this step is required to set the bootflag on your card.
H-Restart the camera when prompted.
I-Go to the offending previously stuck menu and set it accordingly.

Then in the future, you will only need to do steps D,E and I

You can then proceed by modifying the procedure you stated slightly:
(Some steps are redundant if you started at A, but follow just for simplicity's sake)

1 Uninstall ML
2 Clear camera settings (Canon Menu, Just like in steps D,E)
3 Erase ML autoexec, ml-setup.fir, ML directories from the  Sandisk 200MB/s 128 gig (Leave the cheap recovery card alone!!)
4 Copy ML firmware from 2/9/2023 build to card (Sandisk 200MB/s 128 gig)
5 Power on EOSM in Photo mode, select M mode, update firmware, reboot after update (Just like in steps B,C; to set the bootflag if it isn't there already)

6
Power on camera in Movie Mode, press MENU
Tap on the top left corner icon and select Manual Mode (M)
Tap top right icon and set ISO 100
Then tap on the icon in bottom right corner and select 1920/24
Press Menu

7 Press down button on rotary dial, Select 1080p in ML Movie menu
Tap screen, Select 1080p

8 Press trash iicon to go in ML menu, In first menu (Expo) go select Dual iso, press SET, press play button and set recovery iso to 800 or what you prefer.
9 Press MENU, it should show ISO 100/800


With 1080p and 5kfrtp modes, the "Dynamic range gained" in Expo menu /Dual ISO shows 0.0.
This does not prevent the cam from recording dual ISO properly.
It displays correctly in the other modes though (2.5k, 2.8k, 5k ana flv, etc.)

P.S. It would be nice to have such a recovery procedure (In a more generic form of course) in a sticky somewhere in the forum. To expect a newcomer to read through the whole thread to gather the bits and pieces needed just to recover from a stuck menu makes no sense!

Danne

Quote from: theBilalFakhouri on February 09, 2023, 05:35:59 PM
What do you want to use on 700D?
Dual ISO waterfall lines fix is already implemented.
I do another route. When real-time preview I choose base iso, and when recording it starts with dual iso. Also fixed those fps timing stuff to get static scanning lines needed for proper post processing.

theBilalFakhouri

Quote from: Danne on February 09, 2023, 09:29:47 PM
I do another route. When real-time preview I choose base iso, and when recording it starts with dual iso.

These are preferences . . for me I like it as it is in official builds. I just disabled Dual ISO in x10 mode for checking focus easily.

I might change it later to make like HDR feature, previewing both ISOs while not recording:
e.g. if you select 100/1600 from Dual ISO, instead of showing interlaced Dual ISO lines while not recording, show exposure at 100 ISO for 1 second then show exposure at 1600 ISO for 1 second in loop, after hitting recording button turn on Dual ISO.


Quote from: Danne on February 09, 2023, 09:29:47 PM
Also fixed those fps timing stuff to get static scanning lines needed for proper post processing.

That's mainly what I am referring to, in 700D I fixed moving Dual ISO lines last year by tweaking FPS Timer B a tiny bit when Dual ISO is on, to avoid both flickering and crawling artifacts.
I called moving Dual ISO lines a "waterfall" effect.

otisw

Thanks guys for the tips on resolving dual iso.  It appears having Canon Movie mode set to Auto, the camera is going to adjust shutter speed, f-stop, AND ISO automatically.  If you want to use the ML dual iso feature, you must be in Manual mode, and then every exposure / fstop / ISO setting is fixed by you and stays that way.  I was thinking I could have the camera handle the shutter/fstop and just fix the two ISO settings on my own.

Thanks for the detailed procedure to set up the camera and how to use a second "unfreeze" firmware SD card version to fix that.  Fortunately, I haven't had that issue yet but if I do then now I'll know how to get out of it.

So no problem then with the red "buttons" next to the memory patches? 

gabriielangel

Build 2023Feb09 4:40 pm Clean Install
(I only reformat the card when I notice speed drops, as it is easier to write on a formatted SD card, than having to write over files deleted manually. This is probably why RED forces you to reformat the whole mag...)

All clips recorded with a white frame exposed to -1.0 as a reference

5k frtp/14bits

Dual ISO
100/200, 400/800 and 400/200 : Recorded dual ISO starting at frame 2
100/800 : Did not record dual ISO into the file even if the metadata registered the Dual ISO Flag

Now, even a Single ISO gives you the option to turn Dual ISO on, where before the Force button would appear.
As far as I am concerned, this is not a problem per se, as you know that if you see dual lines...

The image is rock steady and there isn't any movement at all in the frame. No flicker so far(The ultimate test being with an actual scene)

Not a single recording error.

2.5k 1:1 Centered/14bits

One lock up on zoom screen. Sometimes recording a clip brings it back to framing after recording stops, which worked on that occasion.

The metadata shows as expected for both Single and Dual ISO

No Flicker, but some movement in the frame, which is also present in single ISO (Is this to avoid fixed pattern noise?)

2.8k/12bits

Errors

while recording 100/400:
error Black 1/5 mean too different (2034, ref 10575 +- 0.0)
error Black 2/5 stdev too large (7098/100, ref 8781100)

One frozen zoom screen, not even a preset change got out of it. Restart required.

Dual ISO
The metadata shows as expected for both Single and Dual ISO.

No Flicker, but some movement in the frame, which is also present in single ISO.


Histogram

If I expose a full white frame and histogram says 1.0:
at 2.5k histogram will say 1.8 when aiming at the test chart, despite the max white square being at 1.0
at 5k frtp histogram will show 2.5
and when using dual ISO the values go +- 2 depending on the combination.

What we need is an absolute value, and maybe the 3 color clip dots. I don't think anyone is actually using the histogram for the graph, as it is so small. Maybe it could be modified to only show a number?

When using Dual ISO, f the exposure is not monitored closely, you end up with clipped highlights which often show pink, and not even playing with white level will fix, especially when recording at 12bits (or the whole frame can get a green tint) .

So some kind of peak luminance value would be very useful, if not mandatory.

Danne

Quote from: gabriielangel on February 10, 2023, 06:46:02 AM
Build 2023Feb09 4:40 pm Clean Install

5k frtp/14bits

Dual ISO
100/200, 400/800 and 400/200 : Recorded dual ISO starting at frame 2
100/800 : Did not record dual ISO into the file even if the metadata registered the Dual ISO Flag
Tested and could not reproduce. All files registered dualiso from frame one and metadata included.

Quote from: gabriielangel on February 10, 2023, 06:46:02 AM
Now, even a Single ISO gives you the option to turn Dual ISO on, where before the Force button would appear.
As far as I am concerned, this is not a problem per se, as you know that if you see dual lines...
Can´t follow. Good or bad thing :)?

Quote from: gabriielangel on February 10, 2023, 06:46:02 AM
2.5k 1:1 Centered/14bits
No Flicker, but some movement in the frame, which is also present in single ISO (Is this to avoid fixed pattern noise?)
No flicker after processing you mean? I could have a look. Which ratio was selected?


2.8k/12bits

Quote from: gabriielangel on February 10, 2023, 06:46:02 AM
Errors

while recording 100/400:
error Black 1/5 mean too different (2034, ref 10575 +- 0.0)
error Black 2/5 stdev too large (7098/100, ref 8781100)
Indicates some copression error I think. Did you enable histogram or something else during recording? If not we might need to fine tune the preset with reg_713c.

Quote from: gabriielangel on February 10, 2023, 06:46:02 AM
No Flicker, but some movement in the frame, which is also present in single ISO.
No flicker after processing you mean? I could have a look. Which ratio was selected?

Thanks for tests.

Danne

New build

- Reducing reg 713 by 5 units for 2.8k. Might reduce ocmpression errors. Also starting off in 10bit not 12bit.

iaburn

Quote from: Danne on February 10, 2023, 08:10:24 AM
- Reducing reg 713 by 5 units for 2.8k. Might reduce ocmpression errors. Also starting off in 10bit not 12bit.

How can this change affect the recording? Can reduce recording time or other things at the expenses of less chance of compression errors?
I'm asking because I don't remember having any errors on 2.8K 12bit, I wouldn't like having to record in 10bit to get long recording times  :'(
For me 10bits is like the last resort. 10bit with log curves can be great, but in RAW data reduces too much the already low dynamic range on this camera

Danne

Well. I didn't change anything that affects overhead. If it works with 12bit just apply 12bit as before. Maybe it's just my card that's a bit slower.

EDIT: Also uplaoded new build again  8). Rewrote some of the dual_iso code again. Needs to be tested more...
EDIT:2 Adding back 12bit on 2.8k when enabled from tap display again.

iaburn

Just tested this ver last build and 2.8K 12bit works as good as always: started on orange and got the green Immortal after a few seconds recording  :D
Dual ISO also works also very well, not having any issues in any mode lately. Metadata ok, detected on MLVApp, stripes not moving, no flicker, shortcuts work... perfect!

gabriielangel

Because there are a lot of state changes, when I get certain errors, it could be that I am interrupting a routine before it is complete. So, here is the exact procedure I used (After Answering your questions)

With 2.5k:
a single ISO clip has the Dual ISO section in MLV App disabled. You can enable the section by clicking on "Force";
a Dual ISO clip will enable the Dual ISO Section and you can turn Dual ISO to "on" (It defaults to "off", so you can see the dual ISO lines clearly.)

with 5k an frtp:
a Single ISO clip has the Dual ISO section enabled, but it is set to "off"
a Dual ISO clip also has the Dual ISO section enabled, but it is set to "off"

I make the assumption that the "force" option was added in case a Dual ISO clip isn't detected as such.
So, as long as it is consistent across presets, the behaviour we have at 5k ana frtp is more simple: on or off.
As long as the user is made aware that a Dual ISO clip looks like a Dual ISO clip :) no need to auto-enable the "on" switch in MLV App if it detects a Dual ISO clip,  and therefore no need for the "force" button

When I say no flicker, yes I mean after processing in MLV app. I export the clip as h.264 mov High Quality. Then I look at it to see if there is flicker.

Procedure:

Lens: ef-m 32mm f1.4@ 1.4
Circular polarizer (to reduce moiré)
VND2-400 Filter (To adjust Exposure without having to modify shutter speed)
Camera on Manual Focus
Shutter speed to 1/30 (Which usually shows as 1/33 in ML) This is necessary to gather enough light, otherwise I need to get too close to the screen, which will show all the little pixel dots and prevent the camera from recording.


Erase the ML folder, autoexec.bin and ML-SETUP.FIR
Copy the latest build on the card.

Turn on cam. Set ratio to 2.39:1 (I will eventually test the other ratios, but this one has proven to be the most efficient, so we can get SD data rate out of the way)

Power off, restart (Twice)

Tap Screen to load preset
Go in ML menu to change bitrate if required

[Begin Loop]
Enable Histogram and spot meter, exit
Put the white Frame on screen
Set the base ISO
Expose to get 1.0 on the histogram / 81-82% on spot meter (By turning the VND).
ML Menu, Disable Histogram and spot meter, exit
Record about 4 seconds -Stop
(See NOTE:)
Put the Dynamic Range Chart on screen (The one I included in yesterday's package)
* button to focus or check focus, slightly off focus to remove moiré as much as possible (Too much moiré will cause a compression error)
Record about 4 seconds -Stop
ML-Menu, enable Dual ISO, select Recovery Value (From 100 to 800), exit
Record about 4 seconds -Stop
[End Loop]

And I repeat the loop for the next Recovery ISO. When I reach 800, I satrt Over with another Base ISO, from 100 to 800.

NOTE: On some clips, I recorded the white frame in Dual ISO also, to check for clipping potentially introduced. So this would add a "ML Menu, Enable Dual ISO, Exit, Record-Stop, ML Menu Disable Daul ISO, Exit" Sequence at that particular point.






gabriielangel

Quote from: iaburn on February 10, 2023, 08:43:42 AM
How can this change affect the recording? Can reduce recording time or other things at the expenses of less chance of compression errors?
I'm asking because I don't remember having any errors on 2.8K 12bit, I wouldn't like having to record in 10bit to get long recording times  :'(
For me 10bits is like the last resort. 10bit with log curves can be great, but in RAW data reduces too much the already low dynamic range on this camera

I agree with the 10 bit point. From what I have read in the early posts, you reduce the bit rate by truncation without dither. The result is that the shadows are blotchy and unstable.
So Unless we are recording outdoors on a sunny day where everything in the frame is well exposed, we end up with a very annoying kind of noise.

You can check the samples I posted yesterday, I think we'll agree that especially when recording Dual ISO, 12 bits is the minimum.

If you (or Bilal the Magician) can find a way to pimp the JPEG lossless a little, 2.5k/14 might be all we need...

EDIT: There were no 10 bits examples in yesterday's post. I posted the difference here: https://www.magiclantern.fm/forum/index.php?topic=25781.msg241870#msg241870

Danne

Is dualiso in Mlv App not working as before you say?

gabriielangel

Quote from: Danne on February 10, 2023, 05:50:47 PM
Is dualiso in Mlv App not working as before you say?

Before, it behaved in MLV App like what I described for 2.5k, regardless of the resolution preset.
Now, there is one behavior for crop modes, and one behavior for 5k frtp.

If you meant the final output of a processed Dual ISO clip, many things changed in the last iterations.
in the first tests I did, 100/200 looked better than 100/800, now 100/800 looks better. But I lowered the recording level and you made some changes, so I guess we have to look at the clips I posted yesterday (2 days ago for you I guess) as a reference to evaluate against going forward.

Maybe a few others could chime in to give their opinion on how it should be optimized?
The main variables are Noise Level, DR Expansion, loss in resolution and optimal exposure.
Some kind of a compromise is necessary of course.
It would help if I knew how Dual ISO is managed on the camera side.

Danne

Hard time follow. I am not sure it's related to my build? Metadata should work the same. You could test recording 5k frtp with framing on. Then it should do exactly as crop modes. If that works something must be fixed again  8).

gabriielangel

Quote from: Danne on February 10, 2023, 09:26:44 PM
Hard time follow.

The difference I were talking about:

Single ISO 2.5K, look at the force button and Dual ISO is grayed out.


Single ISO 5K ana frtp, there is no force button


Dual ISO 2.5K


Dual ISO 5K ana frtp


Danne

Strange. What does it mean? That 5k frtp misses some metadata for dualiso? Did you try the framing trick?

EDIT: Just tested 5k frtp and 2.5k dualiso and no "force" button would show at all. Hm, are you running latest build? What version of Mlv App?

gabriielangel

I have the latest MLV App version available on their website, 1.14 macOS-Intel
I recorded this with 2023Feb09 4:40 pm

I also tried with the MLV App version I compiled from iaburns branch, it gives me the same results, but as it gave me compiling errors and I am not a Dev...
I only use those self-compiled versions for the level lines on the waveform monitor and to export frames, as the 1.14 version freezes when you try to export too many .png's

I'll be able to try Feb10 version over the weekend. I'll try the framing trick then.

I'd lean towards a metadata flag set differently on the 5kfrtp file, but on that front, I can only speculate.

A Single ISO 5k ana frtp file recorded with Build 2022-08-04 08:21:10 UTC (Taken from the file's header) will show the force button (and so will 2.5k and 2.8k recorded with that build).

Danne


gabriielangel

I confirm, all metadata now works as expected. Will post more details soon.

Mattia

Hi Danne! Do you plan to implement on the Eos M the mode Bilal is working on? 1736x2214 @ 23.976 FPS with full real time preview?