Unless the timer over head can be reduced (remember a1ex did some test) he was able to reduce more rolling shutter and here too
I think on the 5d3 the rolling shutter is around 18 I think .
So I hope to have less rolling shutter , but that work in process .
In 1080p 3x3, the minimum achievable rolling shutter would be...
the minimum timer A value in 1080p is 554
... 554 / 24 MHz = 23.08 μs/line.
You can already get this with FPS override, by manually changing timer A manually to 554 (in the Advanced menu).
Values without FPS override (i.e. with stock Canon firmware):
- 1080p24/30: 576 / 24 MHz = 23.8 μs/line
- 1080p25: 600 / 24 MHz = 25 μs/line
Theoretical speed: 5D2 reads out 4 columns at a time (i.e. 4 analog channels), with a pixel clock of 24 MHz; that would give 96 MPix/second. You just can't get more than that without overclocking (no idea whether this frequency is adjustable by software or not).
That means, the absolute minimum, assuming one can find a way to somehow get rid of the horizontal overheads (which is likely impossible), would be 1880 / 4 / 24 MHz = 19.58 μs/line. Keeping the left OB area (C0F06084: 0x10036, C0F06088: 0x4f40432) would require 0x432 * 2 / 4 / 24 MHz = 22.38 μs/line.
The remaining (unexplained) overhead is a whopping 23.08 - 22.38 = 0.7 μs/line. Even if that can be reduced somehow, I'm pretty sure it's not worth the effort. You simply won't get significant rolling shutter improvements without overclocking the sensor (or without reducing the horizontal resolution).
1100D, on the other hand, is an interesting beast:
720p25: A = 1000, B = 1280, readout size 1496 x 967 (this includes black borders)
720p30: A = 960, B = 1112, same readout size
Timer A can be pushed to 872 in both modes.
It runs at 32 MHz x 4 channels (i.e. pixel clock is the same 700D & co.), but for some reason, it has a huge overhead. In regular (24/25/30p) movie mode, C0F06084/88 is set to 0x200c3/0x3c903af, i.e. xmax = 1886 (likely rounded to 1888), out of which 390 pixels are cropped from the left side. ML still has to crop 68 pixels of left OB; that gives 1428 active horizontal pixels, 458 (!) for OB width and 2 pixels for rounding (guess); these require "only" 14.75 μs/line. The unexplained overhead would be 12.5 μs/line, or exactly 400 clock ticks. This one is worth fine-tuning, if you ask me.
Why?
- 720p24/30: 960 / 32 = 30 μs/line
- 720p25: 1000 / 32 = 31.25 μs/line
- FPS override: 872 / 32 = 27.25 μs/line
- theoretical value: (872 - 400) / 32 = 14.75 μs/line! (without altering OB areas)
For a 16:9 frame, which would be just 1428x804, it would require only 11.86 ms!
Assuming one can somehow drop 400 pixels from the left OB, that would free another 100 clock ticks, i.e. 11.63 μs/line, or 9.35 ms for a 16:9 LiveView frame.
5D3 also operates at 24 MHz, but has 8 channels. In 1080p 3x3, timer A values are (
see here):
- 24/30p: 440
- 25p: 480
- minimum value: 398
That gives 18.3 and 20 μs/line with Canon firmware, and 16.58 μs/line with FPS override.
C0F06800/C0F06804 are set to 0x10017/0x528011b; that would require 0x11b * 8 / 8 / 24 MHz = 11.8 μs/line (unexplained overhead: 4.8 μs/line, i.e. 115 clock ticks). Optical black area: Canon crops away 0x17 * 8 = 184 pixels, ML skips 146 + 2, active area width is 1932, total 2264 = 0x11b * 8.
That way, should we find out how to remove that overhead, a 16:9 frame (1920x1080) would require only 12.75 ms.
If we could also get rid of 300 OB pixels (out of 332), that would cut about 1.56 microseconds per line.
Of course, these are just theoretical values; I don't know how to reduce these overheads, I just tried to estimate whether it's worth trying to figure them out, or not. On 5D2, the potential improvement would be very small (the sensor is already used at close to its full speed in LiveView). On 5D3 and 1100D... it's worth taking a closer look.