RENPHOT procedure (external program executable from DOS/Windows command session) generates unique names for image files recorded by a digital camera based on date-time stamps contained within the files. This program, as most of utility programs, was written to a great degree out of desire to avoid the necessity of a tedious manual work that could be relatively easy automated.
Its origin goes back to late 1998 when my brother Victor and I had switched simultaneously to the digital photography. We had both chosen Olympus 400D, which at that time was the only digital camera on the market that combined four very important for us characteristics:
This doesn't look as great features these days (several years later), but at that time there was much less choice, and ours, as we believed, was close to an optimum. Digital cameras were very expensive back then, but given our intensity of taking photos and an average price of film developing and printing pictures, we've calculated that in several years we'll break even, so that all our digital photography would become only for the negligible price of the regular AA batteries. It was important that this camera provided for most of our basic photography needs, and thus it stays useful years later, despite becoming obsolete when compared with other contemporary options (by the year 2005 we've both switched to Canon PowerShot S1-IS).
One of the important reasons behind switching to digital photography was our hope that we'll get an easier and more effective way to organize our vast photo archives using computer, and it will put an end to the everlasting job of sorting out shoeboxes full of pictures and squeezing them into photo albums. Now, several years later, this expectation finally came true and thousands of photos can be packed on a piece of plastic (CD-R) that is cheaper than the price of a single photo print. But in order to have any value, this mass of images has to be structured into a directory hierarchy that would permit an obvious and quick access.
The foundation of such hierarchy is the system of naming the individual pictures. Unfortunately names being generated by the digital camera are hardly usable for this purpose. Olympus 400D, for example, generates file names as Pmddnnnn, where m is the last digit of current month number, dd is current day number, and nnnn is sequential number of the picture within the the flash cartridge (normally around 40 High Quality compressed picture files fit on one 8 Mb standard cartridge).
Given the potentially large number of photo image files it was necessary to choose some simple and formal method for naming pictures, and the obvious way, of course, was to use the date and time stamp, which got recorded with the image. Our early attempts to rename files manually, though quite pathetic, pushed us in the right direction, and pretty soon Victor, who used to take much more pictures than myself, got irritated first, and came out with an idea to let computer do image file renaming, and has drafted the spec for the initial version of RENPHOT. PowerBASIC was more of my tool, so I had to pick up the programming.
The initial version of the program renamed image files using their recorded date-time stamp, and generated image directory DESCRIPT.ION file for later adjustment and use with ACDSee Classic image file viewer and manager. (DESCRIPT.ION is the file within a directory that holds descriptions of directory files – an old, simple and flexible technique to have a logical equivalent of the Long File Names within 8.3 file naming scheme.) Date and time stamp was extracted from the fixed place within image file. As we've been using RENPHOT after the initial version was written, it became clear that certain enhancements would be beneficial, and they got incorporated into the following versions of the program. The latest version is a flexible program that searches date-time stamp dynamically, and thus is usable for renaming files recorded by different digital cameras. It has a detailed parameter control of its execution modes, and has provisions both to control and to resolve automatically certain potential renaming conflicts. It permits also to specify a global description, which is a major time-saving feature when used properly.
Since RENPHOT selects image date dynamically, both in terms of position within the JPG file and the number of date occurrence, it should, at least theoretically, work with any photo JPG files. However, I'm well aware of the fact that "In theory, theory and practice are the same, in practice they are different". So if you'll encounter a digital photo JPG file that this program fails to rename, please e-mail it to as a file attachment, and I'll make necessary changes to handle the new format. (Please remember that if date is not present in the file header, either because digital camera was not set to record it, or because it was removed by image processing program, RENPHOT won't be able to rename such file; files with entirely digital names are not renamed as well to permit a safe reprocessing of previously processed directory.)
It is important to understand that RENPHOT does not change in any way the contents of image files, and thus would never damage your images. It only renames image files, and, even in case of mistaken application, the worst consequence is an unwanted renaming, which is not a problem either, since new names contain the same data as old (camera recorded) names, as well as time component that keeps new names in the same order as the old ones.
Below there is a brief description of RENPHOT operation modes extracted from program text. Please look through it in order to understand the basic program functionality and the use of its control parameters. You can get more details about RENPHOT program and examples of its functioning in the PowerBASIC section.
' Description -------------------------------------------------------------- ' Program generates unique names for image files recorded by a digital ' camera basing on date-time stamps contained within files. Generated ' file names are unique only within the given year - it's not much of a ' trouble to separate files between years, while this limitation permits ' to maintain the most universal 8.3 naming standard. Ideally a digital ' camera itself should do this job, but file naming seems to be of a ' little concern for camera designers. ' Program reads all not entirely digitally named *.JPG files within the ' CURRENT directory and renames those that have recorded date and time ' stamp (non-zero). Recorded date and time can be adjusted by a fixed ' value to handle the situation when pictures were taken in a time zone ' different from one where camera clock was set, or to correct error of ' the camera clock. Along with file renaming program appends records ' to the DESCRIPT.ION file providing initial description approximations ' (with optional global comment) that can be adjusted manually later. ' Parameters (Up to 7 Positional Self-Delimited) --------------------------- ' 1. Global description comment to be added to every description line ' (might be handy as an event or place identification that can be ' later individually adjusted as necessary for selected images). ' 2. Date-time stamp delimiter recorded by the camera (Default: ":"). ' 3. Number of date-time stamp entry to select (Default: 2). Camera ' usually writes several dates (Olympus writes 3, for example) and ' certain investigation and trial might be required to determine what ' date-time stamp is the most reliable (for Olympus D400 it happens ' to be the 2-nd date). ' 4. Name of the last file from the previous memory cartridge in the form ' of an eight-digit number "MODAHRUT" (Default or invalid: none). ' This parameter might prove handy for downloading and renaming images ' from several successive memory cartridges in case of a high frequency ' of shots made at the end of one cartridge that results in the ' incremental shift of file name numbers, so that this shift carries ' over into the next cartridge. This might happen because it's ' necessary to download separate cartridges into separate directories ' - camera provides unique names only within its current cartridge. ' There's always a choice, of course, not to use this parameter, but ' to do necessary image file name adjustments manually when merging ' individual cartridge directories together. ' 5. Date translation pattern (Default: "MO/DA/CNYE") ' Date is recorded by the camera as "CNYE:MO:DA" (":" stands here ' for the camera-recorded date-time stamp delimiter), where: ' CN - Current century ' YE - Year of current century ' MO - Month of current year ' DA - Day of current month ' Pattern for the date to be written to the corresponding line of ' DESCRIPT.ION file can be composed of above listed date fields ' and any delimiters different from DAMOYECN characters, e.g.: ' MO/DA/CNYE or MO/DA/YE ' DA.MO.CNYE or DA.MO.YE ' CNYE-MO-DA or YE-MO-DA, etc. ' 6. Time translation pattern (Default: "HR:UT") ' Time is recorded by the camera as "HR:UT:SZ" (":" stands here ' for the camera-recorded date-time stamp delimiter), where: ' HR - Hour of current day ' UT - Minute of current hour ' SZ - Second of current minute ' Pattern for the time to be written to the corresponding line of ' DESCRIPT.ION file can be composed of above listed time fields ' and any delimiters different from HRUTSZ characters, e.g.: ' HR:UT:SZ or HR:UT ' HR.UT.SZ or HR.UT ' HR-UT/SZ or HR-UT, etc. ' 7. Time adjustment increment/decrement (Default: none), e.g.: ' +08:00 or -02:30 - Should have fixed sHR:UT format, when specified. ' HR<=12 and UT<=59 - Invalid parameter (format or value) is ignored. ' Time adjustment comes handy in case you've been travelling, and taking ' pictures in another time zone, but didn't adjust the camera clock ' (who does?). This might be a minor annoyance, but why not to fix it ' in the same run with image files' renaming? ' It's sufficient, of course, to have only hours for time zone adjustment; ' minutes are added just in case it would be desirable to correct an error ' of the camera clock. ' Be careful with the sign setting; you've got to have it "+", if ' pictures were taken East of the location where camera clock was set ' (things happen "earlier" there), and "-", if pictures were taken West. ' Note: In order to permit any symbols within global description comment, ' and to accommodate for any possible recorded date-time stamp ' delimiter, and any delimiters within date and time patterns, ' parameter string is treated as being self-delimited, i.e. its ' FIRST symbol is used as the delimiter of individual parameters. ' It is up to the user to specify delimiter with the parameters ' and to choose it carefully to avoid parameter misinterpretation. ' RENPHOT - All parameters defaulted ' RENPHOT _Comment, etc. - Symbol "_" is the delimiter ' RENPHOT /Comment, etc./: - Symbol "/" is the delimiter ' RENPHOT \Comment, etc.\:\1 - Symbol "\" is the delimiter ' RENPHOT |Comment, etc.|:|3|04121443 - Symbol "|" is the delimiter ' Action ------------------------------------------------------------------- ' - Reads date and time stamp from every *.JPG file in the CURRENT directory ' in the form of CNYE:MO:DA HR:UT:SZ (":" is assumed to be date delimiter). ' - Renames each file into MODAHRUT.JPG using data from date and time stamp. ' +>+>+>+> ' | | | v ' | | v Minute (can be incremented over 59 to 99) ' | v Hour (can be incremented over 23, if required) ' v Day ' Month ' - In case such name already exists, name is incremented by "+1" until ' proper vacant name slot is found (the ACTUAL time is placed in the ' description record). Such incrementing might move the minute field ' over 59 to 99 and under very rare circumstances hour field over 23. ' (It's not a big deal to keep file name always as a proper date, but ' it might tend to propagate the shift beyond month and even beyond year, ' which doesn't make any sense.) ' - Image description record is appended to DESCRIPT.ION file for future ' use as ACDSee and 4DOS description line. Description record has the ' following format (includes WeeK Day identification): ' MODAHRUT.JPG WKD MO/DA/CNYE HR:UT [<global_description_comment>] ' Note: Date and time are translated according to the default pattern ' in the above example. Alternative translation patterns can be ' specified. ' Notes -------------------------------------------------------------------- ' - Program is designed to operate within CURRENT directory. ' - Important presumption is that file names written by the camera are not ' entirely digital (E.g.: they start with "P" for Olympus). ' - If file name is entirely digital (except for ".JPG" extension) no ' action is taken for such file. This ensures that partially processed ' directories can be entirely reprocessed safely to rename only what is ' required. ' - Program relies on the metadata with the date-time stamp that gets ' written at the beginning of the *.JPG image file by a digital camera. ' If date and time stamp is not found or it is all zeros, no action is ' taken for such file (camera should be set to write date and time to ' image file). To check the presence of metadata and date-time stamp ' view *.JPG file as text. ' - Renaming of image files should be done right after unloading them from ' the camera to the computer. If you plan to use RENPHOT, it should be ' the very FIRST processing step. Image processing programs such as ' ACDSee or PhotoShop remove camera-recorded metadata (they give warning, ' however), and date-time stamp gets lost, making operation of RENPHOT ' impossible (running it anyway won't spoil anything - files simply won't ' be renamed). ' - Beginning of the date-time stamp is identified by the program as four ' successive digits starting with "19" or "20" followed by the date ' delimiter, E.g.: "19yy:" or "20yy:". ' - Program looks for date-time stamp only within first 1000 symbols of ' *.JPG file. If the number of date-time entry specified by the 3-rd ' parameter is not found, file is not renamed. |
RENPHOT program should be run from the DOS/Windows command session, and within the current directory of photo image files that have to be renamed. Presuming that RENPHOT.EXE was downloaded to C:\PBASIC directory, that picture files were moved from the camera memory cartridge to the F:\P-020511 directory, and that most of the pictures from that cartridge were taken in Ridgewood, NJ, the sequence below presents a typical example of RENPHOT operation.
RENPHOT operation is illustrated below by a series of vital data snapshots.
Example below shows in colors how new name is generated from the date and time stamp.
P4210003.JPG --> 04231927.JPG 1999:04:23 19:27:30
Path: F:\P-020511 ————————————————————————————————————————————————————— P4210001 .JPG 206,109 .a.. 21-04-02 10:10:36 P4210002 .JPG 197,963 .a.. 21-04-02 10:11:12 P4230003 .JPG 215,858 .a.. 23-04-02 19:27:30 P4270004 .JPG 215,679 .a.. 27-04-02 16:58:46 P4270005 .JPG 189,099 .a.. 27-04-02 16:59:02 P5010006 .JPG 198,392 .a.. 1-05-02 23:43:00 P5030007 .JPG 206,139 .a.. 3-05-02 19:58:12 P5030008 .JPG 196,896 .a.. 3-05-02 19:58:28 P5030009 .JPG 206,353 .a.. 3-05-02 20:12:02 P5030010 .JPG 194,808 .a.. 3-05-02 20:52:52 P5030011 .JPG 197,808 .a.. 3-05-02 20:53:02 P5040012 .JPG 210,280 .a.. 4-05-02 10:53:36 P5040013 .JPG 215,686 .a.. 4-05-02 10:54:00 P5040014 .JPG 179,422 .a.. 4-05-02 10:54:14 P5040015 .JPG 184,853 .a.. 4-05-02 10:54:34 P5070016 .JPG 184,344 .a.. 7-05-02 20:26:52 P5070017 .JPG 196,939 .a.. 7-05-02 20:27:02 P5080018 .JPG 169,276 .a.. 8-05-02 20:41:16 P5080019 .JPG 164,621 .a.. 8-05-02 20:41:32 P5080020 .JPG 194,775 .a.. 8-05-02 20:42:04 P5090021 .JPG 181,559 .a.. 9-05-02 19:34:06 P5110022 .JPG 214,143 .a.. 11-05-02 12:11:04 P5110023 .JPG 214,963 .a.. 11-05-02 12:11:14 P5110024 .JPG 215,848 .a.. 11-05-02 12:11:28 |
|
FILE: F:\P-020511\P4210001.JPG ———————————————————————————————————————————————————————————————————————————— 00000000 ......Exif..II*........... ..................................... 00000040 ..............................(...........1...........2......... 00000080 ..............i...............OLYMPUS DIGITAL CAMERA .OL 000000C0 YMPUS OPTICAL CO.,LTD.C900Z,D400Z...H.......H.......v872-72..... 00000100 ....................2002:04:21 10:10:36...........*...........2. 00000140 ..'.......d...........0210........:...........N................. 00000180 ......b...........j...........r................................. 000001C0 ..............z...|.......|.......}...............0100.......... 00000200 ..................................^............................. 00000240 ......2002:04:21 10:10:36.2002:04:21 10:10:36................... 00000280 ......8............... 000002C0 00000300 .......................N...........V...(............. 00000340 ..........................H.......H.................R98......... 00000380 0100....OLYMP................................................... 000003C0 ......................"...........*...........6.......4...>..... 00000400 .. ...z...........................................d............. 00000440 ..SR872...[pictureInfo] Resolution=2 [Camera Info] Type=SR872... 00000480 ......OLYMPUS DIGITAL CAMERA.............../@.............+....g | |
F:\P-020511>RENPHOT /Ridgewood, NJ RENPHOT(3.0) Rename Digital Photo Image JPG Files 05-29-2002 23:09 --------------------------------------------------------------------- P4210001.JPG --> 04211010.JPG 2002:04:21 10:10:36 P4210002.JPG --> 04211011.JPG 2002:04:21 10:11:12 P4230003.JPG --> 04231927.JPG 2002:04:23 19:27:30 P4270004.JPG --> 04271658.JPG 2002:04:27 16:58:46 P4270005.JPG --> 04271659.JPG 2002:04:27 16:59:02 P5010006.JPG --> 05012343.JPG 2002:05:01 23:43:01 P5030007.JPG --> 05031958.JPG 2002:05:03 19:58:12 P5030008.JPG --> 05031959.JPG 2002:05:03 19:58:29 P5030009.JPG --> 05032012.JPG 2002:05:03 20:12:03 P5030010.JPG --> 05032052.JPG 2002:05:03 20:52:52 P5030011.JPG --> 05032053.JPG 2002:05:03 20:53:03 P5040012.JPG --> 05041053.JPG 2002:05:04 10:53:36 P5040013.JPG --> 05041054.JPG 2002:05:04 10:54:00 P5040014.JPG --> 05041055.JPG 2002:05:04 10:54:15 P5040015.JPG --> 05041056.JPG 2002:05:04 10:54:35 P5070016.JPG --> 05072026.JPG 2002:05:07 20:26:52 P5070017.JPG --> 05072027.JPG 2002:05:07 20:27:02 P5080018.JPG --> 05082041.JPG 2002:05:08 20:41:16 P5080019.JPG --> 05082042.JPG 2002:05:08 20:41:32 P5080020.JPG --> 05082043.JPG 2002:05:08 20:42:04 P5090021.JPG --> 05091934.JPG 2002:05:09 19:34:06 P5110022.JPG --> 05111211.JPG 2002:05:11 12:11:05 P5110023.JPG --> 05111212.JPG 2002:05:11 12:11:14 P5110024.JPG --> 05111213.JPG 2002:05:11 12:11:28 |
|
Path: F:\P-020511 ————————————————————————————————————————————————————— 04211010 .JPG 206,109 .a.. 21-04-02 10:10:36 04211011 .JPG 197,963 .a.. 21-04-02 10:11:12 04231927 .JPG 215,858 .a.. 23-04-02 19:27:30 04271658 .JPG 215,679 .a.. 27-04-02 16:58:46 04271659 .JPG 189,099 .a.. 27-04-02 16:59:02 05012343 .JPG 198,392 .a.. 1-05-02 23:43:00 05031958 .JPG 206,139 .a.. 3-05-02 19:58:12 05031959 .JPG 196,896 .a.. 3-05-02 19:58:28 05032012 .JPG 206,353 .a.. 3-05-02 20:12:02 05032052 .JPG 194,808 .a.. 3-05-02 20:52:52 05032053 .JPG 197,808 .a.. 3-05-02 20:53:02 05041053 .JPG 210,280 .a.. 4-05-02 10:53:36 05041054 .JPG 215,686 .a.. 4-05-02 10:54:00 05041055 .JPG 179,422 .a.. 4-05-02 10:54:14 05041056 .JPG 184,853 .a.. 4-05-02 10:54:34 05072026 .JPG 184,344 .a.. 7-05-02 20:26:52 05072027 .JPG 196,939 .a.. 7-05-02 20:27:02 05082041 .JPG 169,276 .a.. 8-05-02 20:41:16 05082042 .JPG 164,621 .a.. 8-05-02 20:41:32 05082043 .JPG 194,775 .a.. 8-05-02 20:42:04 05091934 .JPG 181,559 .a.. 9-05-02 19:34:06 05111211 .JPG 214,143 .a.. 11-05-02 12:11:04 05111212 .JPG 214,963 .a.. 11-05-02 12:11:14 05111213 .JPG 215,848 .a.. 11-05-02 12:11:28 DESCRIPT .ION 1,200 .a.. 29-05-02 23:09:14 |
|
FILE: F:\P-020511\DESCRIPT.ION ———————————————————————————————————————————————— 04211010.JPG Sun 04/21/2002 10:10 Ridgewood, NJ 04211011.JPG Sun 04/21/2002 10:11 Ridgewood, NJ 04231927.JPG Tue 04/23/2002 19:27 Ridgewood, NJ 04271658.JPG Sat 04/27/2002 16:58 Ridgewood, NJ 04271659.JPG Sat 04/27/2002 16:59 Ridgewood, NJ 05012343.JPG Wed 05/01/2002 23:43 Ridgewood, NJ 05031958.JPG Fri 05/03/2002 19:58 Ridgewood, NJ 05031959.JPG Fri 05/03/2002 19:58 Ridgewood, NJ 05032012.JPG Fri 05/03/2002 20:12 Ridgewood, NJ 05032052.JPG Fri 05/03/2002 20:52 Ridgewood, NJ 05032053.JPG Fri 05/03/2002 20:53 Ridgewood, NJ 05041053.JPG Sat 05/04/2002 10:53 Ridgewood, NJ 05041054.JPG Sat 05/04/2002 10:54 Ridgewood, NJ 05041055.JPG Sat 05/04/2002 10:54 Ridgewood, NJ 05041056.JPG Sat 05/04/2002 10:54 Ridgewood, NJ 05072026.JPG Tue 05/07/2002 20:26 Ridgewood, NJ 05072027.JPG Tue 05/07/2002 20:27 Ridgewood, NJ 05082041.JPG Wed 05/08/2002 20:41 Ridgewood, NJ 05082042.JPG Wed 05/08/2002 20:41 Ridgewood, NJ 05082043.JPG Wed 05/08/2002 20:42 Ridgewood, NJ 05091934.JPG Thu 05/09/2002 19:34 Ridgewood, NJ 05111211.JPG Sat 05/11/2002 12:11 Ridgewood, NJ 05111212.JPG Sat 05/11/2002 12:11 Ridgewood, NJ 05111213.JPG Sat 05/11/2002 12:11 Ridgewood, NJ |
And finally, several recommendations from my experience of using the RENPHOT program described above. These advices might be of some use to you before you'll figure out what your own preferences are.
Make sure that you have fresh batteries in your camera before an event at which you want to take many shots, and always carry a spare set of batteries with your camera. (NiMh rechargeable batteries are real good, and, despite initial high price due to the charger, overall are the great money-savers.) Keep in mind that a fancy screen, which your camera has is a major batterey-eater, and try to use it in moderation, especially when you want to continue taking pictures, but don't have a ready source of spare batteries. Buy additional memory cartridges — they are cheap these days, and you won't have to use camera screen to review your shots deleting bad ones in order to free space for the new pictures — it's quicker to download all, and sort them out on a big computer screen. I try to reduce camera screen usage to the absolute minimum — camera settings control and macro shooting — this not only ensures that I'll be able to take all the pictures I want, but also prevents image file renaming problems due to the loss of camera date settings when batteries got completeley exhausted.
Even if you have a hight capacity memory cartridge, or make only few shots, download your images on a regular basis — at least once a month. This will simplify handling of any potential image file renaming problems.
It might happen that RENPHOT would run in a directory without renaming image files. This is a clear indication that downloaded files were not date and time stamped by the camera. Check settings of your camera immediately, and set current date and time — most often they get lost when batteries become drained to the extreme (zoomed lense won't retract when camera is turned off).
If after downloading images, you've got a directory (or maybe several directories) of image files without the date and time stamp, it makes sense to do manual file renaming as soon as possible (while you might still remember when you were making specific shots). If you leave names as-is, you might get problems when merging directories together, if the same date spans from one directory into the next one. Usually it doesn't take long to forget the date-related information, which could be restored, at least partially, only if renaming is not delayed.
Use DOS REN command (or ZTreeWin equivalent) to set proper month value for each group of pictures taken during the same day (if you can't distinguish days, in most cases you'll be able at least to set the proper month, and get the right sequence of imaged within the month). Assign cartridge number, if date got lost for several successive cartridges, in order to avoid problems whith merging image files of adjacent directories.
Rename image files within the directory. REN *.JPG mmddc???.* +>+>+ : : : : : Cartridge number (starts with "0" for the first directory) : : If there are no multiple cartridges to distinguish between, : : use "-" in this position as an indicator that what follows : : is just a sequential file number within current directory. : Day number (if you can't remember day numbers, put "00") Month number (if you download on regular basis, this won't be hard to figure out) Create the best approximation to the DESCRIPT.ION file. DIR *.JPG > DESCRIPT.ION
Be very careful when merging two time-adjacent directories — this doesn't happen often, and it's easy to forget that it might become a real nasty problem. You can encounter it when there's unususally hight intensity of taking pictures, say at some celebration, where you have to take dozens of photos in quick successions to be relatively sure that at least a handful of them will have all the people in the group with their eyes open.
This problem is not created by the RENPHOT, of course, — even without any renaming the problem might be there — images from the second cartridge end up getting before the images of the first one when directories are merged. Name conflicts when directories get merged are also possible. RENPHOT provides an easy way to avoid the tedious manual file comparing and renaming, but you must be aware of the potential problem, and take care of it before merging two time-adjacent directories.
Right after image file renaming check
for overlapping of file names at the end of one directory with
names at the begining of the next one. If this happens,
rename files in the next directory REN ?*.JPG P*.*
(to make file names non-digital again), and rerun RENPHOT
specifying parameter for the name of the last file from the previous
directory (memory cartridge).
E.g.: RENPHOT /Ridgewood, NJ///mmddhhmm
("/" is the parameter delimiter)
The possibility to specify global description comment for the RENPHOT is a convenient option — you get all your files described in one shot leaving the job of manual comment adjustment normally for few of them. However, sometimes certain groups of files within the directory need different global comments. In this case it makes sense to sort the original directory into several directories with files having the same major comment clustered together, and then run RENPHOT separately for each directory with the appropriate global comment. After that files can be merged back into a single directory. Use ACDSee Classic that will take care of merging DESCRIPT.ION files while merging directories, or merge and then sort them manually using text editor.
Use at least two levels of directories to store pictures that you want to keep — top level directory for photography, and directories by year below it. Structure of directories within each year can be anything you choose, but separating years is essential — RENPHOT generates image file names that are unique only within each given year.
E.g.: Photo : +-- 2000 : : : +-- Family : : : +-- Vacation : : : +-- Miscl : +-- 2001 : +-- . . . :
If it is preferable to use Long File Names instead of 8.3 names generated by RENPHOT, the simple DSC2REN program can be used to generate corresponding rename *.BAT out of the DESCRIPT.ION file.