gphoto / libgphoto2

The libgphoto2 camera access and control library.
GNU Lesser General Public License v2.1
1.04k stars 324 forks source link

Movie capture failure with older Canon EOS #562

Open michaelsburns opened 4 years ago

michaelsburns commented 4 years ago

Hello,

I've been using gphoto2 with --capture-movie to capture the liveview from my Rebel T2i (EOS 550D), and recently tried libgphoto2 at HEAD to test new documented performance gains. Unfortunately the latest version does not work:

mbx@raspberrypi:~/software/libgphoto2 $ CAMLIBS="camlibs" LD_PRELOAD="libgphoto2/.libs/libgphoto2.so.6 libgphoto2_port/libgphoto2_port/.libs/libgphoto2_port.so.12" ../gphoto2/gphoto2/gphoto2 --capture-movie=1 --debug --debug-logfile=log.txt

Capturing 1 preview frames as movie to 'movie.mjpg'. ERROR: Movie capture error... Exiting. Movie capture finished (0 frames)

I've narrowed this down to changes made in commit e2ad1cb. In the previous commit, 56fdba4, the capture works. My very naive, shot in the dark, wild guess here is that the repeated EOS_GetViewFinderData requests, which are all returning "Camera Not Ready," are actually preventing the camera from getting ready in a denial of service way. Maybe some sort of backoff for repeated "not readies" would help.

See attached logs:

libgphoto2_56fdba4_success.log libgphoto2_e2ad1cb_fail.log

msmeissn commented 4 years ago

Hmm. the speed up hack works on newer eos, but the older are overloaded... i remember :/ The commit removed the backoffs to avoid slowing down the framerate ... I need to put it back, perhaps add some different strategy again.

michaelsburns commented 4 years ago

Thanks, I can confirm that movie capture works @ HEAD on my 550D.

michaelsburns commented 4 years ago

Also, as a datapoint, I'm getting ~25 FPS on the workhorse that is a Raspberry Pi 3 B+ when writing to /dev/null. Not bad!

AndreSteenbergen commented 3 years ago

according to the supported list my eos 10d (I know ancient) should be able to liveview over gphoto2. It doesn't. it takes 1 image, not sending it to the pc and in the display of the camera the only thing shown is a blinking "busy" using version 2.5.26

hfiguiere commented 3 years ago

I don't even see the 10D on the list http://gphoto.org/doc/remote/ , but it surely doesn't support liveview. Nor the 20D that came after.

AndreSteenbergen commented 3 years ago

image

According to http://www.gphoto.org/proj/libgphoto2/support.php it is....

msmeissn commented 3 years ago

The 10D is served by the "very old" canon driver. I took it from the abilities list in there. I might have done however copy and paste addition at this time :/

AndreSteenbergen commented 3 years ago

no problem, I also own a 50D, which works. I just thought, maybe... just maybe ;)