Rolling shutter measurements for EOS R

TLDR: one can easily measure rolling shutter for any digital camera by... filming some flickering light!

Method: https://blog.kasson.com/nikon-z6-7/how-fast-is-the-z7-silent-shutter/

Code: https://www.magiclantern.fm/forum/index.php?topic=23040

main

Test setup (results provided by @kitor on the forum):

  • LED flickering at 500 Hz PWM generated with an Arduino Uno runnning pwm.ino
  • test frames from a 5D Mark II to cross-check the LED frequency.
In [1]:
%%shell
wget -q -c https://kitor.pl/eos_r/eos.zip
unzip -o eos.zip
Archive:  eos.zip
   creating: eos/
   creating: eos/5d2/
  inflating: eos/5d2/M17-1739.MLV    
  inflating: eos/5d2/M17-1740.MLV    
  inflating: eos/5d2/M17-1741.MLV    
  inflating: eos/5d2/MVI_3694.MOV    
  inflating: eos/5d2/MVI_3695.MOV    
  inflating: eos/5d2/MVI_3696.MOV    
   creating: eos/r/
  inflating: eos/r/2Q4A0193.MP4      
  inflating: eos/r/2Q4A0194.MP4      
  inflating: eos/r/2Q4A0195.MP4      
  inflating: eos/r/2Q4A0196.MP4      
  inflating: eos/r/2Q4A0197.MP4      
  inflating: eos/r/2Q4A0198.MP4      
  inflating: eos/r/2Q4A0199.MP4      
  inflating: eos/r/2Q4A0200.MP4      
  inflating: eos/r/2Q4A0201.MP4      
  inflating: eos/r/2Q4A0202.MP4      
  inflating: eos/r/2Q4A0203.MP4      
  inflating: eos/r/2Q4A0204.MP4      
  inflating: eos/r/2Q4A0205.MP4      
  inflating: eos/r/2Q4A0206.MP4      
  inflating: eos/r/2Q4A0207.MP4      
  inflating: eos/r/2Q4A0208.MP4      
  inflating: eos/r/2Q4A0211.CR3      
  inflating: eos/r/2Q4A0211.JPG      

Bunch of files to be identified from metadata. 5D2 files are for cross-checking the method on a camera with known timings.

In [2]:
%%shell
for f in eos/*/*.MOV eos/*/*.MP4; do
  echo -n "$f:"
  ffprobe -i $f |& grep fps | grep -oE --color=never " [0-9][0-9]+x[0-9]+.* fps"
done
eos/5d2/MVI_3694.MOV: 1920x1080, 42205 kb/s, 25 fps
eos/5d2/MVI_3695.MOV: 1920x1080, 44155 kb/s, 23.98 fps
eos/5d2/MVI_3696.MOV: 1920x1080, 42634 kb/s, 29.97 fps
eos/r/2Q4A0193.MP4: 3840x2160, 458157 kb/s, 24 fps
eos/r/2Q4A0194.MP4: 1920x1080, 88201 kb/s, 24 fps
eos/r/2Q4A0195.MP4: 1280x720, 39331 kb/s, 25 fps
eos/r/2Q4A0196.MP4: 3840x2160, 458958 kb/s, 25 fps
eos/r/2Q4A0197.MP4: 1920x1080, 178179 kb/s, 50 fps
eos/r/2Q4A0198.MP4: 1920x1080, 88277 kb/s, 25 fps
eos/r/2Q4A0199.MP4: 1280x720, 79443 kb/s, 50 fps
eos/r/2Q4A0200.MP4: 1280x720, 13009 kb/s, 25 fps
eos/r/2Q4A0201.MP4: 1280x720, 40117 kb/s, 29.97 fps
eos/r/2Q4A0202.MP4: 3840x2160, 467960 kb/s, 29.97 fps
eos/r/2Q4A0203.MP4: 3840x2160, 467360 kb/s, 23.98 fps
eos/r/2Q4A0204.MP4: 1920x1080, 179887 kb/s, 59.94 fps
eos/r/2Q4A0205.MP4: 1920x1080, 90027 kb/s, 29.97 fps
eos/r/2Q4A0206.MP4: 1920x1080, 89975 kb/s, 23.98 fps
eos/r/2Q4A0207.MP4: 1280x720, 80214 kb/s, 59.94 fps
eos/r/2Q4A0208.MP4: 1280x720, 13371 kb/s, 29.97 fps

Checking 5D2 files. Will prefer MLV, as H.264 is upsampled from some lower resolution (close to 1872x1053, but not 100% sure). We already know the sensor readout timings for raw image capture, but we do not know exactly the resizing factors in the processing pipeline.

