Talk:CHDK/uBASIC/Scripts: Cable Release

Can you speedup the operation? Sure. Things you can do: Manually choose the white balance (else the cam needs to calculate it for each shot). If the lighting in your scene is relatively unchanging (your cam is aimed at an anthill? waiting for an insect to emerge from its cocoon? etc) you can half-press to premeter the scene, then set ModeDial to Manual and select the appropriate aperture and shutter values manually. You can also pre-focus, then shoot using an appropriate manual focus. Each of these steps will reduce the pre-shot lag time; all of them combined should reduce the lag to less than one second. ~Russ p.s. If miminizing shot-to-shot time, in addition to mimimizing initial lag, is important to your shooting session, you might consider capturing a "burst" each time the cable release is pressed rather than just a single frame.


 * Thanks for these ideas, but I tried setting things to all-manual while first writing and testing this and I still get a 2 to 3 second lag, even with focus locked manually. It must have something to do with the way the wait-click is implemented in CHDK. There's a problem in your burst addition, I'll adress it below.

The following script script adds flexibility to accomodate shooting "bursts". If you don't input a different param value and you leave the cam set to single-shot mode instead of preselecting "continuous shooting", it will deliver the same result as your shorter scripted version.

Script Code (save as "cbl_rls_b.bas" to your /CHDK/SCRIPTS/ folder) @title CableRelease Burst @param a Burst Duration (sec) @default a 1 let s=a*1000 print "remember to preselect" print"continuous shooting" print "via FUNCTION menu"
 * press

wait_click is_key x "display" if x=1 then press "shoot" sleep s release "shoot" goto "press"

CHDK does not implement the shoot command with the click or press commands, (though I didn't test this recently, it's been that way from day-one). Shoot is a command of its own. Instead you would have to use a press "shoot_half", a small 0.5 to 2 second sleep delay to allow for auto-focusing and other auto-needs, then a press "shoot_full", followed by your required burst time delay, then release "shoot_full", and finally a release "shoot_half" to properly emulate a held shutter-button command. I ran into these requirements when writing the OMNI-Intervalometer's burst-mode feature. I've not had need for it yet but what I figure on doing is just putting this very small cable-release routine into the OMNI-Intervalometer script to allow me to use all its features. There's not enough user-parameters available to add that in as a menu option, so I'll just have 2 different OMNI-Intervalometer scripts I can load. This way I'll not only have a burst mode but video available too. Though for pure functionality it might be nicer to have small separate script just for video insetead of it being a timed intervalometer event. Click once to turn video on, click again to turn video off. It sure would alleviate that nasty jarring I get in a video when trying to find the video button to turn it off manually. Come to think of it, using the [DISP], or other, button to engage video might even be a handy script to use for the S3 IS even without a cable-release and bracket. Turning video on and off with the [ISO] or [MENU] buttons might be a nice choice.