Video Manual Control: ISO, APERTURE & SHUTTER SPEED CONTROL, PLEASE!!!!

  • 203 Replies
  • 28290 Views
Re: Video Manual Control: ISO, APERTURE & SHUTTER SPEED CONTROL, PLEASE!!!!
« Reply #90 on: 28 / November / 2013, 22:05:03 »
Advertisements
Updated videxp3.lua script.   Check for & requires latest build ( 3250 or better ) and 1.3.0.

I think this is pretty much complete.

Update : attachment deleted - see followup post (below).
« Last Edit: 29 / November / 2013, 09:43:56 by waterwingz »

Re: Video Manual Control: ISO, APERTURE & SHUTTER SPEED CONTROL, PLEASE!!!!
« Reply #91 on: 29 / November / 2013, 09:42:30 »
Updated script that correctly centers the GUI for cameras with 480 pix screens (instead of assuming 360 pix).

Changes (including a small code optimization) courtesy of msl.

link > videxp3.lua

Edit :  Updated to v3.2 - small cosmetic changes.

Edit 2 :  moved script to a download link - updated to v3.3 to include philmoz's fixes
« Last Edit: 30 / November / 2013, 18:33:24 by waterwingz »

Re: Video Manual Control: ISO, APERTURE & SHUTTER SPEED CONTROL, PLEASE!!!!
« Reply #92 on: 30 / November / 2013, 10:48:36 »
Created a wiki page for the script :  Manual Exposure Control for Video Recording

As this script relies on native calls and is therefore somewhat experimental,  there is a section called : Tested Cameras. Hopefully people will update that section with information on how the scripts worked on their cameras. 

Re: Video Manual Control: ISO, APERTURE & SHUTTER SPEED CONTROL, PLEASE!!!!
« Reply #93 on: 30 / November / 2013, 12:25:18 »
Created a wiki page for the script :  Manual Exposure Control for Video Recording

As this script relies on native calls and is therefore somewhat experimental,  there is a section called : Tested Cameras. Hopefully people will update that section with information on how the scripts worked on their cameras.

Wow! I just saw this script on the facebook! O have to test that, when I'll get my camera in my hands!

PS - I am very happy to see somebody finds my lua drawings usefull :)
if (2*b || !2*b) {
    cout<<question
}

Compile error: poor Yorick


*

Offline philmoz

  • *****
  • 2936
    • Photos
Re: Video Manual Control: ISO, APERTURE & SHUTTER SPEED CONTROL, PLEASE!!!!
« Reply #94 on: 30 / November / 2013, 16:56:09 »
Updated script that correctly centers the GUI for cameras with 480 pix screens (instead of assuming 360 pix).

Changes (including a small code optimization) courtesy of msl.

Edit :  Updated to v3.2 - small cosmetic changes.

The 'build' check fails for custom builds done outside an SVN directory (bi.build_revision = 0) - the build variable ends up 'nil' and the compare fails. May apply to CHDK-Shell builds; but I haven't tested it.

I found the 'Press any key to start' message a bit confusing - it doesn't actually start recording, it just exits the help screen.

On the G12, when I start video recording with the script, the camera crashes after a few seconds - haven't investigated yet. Will try my other cameras later.

Phil.

Edit: On the G12 the camera attempts to do an exposure calculation when the 'shoot_full' button is pressed to start the recording. If the selected values (Tv/Av/Sv) are 'out of range' the camera crashes.
The following changes seem to fix the problem:
Code: [Select]
...
    set_aelock(1)                                                      -- go to manual exposure mode
    if (vbutton ~= 1) then press("shoot_half") sleep(1000) end   -- half press to let cam calc exp before override
    tv96=call_event_proc("SetAE_ShutterSpeed",tv96target)
...
        if     is_pressed("set")   then
            if ( vbutton == 1 ) then press("video") sleep(1000) release("video") sleep(1000)
            else click("shoot_full") end
---

Also noticed that the sv96max value is not used, and av_table and sv_table are defined twice with different values.
« Last Edit: 30 / November / 2013, 17:52:56 by philmoz »
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)

Re: Video Manual Control: ISO, APERTURE & SHUTTER SPEED CONTROL, PLEASE!!!!
« Reply #95 on: 30 / November / 2013, 18:14:02 »
The 'build' check fails for custom builds done outside an SVN directory (bi.build_revision = 0) - the build variable
ends up 'nil' and the compare fails. May apply to CHDK-Shell builds; but I haven't tested it.
The check is there for the benefit of the casual user to make sure they don't try to run the script without a current versions of CHDK.   If the CHDK build revision is not setup correctly for non-svn builds, I'm not sure what to do about that other than assume that anyone building their own CHDK can also edit the script & remove the check?

Quote
I found the 'Press any key to start' message a bit confusing - it doesn't actually start recording, it just exits the help screen.
Good point - I'll change that.

Quote
On the G12, when I start video recording with the script, the camera crashes after a few seconds - haven't investigated yet. Will try my other cameras later.
Edit: On the G12 the camera attempts to do an exposure calculation when the 'shoot_full' button is pressed to start the recording. If the selected values (Tv/Av/Sv) are 'out of range' the camera crashes.
The following changes seem to fix the problem:
I've noticed that my cams do the exposure check too - it actually makes setting the default values basically useless other than for (in theory) setting them to valid values intially. I think I found the same thing you did and tried to fix it that way.