In [3]:
%%shell
for f in eos/5d2/*.MLV; do
  echo -n "$f: "
  mlv_dump $f --dng -f1-32 -v |& grep -im1 --color=never fps
done
eos/5d2/M17-1739.MLV:     FPS         : 25.000000
eos/5d2/M17-1740.MLV:     FPS         : 23.976000
eos/5d2/M17-1741.MLV:     FPS         : 29.970000

Measuring the light frequency, knowing the readout timings in LiveView (Main Clock = 24 MHz, FPS timer A = 600 at 25p and 576 and 24/30p):

In [4]:
%%shell
echo -n > freq.log

for f in eos/5d2/M17-1739*.dng; do
  octave rolling.m $f 24e6 600 | grep --color=never "measured" | tee -a freq.log
done

for f in eos/5d2/M17-174[01]*.dng; do
  octave rolling.m $f 24e6 576 | grep --color=never "measured" | tee -a freq.log
done
Light source frequency: 498.81 Hz (measured).
Light source frequency: 498.77 Hz (measured).
Light source frequency: 498.73 Hz (measured).
Light source frequency: 498.81 Hz (measured).
Light source frequency: 498.81 Hz (measured).
Light source frequency: 498.89 Hz (measured).
Light source frequency: 498.92 Hz (measured).
Light source frequency: 499.00 Hz (measured).
Light source frequency: 499.00 Hz (measured).
Light source frequency: 499.04 Hz (measured).
Light source frequency: 499.08 Hz (measured).
Light source frequency: 499.04 Hz (measured).
Light source frequency: 499.00 Hz (measured).
Light source frequency: 498.96 Hz (measured).
Light source frequency: 498.92 Hz (measured).
Light source frequency: 499.00 Hz (measured).
Light source frequency: 498.92 Hz (measured).
Light source frequency: 499.00 Hz (measured).
Light source frequency: 499.11 Hz (measured).
Light source frequency: 499.19 Hz (measured).
Light source frequency: 499.34 Hz (measured).
Light source frequency: 499.50 Hz (measured).
Light source frequency: 499.73 Hz (measured).
Light source frequency: 499.88 Hz (measured).
Light source frequency: 500.03 Hz (measured).
Light source frequency: 500.22 Hz (measured).
Light source frequency: 500.26 Hz (measured).
Light source frequency: 500.34 Hz (measured).
Light source frequency: 500.37 Hz (measured).
Light source frequency: 500.22 Hz (measured).
Light source frequency: 500.14 Hz (measured).
Light source frequency: 500.03 Hz (measured).
Light source frequency: 496.82 Hz (measured).
Light source frequency: 496.23 Hz (measured).
Light source frequency: 495.59 Hz (measured).
Light source frequency: 495.63 Hz (measured).
Light source frequency: 495.24 Hz (measured).
Light source frequency: 495.95 Hz (measured).
Light source frequency: 496.82 Hz (measured).
Light source frequency: 495.99 Hz (measured).
Light source frequency: 495.55 Hz (measured).
Light source frequency: 495.55 Hz (measured).
Light source frequency: 495.20 Hz (measured).
Light source frequency: 496.27 Hz (measured).
Light source frequency: 496.78 Hz (measured).
Light source frequency: 495.79 Hz (measured).
Light source frequency: 495.63 Hz (measured).
Light source frequency: 495.43 Hz (measured).
Light source frequency: 495.35 Hz (measured).
Light source frequency: 496.51 Hz (measured).
Light source frequency: 496.51 Hz (measured).
Light source frequency: 495.63 Hz (measured).
Light source frequency: 495.67 Hz (measured).
Light source frequency: 495.35 Hz (measured).
Light source frequency: 495.51 Hz (measured).
Light source frequency: 496.82 Hz (measured).
Light source frequency: 496.31 Hz (measured).
Light source frequency: 495.55 Hz (measured).
Light source frequency: 495.67 Hz (measured).
Light source frequency: 495.24 Hz (measured).
Light source frequency: 495.83 Hz (measured).
Light source frequency: 496.86 Hz (measured).
Light source frequency: 496.11 Hz (measured).
Light source frequency: 495.59 Hz (measured).
Light source frequency: 495.71 Hz (measured).
Light source frequency: 496.23 Hz (measured).
Light source frequency: 495.67 Hz (measured).
Light source frequency: 495.79 Hz (measured).
Light source frequency: 496.07 Hz (measured).
Light source frequency: 495.67 Hz (measured).
Light source frequency: 495.95 Hz (measured).
Light source frequency: 496.03 Hz (measured).
Light source frequency: 495.59 Hz (measured).
Light source frequency: 496.07 Hz (measured).
Light source frequency: 495.95 Hz (measured).
Light source frequency: 495.55 Hz (measured).
Light source frequency: 496.19 Hz (measured).
Light source frequency: 495.91 Hz (measured).
Light source frequency: 495.55 Hz (measured).
Light source frequency: 496.27 Hz (measured).
Light source frequency: 495.75 Hz (measured).
Light source frequency: 495.43 Hz (measured).
Light source frequency: 496.43 Hz (measured).
Light source frequency: 495.71 Hz (measured).
Light source frequency: 495.47 Hz (measured).
Light source frequency: 496.55 Hz (measured).
Light source frequency: 495.67 Hz (measured).
Light source frequency: 495.43 Hz (measured).
Light source frequency: 496.59 Hz (measured).
Light source frequency: 495.67 Hz (measured).
Light source frequency: 495.43 Hz (measured).
Light source frequency: 496.71 Hz (measured).
Light source frequency: 495.59 Hz (measured).
Light source frequency: 495.31 Hz (measured).
Light source frequency: 496.78 Hz (measured).
Light source frequency: 495.59 Hz (measured).
In [5]:
%%shell
cat freq.log | cut -d ' ' -f 4 > freq.csv
In [6]:
freq = dlmread('freq.csv');
mean(freq)
std(freq)
ans =  497.05
ans =  1.7093

Looks like our PWM is running at slightly below the expected 500 Hz. This can be confirmed by watching the video clips recorded at 25p and 50p - the PWM is not perfectly in sync. Ideally, the stripes should stay in the same place (they should not move).

Double-checked the Arduino code on my Micro board; its output is definitely 500 Hz and in perfect sync with both 5D2 and 5D3 at 1080p25 (and at 1080p50 on the latter). Not sure what happened on kitor's side; he ran the same code on an Arduino Uno. He did test the signal with an oscilloscope and found it to drift between 499.4 and 498.8 Hz.

osc

Let's assume the PWM frequency is 499 Hz for now.

On EOS R, manual examination reveals the same amount of rolling shutter at some given resolution, regardless of frame rate.

In this case, let's group together all 4K files, all 1080p files, all regular 720p files and all slow-mo 720p files.

In [7]:
%%shell
cd eos/r/
mkdir -p 4K 1080p 720p 720p-sm

for f in *.MP4; do
  if ffprobe -i $f |& grep fps | grep -q "3840x2160"; then
    mv $f 4K/;
  elif ffprobe -i $f |& grep fps | grep -q "1920x1080"; then
    mv $f 1080p/;
  elif ffprobe -i $f |& grep fps | grep -q "1280x720"; then
    if ffprobe -i $f |& grep -q "Audio:"; then
      mv $f 720p/
    else
      mv $f 720p-sm/
    fi
  fi
done

Let's extract the first 8 frames from each clip.

In [8]:
%%shell
cd eos/r
for f in */*.MP4; do
    ffmpeg -loglevel quiet -hide_banner -i $f -vframes 8 $(dirname $f)/$(basename $f .MP4)-%d.png
