TraviPix

GPS 付きの写真をドロップ → Blue Marble 3D 地球儀上に時系列で旅程を可視化 → MP4 動画として書き出し。

写真をまとめてドロップ or クリックで選択 (JPEG / PNG / WebP / HEIC)。GPS 付きのみがピン化されます

Tokyo, JP — 2026-03-01

2026-03-01

進行 0.0%(再生到達 1 / 10)

2026-04-13

再生中は 1 枚あたり 1 秒のペースで大圏に沿ってカメラがフライ。マウスドラッグで自由視点、ホイールでズーム可。

写真の中に埋まっている旅の地図

スマートフォンで撮った写真には、目に見えない情報——EXIF メタデータ——が埋め込まれています。そのなかでも TraviPix が使うのは GPS(緯度経度)と撮影日時の2つです。この2つさえあれば「どこで・いつ」が分かるので、写真の山をドロップするだけで旅の動線を組み立てられます。

読み取りには exifr ライブラリを使い、JPEG / PNG / WebP はもちろん、iPhone の HEIC/HEIF からも直接 EXIF を取得します。HEIC 画像の表示用変換には heic2any(ブラウザ内 WASM)を動的にロードし、サーバには何も送りません。GPS タグのない写真や撮影日時のない写真は自動で除外され、除外理由ごとの件数を画面に通知します。

Blue Marble 地球儀と大圏アーク

旅程の舞台は NASA の Blue Marble テクスチャを貼った 3D 地球儀です。写真は撮影日時の古い順にピンとして配置され、隣り合うピン同士を大圏(地球表面上の最短経路)のアークでつなぎます。平面の地図投影とは違い、大圏アークは実際の飛行ルートに近い曲線を描くので、東京→ニューヨークのような長距離移動でも見た目の距離感が直感的です。

各ピンには写真のサムネイルが常時浮かび、マウスを乗せると撮影日時がオーバーレイで表示されます。緯度経度の生座標は意図的に画面に出しません。自宅付近の写真が混ざっていても、スクリーンショットや動画を共有するときに座標が漏れない設計です。

カメラフライのアニメーション

自動再生を押すと、カメラが最初のピンから最後のピンまで大圏アークに沿って順にフライします。1枚あたりの滞在秒数(表示時間/枚)とピンへズームする時間(拡大時間)はスライダーで調整でき、写真が多いときは短めに、少数精鋭で見せたいときは長めにすると動画としてのテンポが整います。

再生中でも地球儀はマウスドラッグで自由に回転、ホイールでズームできます。視点ドロップダウンからアジア・ヨーロッパなどの大陸を選ぶと、その大陸内の写真の重心へカメラが寄るので、地域単位の旅程を拡大して見たいときに便利です。

MP4 書き出しの中身

書き出しにはブラウザ標準の WebCodecs API(VideoEncoder)と mp4-muxer を使います。カメラフライの各フレームを地球儀の Canvas からキャプチャし、H.264 でエンコードして MP4 コンテナに詰めます。

動画の長さは「写真枚数 × 1秒 + 末尾の静止3秒」で自動決定されます(10枚なら約13秒)。解像度は地球儀 Canvas のサイズに連動し、デスクトップでは 1080p 前後です。書き出し中の進捗は画面にパーセント表示されます。

  • Chrome / Edge(最新版)——問題なく動作
  • Safari 16+——動作するが、Chrome に比べてエンコードが遅い場合がある
  • Firefox——WebCodecs 未対応のため書き出し不可。地球儀の表示と再生は動作する

座標を隠すプライバシー設計

写真の EXIF には自宅・職場・学校といった機微な場所の座標が含まれていることがあります。TraviPix はこれをピンの位置決めにだけ使い、画面上に緯度経度の数値を表示しません。ホバー時のオーバーレイは撮影日時だけです。

写真そのものも、EXIF メタデータも、Toolish のサーバや外部 API には送信されません。パース・変換・サムネ生成・動画エンコードまで、すべてお使いのブラウザ内で完結します。

仕上がりをよくするコツ

思い出の動画を見栄えよく仕上げるためのポイントをいくつか挙げます。

  • GPS が入った写真を厳選する——枚数が多すぎるとピンが密集して読みにくくなる。旅先の代表カットに絞ると動線がすっきり見える
  • HEIC は枚数に注意——HEIC→JPEG の変換はブラウザ内 WASM で行うため、数十枚を超えると読み込みに時間がかかる。急ぐなら事前に JPEG で書き出す
  • 書き出し前に構図を整える——再生を一時停止し、地球儀を好みの角度に回してからエクスポートすると、その視点が動画の出だしになる
  • 視点切り替えで地域を拡大——ヨーロッパ周遊のように狭い範囲を回った旅なら、大陸フィルタでズームすると移動がよく見える

よくある質問

Q. GPS 付きでない写真は無視されますか?
A. はい。GPS タグ(緯度経度)が含まれていない写真は地球儀上にピンを立てる位置が決まらないため、自動的に除外されます。除外した枚数と理由(GPS なし / 撮影日時なし / 解析失敗)は画面に件数で通知されます。
Q. iPhone の HEIC 写真も使えますか?
A. はい。HEIC / HEIF ファイルは内部で自動的に JPEG に変換してから処理されます。EXIF 自体は HEIC からも直接読めるので GPS と撮影日時はそのまま取れます。HEIC 変換は heic2any(ブラウザ内 WASM)で行うため、写真はサーバに送信されません。
Q. 動画の長さや解像度を変えられますか?
A. 動画の長さは「写真 1 枚あたり 1 秒の旅程再生 + 完成形を 3 秒見せる末尾の静止」で写真枚数に応じて変動します(写真 10 枚なら 13 秒の動画)。解像度は地球儀キャンバスのサイズに連動し、デスクトップなら 1080p 前後になります。再生速度やテール秒数の調整は今後のアップデートで対応予定です。
Q. MP4 書き出しが動かない / エラーになります
A. MP4 書き出しはブラウザの WebCodecs API を使うため、最新の Chrome / Edge / Safari 16+ が必要です。Firefox は現時点で WebCodecs 非対応のため動作しません。Chrome / Edge をお試しください。
Q. ホバー時に座標を見せないのはなぜ?
A. 緯度経度の生値は撮影場所の特定(自宅・職場など)に直結するためです。写真のサムネイルと地球儀上の位置だけで地理情報の表現を成立させ、生座標は意図的に画面に出さない設計にしています。
Q. 一度にたくさんの写真を読み込んでも大丈夫ですか?
A. 解析・サムネ生成・動画エンコードはすべてお使いの端末(ブラウザ)内で動くため、読み込める枚数は端末のメモリ性能に依存します。数十枚程度ならデスクトップで快適に動きますが、HEIC は変換処理が重いため、枚数が多いと読み込みに時間がかかることがあります。重く感じたら枚数を絞るか、JPEG に書き出してからお試しください。
Q. スマートフォンでも使えますか?
A. WebGL に対応したモバイルブラウザなら地球儀の表示・再生は動作します。ただし MP4 書き出しはブラウザの WebCodecs API を使うため、iPhone は iOS 16 以降の Safari、Android は最新の Chrome が必要です。動画書き出しまで行いたい場合は PC の Chrome / Edge が最も安定します。
Q. 写真の並び順を手動で変えられますか?
A. 現在は EXIF の撮影日時(DateTimeOriginal)をもとに自動で古い順に並べる仕様で、手動の並び替えには対応していません。撮影日時が記録されていない写真は順序が決められないため除外されます。順番を整えたいときは、写真側の撮影日時メタデータを編集してから読み込んでください。