Quote "Even though it could be useful in some cases, most of us don't have cameras to sacrifice, and even if we did, the odds of end users bricking theirs and blaming us would be too high for any sort of general distribution."
For those users perhaps it would be worthwhile to remind them in no uncertain terms what "H" stands for. Folks are human and might forget. In my case, I could send you a sacrificial lamb, already in a partially dismantled state, but electrically functional.
The thing is, no matter how many disclaimers you put on it people will still use it, and they will still blame us if it ends badly. People blame us when their camera dies for things completely unrelated to CHDK. That might be tolerable on it's own, but if people start bricking cameras, it could attract unwanted negative attention from Canon.
To me, this makes development that involves re-writing camera ROM a dead end (though I'd still like to play with it a bit at some point.) Picking up sacrificial cameras on amazon/ebay is not the issue, the real cost is development time.
If you want someone to devote many hours of highly technical effort to something that is only applicable to your project, you may find volunteers hard to come by.
Can you explain this a bit more? I don't know how relevant this is to what you are saying, but one thing I am certain is the 360x270 liveview in VIDEO_STD is now "crisp" meaning that it can be used effectively to focus my instrument. In still mode, for the SX110 it would be at very difficult to focus effectively.
Going to video mode on your camera appears to change the viewport to 720x240 rather than 720x216. I wouldn't expect a huge jump in quality from this, but I suppose the Canon pipeline maybe be doing something different that ends up giving you better detail.
I would suggest comparing the unscaled, full res output (aspect correct off, viewport 1:1 on) of each to figure out what the differences are.
IIRC you mentioned earlier that halfshoot also switched the viewport to 240 (? or was it the post shot review ?), so you could perhaps use that instead of video mode.
By the way, I simulated a few lua commands, eg AUTO, shoot_half, VIDEO_STD. The response of the camera is subjectively for now, "very good." Can you direct me to sample code that would allow me to do tests like this?
...
The Camera side Lua functions available though chdkptp are the same as used for on camera scripting. I suggest you consult the wiki for information about that.
http://chdk.wikia.com/wiki/Script_commands is a good starting point.
http://chdk.wikia.com/wiki/Lua/PTP_Scripting has some of the PTP specifics.
http://chdk.wikia.com/wiki/Lua has information specific to Lua on CHDK (ubasic and lua share most of the same CHDK scripting functions, but ubasic is not available over PTP)
The official Lua manual
http://www.lua.org/manual/5.1/ is also very useful.
You should be aware that the scripting system is a hack, like all the rest of CHDK. In many cases, the behavior has subtleties which vary from camera to camera, are not well documented, and and may not be well understood by anyone. When in doubt, the best source of definitive information is careful experiment. chdkptp is quite useful for this, since you can interactively try stuff and see the results.
How long can a command line be? Can I invoke a code text file to run with CHDKPTP ? .... things of this nature.
There is no specific limit on the length of a command.
There are several ways you can execute file:
1) Upload a file to the camera and then use something like lua loadfile('A/CHDK/SCRIPTS/testprgm.lua')()
2) Use PC side Lua scripting to load your file as a string and send it to the camera to run. The 'rlib' module in chdkptp is one example of this.
Using either of the above, you can also start a script on the camera which reads messages over PTP, so you can build your own custom protocol / command set. There are some examples of this in the chdkptp lua files.
The PC side of chdkptp is very scriptable. In fact, the entire GUI and CLI are written in Lua. You can find all this code in the lua directory, plus some additional examples (multicam.lua and the extras directory)