Re: Canon 1300D: can only capture one image; second capture fails

Marcus Meissner <[email protected]>
Newsgroups gmane.comp.multimedia.gphoto.user
Message-ID <[email protected]>
On Fri, Feb 03, 2017 at 07:54:08PM +0100, Oliver Bendig wrote:
> Hi Marcus, Hi Volker,
>  
> > Marcus Meissner <[email protected]> hat am 2. Februar 2017 um 08:34
> > geschrieben:
> > What I think might be missing here is a bit of waiting between
> > the full shutter press and full shutter release.
> >
> > If you are curious to try something... This basically executes the
> > shutter commands the capture function does, plus some additional
> > waiting bettween "Press 2" and "Release 2".
> >
> > export LANG=C
> > gphoto2 --wait-event=1s --set-config eosremoterelease="Press 1"
> > --wait-event=1s --set-config eosremoterelease="Press 2" --wait-event=100ms
> > --set-config eosremoterelease="Release 2" --set-config
> > eosremoterelease="Release 1" --wait-event-and-download=5s
>  
>  
> I played a little with the timings. The first wait-event has to be larger then
> 270ms to make the camera release the shutter.
> 
> working:
> -----------
> gphoto2 --wait-event=270ms --set-config eosremoterelease="Press 1"
> --wait-event=80ms --set-config eosremoterelease="Press 2" --wait-event=80ms
> --set-config eosremoterelease="Release 2" +--set-config
> eosremoterelease="Release 1" --wait-event-and-download=5s
> 
> not working:
> ----------------
> gphoto2 --wait-event=250ms --set-config eosremoterelease="Press 1"
> --wait-event=80ms --set-config eosremoterelease="Press 2" --wait-event=80ms
> --set-config eosremoterelease="Release 2" +--set-config
> eosremoterelease="Release 1" --wait-event-and-download=5s
> 
> The shutter releases with every call. But after saving the file, gphoto get's an
> error -1:
> UNKNOWN PTP Property d11b changed
> UNKNOWN Camera Status 1
> UNKNOWN PTP Property d11b changed
> Saving file as capt0000.jpg
> UNKNOWN Camera Status 0
> *** Error (-1: 'Unspecified error') ***

You have a typo in the commandline ... "+--set-config" should be "--set-config"

 
> The jpg file was successfully written to disk and the file contains the correct
> image.
> The debug trace is here: http://bit.ly/2l0Bima
> 
> To test the reliability, I called gphoto in a for loop with 10 iterations. This
> didn't work reliable with a wait of 270 like in "single step" when called
> without any sleep between the iteration. I had to increase to 500ms to get the
> camera release the shutter in every iteration. With a sleep of 1sec after each
> iteration, I could decrease the wait to 360ms:
> 
> successfully captured 10 images:
> for i in `echo 1 2 3 4 5 6 7 8 9 10`; do rm capt0000.jpg; gphoto2
> --wait-event=360ms --set-config eosremoterelease="Press 1" --wait-event=80ms
> --set-config eosremoterelease="Press 2" --wait-event=80ms --set-config
> eosremoterelease="Release 2" +--set-config eosremoterelease="Release 1"
> --wait-event-and-download=5s; sleep 1; done
> 
> In the for loop, the jpg always contains the first image that was taken in that
> sequence. I moved the camera in between so that the image should differ. But it
> was always the first image from that loop.

I am also wondering if you can decrease or increase the wait after after the "Press 2",
which is the time we hold down the virtual shutter button.

I see you reduced it from 100ms to 80ms already.

(The gphoto capture code currently does not have a wait there, which is probably
the core issue.)

Ciao, Marcus 

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.