Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - a1ex

#8651
Raw Video / Re: 5D MK3 Raw sensor ISO noise samples
June 12, 2013, 10:24:50 AM
Running through the raw samples for vertical banding, collected from the forum, I've noticed the white level is 16382 or 16383. The 16383 one may be because some samples were already corrected for banding, and I've reversed the raw data.

If this is true in LiveView for all ISOs, that's interesting. Will check on the other cameras.
edit: on 5D2 it varies between 15850 and 15882.

I didn't check the 4channel, because the conclusion is clear for me: digital ISO has no effect on LiveView raw data.

I can compute 4 black levels, no big deal. Though it's unlikely to make a difference, can you find some examples?
#8652
Correction: you can't use LV to check dynamic range, because ISO in LV is usually very different from ISO in photo mode. Plus, different sampling modes will result in different noise patterns, so I've disabled this indicator in photo LV.

The indication from movie LV is a better estimation, but I think it's still off. For checking underexposure, just take a test shot.

Noise analysis is done on the fly, for each shot.
#8653
When ETTR fails, it's because convergence is not achieved in 3-4 steps. Not related to dynamic range.

For this, you can look at the underexposure zebras / histogram and judge it.

This would be quite difficult to implement (the biggest issue being very tight coupling between ETTR and bracketing, which I want to avoid).
#8654
Maybe write a script that does the same job? (not sure what's the best choice for portability)
#8655
Look at the formulas.

int shutter_r_x1000 = TIMER_TO_SHUTTER_x1000(timer);
=> int shutter_r_x1000 = TG_FREQ_SHUTTER/timer
=> TG_FREQ_SHUTTER = shutter_r_x1000 * timer
=> at 1/60, 60000 * timer

Look at shutter display from ML menu, the one with 3 decimal places.
#8656
Look in the scripting area, there is one script that does something similar (posted by Greg IIRC)
#8657
Raw Video / Re: 5D MK3 Raw sensor ISO noise samples
June 12, 2013, 09:15:24 AM
Wait a minute, we were talking about video, not photo. They do not behave in the same way.

My samples: 160  200  250

dcraw -h does not do demosaicing, it just groups a RGGB cell in a RGB pixel.

The difference in squig's files comes from different white levels, because I thought raw in movie mode behaves like in photo mode when you change the ISO.
#8658
First stop: get_current_shutter_reciprocal_x1000

It should work with FRAME_SHUTTER_TIMER, not with apex units. The apex trick is just a fallback thing that works without much porting effort.

Second stop: find FRAME_SHUTTER_TIMER (near FRAME_ISO and others). When shutter gets slower, the timer increases.

Third: adjust TG_FREQ_SHUTTER so it shows 1/50.000 in PAL with Canon shutter speed at 1/50, and 1/60.000 in NTSC with Canon shutter speed at 1/60. For high FPS modes, use 1/100.000 (PAL) and 1/120.000 (NTSC). There are usually two constants: one for PAL and one for NTSC. The values are usually round. 50D only has 30fps natively, so there's only one value to find.

These things are used to display exact shutter speed in movie mode (with or without fps override). In photo mode it will use apex.

That should be it. The formula for FPS seems portable, see comments from get_current_shutter_reciprocal_x1000, fps_setup_timerA and fps_try_to_get_180_360_shutter.

#8659
Last time I've checked, ML was right.
#8660
Raw Video / Re: 5D MK3 Raw sensor ISO noise samples
June 11, 2013, 10:48:26 PM
OK, here's my test:



red = iso160, green = iso200, blue = iso250

5d3, movie mode, 1/90, lens cap on, dng silent pics
black/white: 2047 15000


import os, sys, subprocess, shlex
from pylab import *

def get_raw_data(file):
    cmd1 = "dcraw -c -D -4 -o 0 -h -T '%s'" % file
    cmd2 = "convert - -type Grayscale -format %c histogram:info:-"

    p1 = subprocess.Popen(shlex.split(cmd1), stdout=subprocess.PIPE)
    p2 = subprocess.Popen(shlex.split(cmd2), stdin=p1.stdout, stdout=subprocess.PIPE)
    lines = p2.communicate()[0].split("\n")
    X = []
    for l in lines[1:]:
        p1 = l.find("(")
        if p1 > 0:
            p2 = l.find(",", p1)
            level = int(l[p1+1:p2])
            count = int(l[:p1-2])
            X += [level]*count
    return array(X)

a = get_raw_data("160.dng")
b = get_raw_data("200.dng")
c = get_raw_data("250.dng")

hist(a, 500, color='r')
hist(b+0.2, 500, color='g')
hist(c-0.2, 500, color='b')
show()

#8661
Raw Video / Re: 5D MK3 Raw sensor ISO noise samples
June 11, 2013, 10:16:31 PM
If I keep the same black and white levels, the raw histogram doesn't change. Also, if I change the digital ISO in image fine-tuning menu, the image doesn't change either.

If I change the white level in exif, the image is developed differently in ufraw (higher white level = darker image).

I don't know what RawDigger is doing to show these graphs, because I can't look inside. I can try to repeat the tests myself - were they taken with lens cap on?

In YUV (JPEG), the highlights at ISO 160 are a bit fake. ML is faking the histogram in a similar way in photo mode LV, so the histogram matches the CR2 one (this is needed for auto ETTR and highlight warnings in photo mode LiveView).
#8662
Maybe the card is just warming up, I didn't do any optimizations in the last few days :)
#8663
Format the card from the camera.

Also, note that reinstalling Canon firmware will not remove ML.
#8664
General Chat / Re: HIGHER FPS...IMPOSSBILE...
June 11, 2013, 04:50:15 PM
CAN HAZ FPS?
GIMMEH 60 FPS
IZ FPS BIGGER THAN 30 IN CANON MENU?
     AWSUM THX
          RECORD
     O NOES
          PHUCK
KTHXBYE
#8665
Raw Video / Re: NOISE REDUCTION SETTING 5D3
June 11, 2013, 04:43:35 PM
Another tip: set digital ISO to -1EV in image finetuning. You'll be a little more tempted to expose to the right.
#8666
I don't want to support this hack, and I'll disable it completely in future builds, for usability reasons.

If you can show me two videos of the camera display while recording, with CPU usage enabled (Debug: Show CPU usage: Busy tasks, REL), I may figure out what's the difference between the two modes and squeeze some more speed. On my 5D3 I don't see any difference, but it may be some Canon setting.
#8667
There is a cropmark on the screen, it shows the FOV.
#8668
Tragic Lantern / Re: Tragic Lantern for EOS M
June 11, 2013, 02:00:52 PM
Yes, expo override helps. If ML says Mv in the bottom-left corner, it should be OK.
#8669
Tragic Lantern / Re: Tragic Lantern for EOS M
June 11, 2013, 01:48:28 PM
Okay... the biggest problem is that exposure in photo mode is not using the parameters you have set in menu, but something with equivalent brightness and usually wide-open.

Sure, you may say you don't care about that, but in that case you can just record H.264.

Another trouble is that I don't like the code complexity increase because of this; on the cameras that don't need it, I want to keep things simple and just record in movie mode.
#8670
The speed from ML menu is accurate for continuous recording.
#8671
Scripting Q&A / Re: scripts doesn't work
June 11, 2013, 01:40:10 PM
PicoC is going to be replaced with TCC (and raw builds use TCC, both as module loader and as scripting engine).

There is a difference between the dialects: TCC needs a main function, because it's ANSI C, but PicoC just executes whatever it finds there. Also, PicoC API is not yet ported to TCC.
#8672
Tragic Lantern / Re: Tragic Lantern for EOS M
June 11, 2013, 01:31:11 PM
How big is the buffer in movie mode and how big is in photo mode?

Also the max resolution, does it change?
#8673
Yes, on 5D3 you need to set both.
#8674
Tragic Lantern / Re: Tragic Lantern for EOS M
June 11, 2013, 01:12:02 PM
Looks like the EOS-M has a dedicated movie mode: http://www.dpreview.com/previews/canon-eos-m/images/top.jpg

What's wrong with it? why do you have to record in photo mode?

I want to get rid of this hack, because it's giving me lots of trouble on the other cameras.
#8675
M is photo mode, movie mode is movie mode. Don't mix them.