Full-resolution silent pictures (silent.mo)

Started by a1ex, July 01, 2014, 05:11:15 PM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.


Full-resolution means that you are using the whole sensor, and all the pixels. So there's no crop at all in this mode.

Crop mode only makes sense when you shoot at lower resolutions, like the ones used for video recording (1024p, 720p, etc.)


I don't know ig this has been asked before, I've tried searching and found nothing.  Can Silent Pictures be used together with Focus Stackiing module?  This would be a killer combination!


Hi, everybody.
I include intervalometr and Silent Picture, an interval 0 (automatically to make it the shortest), exposure1/125, the mode of shooting M. I start shooting. Real exposure~ 0.3 s. The interval between shots at first 1.5 s (shortest), then through one - two hundred shots starts changing (can reach to 6 s, changing both in big and in the smaller direction. Is it normal? How to stabilize an interval? I have Canon 6D 1.1.6.



In MLV some data of EXIF register, in DNG isn't present.


Hi guys,

I also have a 550D but never really got on with the Silent Pictures on that camera (hard to get anything usable and the noise was too much) ... is it a lot easier on the 5D MKII and now get better results with a 5D MKII? ...

I want to replace my trusty 550D now and it's time to upgarde ... I used ML on the 550D for a lot of other stuff which is great btw ...

I have recently just got hold of a nice Canon 5D MKII and just need to ask a (simple?) question ...

The question is:
I require, for the 5D MKII, the FRSP function that can take JPGs & RAW photos for either Timelapse in Daytime and night time Astro work and also for Focus Stacking ... I'm so confused at what builds have what functions/options ...

I do not need MLV or RAW video capabilities (yet) just the options for taking Photos only ...

Will the old 2.3 Stable edition be enough or has FRSP advanced that much that I would need to go for a nighlty build? ... if so what edition (old or new) would give me these capabilities? ...


Canon 550D(T2i) Magic Lantern (Nightly Builds)

Walter Schulz


FRSP are only avail in the latest nightlies whereas it isn't in the old (very old) v2.3 as Walter mentioned.
5D3.113 | 5D3.123 | EOSM.203 | 7D.203 | 70D.112 | 100D.101 | EOSM2.* | 50D.109


Just a quick question I can't seem to find the answer to. Is it possible to use this feature and or the (raw) video recording features on a camera with a broken/worn out shutter? I ask since in the first post there is mention of err20. Thanks!
50D, 300, BMPCC4K


As long as you can enter LiveView, yes.

If you can't, but you are able to remove the shutter mechanically, you only need minimal code changes. From my past experiments, something like this should do the trick:

call("lv_start");  /* this enables LiveView feed without actuating the shutter */
lv = 1;            /* this tells ML we are in LiveView (not sure if needed, since we are not entering LiveView as usual) */


Removing the shutter would be a little scary but then maybe your camera can live on!!! That would be wild!


Very interesting, thanks very much! Even with my poor coding skills this shouldn't be an issue I suspect.
50D, 300, BMPCC4K


Hi ,
Thanks for all the great work  :-X
I use ML for years for video on 550D,
now I started doing timelapses of the Dutch cloudy skies.
The silent.mo works perfectly, when using a canon lens,
but not when I use my Samyang 14mm without chip.
Is there a work around for that?

This is with the intervalometer, but with clicks:

( I started using the raw ml video to at a very low frame rate  1 per second,
but that drives the shutter speed to much up.)

Greetings Arthur


What problem are you getting with the manual lens?


Hi Alex,
Thanks for the relpy.
You are right it works normally. :D :) ;) :P
I have tested it again.
I dont know what I did do wrong, but now it is working perfectly.
Timelapse and silent.mo and ettr.
Is there some minimum slutterspeed.
Sorry to have bothered you.



I just discovered that ML now has silent full-resolution pictures ability (thanks a1ex for the great work!). These days I am into extreme macro focus stacking - I designed and built an Arduino based automated focus stacking rail, "Fast Stacker", and with my new macro "lens" - Nikon M Plan 10x/0.25 microscope objective - I will be routinely doing 300-1000 shots focus stacks, so the limited shutter life of my 50D is becoming a serious concern.

I tried the newest nightly yesterday on my 50D, and the full-rez silent pic feature seems to work as it should. One observation is that apparently DNG is much faster than MLV for silent pics - I get 320ms vs. ~1500 ms respectively, so I think I'll stick with DNGs. But is the difference normal? Perhaps 50D's ancient CPU struggles with MLV packing?

But flash doesn't work with the silent pic feature, as my testing and google searching showed. Flash lighting is very critical for extreme macro (magnifications 10:1 and up), as it helps to freeze the unavoidable environmental vibrations. I couldn't quite understand why it is not possible to make flash work with silent pictures - I think it was something about not knowing when exactly to trigger flash.

My Arduino rail can control two separate relays - for now they are used for AF (half-press) and shutter (full press). I can quite easily add a new mode, when the rail would first trigger a half-press with one relay, and then after some delay - trigger an off-camera flash using the other relay. I'd also need to modify the cable connecting the rail to the camera accordingly.

Will this work? Is it possible to reliably take silent pics with a flash when it is triggered a constant delay after camera's half-press? I'd like to understand this better before I start messing up with my rail. It looks like using a flash would solve the gradient issue, as all rows would get exactly the same (very short: <1ms) exposure from the flash.

