AstroShutter.CliWrapper
0.0.2
Project has been renamed and uploaded to a new page. The old name didn't make much sense, this name should be easier to find for people who are in need of a simple gphoto2 binding for C#
See the version list below for details.
dotnet add package AstroShutter.CliWrapper --version 0.0.2
NuGet\Install-Package AstroShutter.CliWrapper -Version 0.0.2
<PackageReference Include="AstroShutter.CliWrapper" Version="0.0.2" />
<PackageVersion Include="AstroShutter.CliWrapper" Version="0.0.2" />
<PackageReference Include="AstroShutter.CliWrapper" />
paket add AstroShutter.CliWrapper --version 0.0.2
#r "nuget: AstroShutter.CliWrapper, 0.0.2"
#:package AstroShutter.CliWrapper@0.0.2
#addin nuget:?package=AstroShutter.CliWrapper&version=0.0.2
#tool nuget:?package=AstroShutter.CliWrapper&version=0.0.2
AstroShutter Cli wrapper
This is a wrapper for gphoto2 CLI.
Currently it has been tested to work on the following platforms:
- Ubuntu 20.04 (Any Linux based system should work though)
- Windows 10 1909> (Using MSYS2 for gphoto2)
Platforms that are planned to be supported:
- Windows 10 2004> using WSL2 (Waiting for proper USB support in WSL2)
- MacOS 10.15 Catalina
Camera's used to test this wrapper:
- Canon EOS 760D
I currently only own this camera, I will try to test more when I get my hands on more equipment.
What is currently implemented
- List connected cameras (Returns model no. and usb port info)
- Get/set config for any supported config string
- Basic camera settings such as ISO, aperture, shutter speed, aspect ratio, image format and capture target.
- Capturing images which returns a list of files created
- Capturing images in bulb mode (Also returns a list of files created)
- Checking if device is locked or is connected
- Read storage information (Capacity, storage type and free space left)
- Listing files/folders
- Deleting files (Single file/entire folder)
- Downloading of files with specific methods (single file, range of files or entire folders)
- Maybe more if you are in need of a feature please request it by making a new issue in the issue tracker
Examples
In AstroShutter-TestTool/ is a fully working example of how to use this library.
But a bare-bones example is as follows:
Camera cam = Cli.AutoDetect()[0];
cam.captureTarget = CaptureTarget.MemoryCard;
cam.iso = 800;
cam.shutterSpeed = "1/10";
cam.aspectRatio = "3:2";
cam.aperture = 5.6;
cam.imageFormat = ImageFormat.RAWAndLargeFineJPEG;
cam.captureImage();
Known issues
Windows related: Currently windows does not allow WSL to talk directly to USB hardware (I am aware of some developments so I hope soon it can) to make it work on Windows at the moment we are using mintty from MSYS2 with gphoto2 installed in mingw64. This introduces a bug whenever executing a command it will unfocus the currently focused window due to mintty hiding it's own window but still stealing focus.
I will try to get WSL2 to work whenever that is ready.
Contributing
Make a PR and explain clearly what it fixes, enhances, adds or whatever you have done. I will review it and if I think it's sufficient then I will merge it.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.