Bug 186574

Summary: Directly download and preview shot
Product: [Applications] digikam Reporter: Marco Stronati <youfind.marco>
Component: Import-Gphoto2Assignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: wishlist CC: caulier.gilles, info, marcus, simon.eu, youfind.marco
Priority: NOR    
Version: 0.10.0   
Target Milestone: ---   
Platform: unspecified   
OS: Unspecified   
Latest Commit: Version Fixed In: 5.1.0

Description Marco Stronati 2009-03-08 18:33:12 UTC
Version:            (using KDE 4.2.1)

It will be extremely useful to connect your camera to digikam, and while taking pictures to see the image in full screen on your pc.
Usage scenario: I'm taking picture in a studio and I want to instantly see my shots in full resolution in my pc screen and not in the little camera screen.
Similar feature is in 'digital photo professional' by Canon.
Comment 1 Marcus Meissner 2009-03-08 22:08:46 UTC
Possible with cameras that support it (currently mostly Nikon and Canon DSLRs).


Call
int
gp_camera_wait_for_event (Camera *camera, int timeout,
                          CameraEventType *eventtype, void **eventdata,
                          GPContext *context)

timeout is in 1/1000s, eventtype GP_EVENT_FILE_ADDED is interesting, in that
case eventdata points to a CameraFilePath* structure,
path->folder and path->name  specify the newly added image, download it as usual.

CameraEventType etype;
void *data;

if (GP_OK == gp_camera_wait_for_event (camera, 1000, &etype, &data, context)) {
       if (etype == GP_EVENT_FILE_ADDED) {
            CameraFilePath *xpath = data;

            ... download and use xpath->folder, xpath->name

        }
            

}
Comment 2 caulier.gilles 2009-03-08 22:14:35 UTC
Thanks Marcus !

But if i'm not too wrong, i have already implemented this feature one year ago when i have started to port digiKam to KDE4...

The option is from Camera/Capture menu in camera interface (digiKam 0.10.0 only).

I have tested this with my old Olympus C3000z, now dead (:=))). So i cannot test anymore.

Marco, can you test with your camera if it work fine for you ?

Thanks in advance

Gilles Caulier
Comment 3 Marco Stronati 2009-04-18 18:51:34 UTC
That's great!
Tested on 0.10.0 with a canon EOS 350D. Basically it work but it is buggy.
As long as I press Capture the camera start to shoot in a loop and a menu appears with help, capture, cancel. When I press capture the camera stops shooting and the acquisition process start. After a while it shows a icons with a question mark and if I press on it says failed to retrieve files from camera.
Despite this if I reconnect the camera it shows the picture (only one) previously taken.
Problems: 
-the camera should shoot (one time) only when I press capture in the dialog.
-the acquisition should show the pictures.
-despite having done many shot when I reconnect I have a single picture 
I tried with this configuration: empty CF inserted in the camera that was set to 'pc connection'.
I also tried with the camera set to Print/PTP connection but the capture button was disabled.
This feature is really great and we are a step away from making it work :P
Comment 4 caulier.gilles 2009-04-18 19:31:27 UTC
Marco,

Sorry, but i cannot hack this implementation for the moment. My old Olympus camera is dead...

Gilles Caulier
Comment 5 caulier.gilles 2009-05-13 13:27:19 UTC
Marcus,

Can you give me a list of camera which support Capture feature ?

Gilles Caulier
Comment 6 Marcus Meissner 2009-05-13 13:32:39 UTC
http://gphoto.org/doc/remote/ has a manual provided list.

the cameras that support capture report this via their CameraAbilities

abilities->operations & GP_OPERATION_CAPTURE_IMAGE to test
Comment 7 caulier.gilles 2009-06-11 08:59:58 UTC
Marcus,

There is a way to test capture mode without to use a real camera device, for example with a test driver from Gphoto2 (emulation) ?

Gilles Caulier
Comment 8 Geert Janssens 2011-08-09 09:11:27 UTC
There are three enhancement requests for this in the database:
Bug 186574
Bug 207936
Bug 258227

Should they be marked as duplicates of only one ?
Comment 9 caulier.gilles 2011-08-09 09:20:31 UTC
*** Bug 258227 has been marked as a duplicate of this bug. ***
Comment 10 Teemu Rytilahti 2013-12-25 21:07:39 UTC
Git commit 589228bc057710cc00f9785e1f31b23d21264c38 by Teemu Rytilahti.
Committed on 22/12/2013 at 18:34.
Pushed by rytilahti into branch 'master'.

Don't spam the camera with preview requests, even if capturing is possible, but liveview is not. Done by checking the existence of GP_OPERATION_CAPTURE_PREVIEW flag.

M  +11   -0    utilities/importui/backend/cameracontroller.cpp
M  +1    -0    utilities/importui/backend/cameracontroller.h
M  +7    -0    utilities/importui/backend/dkcamera.cpp
M  +2    -0    utilities/importui/backend/dkcamera.h
M  +10   -1    utilities/importui/backend/gpcamera.cpp
M  +21   -12   utilities/importui/dialogs/capturedlg.cpp

http://commits.kde.org/digikam/589228bc057710cc00f9785e1f31b23d21264c38
Comment 11 caulier.gilles 2014-09-01 08:06:11 UTC
MArco,

Following last commits from comment #10, this file still valid using last digiKam 4.2.0 ?

Gilles Caulier
Comment 12 caulier.gilles 2015-06-26 14:08:56 UTC
Marco,

This file still valid using digiKam 4.11.0 ?

Gilles Caulier
Comment 13 caulier.gilles 2016-07-15 16:31:50 UTC
Implemented since a while.

Gilles Caulier