-
Notifications
You must be signed in to change notification settings - Fork 59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
StopMotion - libgphoto2 integration #1027
Conversation
87fc47f
to
7723f28
Compare
f29d3de
to
6a16fa2
Compare
Finally! All artifacts should now be working. Looking for testers in all OSs. Need some regression testing for Canon EDSDK as I had to change some thing that might have impacted it. EDIT: Just realized we cannot regression test Canon EDSDK in PR artifacts. That will need to wait until it is merged. Good news is we can now test StopMotion with DSLR cameras with PR artifacts, Canon or not. 😁 |
Tested the action build on macOS with a Canon Rebel SL2. Images themselves capture just fine & are visible in live view. Camera settings can be changed as expected. I did notice 2 issues:
|
The Canon I had has 2 different Camera battery properties, and I used one that always gave %. The other gave different set of descriptions. I wonder if not all Canon's have that property and maybe I should switch to the other one. As for zoom, I used a property from my camera that had a viewer screen size embedded in it. Possible your camera doesn't have that property or it is embedded differently in the property. For both cases, I need additional information from your camera. Please do the following:
As always...many thanks for Testing! |
Here you go: I'm always happy to test! I did try out a couple other cameras I had on hand. They were recognized but that was it. On the list of supported cameras they were listed without any features (capture, live view or etc.), so that's probably to be expected. |
Thanks. I think I need to switch to use the other battery level. Will submit a fix for that. I think I'll add something in Preferences that can generate the camera's property list so you don't need to install gphoto2 to create it. Was also thinking of adding a way to enable debug camera events for debugging issues. I not sure how to fix the manual zoom/focus being stuck for your camera. The property list from your camera doesn't give me any indication of the LiveView area size other than Large, Medium, Small but I have no idea what the actual width and height are to properly place the zoom/focus point. If I knew what those dimensions were, I could code it specifically for that property. I suppose I can default a specific size when it is not known and hope it works ok for most cameras where I don't have that property. As for the other cameras you tried, are you able to capture on the camera directly and it still downloads the images to T2D? In that way you can still do stop motion in T2D, just not easily. Curious to see those camera's property lists. |
@artisteacher I noticed in your camera's property list, it shows On your camera, does the I did verify that I was using |
Tested on Linux with an ancient Nikon D40X , it works fine even though no live preview is available on this model ! Settings work fine though I did not find a way to use the "focus" option but I suspect that requires live view ability. As a side note, I did notice some error messages in the terminal when closing t2d, but nothing too serious I think :
Here is the result of This is a great addition to T2d ! Great work as always. FWIW, I used to use a webcam through my DLSR's viewfinder before live view became a thing; ( See here for full article in french : https://wiki.arthus.net/?linuxstopmotion ) Not sure it's worth the hassle, but maybe having the possibility to use a webcam for liveview and gphoto2 for capture could be an interesting option for some setups... Anyway, cheers, let me know if I can test other things or be of any help. |
@ABelliqueux Thanks for testing. Normally the focus feature requires Liveview. Technically you may be able to adjust focus without it, but without some way to see the actual results of moving the slider, it would be rather difficult to get the right focus. I also am not 100% certain the actual capture will honor it as GPhoto may force autofocus. Not sure what is causing the errors. That only happens on shutdown/choosing no camera? Gphoto, itself, may be trying to reset something it thinks your Nikon might have and failing to do so. I've seen it do something similar on another camera and the error had nothing to do with what T2D was doing. |
Hello, I did the test with a Canon T3i and it was well recognized, although I could not animate. I recorded a video to better explain the error and posted it in the following thread: |
@charliemartinez Thanks for testing. i watched the video. Not sure why Capture wasn't working. Can you do the following in a Terminal window and post the results so I can get more info from your camera:
Also, can you try running the AppImage from command line and try stuff to see if it gives any GP Error messages? |
gphoto2 --list-all-config END |
./Tahoma2D.AppImage |
IT WORKED!!! |
6a16fa2
to
5d6357c
Compare
Ok. uploaded the last set of changes, I think. As far as the issue with the For some Canon models, I found a focus info attribute that appears to contain the right dimensions so I use that. For Canon models that don't have that attribute and all other cameras, I use the following logic:
The caveat to this is the |
I'll bring a camera home after the weekend and test it out. Thanks for continuing to improve this feature! |
2061ee9
to
e86190e
Compare
Time to make this official. Thanks for patiently waiting and to all those who tested it. For those who have a Canon and have some spare time, it would be good to regression test the original Canon library once the nightly is built. |
Hi, The 1.4 beta is supposed to have gphoto2 integration as I can see in the release section but I can no longer get my (DSLR) Nikon D40x recognized in 1.4 whereas it work in the artifacts you mentionned in #1027 (comment) which where available here : https://github.com/tahoma2d/tahoma2d/pull/1027/checks (it was 1.3 version). The camera doesn't appear in the camera list anymore, in the 1.4 beta but works fine in gphoto2 and tahoma 1.3. Please let me know if I can provide useful informations. |
What OS are you on? |
Sorry, I should have mentionned that. This is on Linux ( Manjaro ), using the appimage, and gphoto.
in both cases (1.3 and 1.4). |
No problem. I had added gphoto support for all 3 OSes so i wasn't thinking Linux only even though this is what sparked gphoto implementation. 🙂 I'm not sure what changed between then and now, especially for linux. I'll try and figure it out. |
This PR integrates libgphoto2 (v2.5.30) which primarily resolves #927 but is extended to all OSs. This will extend the supported DSLR cameras that Tahoma2D can potentially work with.
DSLR Camera Support
DSLR camera support is as follows:
Only way to find out how a non-Canon camera might work is to plug it in and try. Some features may not work due to either libgphoto2-camera limitations or additional information is needed from your camera to better support it.
T2D Feature changes
Following changes were made to StopMotion features:
Capture
press withoutLiveView
to support cameras without LiveView capabilities.Image Size
dropdown to settings since some camera models haveQuality/Format
andSize
as 2 different settings.Manual Focus
controls use a slider. CanonManual Focus
controls will continue to use buttons.Known issues/differences
DSLR Camera Handling
DSLR camera is handled via the following
In cases where a Canon camera is detected by both Canon EDSDK and libgphoto2 (detected camera names need to match exactly), the Canon EDSDK will take priority and not list the libgphoto2 version. If Canon EDSDK and libgphoto2 do not detect the same name for the same camera, both will be listed (Canon EDSDK camera listed first), and user can choose which one to use. Canon EDSDK is probably the best one to use in that scenario.
*For Windows to control the camera via libgphoto2, it will likely be necessary to change the USB camera driver with zadig.exe from https://zadig.akeo.ie. I used
libusbk
driver. Doing this will likely prevent other software from detecting the camera. To restore the original driver, need to uninstall and select to delete driver from theDevice Manager
, then rescan for new hardware.Libgphoto2 code
Tahoma2D uses a modified version of libgphoto2.
Modified source can be found at https://github.com/tahoma2d/libgphoto2 under the
tahoma2d-version
branch.