Quote
Code: [Select]
...
    set_aelock(1)                                                      -- go to manual exposure mode
    if (vbutton ~= 1) then press("shoot_half") sleep(1000) end   -- half press to let cam calc exp before override
    tv96=call_event_proc("SetAE_ShutterSpeed",tv96target)
...
        if     is_pressed("set")   then
            if ( vbutton == 1 ) then press("video") sleep(1000) release("video") sleep(1000)
            else click("shoot_full") end
---
Did you intentionally leave the shoot_half set  and not release it until the ckick("shoot_full") ?  And I guess I'll check my sx50 and see if cameras with video buttons need this too.

Quote
Also noticed that the sv96max value is not used, and av_table and sv_table are defined twice with different values.
Whoops .. mixed up versions there.  Fixed in the next update.
« Last Edit: 30 / November / 2013, 18:15:42 by waterwingz »

*

Offline philmoz

  • *****
  • 2936
    • Photos
Re: Video Manual Control: ISO, APERTURE & SHUTTER SPEED CONTROL, PLEASE!!!!
« Reply #96 on: 30 / November / 2013, 18:32:12 »
Quote
On the G12, when I start video recording with the script, the camera crashes after a few seconds - haven't investigated yet. Will try my other cameras later.
Edit: On the G12 the camera attempts to do an exposure calculation when the 'shoot_full' button is pressed to start the recording. If the selected values (Tv/Av/Sv) are 'out of range' the camera crashes.
The following changes seem to fix the problem:
I've noticed that my cams do the exposure check too - it actually makes setting the default values basically useless other than for (in theory) setting them to valid values intially. I think I found the same thing you did and tried to fix it that way.
Pressing and holding the shoot_half seems to fix both issues - the camera does it's calculation, and then the overrides take effect.
Quote
Quote
Code: [Select]
...
    set_aelock(1)                                                      -- go to manual exposure mode
    if (vbutton ~= 1) then press("shoot_half") sleep(1000) end   -- half press to let cam calc exp before override
    tv96=call_event_proc("SetAE_ShutterSpeed",tv96target)
...
        if     is_pressed("set")   then
            if ( vbutton == 1 ) then press("video") sleep(1000) release("video") sleep(1000)
            else click("shoot_full") end
---
Did you intentionally leave the shoot_half set  and not release it until the ckick("shoot_full") ?  And I guess I'll check my sx50 and see if cameras with video buttons need this too.
Yes, pressing and releasing 'shoot_half' doesn't stop the crash - if it's released, then the subsequent 'shoot_full' tries to do the exposure calc again.

The solution isn't a complete fix - if I stop the video recording by pressing 'Set', the start another one (without stopping the script) I get the same crash.

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)

Re: Video Manual Control: ISO, APERTURE & SHUTTER SPEED CONTROL, PLEASE!!!!
« Reply #97 on: 30 / November / 2013, 18:40:02 »
The solution isn't a complete fix - if I stop the video recording by pressing 'Set', the start another one (without stopping the script) I get the same crash.
So I need to add the half press stuff inside the is_pressed("set") condition? Or maybe reassert the half press after each time we stop recording?

Making me a little nervous about cameras with video buttons here - I'll go see if "my" sx50 has returned home for its day of birding.

Update :  sx50 is happy with the changes - although it gets "unhappy" if you try to press("video") when the mode dial is not set to video mode.  This works when CHDK is not loaded - I guess for now the warning about not being in video mode applies.
« Last Edit: 30 / November / 2013, 19:02:31 by waterwingz »


*

Offline philmoz

  • *****
  • 2936
    • Photos
Re: Video Manual Control: ISO, APERTURE & SHUTTER SPEED CONTROL, PLEASE!!!!
« Reply #98 on: 30 / November / 2013, 19:12:50 »
The solution isn't a complete fix - if I stop the video recording by pressing 'Set', the start another one (without stopping the script) I get the same crash.
So I need to add the half press stuff inside the is_pressed("set") condition? Or maybe reassert the half press after each time we stop recording?

Making me a little nervous about cameras with video buttons here - I'll go see if "my" sx50 has returned home for its day of birding.

Update :  sx50 is happy with the changes - although it gets "unhappy" if you try to press("video") when the mode dial is not set to video mode.  This works when CHDK is not loaded - I guess for now the warning about not being in video mode applies.

On the G12, releasing AE lock and re-doing the shoot_half between videos stops the crash.
My hacked up version attached.

Next problem - on the G1X the camera crashes when the script ends after the AE unlock :(

Edit: SX40 mostly works (start, stop, adjust exposure); but crashes if ISO set above 1250.

Edit2: After hacking in support for 'press("video")' for the IXUS310, the script works; but has the same problem as the G1X - crashes on exit after releasing the AE lock.

Phil.
« Last Edit: 11 / December / 2013, 04:29:04 by philmoz »
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)

Re: Video Manual Control: ISO, APERTURE & SHUTTER SPEED CONTROL, PLEASE!!!!
« Reply #99 on: 30 / November / 2013, 19:24:22 »
On the G12, releasing AE lock and re-doing the shoot_half between videos stops the crash.
My hacked up version attached.

Next problem - on the G1X the camera crashes when the script ends after the AE unlock :(
Somehow,  I just knew it was too good to be true when all four of my cams - spanning four years of release dates - all worked with the first version of the script.

Thanks for looking at this!

 

Related Topics