デジカメで撮影したファイルは,連番にして保存している。最近買ったRICOH R10でも,そのような設定にした。撮影したファイル名は,R0010001.JPGからはじまり,一番下の桁が増えていく。
しかし,以前から使っているRICOH R2も同じファイル名の付け方なので,R2で撮影した写真とR10で撮影した写真で,同じファイル名のものができてしまう。これは何とか避けたい。
この方法は偶然に発見した。少し複雑ではあるが,ここにその詳細を書いておこう。
以前にR2で出会ったトラブルで,RICOHのデジカメがどのようにして連番をつけるかを知った。通常は,デジカメ本体の記録から,数字を1足して,次のファイル名を決めている。でも,メモリ上にそれよりも大きな数字のファイル名があれば,そちらに1足して,次のファイル名にしている。
さらに厳密に言えば,R0010012.JPGを撮影したとき,デジカメ本体はR001と0012を記録し,次に撮影したときは,0012+1=0013から,R0010013.JPGというファイル名で保存する。ところが,R0010012.JPGを撮影したあとの状態,つまり,デジカメ本体がR001と0012を記録していても,メモリ上に,たとえば,R0010123.JPGというファイルがあれば,次に撮影した画像は,R0010124.JPGとして保存される。
これは同じファイル名が生じるのを防ぐ,よく考えられたシステムだと思う。
しかし,上の桁R001と下の桁0012のように,2つに分けて処理していることが,わたしのトラブルを引き起こした。
R2で10000枚を超えて,R0020023.JPGを撮影したとき,SDメモリを交換した。交換したメモリに,以前撮影したファイルR0010678.JPGが残っていたことに気づかず,そのまま撮影してしまった。このとき,できたファイルはR0020679.JPGだった。これがわたしのトラブルである。
本来ならR0020024.JPGになって欲しいところだが,おそらく,R001とR002の比較からR002を,0023と0678の比較から0679を算出したのだろう。これも間違ったシステムではないと思う。
このようなシステムになっていることを考えて,次のようにすれば,R10で撮影した写真のファイル名をR10?????.JPGにできる。
まず,撮影した写真データをコンピュータに取りこむ。そのファイル名を,希望通りにリネイムする。実際には,次に書いたようにPerlで処理した。このとき,もとの最終画像R0010029.JPGはR1010029.JPGになった。つまり,上2桁目を0から1にした。
デジカメで画像ファイルをすべて消去したのち,SDメモリのDCIM\100RICOHに,リネイムした最終画像をコピーする。デジカメにこのメモリをさした状態で撮影すると,次に記録される写真はR1010030.JPGになり,デジカメ本体にはR101と0030が記録される。以後は,期待通りのファイル名になるわけである。
だらだらと書いてしまい,わかりづらいかもしれないが,この方法を使えば,RICOHのデジカメ複数を同時に使っていても,ファイル名を重ならないようにできる。
なお,この方法を参考にしてトラブルが生じても,わたしとしては一切責任は持てないので,自信のない方はまねをしないで欲しい。