How often can I take silent pics with my 50D? The first post here mentions "at least every 10s", which is kind of slow - I normally take shots every 2s for studio macro stacking. From the data I saw here it looks like my 50D has the shortest readout time - at 0.14s - so perhaps I can achieve more usable frame rate (ideally 0.5 fps)?


Quote from: pulsar124 on February 18, 2016, 09:02:07 PM
One observation is that apparently DNG is much faster than MLV for silent pics - I get 320ms vs. ~1500 ms respectively, so I think I'll stick with DNGs. But is the difference normal? Perhaps 50D's ancient CPU struggles with MLV packing?
I think maybe you are confusing "capture time" with "save time". "Capture time" is the time to capture the frame (sensor readout), not the time it actually takes to save it to the SD/CF card. It roughly corresponds to the effective shutter speed. 320ms is impossibly fast for the time it takes to save a FRSP (near 100MB/s write would be required, IIRC the 50D maxes out at around half that). Perhaps you changed the shutter speed when you tried MLV and saw a different "capture time"?

DNG saving is considerably slower than MLV b/c MLV is allowed to be little endian (which is how the image data comes off the sensor), DNG spec requires image data to be big endian, so we have to flip every other byte in the raw image data, which takes a significant amount of time. With MLV we just write some headers/metadata and then a straight dump of the raw buffer.

Quote from: pulsar124 on February 18, 2016, 09:02:07 PM
I take silent pics with my 50D? The first post here mentions "at least every 10s"
- If you use the intervalometer, I recommend taking a picture every 10 or 15 seconds (not faster). Saving DNGs from the camera is slow.
The 10 second limitation is actually from the slowness of DNG saving time, this is why you should use MLV (and it's one of the reasons MLV was implemented for FRPS), it's much faster to actually save.


Thanks for the reply! The timings I am talking about are those displayed on the camera screen right after the shot is taken. I understand that these timings are not just the capture time (which I know from a post here to be 140ms for 50D), but also include writing time.

I am pretty positive that these timings were ~350ms for DNG and much longer for MLV, but I will double check that.

I have a pretty decent CF card - Lexar Pro 1000x, and from RAW video experiments I know I can have a sustained write speed around 84 MB/s. So perhaps the ~350ms result is not so surprising?

Do you know anything about the usability of a flash with FRSP? Will it work in principle (e.g. are there any rolling shutter etc. artifacts when using a flash)?


Indeed, my numbers were not right. I redid the test today, and with 0.3s exposure and DNG format I got two timings - 550ms for capture, then 3200ms (I guess total). With MLV the capture timing is not shown (or shown too briefly to be read) - that was the source of my confusion before. The total timing with MLV is not fixed - it floats around 1300-1900ms. So now it does make sense.

I also tested triggering silent picture using a wired remote (the AF switch) - it does work, for multiple shots.

Finally, I set exposure to 1s and then manually triggered an external flash, after half-pressing the shutter button. It does work, but I have to wait until the blue LED lights up (takes ~1s), and then a bit more (~0.5s). If I press the flash earlier it doesn't show in the shot, but if I do it ~1.5s after half-press, the flash works as expected - no artifacts (gradients etc.).

So it does look like the silent picture feature can be used with my Arduino macro rail together with an external flash. The sequence of events should be like this:

- the rail triggers the AF (half-press) relay for a specified time (~1s);
- after that it waits for another fixed delay (~0.5s ?) and then triggers the second relay, connected to the flash
- then it waits for a third specified delay (~2s?), and goes back to the step 1.

The big question is whether  three fixed delays will result in a reliable (no skipped shots) long (~300 shots) focus stacking sequences. I think I am motivated enough at this point to start tinkering with my rail's software to test this out.


You cannot rely on any fixed delays, as capturing code can delay waiting buffers to flush, for example.
And if you search this forum thoroughly, you will find that devs advised many times to use LED just like that TV IR remote for signaling to external devices just before it really start to capture or at any event you need.
And, finally, you can fully control your rig from within ML, shooting with intervalometer for example and just signaling when to move/flash/etc.
I have a dream to make DIY slide/pano, so it would be great if you succeeded and share your experience :)


Thanks for the info! I did see LED feedback suggested as a means to use silent pictures with remote triggers, but I'm still hoping that under certain (well controlled) circumstances fixed delays will do the job. For example, using a fast card + shooting at low enough fps should reduce or eliminate write buffer related uncertainty. And it sounds like I'll need a lot of hacking to my rail to enable an LED feedback. I'll try my simple idea first. For studio focus stacking, everything can be controlled very well - I can always use the same exposure, the same fps; my rail would allow me to fix precisely all the timings - how long the half-press is etc. We'll see.

I noticed there are two ways to trigger a sequence of silent pictures - one by using one long half-press per photo, the other one using two short presses per photo. (The first one would be easier to implement in my rail). Do you know which approach results in faster framerate for actual photos?

I wouldn't use ML as a focus stacking controller - I tried it initially, before building my Arduino rail, and didn't like it (mostly because of the need to use LV - meaning very slow frame rate). With my Arduino rail I can reliably do 4 fps (RAW images) for at least 30 shots, with external flash - which is perfect for focus stacking of live insects. This is not possible with ML.


Yes, LED feedback probably too excessive for you. I always shoot silent pictures with intervalometer, not manually, I don't know specifics of triggering silent shots with remote. 4 fps- great results, intervalometer can't shot faster than 1 fps, but this is a limitation of intervalometer itself.