DNG import OK but JPG hangs

Asked by Marcus Brownlow on 2016-01-02

I am trying to import DNG and JPG files from my SD card using RPD. The camera saves both file formats and each file has the same prefix e.g. file001.DNG and file001.JPG.

The first DNG file imports correctly but the first JPG and all subsequent files fail: the import just hangs until I Pause the import process.

I've tried this with and without the JPG Sync feature ticked but the result is the same.

If I manually select just the DNGs, then the import works fine. If I then manually select the JPGs, the import hangs.

Subfolder preferences are: imagedateYYYYMMDD_jobcode/imagedateYYYYMMDD_EXTENSION_jobcode
e.g. 20160102_Copenhagen/20160102_DNG_Copenhagen

Photo renaming preferences are:
imagedateYYYYMMDD_jobcode_storednumber.extension
e.g. 20160102_Copenhagen_0001.DNG

I would expect that file001.DNG and file001.JPG on the SD card would be downloaded to the following folders, respectively:

20160102_Copenhagen/20160102_DNG_Copenhagen/20160102_Copenhagen_0001.DNG
20160102_Copenhagen/20160102_JPG_Copenhagen/20160102_Copenhagen_0001.JPG

Currently, I get the first DNG file but not the first JPG or any subsequent files.

I hope the problem is me! Thank you for your help.

Question information

Language:
English Edit question
Status:
Solved
For:
Rapid Photo Downloader Edit question
Assignee:
No assignee Edit question
Solved by:
Damon Lynch
Solved:
2016-01-03
Last query:
2016-01-03
Last reply:
2016-01-03
Damon Lynch (dlynch3) said : #1

Hi, run this from the command line:

rapid-photo-downloader --debug

then copy and paste the output here, thanks.

[INFO/MainProcess] Rapid Photo Downloader 0.4.11
[INFO/MainProcess] Using pyexiv2 0.3.2
[INFO/MainProcess] Using exiv2 0.23.0
[INFO/MainProcess] Using exiftool 9.46
[INFO/MainProcess] Using hachoir 1.3.3
Rapid Photo Downloader is already running
[INFO/MainProcess] process shutting down
[DEBUG/MainProcess] running all "atexit" finalizers with priority >= 0
[DEBUG/MainProcess] running the remaining "atexit" finalizers

Please ignore last post ... this is the debug output. 2 files for import, one DNG one JPG. DNG works but JPG hangs.

