jim-easterbrook / python-gphoto2

Python interface to libgphoto2
GNU Lesser General Public License v3.0
368 stars 59 forks source link

Add cam-conf-view-gui.py example app #76

Closed sdaau closed 5 years ago

sdaau commented 5 years ago

This example app imports from examples/camera-config-gui-oo.py, and thus I believe it should be submitted here.

I was missing a gphoto2 app, that can:

Here is an animated .gif of a screen capture of how the GUI looks like, when there is no camera attached - basically shows the zoom/drag functionality of the viewer:

simplescreenrecorder-cam-conf-view-gui-2019-02-19_21 44 14-opt

Attached is also a .zip of a .mp4 video of the GUI, when there is camera attached: simplescreenrecorder-cam-conf-view-gui-2019-02-19_22.00.19.mp4.zip; for reference, here is a screenshot of that video:

simplescreenrecorder-cam-conf-view-gui-2019-02-19_22 00 19

Note that the properties window taken from camera-config-gui-oo.py changes each time a property has its value changed, and thus helps with understanding that some camera variables only appear in certain contexts (e.g. when camera is set to Manual). Also, most of the properties are either read-only, or you probably don't want to change them arbitrarily, thus command line mode includes property name blacklist, as well as a command for filtering (which will extract only the requested properties from a .json save file, which otherwise contains the entire hierarchy of properties reported by gphoto2).

One pretty much has to set the camera in Capture mode, to get to change relevant properties from the GUI. The script is not extensively tested, so breakage may occur, - but generally works, as shown in the video, tested with Canon S3 IS.

jim-easterbrook commented 5 years ago

Wow, that looks like a lot of work. Thanks for submitting it.