set_aelock() - for video modes only ? - page 2 - General Discussion and Assistance - CHDK Forum

set_aelock() - for video modes only ?

  • 26 Replies
  • 14712 Views
*

Offline philmoz

  • *****
  • 3450
    • Photos
Re: set_aelock() - for video modes only ?
« Reply #10 on: 19 / June / 2014, 18:10:47 »
Advertisements
It might take some time; but I think it's worth doing. Once I'm satisfied that it works for propset 4 on my cameras I'll check in the change (need to test in other modes, etc).
The challenge could then be deciding what to do if propset1 & propset2 don't have the same functionality.

The existing propset value can be left; just the set_aelock function won't work.

Phil.
CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)
  g5x (1.00c, 1.01a, 1.01b)
  g7x2 (1.01a, 1.01b, 1.10b)

Re: set_aelock() - for video modes only ?
« Reply #11 on: 19 / June / 2014, 18:18:20 »
The existing propset value can be left; just the set_aelock function won't work.
Okay - probably as good as it gets.  But I try to write my scripts to work on any camera so not using shoot() when I want to use set_aelock() will remain a requirement I guess.
Ported :   A1200    SD940   G10    Powershot N    G16

*

Offline philmoz

  • *****
  • 3450
    • Photos
Re: set_aelock() - for video modes only ?
« Reply #12 on: 19 / June / 2014, 18:21:02 »
The existing propset value can be left; just the set_aelock function won't work.
Okay - probably as good as it gets.  But I try to write my scripts to work on any camera so not using shoot() when I want to use set_aelock() will remain a requirement I guess.

I'd disable set_aelock on cameras where it won't work for still images.

Phil.
CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)
  g5x (1.00c, 1.01a, 1.01b)
  g7x2 (1.01a, 1.01b, 1.10b)

Re: set_aelock() - for video modes only ?
« Reply #13 on: 19 / June / 2014, 18:43:35 »
I'd disable set_aelock on cameras where it won't work for still images.
I don't know that it does not work - just that currently shoot() locks up for reasons you posted. 

I can work around that using  press("shoot_half") & press("shoot_full") and that makes set_aelock useful.  Even if better propcase values for get_shooting() can't be found.
Ported :   A1200    SD940   G10    Powershot N    G16

*

Offline philmoz

  • *****
  • 3450
    • Photos
Re: set_aelock() - for video modes only ?
« Reply #14 on: 19 / June / 2014, 18:57:58 »
I'd disable set_aelock on cameras where it won't work for still images.
I don't know that it does not work - just that currently shoot() locks up for reasons you posted. 

I can work around that using  press("shoot_half") & press("shoot_full") and that makes set_aelock useful.  Even if better propcase values for get_shooting() can't be found.

Other script functions use 'shooting_in_progress' so they will not work correctly if you use set_aelock.
E.G.:
- set_av96, set_tv96, set_iso, etc (use this to determine SET_NOW or SET_LATER)
- get_shooting

Phil.
CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)
  g5x (1.00c, 1.01a, 1.01b)
  g7x2 (1.01a, 1.01b, 1.10b)

Re: set_aelock() - for video modes only ?
« Reply #15 on: 19 / June / 2014, 22:15:54 »
Other script functions use 'shooting_in_progress' so they will not work correctly if you use set_aelock.
E.G.:
- set_av96, set_tv96, set_iso, etc (use this to determine SET_NOW or SET_LATER)
- get_shooting
True. 

But that's only an issue to someone writing a script that uses set_aelock() if they don't know about the issue.  Judging by how long this issue took to surface, that as pretty small group of people.  :P

This script should work for every camera : http://chdk.wikia.com/wiki/Time_Lapse_Script_One. But if you disable set_aelock() on some cameras it won't any more.

Maybe it won't be an issue if we can find a better propcase for all propsets.   I think I'll convert my memory change scanner code (patched into main.c) to scan for changing propcases.
Ported :   A1200    SD940   G10    Powershot N    G16

*

Offline philmoz

  • *****
  • 3450
    • Photos
Re: set_aelock() - for video modes only ?
« Reply #16 on: 19 / June / 2014, 22:32:51 »
Maybe it won't be an issue if we can find a better propcase for all propsets.   I think I'll convert my memory change scanner code (patched into main.c) to scan for changing propcases.

Could you create a script that can find the right property (compare property values before and after shutter half press)?
Then it can be tested on various cameras without needing a custom build.

Phil.
CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)
  g5x (1.00c, 1.01a, 1.01b)
  g7x2 (1.01a, 1.01b, 1.10b)

Re: set_aelock() - for video modes only ?
« Reply #17 on: 19 / June / 2014, 22:40:07 »
Could you create a script that can find the right property (compare property values before and after shutter half press)?
Then it can be tested on various cameras without needing a custom build.
That's a good idea.  As you have pointed out before, when porting it's faster to hack stuff like that in C and you don't need scripting to be running.  But in this case, there is not that much data to scan and a portable script that lets us collect data from a lot of cameras makes sense.

I'll play with it over the next couple of days.  I have cameras with all propsets except 1 to test with.
Ported :   A1200    SD940   G10    Powershot N    G16

*

Offline philmoz

  • *****
  • 3450
    • Photos
Re: set_aelock() - for video modes only ?
« Reply #18 on: 20 / June / 2014, 04:19:31 »
Revision 3469 (1.3) contains the propset4 patch for this.

It seems to work fine on my cameras (G1X, G12, IXUS310 & SX40).

Phil.
CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)
  g5x (1.00c, 1.01a, 1.01b)
  g7x2 (1.01a, 1.01b, 1.10b)

Re: set_aelock() - for video modes only ?
« Reply #19 on: 20 / June / 2014, 20:53:59 »
Okay - propcase scan script built and tested.  Runs kind of slow and it's not elegant but it works on all my cameras.

I think we now have valid alternative values for propset2 to propset6.

Propset Current New
1??
2206297
3208301
4210303
5210303
6209302

If someone with a propset 1 camera can try the script and report,  we might be done here?

(and this post marks the debut of CHDK running on my Powershot N)
Ported :   A1200    SD940   G10    Powershot N    G16

 

Related Topics


SimplePortal © 2008-2014, SimplePortal