Comparison: CHDKPTP vs Canon's RemoteCapture - page 7 - RAW Shooting and Processing - CHDK Forum
supplierdeeply

Comparison: CHDKPTP vs Canon's RemoteCapture

  • 129 Replies
  • 39905 Views
*

Offline SticK

  • *****
  • 779
Re: Comparison: CHDKPTP vs Canon's RemoteCapture
« Reply #60 on: 26 / August / 2012, 20:39:36 »
Advertisements
Yes, -96 shoots 2s, and leave the OSD at 2".

*

Offline reyalp

  • ******
  • 14080
Re: Comparison: CHDKPTP vs Canon's RemoteCapture
« Reply #61 on: 26 / August / 2012, 20:50:53 »
Yes, -96 shoots 2s, and leave the OSD at 2".
See my edits in the previous post.

edit:
On my camera at least, set_tv96_direct does work fine in manual mode. It doesn't update the OSD (except in half shoot), but the exposure time is changed correctly. This works with values that are not in the shutter speed list.
« Last Edit: 26 / August / 2012, 20:53:38 by reyalp »
Don't forget what the H stands for.

*

Offline SticK

  • *****
  • 779
Re: Comparison: CHDKPTP vs Canon's RemoteCapture
« Reply #62 on: 26 / August / 2012, 21:04:52 »
Does that mean set_tv96_direct() is the only function that I can use to get 32s and 64s?  EXIF is not updated with this function correct?  Give-n-take.

*

Offline reyalp

  • ******
  • 14080
Re: Comparison: CHDKPTP vs Canon's RemoteCapture
« Reply #63 on: 26 / August / 2012, 21:10:08 »
Does that mean set_tv96_direct() is the only function that I can use to get 32s and 64s?  EXIF is not updated with this function correct?  Give-n-take.
exif may or may not be updated. Takes some pictures using obvious overrides (e.g. ui set to 1 sec, override to 1/100th) and see what happens.

If you use the propcase to set the user TV value as I suggested earlier, that will also probably work.
Don't forget what the H stands for.


*

Offline reyalp

  • ******
  • 14080
Re: Comparison: CHDKPTP vs Canon's RemoteCapture
« Reply #64 on: 26 / August / 2012, 21:30:38 »
Another issue you may encounter: set_tv96_direct will not set the exposure correctly if it's exactly 1 second (APEX 0). You can get around this by using a apex96 value of 1 or -1
Don't forget what the H stands for.

*

Offline SticK

  • *****
  • 779
Re: Comparison: CHDKPTP vs Canon's RemoteCapture
« Reply #65 on: 26 / August / 2012, 21:34:14 »
Can you show me an example of what deteriorates?

*

Offline reyalp

  • ******
  • 14080
Re: Comparison: CHDKPTP vs Canon's RemoteCapture
« Reply #66 on: 26 / August / 2012, 21:47:12 »
Can you show me an example of what deteriorates?
if your code ends up doing
set_tv96_direct(0)

then the shutter speed override value will be ignored, rather than doing a 1 second exposure. This is a long standing CHDK bug which I thought was fixed but actually never was. It applies to all of the set_tv* functions.

I'll try to fix this in CHDK later.
Don't forget what the H stands for.

*

Offline SticK

  • *****
  • 779
Re: Comparison: CHDKPTP vs Canon's RemoteCapture
« Reply #67 on: 26 / August / 2012, 21:59:20 »
Ok, moving along .... here is the code that works for standard Canon values, updates the UI and supposed to update EXIF.  I tried values from 1/250 to 15s on the SX110.

Code: [Select]
round=function(f)
  return math.floor(f + 0.5)
end

log2=function(n)
   return round(math.log(n)/0.69314718055995)
end

function shootat_Tv(n)
   local tv96=string.format('%d',96*-log2(n))
   printf("set tv96 %s\n",tv96)
   con:execwait('set_user_tv96('..tv96..')')
   con:execwait('shoot()')
end

I like the wait-on-shoot because it prevents access to the client (mouse pointer disappears) until the last file write to SD is complete.  Good feature // prevents finger trouble.


*

Offline reyalp

  • ******
  • 14080
Re: Comparison: CHDKPTP vs Canon's RemoteCapture
« Reply #68 on: 27 / August / 2012, 00:16:02 »
I've uploaded a new build, details here http://chdk.setepontos.com/index.php?topic=6231.msg89893#msg89893

The "shoot" command may or may not be useful for you, but the underlying functions are available as
exp.shutter_to_tv96 and exp.iso_to_tv96

A few notes on the code you posted above:

shoot() can hang indefinitely if the camera isn't in a still shooting mode (playback or video)

If you ever up inputting a Tv value that doesn't convert exactly to one of the valid values, you will take a picture with whatever the current setting are, without any warning to the user.

Under the current CHDK stable builds, if your tv is exactly 1 second, it will be ignored. I have put a fix for this bug in the unstable development branch. Once I'm convinced it doesn't break anything, I will back port it to the stable branch.
Don't forget what the H stands for.

*

Offline SticK

  • *****
  • 779
Re: Comparison: CHDKPTP vs Canon's RemoteCapture
« Reply #69 on: 27 / August / 2012, 00:33:10 »
Quote "If you ever up inputting a Tv value that doesn't convert exactly to one of the valid values, you will take a picture with whatever the current setting are, without any warning to the user."

Does that mean this new function does acts according to the semantics of set_user_tv96() instead of set_tv96_direct()?  .... i.e. ..  not allow the extended CHDK Tvs?


... because ... this circumvents the temporary bug you mentioned and it seems to work....

Code: [Select]
function shootat_CHDK_Tv(tv)
   local tv96_i = 96 * -log2(tv)
   local tv96 = string.format('%d',tv96_i)
   printf("set tv96 %s\n",tv96)
   if tv96_i == 0 then
       con:execwait('set_user_tv96('..tv96..')')  -- workaround for CHDK bug
     else
       con:execwait('set_tv96_direct('..tv96..')')
   end
   con:execwait('shoot()')
end

Of course the UI undergoes its predictable behavior for the exceptional case of 1s.

 

Related Topics