done

First frames from each set (4K, 1080p, 720p, 720p slow-mo):

In [9]:
%%shell
for f in eos/r/*/*-1.png; do
  convert $f -resize 50% -quality 80 $(dirname $f)/$(basename $f .png).jpg
done

4K 1080p 720p 720p-sm

We've also got a silent still picture, apparently read out pretty quickly:

In [10]:
%%shell
convert eos/r/2Q4A0211.JPG -resize 20% -quality 80 eos/r/2Q4A0211-small.jpg

silent

Enough chit-chat, let's measure these rolling shutters!

Get the rolling shutter measurement script:

In [11]:
%%shell
wget -q -c https://a1ex.magiclantern.fm/bleeding-edge/rolling-shutter/rolling.m
wget -q -c https://a1ex.magiclantern.fm/bleeding-edge/rolling-shutter/read_raw.m

Full script output for the first frame in each clip:

In [12]:
%%shell
for f in eos/r/*.JPG eos/r/*/*-1.png; do
    echo ""
    echo "$f:"
    octave rolling.m $f 499
done
eos/r/2Q4A0211.JPG:
Using red channel.
Pattern repeats every 115 lines (method: pwelch).
Pattern repeats every 115 lines (method: overlap).
Pattern repeats every 115 lines (method: zerocross).
Method: pwelch => 114.74 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 57253.47 kHz, i.e. 17.47 μs/line (measured).
Rolling shutter: 78.25 ms for 4480 lines.

eos/r/1080p/2Q4A0194-1.png:
Using blue channel.
Pattern repeats every 142 lines (method: pwelch).
Pattern repeats every 142 lines (method: overlap).
Pattern repeats every 141 lines (method: zerocross).
Method: pwelch => 141.74 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 70727.15 kHz, i.e. 14.14 μs/line (measured).
Rolling shutter: 15.27 ms for 1080 lines.

eos/r/1080p/2Q4A0197-1.png:
Using blue channel.
Pattern repeats every 142 lines (method: pwelch).
Pattern repeats every 142 lines (method: overlap).
Pattern repeats every 137 lines (method: zerocross).
Method: pwelch => 142.30 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 71005.49 kHz, i.e. 14.08 μs/line (measured).
Rolling shutter: 15.21 ms for 1080 lines.

