CHDK for longtime timelapse - General Help and Assistance on using CHDK stable releases - CHDK Forum supplierdeeply

CHDK for longtime timelapse

  • 46 Replies
  • 2549 Views
CHDK for longtime timelapse
« on: 05 / April / 2021, 12:41:43 »
Advertisements
Hi everyone!

this is my first post on this forum. :)

What I wanted to do:
upload to the internet a sunset/sunrise every day, so I can watch it from wherever I'm. Since Covid19 it's hard for me to visit my family in Italy. So the idea was to upload every day a timelapse movie from home (like a webcam) so I can watch it.  :D

what I was able to do:
My low budget setup: I use my old Canon SX100IS and chdkptp to take photos, convert them to a mp4 with ffmpeg and upload it to instagram with a python script and all this controlled by a powershell script and windows task scheduler which is now doing quite well, after some weeks of throuble shooting.

I'm really happy I discovered CHDK. Controlling the camera via cmd is pretty damn cool. 8)

if you are interested to the result feel free to visit the dolomiti_timelapse on instagram. It is pubblic.

what I would like to improve:
  • since the camera takes about 2000 photos a day (~700'000 photos a year)
    it would be best to leave the mechanical shutter open (I read it is normally open..). Does anyone has an idea how to leave it open and use the electronic shutter like in movie mode? rolling shutter is obviously not an issue.
    I read the topic of jmac698 (https://chdk.setepontos.com/index.php?topic=12935.0)but was not able to understand how to tell my camera to leave the shutter open.

    On this topic (https://chdk.setepontos.com/index.php?topic=9151.0) Microfunguy said
    Quote
    You will have a job to burn the shutter, CHDK cameras are not digital SLR's.

    The shutter is a tiny piece of pivoted,blackened metal shim that is moved a tiny amount by an electromagnet at the end of exposure.
    But is this also true for 700'000 pictures a year?
  • how to use manual focus via chdkptp? Set MF to infinite would be best because before sunrise the images are not in focus because the AF is to weak in the dark.
    I tried to set MF on the camera but when I startet the chdkptp command the camera starts to focus again.
    I read the topic https://chdk.setepontos.com/index.php?topic=14226.0 but couldn't find =set_mf(1) int the USAGE.TXT of chdkptp.
    Also for the 700'000 pictures a year it's best to use manual focus.
  • I would like to upgrade since the camera is 14 years old and for landscape I would prefere little more dynamic range and some more MP (maybe 12?) The sky is sometimes washed out.
    Which camera would you recommend?
    My dream camera would be M6 mark II since it has silent shutter, APSC sensor, etc. but it is at the moment way to expensive and not supportet by the CHDK Firmware Also the M3 would be OK but this camera hase no native silent shutter mode

I would be very pleased to hear your opinion and expertise on the topics above.

Regards
dolomiti timelapse
« Last Edit: 05 / April / 2021, 12:53:27 by dolomiti_timelapse »
If you want to see a sunset or sunrise of Dolomiti Val Gardena shot with CHDK visit
Telegram: t.me/DolomitiTimelapse
Instagram: dolomiti_timelapse

*

Offline reyalp

  • ******
  • 13301
Re: CHDK for longtime timelapse
« Reply #1 on: 05 / April / 2021, 13:50:01 »
Hi everyone!
Hello and welcome. Nice project :)

Quote
since the camera takes about 2000 photos a day (~700'000 photos a year)
it would be best to leave the mechanical shutter open (I read it is normally open..). Does anyone has an idea how to leave it open and use the electronic shutter like in movie mode? rolling shutter is obviously not an issue.
My first suggestion would be not to worry about it. You could keep an eye on ebay or whatever for cheap spares of the same model.

AFAIK, http://escursionisticivatesi.it/webcam/ has been running the same a4000 cameras for quite a few years now (code is here: https://github.com/alesanmanoweb/multilapse-CHDK if you're interested)
Quote
I read the topic of jmac698 (https://chdk.setepontos.com/index.php?topic=12935.0)but was not able to understand how to tell my camera to leave the shutter open.
Yes, that is mostly a different topic. CHDK doesn't have control over whether the shutter is closed for stills. We can force it closed or open at specific points, but not prevent the firmware from closing. With reverse engineering this could be possible.

Some experiments have been done taking pictures outside of the normal shooting process, but it's more of a starting point for reverse engineering than something usable https://chdk.setepontos.com/index.php?topic=12754.30
Quote
how to use manual focus via chdkptp? Set MF to infinite would be best because before sunrise the images are not in focus because the AF is to weak in the dark.
I tried to set MF on the camera but when I startet the chdkptp command the camera starts to focus again.
I read the topic https://chdk.setepontos.com/index.php?topic=14226.0 but couldn't find =set_mf(1) int the USAGE.TXT of chdkptp.
First, overriding focus is an area of CHDK with a lot of camera specific quirks, so you may need to experiment a bit to get it work. According to the source code, sx100 supports SD override in MF.

So if you want to set MF mode and focus at infinity, you could just send something like
Code: [Select]
=set_mf(1) set_focus(-1)
from the chdkptp command prompt or a -e command line.

The shoot commands (shoot, remoteshoot) also have some options to control focus. You can use -sd=<number> to control the focus distance, and -sdmode to what what focus mode to use. However, to use -1 to focus at "infinity" in chdkptp shoot commands, you need to use the latest chdkptp lua code from SVN (https://app.assembla.com/spaces/chdkptp/subversion/source/HEAD/trunk) not from the binary package.
With the Lua from the binary package, you can just use a large number, focus isn't very precise on these cams.
(some discussion of related issues in this thread https://chdk.setepontos.com/index.php?topic=14225.msg145121#msg145121)


Quote
I would like to upgrade since the camera is 14 years old and for landscape I would prefere little more dynamic range and some more MP (maybe 12?) The sky is sometimes washed out.
FWIW, you could also get more dynamic range from your current setup by taking several shots and stack or HDR merge them. Of course, clouds and things could move a bit in between, especially if you use raw.
Don't forget what the H stands for.

Re: CHDK for longtime timelapse
« Reply #2 on: 05 / April / 2021, 17:41:15 »
Thank you very much for your fast and helpful answer.

Plenty of new things I will try out in the next few days and weeks!

I had to write the answer twice so it's much shorter this time.  :(


My first suggestion would be not to worry about it. You could keep an eye on ebay or whatever for cheap spares of the same model.

AFAIK, http://escursionisticivatesi.it/webcam/ has been running the same a4000 cameras for quite a few years now (code is here: https://github.com/alesanmanoweb/multilapse-CHDK if you're interested)
Thanks. I will have a look at the code.
Very promising. At the beginning I was like: Powershot buyers never take 10'000s of shots so the shutter won't last long.
At the moment I can't visit my parents home so the camera has to last anyway for the next weeks or even months.

Quote
Yes, that is mostly a different topic. CHDK doesn't have control over whether the shutter is closed for stills. We can force it closed or open at specific points, but not prevent the firmware from closing. With reverse engineering this could be possible.

Some experiments have been done taking pictures outside of the normal shooting process, but it's more of a starting point for reverse engineering than something usable https://chdk.setepontos.com/index.php?topic=12754.30

Ok, thanks, so I will let the topic rest for the time being...


Quote
First, overriding focus is an area of CHDK with a lot of camera specific quirks, so you may need to experiment a bit to get it work. According to the source code, sx100 supports SD override in MF.

So if you want to set MF mode and focus at infinity, you could just send something like
Code: [Select]
=set_mf(1) set_focus(-1)
from the chdkptp command prompt or a -e command line.

The shoot commands (shoot, remoteshoot) also have some options to control focus. You can use -sd=<number> to control the focus distance, and -sdmode to what what focus mode to use. However, to use -1 to focus at "infinity" in chdkptp shoot commands, you need to use the latest chdkptp lua code from SVN (https://app.assembla.com/spaces/chdkptp/subversion/source/HEAD/trunk) not from the binary package.
With the Lua from the binary package, you can just use a large number, focus isn't very precise on these cams.
(some discussion of related issues in this thread https://chdk.setepontos.com/index.php?topic=14225.msg145121#msg145121)

My command line is at the moment:
Code: [Select]
chdkptp -c -e"clock -sync" -e"rs $downloadCamera -av=4.0 -sv=80 -shots=900 -int=12"
so I should try to add
Code: [Select]
-e" -sdmode=MF -sd=100m"
Quote
FWIW, you could also get more dynamic range from your current setup by taking several shots and stack or HDR merge them. Of course, clouds and things could move a bit in between, especially if you use raw.
Yes...
I do believe this "old" compact camera has enough dynamic range! The difficulty is to know how to use it the right way. I mean with my dslr I know exactly how I have to take a photo and how I need to develop the photo in post to use most of the information the camera generats. But with this powershot I do at the moment nothing and the jpg out of the camera looks washed out and flat.
Color grading with ffmpeg would be a cool thing, but before I need more information in the clouds and snow.

RAW or HDR Merge would be the next step. but I am afraid that this will make my code significantly more complicated.
Maybe a first step would be to shot in dng and convert the dng with https://www.dechifro.org/dcraw/ in 3 different exposed jpgs and merge them to one jpg.

I'm still at the beginning but eager to learn and try out new things. :)
« Last Edit: 05 / April / 2021, 17:43:53 by dolomiti_timelapse »
If you want to see a sunset or sunrise of Dolomiti Val Gardena shot with CHDK visit
Telegram: t.me/DolomitiTimelapse
Instagram: dolomiti_timelapse

*

Offline reyalp

  • ******
  • 13301
Re: CHDK for longtime timelapse
« Reply #3 on: 05 / April / 2021, 18:01:57 »
My command line is at the moment:
Code: [Select]
chdkptp -c -e"clock -sync" -e"rs $downloadCamera -av=4.0 -sv=80 -shots=900 -int=12"
so I should try to add
Code: [Select]
-e" -sdmode=MF -sd=100m"
Those are options to the rs command, so it would be like

Code: [Select]
chdkptp -c -e"clock -sync" -e"rs $downloadCamera -av=4.0 -sv=80 -shots=900 -int=12 -sd=100m -sdmode=MF"
Quote
RAW or HDR Merge would be the next step. but I am afraid that this will make my code significantly more complicated.
Yes, it would be a lot more complicated, you'd need to code the shooting and bracketing yourself, instead of just 900 shots with rs.

Quote
Maybe a first step would be to shot in dng and convert the dng with https://www.dechifro.org/dcraw/ in 3 different exposed jpgs and merge them to one jpg.

I'm still at the beginning but eager to learn and try out new things. :)
FWIW, raw therapee (https://rawtherapee.com/) has a command line interface https://rawpedia.rawtherapee.com/Command-Line_Options

You can make a conversion profile in the GUI and then use it from the command line. The profiles are INI format, so you can also change things like exposure compensation quite easily from a script.
Don't forget what the H stands for.


*

Offline c_joerg

  • *****
  • 1105
Re: CHDK for longtime timelapse
« Reply #4 on: 06 / April / 2021, 04:51:48 »
    since the camera takes about 2000 photos a day (~700'000 photos a year)
    My first suggestion would be not to worry about it. You could keep an eye on ebay or whatever for cheap spares of the same model.
    I agree…
    There are completely different problems when the camera is always pointed towards the sun.
    @lapser has reported here that his G1x can withstand more than 1500000 shots.
    https://www.youtube.com/user/DrLapser


    Also the M3 would be OK but this camera hase no native silent shutter mode[/li][/list]
    There is a function for the M3. I just haven't gotten it to work properly so far.
    https://chdk.setepontos.com/index.php?topic=12754.40



    M100 100a, M3 101a, G9x II (1.00c), 2*G1x (101a,100e), S110 (103a), SX50 (100c), SX230 (101a), S45,
    Flickr https://www.flickr.com/photos/136329431@N06/albums
    YouTube https://www.youtube.com/channel/UCrTH0tHy9OYTVDzWIvXEMlw/videos?shelf_id=0&view=0&sort=dd

    Re: CHDK for longtime timelapse
    « Reply #5 on: 06 / April / 2021, 12:12:27 »
    Thanks again for your help! 8)
     
    Those are options to the rs command, so it would be like

    Code: [Select]
    chdkptp -c -e"clock -sync" -e"rs $downloadCamera -av=4.0 -sv=80 -shots=900 -int=12 -sd=100m -sdmode=MF"

    The code is now like this (after a few 100 test shots...):
    Code: [Select]
    chdkptp -c -e"clock -sync" -e"rs $downloadCamera -av=4.0 -sv=80 -shots=1 -int=5 -sdmode=AF -sd=1494mm"
    chdkptp -c -e"rs $downloadCamera -av=4.0 -sv=80 -shots=600 -int=15 -sdmode=MF -sd=1494mm"

    I'm really not sure about this. I got focus to infinity at about 1493mm-1496mm which is fine.

    What was not so funny: sometimes the focus point jumped. it was not consistend. also at
    Code: [Select]
    -sdmode=MF the focuspoint doesn't move at all? so in
    Code: [Select]
    -sdmode=MF -sd=1494mm the -sd=1494mm part is needed but doesn't change anything?

    I read the discussion in https://chdk.setepontos.com/index.php?topic=14225.20  "CHDKPTP remotshoot focus" which helped me.

    Since I have to use anydesk to access the PC which controlls the camera, my brother confirmed that the camera still focuses before releasing the shutter. So it seems not to work properly.  :(

    Quote
    Yes, it would be a lot more complicated, you'd need to code the shooting and bracketing yourself, instead of just 900 shots with rs.

    Ok, yes I understand! I think that's too complicated for now.

    Quote
    FWIW, raw therapee (https://rawtherapee.com/) has a command line interface https://rawpedia.rawtherapee.com/Command-Line_Options

    You can make a conversion profile in the GUI and then use it from the command line. The profiles are INI format, so you can also change things like exposure compensation quite easily from a script.

    Ah thanks, that's a cool idea! I will check it out...

    Is it possible to control the exposure via CHDKPTP? In the USAGE.TXT there is no command but maybe it is still possible somehow.
    If you want to see a sunset or sunrise of Dolomiti Val Gardena shot with CHDK visit
    Telegram: t.me/DolomitiTimelapse
    Instagram: dolomiti_timelapse

    Re: CHDK for longtime timelapse
    « Reply #6 on: 06 / April / 2021, 12:22:47 »
    Hallo Jörg!

    thank you for your input
    I agree…
    There are completely different problems when the camera is always pointed towards the sun.
    @lapser has reported here that his G1x can withstand more than 1500000 shots.
    https://www.youtube.com/user/DrLapser
    ok, we will see if my old SX100IS will beat the G1X of DrLapse in terms of # shots.
    The camera is in the shadow and the sun isn't in the picture at the moment, but I unterstand what you mean.
    However, I think there will be periods during the year when the sun will shine on the sensor in the sunrise timelapse.

    There is a function for the M3. I just haven't gotten it to work properly so far.
    https://chdk.setepontos.com/index.php?topic=12754.40

    I will have a look! Thank you :)
    If you want to see a sunset or sunrise of Dolomiti Val Gardena shot with CHDK visit
    Telegram: t.me/DolomitiTimelapse
    Instagram: dolomiti_timelapse

    *

    Offline reyalp

    • ******
    • 13301
    Re: CHDK for longtime timelapse
    « Reply #7 on: 06 / April / 2021, 13:57:25 »
    The code is now like this (after a few 100 test shots...):
    Code: [Select]
    chdkptp -c -e"clock -sync" -e"rs $downloadCamera -av=4.0 -sv=80 -shots=1 -int=5 -sdmode=AF -sd=1494mm"
    chdkptp -c -e"rs $downloadCamera -av=4.0 -sv=80 -shots=600 -int=15 -sdmode=MF -sd=1494mm"

    I'm really not sure about this. I got focus to infinity at about 1493mm-1496mm which is fine.
    This does not seem right. At wide angle, "infinity" is often quite close, but only 1.5 meters is unusual.

    Quote
    What was not so funny: sometimes the focus point jumped. it was not consistend. also at
    Code: [Select]
    -sdmode=MF the focuspoint doesn't move at all? so in
    Code: [Select]
    -sdmode=MF -sd=1494mm the -sd=1494mm part is needed but doesn't change anything?
    -sdmode=MF
    should put the camera in MF mode. After that that, the camera should not change focus on it's own (but in practice I think it can change a little after shooting). -sd should set the focus to whatever distance you set.

    Quote
    Since I have to use anydesk to access the PC which controlls the camera, my brother confirmed that the camera still focuses before releasing the shutter. So it seems not to work properly.  :(
    Yes, if the camera does autofocus with -sdmode=MF something isn't right.
    The "safety MF" setting in the Canon menu could be on.
    On many cameras, if the display is turned off, the MF setting will be lost.

    If your connection is good enough to use chdkptp live view, you can test MF:
    use =set_mf(1) to enable MF mode, and then if you use =set_focus() with different numbers, you should see the focus distance change immediately.

    If set_mf is just not working on this port, you could try set_aflock (-sdmode=AFL in chdkptp shooting commands) instead.

    Quote
    Is it possible to control the exposure via CHDKPTP? In the USAGE.TXT there is no command but maybe it is still possible somehow.
    You can set shutter speed, aperture and ISO individually, but there isn't currently a way to modify the Canon exposure. If you don't set them all, the other values will be set by Canon auto-exposure, but it doesn't know about any values you did override, so the result will not be correct.

    In fact, looking at your current command it sets Av and Sv so Canon auto exposure will probably be wrong. To get Canon auto exposure to use the right Tv, you should put the camera in Av mode
    Code: [Select]
    -e"luar require'capmode'.set('AV')"
    And set the Canon manual AV setting
    Code: [Select]
    -e"luar set_prop(require'propcase'.USER_AV,aperture_to_av96(4000))"
    Then in your shoot command, you can use just -isomode=80 without any other exposure controls
    Code: [Select]
    chdkptp -c -e"rs $downloadCamera -isomode=80 -shots=600 -int=15 -sdmode=MF -sd=1494mm"

    There are some other ways approach this:
    The https://github.com/alesanmanoweb/multilapse-CHDK/blob/master/multilapse.lua script uses an separate script half press to read back the cameras measured exposure. In that case, it just gets the Bv, but you could return the camera Tv, Av and Sv if you wanted.

    You can also write your own camera side script (or use an existing one, with some glue code) to decide the exposure for each shot. See https://chdk.setepontos.com/index.php?topic=13386.msg136688#msg136688
    Don't forget what the H stands for.


    Re: CHDK for longtime timelapse
    « Reply #8 on: 06 / April / 2021, 16:58:40 »
    Thank you again for your help!
    It really helps.
    This does not seem right. At wide angle, "infinity" is often quite close, but only 1.5 meters is unusual.

    Yes... that's why it was quite difficult to find this number. Bigger numbers just made the image even more blurry.
    Obviously the number doesn't represent any real physical distance, but it seems to work.

    Quote
    -sdmode=MF
    should put the camera in MF mode. After that, the camera should not change focus on it's own (but in practice I think it can change a little after shooting). -sd should set the focus to whatever distance you set.

    Yes, if the camera does autofocus with -sdmode=MF something isn't right.
    The "safety MF" setting in the Canon menu could be on.
    On many cameras, if the display is turned off, the MF setting will be lost.

    If your connection is good enough to use chdkptp live view, you can test MF:
    use =set_mf(1) to enable MF mode, and then if you use =set_focus() with different numbers, you should see the focus distance change immediately.

    If set_mf is just not working on this port, you could try set_aflock (-sdmode=AFL in chdkptp shooting commands) instead.

    Yes indeed!! "safety MF" was ON. now it's switched off...
    I set the camera to =set_mf(1) and I could change the focus point with the command =set_focus().
    Now the camera display no longer switches off.
    I will try AFL. It seems to be what I wanted. but at the moment there is nobody to listen to the camera at home :P
    They actually laugh at my time-lapse project but I believe in it ;)

    Quote
    You can set shutter speed, aperture and ISO individually, but there isn't currently a way to modify the Canon exposure. If you don't set them all, the other values will be set by Canon auto-exposure, but it doesn't know about any values you did override, so the result will not be correct.

    In fact, looking at your current command it sets Av and Sv so Canon auto exposure will probably be wrong. To get Canon auto exposure to use the right Tv, you should put the camera in Av mode
    Code: [Select]
    -e"luar require'capmode'.set('AV')"
    And set the Canon manual AV setting
    Code: [Select]
    -e"luar set_prop(require'propcase'.USER_AV,aperture_to_av96(4000))"
    Then in your shoot command, you can use just -isomode=80 without any other exposure controls
    Code: [Select]
    chdkptp -c -e"rs $downloadCamera -isomode=80 -shots=600 -int=15 -sdmode=MF -sd=1494mm"

    There are some other ways approach this:
    The https://github.com/alesanmanoweb/multilapse-CHDK/blob/master/multilapse.lua script uses an separate script half press to read back the cameras measured exposure. In that case, it just gets the Bv, but you could return the camera Tv, Av and Sv if you wanted.

    You can also write your own camera side script (or use an existing one, with some glue code) to decide the exposure for each shot. See https://chdk.setepontos.com/index.php?topic=13386.msg136688#msg136688

    Ok, thanks, very clear.
    The camera is actually in AV. the camera chooses the Tv, and I set Iso and Av. It does quite a nice job! (only very little "flicker" between the frames of the time-lapse ...)

    The longest shutterspeed is 1 sec. I don't know why? But it is ok, as the picture gets darker and darker and it "simulates" sunset. otherwise it would still be bright at night due to exposure compensation...
    I read https://chdk.setepontos.com/index.php?topic=5551.0 about "Av for 24h time-lapse with automatically calculated shutter speed above 1 sec" Ok so there is a reason..

    You can see it on my videos I uploaded already. unfortunately the videos are to big to upload as an attachment.
    Interesting, it is possible to use -e"luar require'capmode'.set('AV')" in CHDKPTP command line... ??? Is there any documentation with perhaps some explanations and examples?
    « Last Edit: 06 / April / 2021, 17:13:16 by dolomiti_timelapse »
    If you want to see a sunset or sunrise of Dolomiti Val Gardena shot with CHDK visit
    Telegram: t.me/DolomitiTimelapse
    Instagram: dolomiti_timelapse

    *

    Offline reyalp

    • ******
    • 13301
    Re: CHDK for longtime timelapse
    « Reply #9 on: 06 / April / 2021, 17:54:59 »
    Yes... that's why it was quite difficult to find this number. Bigger numbers just made the image even more blurry.
    Obviously the number doesn't represent any real physical distance, but it seems to work.
    Yes, it seems quite variable from camera to camera.

    Quote
    Yes indeed!! "safety MF" was ON. now it's switched off...
    I set the camera to =set_mf(1) and I could change the focus point with the command =set_focus().
    Now the camera display no longer switches off.
    I will try AFL. It seems to be what I wanted. but at the moment there is nobody to listen to the camera at home :P
    If I've understood right, MF is now working so you shouldn't need AFL. They both do pretty much the same thing if their working differently, but on some models one might be less buggy than the other.

    Quote
    Ok, thanks, very clear.
    The camera is actually in AV. the camera chooses the Tv, and I set Iso and Av. It does quite a nice job! (only very little "flicker" between the frames of the time-lapse ...)
    If the camera is in AV mode, what you have now should be mostly OK, but it could be off if the -av or -sv value is different from the Canon UI settings. The USER_AV in my example controls the manual AV setting, which is used if the camera is in M or AV. If you set this, it will be used for the Canon exposure calculation in AV mode. The regular AV override is the final value actually used in the shot. If you set it, the canon firmware isn't aware of it when it does the exposure calculation.

    sv is similar, but it has more complication. If you want to use one of the normal ISO settings available in the Canon UI (like 80, 100 etc) using -isomode will have less chance of tripping you up.

    Quote
    The longest shutterspeed is 1 sec. I don't know why?
    The normal Canon firmware only uses up to 1 second in auto exposure modes. If you want to go longer, you have to program it with CHDK.

    Quote
    Interesting, it is possible to use -e"luar require'capmode'.set('AV')" in CHDKPTP command line... ??? Is there any documentation with perhaps some explanations and examples?
    For which part? "luar" is the chdkptp "=' command (execute code on the camera and wait for it finish), but it's less confusing to use on the command line, because = is also used for command line options (-e=blah treated the same as -eblah so it eats the first =)

    For require'capmode'.set('AV') see https://chdk.fandom.com/wiki/Lua/Scripts:Standard/Lualib/Capmode
    and for CHDK scripting in general, the best starting point is https://chdk.fandom.com/wiki/CHDK_Scripting_Cross_Reference_Page

    BTW, as your command line gets more complicated, you might want to put it in a chkdptp or lua script. So instead of putting everything in -e commands, you could put it one per line in a file called myfile.chdkptp and then do

    Code: [Select]
    chdkptp -e"source myfile.chdkptp"

    Or if you use lua code
    Code: [Select]
    chdkptp -e"exec dofile('myfile.lua')"

    Some information on scripting chdkptp is
    https://app.assembla.com/spaces/chdkptp/wiki/CLI_Quickstart
    https://app.assembla.com/spaces/chdkptp/wiki/Scripting_Guide
    Don't forget what the H stands for.

     

    Related Topics