Takeout JSON

Google フォトから iCloud 写真へ移行して撮影日を保つには?直接転送と Takeout の 2 つの方法

Google の直接転送サービスと、Takeout から Apple の「写真」への取り込み。それぞれの失敗のしかた、写真が違う年に入る原因、重複を避ける取り込み方、Live Photos の扱い、日付を先に直す手順を順番に説明します。Mac と iPhone の両方に対応。

方法は 2 つあり、失敗のしかたが違います。

直接の方法は、Google 自身の転送サービスです。ファイルに触れることなく、ライブラリを iCloud 写真にコピーします。いちばん簡単な選択肢で、まず試すべきです。ただし常に全部が移るわけではありません。共有アルバム、一部の動画、モーションフォトがよく取り残され、向こう側でライブラリの一部が欠けているのに気づく人が定期的にいます。Google から何かを削除する前に、両側で写真の枚数を数えてください。

手動の方法は、Takeout でエクスポートして Apple の「写真」に取り込むものです。こちらは完全に自分で制御できますが、日付の問題に真正面からぶつかります。Takeout は撮影日の入っていない写真を渡し、本当の日付は横の .json に入れます。Apple の「写真」はそのファイルを読みません。EXIF を読み、何も見つからず、すべての写真を取り込んだ日に入れます。

Apple の「写真」が読むもの

「写真」は日付を EXIF の DateTimeOriginal から取り込みます。そのタグがなければファイルの作成日時を使い、Takeout を解凍した後のそれは今日です。Google の .json サイドカーはまったく読まず、未対応ファイルとして取り込むか無視します。

場所は EXIF の GPS タグから来ます。HEIC はそのまま取り込めます。「写真」は HEIC のために作られています。Live Photos は、静止画と短い動画が同じ名前で同じフォルダーにあれば、一緒に取り込まれて 1 つの Live Photo になります。

つまり仕事は、サイドカーの日付と GPS をファイルに入れ、静止画と動画の組を一緒に保ち、それから取り込むことです。

手順 1: パートを解凍して合流させる

Takeout のすべての zip を同じ親フォルダーに解凍し、アルバムフォルダーを合流させます。Mac では Finder で zip をすべて選んでダブルクリックすれば、アーカイブユーティリティが同じ場所の Takeout フォルダーに展開して合流させます。TakeoutTakeout 2 のように分かれてしまったら、各 Google Photos の中身を最初のフォルダーにドラッグし、聞かれたら「結合」を選びます。まだ .json を削除しないでください。

手順 2: 日付をファイルに書き込む

コマンドラインなら、exiftool で photoTakenTime を EXIF にコピーします。

exiftool -r -d %s -tagsfromfile "%d/%F.supplemental-metadata.json" \
  "-DateTimeOriginal<PhotoTakenTimeTimestamp" "-CreateDate<PhotoTakenTimeTimestamp" \
  "-GPSLatitude<GeoDataLatitude" "-GPSLatitudeRef<GeoDataLatitude" \
  "-GPSLongitude<GeoDataLongitude" "-GPSLongitudeRef<GeoDataLongitude" \
  -ext jpg -ext heic -ext png -overwrite_original .

動画は EXIF ではなく QuickTime のタグが必要で、切り詰められた名前と (1) のサイドカーには追加の処理が要ります。exiftool ガイド にあります。

Takeout JSON Metadata Fixer は同じことを Mac のアプリとして行い、別のマシンでフォルダーを準備するなら Windows と Linux でも動きます。

新旧両方の命名を含むすべてのサイドカーを読み、各写真と動画に日付と GPS を書き込み、ファイル日時を合わせます。Apple の「写真」向けには、Live Photos の設定を既定の「動画を写真の横に残す」のままにしておくと、各静止画と動画が同じ名前で同じフォルダーに出ます。元のファイル名が欲しいなら「名前をそのまま」を、読みやすい名前が欲しいなら日付ベースのテンプレートを選びます。HEIC は HEIC のままにしてください。「写真」はそちらを好み、変換しても画質を失うだけです。最初の 1000 枚は無料です。

手順 3: 取り込む

「写真」を開き、「ファイル」から「読み込む」を選び、整理したフォルダーを選択します。フォルダーからアルバムを作りたければ「フォルダ構成を保持」にチェックを入れます。大きなライブラリは数千枚ずつ取り込んでください。10 万ファイルを一度に取り込むと「準備中」のまま非常に長く止まることがあります。

取り込み後、「写真」の表示をスクロールします。写真は本当の日付に落ちているはずです。Live Photo をクリックすると再生されるはずです。「撮影地」を開くと、位置情報付きの写真が地図に出るはずです。

手順 4: タイムゾーンを確認する

EXIF には既定でタイムゾーンがありません。ツールはサイドカーの UTC を Mac の現在のゾーンで変換します。日本時間の Mac で処理すれば、日本で撮った写真は正しい時刻です。海外旅行の写真は数時間ずれますが、日付はたいてい合っています。気になるなら「写真」でそれらを選択し、「イメージ」から「日時を調整」でずらします。修正は「写真」のデータベースに書かれます。

iPhone 側の iCloud について

iCloud 写真をオンにした Mac の「写真」に入れば、日付を保ったまま iPhone に同期されます。iPhone の「ファイル」から直接取り込むこともできますが、小さなまとまり向けで、日付はすでにファイルの中になければなりません。ライブラリ全体なら Mac 経由が楽です。

重複と編集済みコピー

Takeout は、写真が属する各アルバムにコピーを入れ、さらに -edited 版も含めます。「写真」には「ユーティリティ」の下に「重複項目」があり、取り込み後に完全な複製を見つけて統合します。最初から取り込まないほうが簡単です。Photos from YYYY のフォルダーを取り込み、アルバムフォルダーは飛ばし、-edited を残すかどうかを決めます。

直接転送サービスと Takeout の両方を試した場合も、同じ写真が二重に入ります。片方に決めてから取り込んでください。

よくある質問

アルバムは移りますか?

自動では移りません。Takeout はアルバムフォルダーを渡し、「写真」は「フォルダ構成を保持」にチェックを入れれば取り込み時にフォルダーごとのアルバムを作れます。アルバムはコピーを含むので、ライブラリが倍になることがあります。多くの人は年フォルダーだけを取り込み、大事な数個のアルバムを作り直します。

HEIC を JPG に変換する必要はありますか?

いいえ。「写真」は HEIC をそのまま扱い、iPhone の写真はもともと HEIC です。変換するのは、HEIC を読めない場所に写真を送るときだけです。

取り込んだ動画の日付が間違っています

動画は日付を EXIF ではなく MP4 コンテナの中に持ちます。ツールが EXIF しか書かなかったなら、動画は飛ばされています。Takeout の動画の日付がおかしい理由 を参照してください。