[INFO/MainProcess] Rapid Photo Downloader 0.4.11
[INFO/MainProcess] Using pyexiv2 0.3.2
[INFO/MainProcess] Using exiv2 0.23.0
[INFO/MainProcess] Using exiftool 9.46
[INFO/MainProcess] Using hachoir 1.3.3
[INFO/MainProcess] Downloads that have occurred so far today: 1
[INFO/MainProcess] allocating a new mmap of length 4096
[DEBUG/MainProcess] created semlock with handle 139992480890880
[DEBUG/MainProcess] created semlock with handle 139992480886784
[DEBUG/MainProcess] created semlock with handle 139992480882688
[DEBUG/MainProcess] created semlock with handle 139992480878592
[DEBUG/MainProcess] created semlock with handle 139992480874496
[DEBUG/MainProcess] created semlock with handle 139992480870400
[DEBUG/MainProcess] created semlock with handle 139992480866304
[DEBUG/MainProcess] created semlock with handle 139992480862208
[DEBUG/MainProcess] _set_from_toolbar_state
[INFO/GetPreviewImage-1] child process calling self.run()
[DEBUG/MainProcess] Start of day is set to 3:0
[DEBUG/MainProcess] SubfolderFile PID: 28894
[INFO/MainProcess] Using manually specified path /media/removable/external1/landing
[INFO/MainProcess] # photo backup devices: 0; # video backup devices: 0
[INFO/SubfolderFile-2] child process calling self.run()
[DEBUG/MainProcess] Working with 1 devices
[DEBUG/MainProcess] Starting a device scan for device /media/removable/external1/landing
[DEBUG/MainProcess] created semlock with handle 139992238223360
[DEBUG/MainProcess] created semlock with handle 139992238219264
[DEBUG/MainProcess] created semlock with handle 139992179093504
[DEBUG/MainProcess] Queue._after_fork()
[DEBUG/MainProcess] created semlock with handle 139992179089408
[DEBUG/MainProcess] created semlock with handle 139992179085312
[DEBUG/MainProcess] created semlock with handle 139992179081216
[DEBUG/MainProcess] created semlock with handle 139992179077120
[DEBUG/MainProcess] created semlock with handle 139992179073024
[DEBUG/Scan-3] Queue._after_fork()
[INFO/Scan-3] child process calling self.run()
[DEBUG/MainProcess] TaskManager PID: 28899
[INFO/Scan-3] process shutting down
[DEBUG/Scan-3] running all "atexit" finalizers with priority >= 0
[DEBUG/Scan-3] running the remaining "atexit" finalizers
[INFO/Scan-3] process exiting with exitcode 0
[INFO/MainProcess] Found 2 photos
[INFO/MainProcess] Files total 46.5MB
[DEBUG/MainProcess] created semlock with handle 139992178806784
[DEBUG/MainProcess] created semlock with handle 139992178802688
[DEBUG/MainProcess] created semlock with handle 139992178798592
[DEBUG/MainProcess] Queue._after_fork()
[DEBUG/MainProcess] created semlock with handle 139992178794496
[DEBUG/MainProcess] created semlock with handle 139992178790400
[DEBUG/MainProcess] created semlock with handle 139992178786304
[DEBUG/MainProcess] created semlock with handle 139992178782208
[DEBUG/MainProcess] created semlock with handle 139992178778112
[DEBUG/MainProcess] TaskManager PID: 28900
[DEBUG/MainProcess] Turning on display of thumbnails
[DEBUG/GenerateThumbnails-4] Queue._after_fork()
[DEBUG/GenerateThumbnails-4] Queue._after_fork()
[INFO/GenerateThumbnails-4] child process calling self.run()
[DEBUG/GenerateThumbnails-4] Getting thumbnail for /media/removable/external1/landing/L1000608.DNG...
[DEBUG/GenerateThumbnails-4] file type is photo
[DEBUG/GenerateThumbnails-4] Read photo metadata...
[DEBUG/GenerateThumbnails-4] ...successfully read photo metadata
[DEBUG/GenerateThumbnails-4] Getting thumbnail data (160, 120)
[DEBUG/GenerateThumbnails-4] Ignoring embedded preview
[DEBUG/GenerateThumbnails-4] _get_thumbnail_data returned
[DEBUG/GenerateThumbnails-4] got td
[DEBUG/GenerateThumbnails-4] opened image
[DEBUG/GenerateThumbnails-4] downsizing
[DEBUG/GenerateThumbnails-4] Image size 320x216
[DEBUG/GenerateThumbnails-4] Box size 160x120
[DEBUG/GenerateThumbnails-4] about to actually downsize using image.thumbnail
[DEBUG/GenerateThumbnails-4] it downsized
[DEBUG/GenerateThumbnails-4] downsized
[DEBUG/GenerateThumbnails-4] Image size 160x108
[DEBUG/GenerateThumbnails-4] Box size 100x100
[DEBUG/GenerateThumbnails-4] about to actually downsize using image.thumbnail
[DEBUG/GenerateThumbnails-4] it downsized
[DEBUG/GenerateThumbnails-4] ...got thumbnail for /media/removable/external1/landing/L1000608.DNG
[DEBUG/GenerateThumbnails-4] Getting thumbnail for /media/removable/external1/landing/L1000608.JPG...
[DEBUG/GenerateThumbnails-4] file type is photo
[DEBUG/GenerateThumbnails-4] Read photo metadata...
[DEBUG/GenerateThumbnails-4] ...successfully read photo metadata
[DEBUG/GenerateThumbnails-4] Getting thumbnail data (160, 120)
[DEBUG/GenerateThumbnails-4] _get_thumbnail_data returned
[DEBUG/GenerateThumbnails-4] got td
[DEBUG/GenerateThumbnails-4] opened image
[DEBUG/GenerateThumbnails-4] downsizing
[DEBUG/GenerateThumbnails-4] Image size 320x216
[DEBUG/GenerateThumbnails-4] Box size 160x120
[DEBUG/GenerateThumbnails-4] about to actually downsize using image.thumbnail
[DEBUG/GenerateThumbnails-4] it downsized
[DEBUG/GenerateThumbnails-4] downsized
[DEBUG/GenerateThumbnails-4] Image size 160x108
[DEBUG/GenerateThumbnails-4] Box size 100x100
[DEBUG/GenerateThumbnails-4] about to actually downsize using image.thumbnail
[DEBUG/GenerateThumbnails-4] it downsized
[DEBUG/GenerateThumbnails-4] ...got thumbnail for /media/removable/external1/landing/L1000608.JPG
[INFO/GenerateThumbnails-4] process shutting down
[DEBUG/GenerateThumbnails-4] running all "atexit" finalizers with priority >= 0
[DEBUG/GenerateThumbnails-4] running the remaining "atexit" finalizers
[INFO/GenerateThumbnails-4] process exiting with exitcode 0
[DEBUG/MainProcess] Download activated
[DEBUG/MainProcess] Prompting for Job Code
[DEBUG/MainProcess] Job Code entered
[DEBUG/MainProcess] Preference change detected: job_codes
[DEBUG/MainProcess] Job Code CPH4 entered
[DEBUG/MainProcess] Photo download folder is valid: /media/removable/external1/photographs
[DEBUG/MainProcess] created semlock with handle 139992177856512
[DEBUG/MainProcess] created semlock with handle 139992177852416
[DEBUG/MainProcess] created semlock with handle 139992177848320
[DEBUG/MainProcess] Queue._after_fork()
[DEBUG/MainProcess] created semlock with handle 139992177844224
[DEBUG/MainProcess] created semlock with handle 139992177840128
[DEBUG/MainProcess] created semlock with handle 139992177836032
[DEBUG/MainProcess] created semlock with handle 139992177831936
[DEBUG/MainProcess] created semlock with handle 139992177827840
[DEBUG/MainProcess] TaskManager PID: 29124
[DEBUG/MainProcess] created semlock with handle 139992177823744
[DEBUG/MainProcess] created semlock with handle 139992177819648
[DEBUG/MainProcess] created semlock with handle 139992177815552
[DEBUG/MainProcess] Queue._after_fork()
[DEBUG/FileModify-5] Queue._after_fork()
[DEBUG/MainProcess] created semlock with handle 139992177811456
[DEBUG/MainProcess] created semlock with handle 139992177807360
[DEBUG/FileModify-5] Queue._after_fork()
[DEBUG/MainProcess] created semlock with handle 139992177803264
[DEBUG/FileModify-5] Queue._after_fork()
[DEBUG/MainProcess] created semlock with handle 139992177799168
[INFO/FileModify-5] child process calling self.run()
[DEBUG/MainProcess] created semlock with handle 139992177795072
[DEBUG/FileModify-5] Finished 0. Getting next task.
[DEBUG/MainProcess] TaskManager PID: 29125
[DEBUG/CopyFiles-6] Queue._after_fork()
[DEBUG/CopyFiles-6] Queue._after_fork()
[DEBUG/CopyFiles-6] Queue._after_fork()
[DEBUG/CopyFiles-6] Queue._after_fork()
[INFO/CopyFiles-6] child process calling self.run()
[DEBUG/CopyFiles-6] Photo temporary directory: /media/removable/external1/photographs/rpd-tmp-g4FTxB
[DEBUG/MainProcess] Using temp dir /media/removable/external1/photographs/rpd-tmp-g4FTxB (photos)
[DEBUG/FileModify-5] Verifying file L1000608.DNG....
[DEBUG/FileModify-5] ....file L1000608.DNG verified
[DEBUG/FileModify-5] Finished 1. Getting next task.
[DEBUG/MainProcess] Sending file for rename: 1.
[DEBUG/SubfolderFile-2] Generated subfolder name 20160102_CPH4/20160102_DNG_CPH4 for file L1000608.DNG
[DEBUG/SubfolderFile-2] Generated file name 20160102_CPH4_0002.dng for file L1000608.DNG
[DEBUG/SubfolderFile-2] Probing to see if subfolder already exists...
[DEBUG/SubfolderFile-2] ...subfolder doesn't exist: creating it...
[DEBUG/SubfolderFile-2] ...subfolder created
[DEBUG/SubfolderFile-2] Attempting to rename file /media/removable/external1/photographs/rpd-tmp-g4FTxB/IDdtC to /media/removable/external1/photographs/20160102_CPH4/20160102_DNG_CPH4/20160102_CPH4_0002.dng .....
[DEBUG/SubfolderFile-2] ....successfully renamed file
[DEBUG/SubfolderFile-2] Finish processing file: 1
[DEBUG/SubfolderFile-2] Finished 1. Getting next task.
[DEBUG/FileModify-5] Verifying file L1000608.JPG....
[INFO/CopyFiles-6] process shutting down
[DEBUG/CopyFiles-6] running all "atexit" finalizers with priority >= 0
[DEBUG/CopyFiles-6] running the remaining "atexit" finalizers
[INFO/CopyFiles-6] process exiting with exitcode 0
[DEBUG/FileModify-5] ....file L1000608.JPG verified
[DEBUG/FileModify-5] Auto rotating /media/removable/external1/photographs/rpd-tmp-g4FTxB/XnbE1
processing /media/removable/external1/photographs/rpd-tmp-g4FTxB/XnbE1
[DEBUG/MainProcess] Sending file for rename: 2.
[INFO/FileModify-5] process shutting down
[DEBUG/FileModify-5] running all "atexit" finalizers with priority >= 0
[DEBUG/FileModify-5] running the remaining "atexit" finalizers
[INFO/FileModify-5] process exiting with exitcode 0
[INFO/SubfolderFile-2] process shutting down
[DEBUG/SubfolderFile-2] running all "atexit" finalizers with priority >= 0
[DEBUG/SubfolderFile-2] running the remaining "atexit" finalizers
Process SubfolderFile-2:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/share/rapid-photo-downloader/rapid/subfolderfile.py", line 413, in run
    rpd_file = self.same_name_different_exif(sync_photo_name, rpd_file)
  File "/usr/share/rapid-photo-downloader/rapid/subfolderfile.py", line 252, in same_name_different_exif
    'image1_date': i1_date_time.strftime("%x"),
AttributeError: 'str' object has no attribute 'strftime'
[INFO/SubfolderFile-2] process exiting with exitcode 1
[DEBUG/MainProcess] Download activated
[INFO/MainProcess] Terminating all processes...
[DEBUG/MainProcess] Deleted directory /media/removable/external1/photographs/rpd-tmp-g4FTxB
[DEBUG/MainProcess] Preference change detected: main_window_size_x
[DEBUG/MainProcess] Preference change detected: main_window_size_y
[INFO/MainProcess] process shutting down
[DEBUG/MainProcess] running all "atexit" finalizers with priority >= 0
[INFO/MainProcess] calling terminate() for daemon GetPreviewImage-1
[INFO/MainProcess] calling join() for process GetPreviewImage-1
[DEBUG/MainProcess] running the remaining "atexit" finalizers

Best Damon Lynch (dlynch3) said : #4

There is a bug in the code that is trying to warn that the RAW+JPG pair share the same file name but for some reason their exif time stamps are different. That bug is causing that part of the code to halt.

One way to workaround the problem is to delete lines 412 and 413 in subfolderfile.py. If you don't know how to do that, let me know.

Thanks Damon Lynch, that solved my question.