スマホのカメラで撮影した写真をSDカードに移動すると撮影した順に並ばなくなることがあります。でも写真ですから時系列に並んでいるべきですよね。
画像ファイルをよく見ると、移動前は撮影日になっていた日付が、移動した日時に書き換えられてしまっています。
これは一体どういうことなんでしょうか。写真の日付が変わってしまう原因と対策をご紹介します。
写真が日付順に並ばないときの原因と解決策
まずは、結論から。
- 移動して 変わったのは撮影日ではなくファイルの更新日で、撮影日が消えてしまったわけではない
- スマホカメラで撮影した写真は「ファイル更新日=撮影日」だったが、ファイルの移動をしたことで撮影日と更新日がズレた
- ギャラリーアプリ・ファイルマネージャー系アプリはファイルの更新日順で並べるものが多いので、移動した写真が最新の日付になってしまい撮影日順には並ばなくなる
- 写真撮影日順に並べられる写真管理アプリを使うことで、時系列で写真が見れる
という感じになります。それでは詳しく解説していきたいと思います。
写真の撮影日とファイルの更新日の違い
まず、写真を移動したことによって変わってしまった日付は撮影日ではなく、画像ファイルの更新日です。つまり移動した日時がファイルの更新された日となります。
では、撮影日はどうなってしまっているのかというと、画像ファイルのExif(エグジフ)情報の中に撮影日が保存されています。
画像ファイルの更新日とExif情報の中の撮影日は別物です。
Exif情報とは?
ExifとはExchangeable image file format(エクスチェンジャブル・イメージ・ファイル・フォーマット)の略で、以下のような情報が保存され画像に埋め込まれています。
- 撮影日時
- 撮影機器のメーカー名(製造・販売元)
- 撮影機器のモデル名(カメラ付き携帯電話・スマートフォンの機種名など)
- 画像全体の解像度
- 水平・垂直方向の単位あたり解像度
- 撮影方向
- シャッター速度
- 絞り(F値)
- ISO感度
- 測光モード
- フラッシュの有無
- 露光補正ステップ値
- 焦点距離
- 色空間(カラースペース)
- GPS情報 – GPS付きカメラの場合、緯度・経度・標高など。
- サムネイル(160×120画素)
撮影日・撮影場所の情報を始め、写真撮影時のカメラの設定なども記録され、それを元に最適化したプリント出力ができたりします。
ちなみに、動画ファイルにExif情報はありません。
撮影日順に並び替えができるアプリを使う
次に写真を表示するのに使っているアプリ側の問題もあります。
スマホのほとんどのギャラリーアプリ・ファイルマネージャーアプリ(ファイル管理アプリ)は撮影日ではなく、ファイルの更新日順に並べています。
それもそのはず、ファイルマネージャーアプリは端末の中の色んな形式のデータを表示していますが、撮影日の情報を保存しているExif情報に対応しているのはJPEGファイルと数種類の静止画のみなため、撮影日を元にデータを並べることができないのです。
写真を撮影日順に並べられる写真管理アプリのオススメはこちら「Scene」です。スマホ本体とSDカードの中の画像を日付ごとに並べて表示してくれます。
SNS経由で保存した画像を撮影日順に並べるには
LINEなどのSNSで写真を共有することも多いと思いますが、SNSにアップロードされた写真はExif情報が削除されているものがほとんどです。
つまり撮影日の情報も削除されているため、写真を保存(ダウンロード)した日時がファイルの更新日となり、その日付を元に並び替えられます。
なぜ、SNS経由の写真にはExif情報が削除されているかというと、Exifの中には撮影日や撮影場所のGPS情報などが含まれるため、アップロードした個人を特定できる恐れがあるからです。
匿名でやっているTwitterにアップロードした写真から自分の自宅が判明してしまうこともあるのです。こんな事態を避けるため、ほとんどのSNSサービスではアップロードされた写真からExif情報を削除して公開されます。
では、このような場合どうするかというと、Exif情報を編集できるアプリで撮影日を登録して対処することをオススメします。
Exif情報の編集にオススメなのはこちらのアプリ「Photo Exif Editor」。大量の画像も一括で撮影日を編集できるので便利なアプリです。
ファイルの更新日(タイムスタンプ)の仕様
「ファイルの作成日」「ファイルの更新日」などをタイムスタンプと呼びます。タイムスタンプを編集することができるアプリがあり、それで「撮影日=タイムスタンプ」にして写真の管理をしたいと思う人もいるかと思います。
ただ、このタイムスタンプはWindows・AndroidなどのOSやそのバージョンによって仕様が変わっており、扱いが複雑になっています。
簡単にどのような仕様になっているかと言うと…
- 画像ファイルは撮影後何もしなければ「撮影日=ファイルの作成日・更新日」となる
- 画像ファイルをアプリで編集したりすると「編集した日=ファイルの更新日」となる
- 別の場所に移すために画像ファイルをコピーすると「コピーした日時=ファイルの更新日」になる
- 例えばスマホ本体→SDカードにコピー、スマホ本体→PCにコピーすると複製した写真のファイルの更新日はコピーした日時になる
- Android 5.1・Windows 8.1・Windows 10で確認
- Android 5.1ではスマホ本体→SDカードへ移動した場合、「移動した日時=ファイルの更新日」に変更されるが、スマホ本体→スマホ本体への移動は「撮影日=ファイルの更新日」のままタイムスタンプは維持された
- Windows 8.1ではコピーしたデータのタイムスタンプはコピーした日時に変更されてしまうが、移動した場合は「撮影日=ファイルの更新日」が維持された
- 同じことをWindows 10でやってみたところ、コピーでも移動でも「コピー・移動した日時=ファイルの更新日」に変更されてしまった。
と、このようにOSやバージョンで挙動が異なります。
ファイルのコピーや編集で簡単に変更されてしまうものなので、写真のバックアップを取っただけでもタイムスタンプが変わってしまいます。
このような理由からタイムスタンプで写真の時系列を管理する方法はオススメしません。
写真データをコピーや移動してもExif情報は削除しない限り維持されますので、やはりこちらで管理するのが良いかと思います。
Exifの撮影日を元にファイル名を撮影日にリネームするアプリもありますので、私は「ファイル名=撮影日」として管理しています。
撮影日(2019/03/28 17:00:00)→ファイル名(20190328170000.jpg)
このように時間を秒まで含めるとファイル名の重複が起こらないし、ファイル名順で並べても時系列に並ぶのオススメです。