eos/r/1080p/2Q4A0198-1.png:
Using blue channel.
Pattern repeats every 142 lines (method: pwelch).
Pattern repeats every 142 lines (method: overlap).
Pattern repeats every 141 lines (method: zerocross).
Method: pwelch => 141.99 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 70851.65 kHz, i.e. 14.11 μs/line (measured).
Rolling shutter: 15.24 ms for 1080 lines.

eos/r/1080p/2Q4A0204-1.png:
Using blue channel.
Pattern repeats every 142 lines (method: pwelch).
Pattern repeats every 142 lines (method: overlap).
Pattern repeats every 140 lines (method: zerocross).
Method: pwelch => 141.53 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 70622.14 kHz, i.e. 14.16 μs/line (measured).
Rolling shutter: 15.29 ms for 1080 lines.

eos/r/1080p/2Q4A0205-1.png:
Using blue channel.
Pattern repeats every 142 lines (method: pwelch).
Pattern repeats every 142 lines (method: overlap).
Pattern repeats every 141 lines (method: zerocross).
Method: pwelch => 141.89 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 70803.71 kHz, i.e. 14.12 μs/line (measured).
Rolling shutter: 15.25 ms for 1080 lines.

eos/r/1080p/2Q4A0206-1.png:
Using blue channel.
Pattern repeats every 141 lines (method: pwelch).
Pattern repeats every 142 lines (method: overlap).
Pattern repeats every 141 lines (method: zerocross).
Method: pwelch => 141.49 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 70603.08 kHz, i.e. 14.16 μs/line (measured).
Rolling shutter: 15.30 ms for 1080 lines.

eos/r/4K/2Q4A0193-1.png:
Using blue channel.
Pattern repeats every 139 lines (method: pwelch).
Pattern repeats every 139 lines (method: overlap).
Pattern repeats every 138 lines (method: zerocross).
Method: pwelch => 138.74 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 69229.88 kHz, i.e. 14.44 μs/line (measured).
Rolling shutter: 31.20 ms for 2160 lines.

eos/r/4K/2Q4A0196-1.png:
Using blue channel.
Pattern repeats every 139 lines (method: pwelch).
Pattern repeats every 139 lines (method: overlap).
Pattern repeats every 138 lines (method: zerocross).
Method: pwelch => 138.68 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 69202.41 kHz, i.e. 14.45 μs/line (measured).
Rolling shutter: 31.21 ms for 2160 lines.

eos/r/4K/2Q4A0202-1.png:
Using blue channel.
Pattern repeats every 139 lines (method: pwelch).
Pattern repeats every 139 lines (method: overlap).
Pattern repeats every 139 lines (method: zerocross).
Method: pwelch => 138.72 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 69220.72 kHz, i.e. 14.45 μs/line (measured).
Rolling shutter: 31.20 ms for 2160 lines.

eos/r/4K/2Q4A0203-1.png:
Using blue channel.
Pattern repeats every 139 lines (method: pwelch).
Pattern repeats every 139 lines (method: overlap).
Pattern repeats every 139 lines (method: zerocross).
Method: pwelch => 138.66 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 69193.26 kHz, i.e. 14.45 μs/line (measured).
Rolling shutter: 31.22 ms for 2160 lines.

eos/r/720p/2Q4A0199-1.png:
Using blue channel.
Pattern repeats every 94 lines (method: pwelch).
Pattern repeats every 95 lines (method: overlap).
Pattern repeats every 94 lines (method: zerocross).
Method: pwelch => 94.32 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 47066.60 kHz, i.e. 21.25 μs/line (measured).
Rolling shutter: 15.30 ms for 720 lines.

eos/r/720p/2Q4A0200-1.png:
Using blue channel.
Pattern repeats every 95 lines (method: pwelch).
Pattern repeats every 94 lines (method: overlap).
Pattern repeats every 94 lines (method: zerocross).
Method: pwelch => 94.59 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 47202.47 kHz, i.e. 21.19 μs/line (measured).
Rolling shutter: 15.25 ms for 720 lines.

eos/r/720p/2Q4A0207-1.png:
Using blue channel.
Pattern repeats every 94 lines (method: pwelch).
Pattern repeats every 95 lines (method: overlap).
Pattern repeats every 95 lines (method: zerocross).
Method: pwelch => 94.36 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 47083.54 kHz, i.e. 21.24 μs/line (measured).
Rolling shutter: 15.29 ms for 720 lines.

eos/r/720p/2Q4A0208-1.png:
Using blue channel.
Pattern repeats every 95 lines (method: pwelch).
Pattern repeats every 95 lines (method: overlap).
Pattern repeats every 95 lines (method: zerocross).
Method: pwelch => 94.56 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 47185.45 kHz, i.e. 21.19 μs/line (measured).
Rolling shutter: 15.26 ms for 720 lines.

