From: Poul J. <fly...@gf...> - 2006-10-23 09:13:19
Attachments:
300D_debug.txt
|
When using --capture-image with -I -F options to shoot multiple frames, download of the second image fails with error messages "File not found", "Buggy libcanon.so?". Debug log attached. Any help highly appreciated. Thank you, Poul Jensen |
From: Poul J. <fly...@gf...> - 2006-10-24 04:55:23
|
Paul Walmsley wrote: > On Mon, 23 Oct 2006, Poul Jensen wrote: > >> When using --capture-image with -I -F options to shoot multiple >> frames, download of the second image fails with error messages "File >> not found", "Buggy libcanon.so?". Debug log attached. > > Can you shoot single frames successfully? > > - Paul Yes. Single frames shoot just fine and also download fine, as does the first frame of a sequence. Downloading multiple images with --get-all-files works fine too. But when capturing and downloading 2 (or more) images with the command --capture-image -I <interval> -F <# frames>, download of the second image fails. Seemingly the path to the file gets corrupted somehow. This happens on Ubuntu 6.06 and also on pdaXrom (ARM linux based OS) and with different CF cards. Here's what I think is the interesting part of the debug log (attached with previous post): <Initializing download of first image - successfully> 2.692945 canon/canon.c(2): Entering directory ".\268CANON" 2.692982 canon/canon.c(2): old entry "268CANON", attr = 0x10, size=0 2.693018 canon/canon.c(2): new entry "IMG_6851.JPG", attr = 0x20, size=510502 2.693055 canon/canon.c(2): Found mismatch 2.693091 canon/util.c(2): is_image(IMG_6851.JPG) == 1 2.693127 canon/canon.c(2): Found our new image file 2.693171 canon/canon.c(3): canon2gphotopath: converted 'C:\DCIM\268CANON' to '/DCIM/268CANON' 2.693240 main(2): Getting 'IMG_6851.JPG'... 2.693303 gphoto2-camera(2): Getting file 'IMG_6851.JPG' in folder '/DCIM/268CANON'... 2.693353 libgphoto2/gphoto2-filesys.c(2): Getting file 'IMG_6851.JPG' from folder '/DCIM/268CANON' (type 1)... 2.693415 gphoto2-filesystem(2): Folder / is dirty. Listing file in there to make folder clean... 2.694143 gphoto2-filesystem(2): Listing folders in '/'... 2.694239 canon/library.c(2): folder_list_func() 2.694277 canon/library.c(2): check_readiness() cached_ready == 0 2.694314 canon/canon.c(2): canon_int_ready() 2.694351 canon/usb.c(2): canon_usb_ready() 2.694390 canon/usb.c(2): canon_usb_dialogue() cmd 0x1 0x12 0x201 (Identify camera) 2.694441 gphoto2-port(2): Writing message (request=0x4 value=0x10 index=0x0 size=80=0x50)... 2.694489 gphoto2-port(3): Hexdump of 80 = 0x50 bytes follows: <snip> <Initializing download of 2nd image - failure> 12.426203 canon/canon.c(2): Entering directory ".\268CANON" 12.426242 canon/canon.c(2): old entry "268CANON", attr = 0x10, size=0 12.426281 canon/canon.c(2): new entry "IMG_6852.JPG", attr = 0x20, size=510260 12.426321 canon/canon.c(2): Found mismatch 12.426359 canon/util.c(2): is_image(IMG_6852.JPG) == 1 12.426398 canon/canon.c(2): Found our new image file 12.426437 canon/canon.c(3): canon2gphotopath: converted 'C:\DCIM\268CANON' to '/DCIM/268CANON' 12.426488 main(2): Getting 'IMG_6852.JPG'... 12.426534 gphoto2-camera(2): Getting file 'IMG_6852.JPG' in folder '/DCIM/268CANON'... 12.426576 libgphoto2/gphoto2-filesys.c(2): Getting file 'IMG_6852.JPG' from folder '/DCIM/268CANON' (type 1)... 12.427313 context(0): File 'IMG_6852.JPG' could not be found in folder '/DCIM/268CANON'. *** Error *** File 'IMG_6852.JPG' could not be found in folder '/DCIM/268CANON'. 12.427491 libgphoto2/gphoto2-filesys.c(2): Download of 'IMG_6852.JPG' from '/DCIM/268CANON' (type 1) failed. Reason: 'File not found' 12.427535 gphoto2-camera(2): Operation failed! ERROR: Could not get image. ERROR: Buggy libcanon.so? *** Error (-108: 'File not found') *** |
From: Poul J. <fly...@gf...> - 2006-11-02 02:56:30
|
The list of files in the camera folder never updates. Or rather, it updates once after the first image capture because the folder is initialized with flag files_dirty=1, triggering an update in function gp_filesystem_number (libgphoto2/gphoto2-filesys.c). The update sets files_dirty=0 and then the file list never updates again, causing failure because the next image can't be found. After an image capture with the 300D, where in the code is the folder (p.camera->fs->folder[x]) supposed to get updated with the new image? I can find the function that does it (canon_int_list_directory), but it is hard to tell where it is supposed to be called from, Can anybody provide me with a backtrace? Thank you, Poul Jensen |