日記ブログ、または雑多なメモ

iPhone4、アルバム内の画像をソート




見栄子LINEスタンプ
広告

18日(金)iPhone4、アルバム内の画像をソート  iPhone4のカメラロールに放り込みっぱなしだった写真・画像を整理しよう、ということでiTunesから写真の同期をしてみた。 所定の場所に分類ごとのフォルダを作り、画像を各該当フォルダに放りこんで同期。 するとiPhone4に分類分けされた写真共が入った。 よしよし完璧、と早速入れた漫画(自分の)を見てみるとページがバラバラで読めない。 PCで確認する分にはファイルの最終更新日、ファイル名共にちゃんとソートされるであろう状態なのだがiPhone内ではEXIF情報の中の日付を基準にソートするらしく、それがバラバラだった模様。 確かにデータの書きだし時は作業上、各ページ順不同で出力したのを思い出した。

 まとめるますと、
・カメラロール内では放り込まれた順に表示される
・iTunesから同期で放りこまれた画像はEXIF内の日付でソートされる
・EXIF内に日付情報がないかEXIF自体がない場合はファイルの作成日時順にソートされる

 ということらしい。 とりあえず、exiftoolを使ってEXIFの日付情報を直接いじってソートしなおすことに。 うちではiTunesのライブラリ参照先は共有Linuxサーバ上にしてあるのでLinux上で作業する。

 一旦カレントディレクトリ内のjpgのEXIF時間を指定の日付(ここでは2011年2月1日)にまとめて変更。
$ exiftool -overwrite_original -AllDates="2011:02:01 00:00:00" ./

 その後、各ファイルについて1分ずつずらす。 ファイル名でソート出来ているのが前提。 しょぼいスクリプトだが気にしない。
$ dd=0;IFS=$'\n' \
for i in `ls --file-type *.jpg` \
do exiftool -overwrite_original -AllDates+="00:00:00 00:$dd:00" $i \
dd=`expr $dd + 1` \
done


 とやってから同期をかけるとiPhone内でもちゃんとソートされた。 うむ、一段と見易くなって非常にヨロシイ。


 ちなみに、この処理をした後で、
$ jhead -ft *.jpg

 などとすると、ファイル自体の作成日時がEXIFに設定した日時に書き換えられてスマート。 exiftoolでも同じことができそうな気もするが、オプションが多すぎて調べる気にならない。 exiftoolはたいていのディストリビューションに入っていると思うが、jheadは自家ビルドしないといけないかもである。
- C'sGallery Blogっぽく見えるシステム3.2 -
小武 (管理人) eta2@tim.hi-ho.ne.jp