Can someone tell me where the "shoot_full_only" action is handled? Thanks.
Quote from: lapser on 06 / December / 2012, 22:24:26Can someone tell me where the "shoot_full_only" action is handled? Thanks.Its not really "handled". Its simply a bit mask that allow a script or other code to press or release the "shoot_full" bit in the keymap[] without also pressing or releasing the "shoot_half" bit. So there is no code that "handles press("shoot_full_only")" in the manner you are hoping for.
// for press,release and clickstatic int luaCB_keyfunc( lua_State* L ){ void* func = lua_touserdata( L, lua_upvalueindex(1) ); ((void(*)(long))func)( lua_get_key_arg( L, 1 ) ); return lua_yield( L, 0 );}//I could modify the above to:static int luaCB_keyfunc( lua_State* L ){ void* func = lua_touserdata( L, lua_upvalueindex(1) );int arg=lua_get_key_arg( L, 1 ); if(arg==KEY_SHOOT_FULL_ONLY) {... and function is press or click, but not release....} ((void(*)(long))func)( arg); return lua_yield( L, 0 );}
Actually, I just want to set a flag when Lua calls for a press or click of shoot_full_only. I've tracked it down to luascript.c here:
repeat press("shoot_full_only") repeat sleep(10)until get_shot_ready() release("shoot_full_only") tv=tv+get_shot_meter() set_prop(pTV,tv) set_prop(pTV2,tv) sleep(1)until false
The result is that I can take pictures at better than 1 shot per second, with accurate metering (in histogram.c).
Doing this from a script has become something of a "quest for the holy grail". I recall several posts suggesting it is impossible. So good for you if you have even gotten close.Can you sustain that rate for more than 5 or 10 seconds ? What speed SD card are you using ?I guess the other question will quickly be which cameras can actually shoot that fast. Time will tell I guess.
Essentially, I'm trying to get the same rate as the camera gets by holding the shutter down in continuous drive mode. Whatever rate the camera can do this way, I think I can get close. But the real breakthrough is the metering, not the speed.
I'll post more about that in the other thread after I finished processing the pictures I took tonight.
Other thread ? Where ? Six month for now, nobody reading this will know where to go. Not so nice ..
// for press,release and clickstatic int luaCB_keyfunc( lua_State* L ){ raw_set_shot_wait(); //clears shot ready flag to 0 - polled by get_shot_ready() void* func = lua_touserdata( L, lua_upvalueindex(1) ); ((void(*)(long))func)( lua_get_key_arg( L, 1 ) ); return lua_yield( L, 0 );}//below is in raw.cvoid raw_set_shot_wait() //called when shoot_full or shoot_full_only is clicked or pressed{ shot_ready=0;}
Started by Hyst Feature Requests
Started by zumbido General Discussion and Assistance
Started by VALKYRIE Script Writing
Started by walterjwhite General Help and Assistance on using CHDK stable releases
Started by Indizacam LUA Scripting