Re: download occasional images without gphoto trigger
Marcus Meissner <[email protected]>
| Newsgroups | gmane.comp.multimedia.gphoto.user |
|---|---|
| Organization | SUSE Software Solutions Ger many GmbH, GF: Felix Imendörffer, Mary Higgins, Sri Rasiah, HRB 21284 (AG Nürnberg) |
| Message-ID | <[email protected]> |
Hi, On Fri, Jul 12, 2019 at 08:04:25PM +0000, fred konkin via Gphoto-user wrote: > Hello, > > I've been using gphoto2 to trigger my Nikon D7000 for time lapses by piping "capture-image" into a gphoto shell, and occasionally piping "capture-image-and-download" to the computer so I can analyze some of the images. I only need a small fraction of the images transferred to the computer. I also get/set various camera settings via gphoto. This has worked, though slow, and I can't trigger bulb. > > Now I want to do the same, except trigger the camera directly through a shutter release cable, ie not through USB or gphoto. But again I'd like to download an occasional image (and get/set shutter speed, etc, as before) via gphoto . So I start gphoto with: > > gphoto2 -q --keep --shell > > then send to the shell: > > wait-event-and-download FILEADDED > > If I then trigger the camera directly (not via gphoto), the shell quickly reports "event found, stopping wait", and the file _DSC0001.NEF appears correctly on both camera SD and computer. > > Next I trigger two frames (_DSC0002.NEF and _DSC0003.NEF) again directly, then send to the shell: > > wait-event-and-download FILEADDED > > Now instead of waiting for _DSC0004.NEF as I want, the shell immediately reports "event found, stopping wait", and the file _DSC0002.NEF appears on the computer. Ie, gphoto grabs one of the older frames that I don't need rather than waiting for a new frame. > > So it seems perhaps there is a queue of FILEADDED events and gphoto grabs the next from the queue? Is it possible to clear the queue so I can skip the older images and wait for and download a truly new image? Yes, there is a queue. You could just drain it with like wait-event 1s and ignore all included files. > I also tried an alternative, by keeping track of the filenames on the computer, and sending, eg, "get _DSC0004.NEF" to the shell after triggering that frame through the shutter release. The shell responds that the file cannot be found, even though I verify that it does exist on the SD card. The "get" command does retrieve correctly images present on the SD when gphoto was started. So it seems gphoto needs to update its file list before it can "get" a frame. Can I tell the shell to do this somehow? The event handling updates the gphoto2 internal filesystem view on the camera. So you need to poll events to find out about added or removed files. > Ideally either of these approaches should work without having to restart the gphoto shell, for the sake of speed. > > I shoot in pure raw (no jpegs). I use gphoto2 version 2.5.15 running on a raspberry pi with raspbian OS. I think just waiting for events a bit to flush the queue might be a solution already. Ciao, Marcus