eos/r/720p-sm/2Q4A0195-1.png:
Using blue channel.
Pattern repeats every 213 lines (method: pwelch).
Pattern repeats every 212 lines (method: overlap).
Pattern repeats every 212 lines (method: zerocross).
Method: pwelch => 212.82 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 106198.38 kHz, i.e. 9.42 μs/line (measured).
Rolling shutter: 6.78 ms for 720 lines.

eos/r/720p-sm/2Q4A0201-1.png:
Using blue channel.
Pattern repeats every 208 lines (method: pwelch).
Pattern repeats every 212 lines (method: overlap).
Pattern repeats every 210 lines (method: zerocross).
Method: pwelch => 208.46 lines
Light source frequency: 499.00 Hz (known).
Line readout clock: 104023.74 kHz, i.e. 9.61 μs/line (measured).
Rolling shutter: 6.92 ms for 720 lines.

Repeatability test:

In [13]:
%%shell
echo -n > microseconds.log
for f in eos/r/*/*.png; do
    echo -n "$f: " | tee -a microseconds.log
    octave rolling.m $f 499 | grep --color=never "measured" | tee -a microseconds.log
done
eos/r/1080p/2Q4A0194-1.png: Line readout clock: 70727.15 kHz, i.e. 14.14 μs/line (measured).
eos/r/1080p/2Q4A0194-2.png: Line readout clock: 70803.71 kHz, i.e. 14.12 μs/line (measured).
eos/r/1080p/2Q4A0194-3.png: Line readout clock: 70794.13 kHz, i.e. 14.13 μs/line (measured).
eos/r/1080p/2Q4A0194-4.png: Line readout clock: 70832.47 kHz, i.e. 14.12 μs/line (measured).
eos/r/1080p/2Q4A0194-5.png: Line readout clock: 71053.70 kHz, i.e. 14.07 μs/line (measured).
eos/r/1080p/2Q4A0194-6.png: Line readout clock: 70708.03 kHz, i.e. 14.14 μs/line (measured).
eos/r/1080p/2Q4A0194-7.png: Line readout clock: 70698.48 kHz, i.e. 14.14 μs/line (measured).
eos/r/1080p/2Q4A0194-8.png: Line readout clock: 70822.88 kHz, i.e. 14.12 μs/line (measured).
eos/r/1080p/2Q4A0197-1.png: Line readout clock: 71005.49 kHz, i.e. 14.08 μs/line (measured).
eos/r/1080p/2Q4A0197-2.png: Line readout clock: 71053.70 kHz, i.e. 14.07 μs/line (measured).
eos/r/1080p/2Q4A0197-3.png: Line readout clock: 70928.48 kHz, i.e. 14.10 μs/line (measured).
eos/r/1080p/2Q4A0197-4.png: Line readout clock: 70995.85 kHz, i.e. 14.09 μs/line (measured).
eos/r/1080p/2Q4A0197-5.png: Line readout clock: 70880.44 kHz, i.e. 14.11 μs/line (measured).
eos/r/1080p/2Q4A0197-6.png: Line readout clock: 70842.06 kHz, i.e. 14.12 μs/line (measured).
eos/r/1080p/2Q4A0197-7.png: Line readout clock: 70803.71 kHz, i.e. 14.12 μs/line (measured).
eos/r/1080p/2Q4A0197-8.png: Line readout clock: 70880.44 kHz, i.e. 14.11 μs/line (measured).
eos/r/1080p/2Q4A0198-1.png: Line readout clock: 70851.65 kHz, i.e. 14.11 μs/line (measured).
eos/r/1080p/2Q4A0198-2.png: Line readout clock: 70774.98 kHz, i.e. 14.13 μs/line (measured).
eos/r/1080p/2Q4A0198-3.png: Line readout clock: 70842.06 kHz, i.e. 14.12 μs/line (measured).
eos/r/1080p/2Q4A0198-4.png: Line readout clock: 70880.44 kHz, i.e. 14.11 μs/line (measured).
eos/r/1080p/2Q4A0198-5.png: Line readout clock: 70861.24 kHz, i.e. 14.11 μs/line (measured).
eos/r/1080p/2Q4A0198-6.png: Line readout clock: 71005.49 kHz, i.e. 14.08 μs/line (measured).
eos/r/1080p/2Q4A0198-7.png: Line readout clock: 70986.22 kHz, i.e. 14.09 μs/line (measured).
eos/r/1080p/2Q4A0198-8.png: Line readout clock: 70890.05 kHz, i.e. 14.11 μs/line (measured).
eos/r/1080p/2Q4A0204-1.png: Line readout clock: 70622.14 kHz, i.e. 14.16 μs/line (measured).
eos/r/1080p/2Q4A0204-2.png: Line readout clock: 70976.59 kHz, i.e. 14.09 μs/line (measured).
eos/r/1080p/2Q4A0204-3.png: Line readout clock: 70765.41 kHz, i.e. 14.13 μs/line (measured).
eos/r/1080p/2Q4A0204-4.png: Line readout clock: 70650.75 kHz, i.e. 14.15 μs/line (measured).
eos/r/1080p/2Q4A0204-5.png: Line readout clock: 71015.12 kHz, i.e. 14.08 μs/line (measured).
eos/r/1080p/2Q4A0204-6.png: Line readout clock: 70803.71 kHz, i.e. 14.12 μs/line (measured).
eos/r/1080p/2Q4A0204-7.png: Line readout clock: 70660.29 kHz, i.e. 14.15 μs/line (measured).
eos/r/1080p/2Q4A0204-8.png: Line readout clock: 70966.96 kHz, i.e. 14.09 μs/line (measured).
eos/r/1080p/2Q4A0205-1.png: Line readout clock: 70803.71 kHz, i.e. 14.12 μs/line (measured).
eos/r/1080p/2Q4A0205-2.png: Line readout clock: 70909.26 kHz, i.e. 14.10 μs/line (measured).
eos/r/1080p/2Q4A0205-3.png: Line readout clock: 70784.55 kHz, i.e. 14.13 μs/line (measured).
eos/r/1080p/2Q4A0205-4.png: Line readout clock: 70890.05 kHz, i.e. 14.11 μs/line (measured).
eos/r/1080p/2Q4A0205-5.png: Line readout clock: 70803.71 kHz, i.e. 14.12 μs/line (measured).
eos/r/1080p/2Q4A0205-6.png: Line readout clock: 70842.06 kHz, i.e. 14.12 μs/line (measured).
eos/r/1080p/2Q4A0205-7.png: Line readout clock: 70842.06 kHz, i.e. 14.12 μs/line (measured).
eos/r/1080p/2Q4A0205-8.png: Line readout clock: 70928.48 kHz, i.e. 14.10 μs/line (measured).
eos/r/1080p/2Q4A0206-1.png: Line readout clock: 70603.08 kHz, i.e. 14.16 μs/line (measured).
eos/r/1080p/2Q4A0206-2.png: Line readout clock: 70803.71 kHz, i.e. 14.12 μs/line (measured).
eos/r/1080p/2Q4A0206-3.png: Line readout clock: 70755.84 kHz, i.e. 14.13 μs/line (measured).
eos/r/1080p/2Q4A0206-4.png: Line readout clock: 70813.29 kHz, i.e. 14.12 μs/line (measured).
eos/r/1080p/2Q4A0206-5.png: Line readout clock: 70966.96 kHz, i.e. 14.09 μs/line (measured).
eos/r/1080p/2Q4A0206-6.png: Line readout clock: 70832.47 kHz, i.e. 14.12 μs/line (measured).
eos/r/1080p/2Q4A0206-7.png: Line readout clock: 70612.61 kHz, i.e. 14.16 μs/line (measured).
eos/r/1080p/2Q4A0206-8.png: Line readout clock: 70880.44 kHz, i.e. 14.11 μs/line (measured).
eos/r/4K/2Q4A0193-1.png: Line readout clock: 69229.88 kHz, i.e. 14.44 μs/line (measured).
eos/r/4K/2Q4A0193-2.png: Line readout clock: 69156.68 kHz, i.e. 14.46 μs/line (measured).
eos/r/4K/2Q4A0193-3.png: Line readout clock: 69202.41 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0193-4.png: Line readout clock: 69202.41 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0193-5.png: Line readout clock: 69165.82 kHz, i.e. 14.46 μs/line (measured).
eos/r/4K/2Q4A0193-6.png: Line readout clock: 69211.56 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0193-7.png: Line readout clock: 69156.68 kHz, i.e. 14.46 μs/line (measured).
eos/r/4K/2Q4A0193-8.png: Line readout clock: 69211.56 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0196-1.png: Line readout clock: 69202.41 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0196-2.png: Line readout clock: 69229.88 kHz, i.e. 14.44 μs/line (measured).
eos/r/4K/2Q4A0196-3.png: Line readout clock: 69239.04 kHz, i.e. 14.44 μs/line (measured).
eos/r/4K/2Q4A0196-4.png: Line readout clock: 69229.88 kHz, i.e. 14.44 μs/line (measured).
eos/r/4K/2Q4A0196-5.png: Line readout clock: 69220.72 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0196-6.png: Line readout clock: 69211.56 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0196-7.png: Line readout clock: 69202.41 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0196-8.png: Line readout clock: 69184.11 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0202-1.png: Line readout clock: 69220.72 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0202-2.png: Line readout clock: 69165.82 kHz, i.e. 14.46 μs/line (measured).
eos/r/4K/2Q4A0202-3.png: Line readout clock: 69156.68 kHz, i.e. 14.46 μs/line (measured).
eos/r/4K/2Q4A0202-4.png: Line readout clock: 69211.56 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0202-5.png: Line readout clock: 69174.96 kHz, i.e. 14.46 μs/line (measured).
eos/r/4K/2Q4A0202-6.png: Line readout clock: 69184.11 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0202-7.png: Line readout clock: 69211.56 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0202-8.png: Line readout clock: 69193.26 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0203-1.png: Line readout clock: 69193.26 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0203-2.png: Line readout clock: 69211.56 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0203-3.png: Line readout clock: 69147.54 kHz, i.e. 14.46 μs/line (measured).
eos/r/4K/2Q4A0203-4.png: Line readout clock: 69211.56 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0203-5.png: Line readout clock: 69174.96 kHz, i.e. 14.46 μs/line (measured).
eos/r/4K/2Q4A0203-6.png: Line readout clock: 69156.68 kHz, i.e. 14.46 μs/line (measured).
eos/r/4K/2Q4A0203-7.png: Line readout clock: 69202.41 kHz, i.e. 14.45 μs/line (measured).
eos/r/4K/2Q4A0203-8.png: Line readout clock: 69184.11 kHz, i.e. 14.45 μs/line (measured).
eos/r/720p/2Q4A0199-1.png: Line readout clock: 47066.60 kHz, i.e. 21.25 μs/line (measured).
eos/r/720p/2Q4A0199-2.png: Line readout clock: 47079.31 kHz, i.e. 21.24 μs/line (measured).
eos/r/720p/2Q4A0199-3.png: Line readout clock: 47070.84 kHz, i.e. 21.24 μs/line (measured).
eos/r/720p/2Q4A0199-4.png: Line readout clock: 47104.74 kHz, i.e. 21.23 μs/line (measured).
eos/r/720p/2Q4A0199-5.png: Line readout clock: 47130.19 kHz, i.e. 21.22 μs/line (measured).
eos/r/720p/2Q4A0199-6.png: Line readout clock: 47066.60 kHz, i.e. 21.25 μs/line (measured).
eos/r/720p/2Q4A0199-7.png: Line readout clock: 47079.31 kHz, i.e. 21.24 μs/line (measured).
eos/r/720p/2Q4A0199-8.png: Line readout clock: 47104.74 kHz, i.e. 21.23 μs/line (measured).
eos/r/720p/2Q4A0200-1.png: Line readout clock: 47202.47 kHz, i.e. 21.19 μs/line (measured).
eos/r/720p/2Q4A0200-2.png: Line readout clock: 47202.47 kHz, i.e. 21.19 μs/line (measured).
eos/r/720p/2Q4A0200-3.png: Line readout clock: 47202.47 kHz, i.e. 21.19 μs/line (measured).
eos/r/720p/2Q4A0200-4.png: Line readout clock: 47262.16 kHz, i.e. 21.16 μs/line (measured).
eos/r/720p/2Q4A0200-5.png: Line readout clock: 47202.47 kHz, i.e. 21.19 μs/line (measured).
eos/r/720p/2Q4A0200-6.png: Line readout clock: 47181.19 kHz, i.e. 21.19 μs/line (measured).
eos/r/720p/2Q4A0200-7.png: Line readout clock: 47147.18 kHz, i.e. 21.21 μs/line (measured).
eos/r/720p/2Q4A0200-8.png: Line readout clock: 47155.68 kHz, i.e. 21.21 μs/line (measured).
eos/r/720p/2Q4A0207-1.png: Line readout clock: 47083.54 kHz, i.e. 21.24 μs/line (measured).
eos/r/720p/2Q4A0207-2.png: Line readout clock: 47210.99 kHz, i.e. 21.18 μs/line (measured).
eos/r/720p/2Q4A0207-3.png: Line readout clock: 47198.22 kHz, i.e. 21.19 μs/line (measured).
eos/r/720p/2Q4A0207-4.png: Line readout clock: 47100.50 kHz, i.e. 21.23 μs/line (measured).
eos/r/720p/2Q4A0207-5.png: Line readout clock: 47262.16 kHz, i.e. 21.16 μs/line (measured).
eos/r/720p/2Q4A0207-6.png: Line readout clock: 47245.09 kHz, i.e. 21.17 μs/line (measured).
eos/r/720p/2Q4A0207-7.png: Line readout clock: 47066.60 kHz, i.e. 21.25 μs/line (measured).
eos/r/720p/2Q4A0207-8.png: Line readout clock: 47279.25 kHz, i.e. 21.15 μs/line (measured).
eos/r/720p/2Q4A0208-1.png: Line readout clock: 47185.45 kHz, i.e. 21.19 μs/line (measured).
eos/r/720p/2Q4A0208-2.png: Line readout clock: 47185.45 kHz, i.e. 21.19 μs/line (measured).
eos/r/720p/2Q4A0208-3.png: Line readout clock: 47185.45 kHz, i.e. 21.19 μs/line (measured).
eos/r/720p/2Q4A0208-4.png: Line readout clock: 47210.99 kHz, i.e. 21.18 μs/line (measured).
eos/r/720p/2Q4A0208-5.png: Line readout clock: 47202.47 kHz, i.e. 21.19 μs/line (measured).
eos/r/720p/2Q4A0208-6.png: Line readout clock: 47215.25 kHz, i.e. 21.18 μs/line (measured).
eos/r/720p/2Q4A0208-7.png: Line readout clock: 47219.51 kHz, i.e. 21.18 μs/line (measured).
eos/r/720p/2Q4A0208-8.png: Line readout clock: 47151.43 kHz, i.e. 21.21 μs/line (measured).
eos/r/720p-sm/2Q4A0195-1.png: Line readout clock: 106198.38 kHz, i.e. 9.42 μs/line (measured).
eos/r/720p-sm/2Q4A0195-2.png: Line readout clock: 106047.71 kHz, i.e. 9.43 μs/line (measured).
eos/r/720p-sm/2Q4A0195-3.png: Line readout clock: 106133.76 kHz, i.e. 9.42 μs/line (measured).
eos/r/720p-sm/2Q4A0195-4.png: Line readout clock: 105833.22 kHz, i.e. 9.45 μs/line (measured).
eos/r/720p-sm/2Q4A0195-5.png: Line readout clock: 105640.91 kHz, i.e. 9.47 μs/line (measured).
eos/r/720p-sm/2Q4A0195-6.png: Line readout clock: 105619.58 kHz, i.e. 9.47 μs/line (measured).
eos/r/720p-sm/2Q4A0195-7.png: Line readout clock: 106133.76 kHz, i.e. 9.42 μs/line (measured).
eos/r/720p-sm/2Q4A0195-8.png: Line readout clock: 105918.91 kHz, i.e. 9.44 μs/line (measured).
eos/r/720p-sm/2Q4A0201-1.png: Line readout clock: 104023.74 kHz, i.e. 9.61 μs/line (measured).
eos/r/720p-sm/2Q4A0201-2.png: Line readout clock: 105811.81 kHz, i.e. 9.45 μs/line (measured).
eos/r/720p-sm/2Q4A0201-3.png: Line readout clock: 106674.70 kHz, i.e. 9.37 μs/line (measured).
eos/r/720p-sm/2Q4A0201-4.png: Line readout clock: 105769.04 kHz, i.e. 9.45 μs/line (measured).
eos/r/720p-sm/2Q4A0201-5.png: Line readout clock: 105576.96 kHz, i.e. 9.47 μs/line (measured).
eos/r/720p-sm/2Q4A0201-6.png: Line readout clock: 105598.27 kHz, i.e. 9.47 μs/line (measured).
eos/r/720p-sm/2Q4A0201-7.png: Line readout clock: 103735.02 kHz, i.e. 9.64 μs/line (measured).
eos/r/720p-sm/2Q4A0201-8.png: Line readout clock: 105619.58 kHz, i.e. 9.47 μs/line (measured).
In [14]:
%%shell
cat microseconds.log | grep '/4K/' | cut -d ' ' -f 8 > microseconds-4K.csv
cat microseconds.log | grep '/1080p/' | cut -d ' ' -f 8 > microseconds-1080p.csv
cat microseconds.log | grep '/720p/' | cut -d ' ' -f 8 > microseconds-720p.csv
cat microseconds.log | grep '/720p-sm/' | cut -d ' ' -f 8 > microseconds-720p-sm.csv
In [15]:
for mode = {"4K", "1080p", "720p", "720p-sm"}
    microseconds = dlmread(sprintf('microseconds-%s.csv', mode{1}));
    printf("%s: %.02f +/- %.03f μs/line\n", mode{1}, mean(microseconds), 3 * std(microseconds))
end
4K: 14.45 +/- 0.019 μs/line
1080p: 14.12 +/- 0.067 μs/line
720p: 21.20 +/- 0.087 μs/line
720p-sm: 9.47 +/- 0.204 μs/line

That's it!

For the silent shutter, we've got only one test image => no repeatability analysis for now:

Line readout clock: 57253.47 kHz, i.e. 17.47 μs/line (measured).
Rolling shutter: 78.25 ms for 4480 lines.

This gives 6720x4480 at 12.78 FPS, i.e. 385 MPix / second! Not bad :)

Multiplying by image height to get total readout time:

14.45 x 2160 = 31.2 ms at 3840x2160 (readout size unknown)
14.12 x 1080 = 15.3 ms at 1920x1080 (5D4: read out as 2256x1266)
21.20 x 720  = 15.3 ms at 1280x720  (guess: read out as 1080p and resized to 720p?)
 9.47 x 720  =  6.8 ms at 1280x720  (slow motion)

These numbers are encouraging; hoping for full width readout at 24 fps.

Other cameras?

Yes, feel free to submit test images!