GPX ファイルにペースが入っていない理由
GPX ファイルをテキストエディタで開いて「ペース」という文字を探しても、まず見つかりません。これはファイルを作ったアプリの不具合ではなく、GPX の 1 点はもともとペースという数字を持つように作られていないからです。持っているのは位置と高さ、時刻の 3 つだけで、ペースはそこから計算して初めて出てくる値であり、ファイルを読むアプリごとにその計算を自分でやり直しています。
まず結論
ペースは GPX トラックポイントの項目として存在しないので、そもそもファイルの中に「入って」いません。ファイルに入っているのは各点ごとの緯度・経度、たいてい標高、そして時刻です。ファイルを開くどのアプリも——記録した本人のアプリを含めて——点と点の距離と経過時間からペースをあとで計算しています。同じ GPX ファイルなのにアプリによってペースの数字が違って見えるのは、まさにこの計算がアプリごとに行われているためです。
トラックポイントが実際に持っているもの
GPX ファイルの中心は <trkpt> という要素の並びで、記録した点ごとに 1 つずつあり、位置を示す lat と lon が付いています。その内側に、たいていの記録アプリは標高を示す <ele> と、時刻を示す <time> を書き加えます。標準として決まっているのはここまでで、GPX の基本仕様に <pace> や <speed> という項目はありません。この形式が表そうとしているのは、いつどこにいたかであって、ある 2 点の間をどれくらいの速さで動いたかではないのです。
アプリによっては、GPX の拡張機能という仕組みを使って速度などの独自データを点に書き加えることがあります。これは基本のフォーマットを壊さずにベンダー固有の項目を追加できる仕組みですが、対応していないアプリはその項目をそのまま無視します。つまりこの方法で書き込まれた速度は、別のアプリに渡したときにそのまま読み取ってもらえるとは限りません。
画面に出ているペースはどこから来ているのか
計算された数字であって、保存された数字ではない
歩いている最中でも、あとで古いルートを見返すときでも、ペースを表示しているアプリは、近くにある点の座標と時刻から——進んだ距離を経過時間で割って——その場で計算しています。これは記録した当のアプリでも同じです。歩行中にリアルタイムで表示されるペースと、保存済みの GPX ファイルからあとで計算されるペースは、同じ点データを使いながらも別々の計算です。
別のところで開くと数字が変わる理由
同じ GPX ファイルを 2 つの異なるサービスに取り込むと、それぞれが自分のやり方でペースを計算します。ノイズの多い点をどれくらいならすか、どこからを「停止中」ではなく「移動中」とみなすか、たまたま近すぎる位置に記録された 2 点をどう扱うか——こうしたことはファイルの中に一切書かれておらず、読み取る側のアプリの中だけにあります。同じルートでペースの数字が食い違っても、ファイルかアプリのどちらかが間違っているという意味ではありません。
ペースの数字は結局どこにあるのか
読み込むたびに再計算されるのではなく、データと一緒に持ち運べるペースの数字が欲しいなら、それはサマリー形式の書き出しの役割です。CSV の書き出しには、距離・所要時間・獲得標高と並んでペースの列が入っているのが普通です。CSV の 1 行はルート全体のサマリーであって、点ごとの記録ではないため、GPX のトラックポイントにはない「1 つの確定した数字」を置く余地があります。GPX と CSV が補い合う関係にあるのはこのためで、GPX はルートそのものを保存してあとから誰でもペースを計算し直せるようにし、CSV はその数字自体を持ち運びます。
つまずきやすいところ
- 別のアプリに取り込んだら平均ペースが元の記録と違って見える——想定どおりの結果で、新しいアプリはファイルに入っていない数字を読み込んだのではなく、生の点から計算し直している。
- GPX を別の形式に変換したらペースが「消えた」ように見える——もともと GPX にペースは入っていないので消えようがなく、変換後もどこかのタイミングで計算し直す必要がある。
- 拡張機能で速度を保存できると謳っているアプリがあるのに、同じファイルを別のアプリで開くと何も出てこない——拡張機能への対応は任意なので、あるアプリが書き込んだ速度を次のアプリが読み取れる保証はない。
- 山行全体の平均ペースが、体感していたどの区間よりも遅く見える——たいていは計算に立ち止まっていた時間を含めているかどうかの違いで、GPX のデータそのものに問題があるわけではない。
TrailCam との関わり
TrailCam は距離・移動時間・ペース・獲得標高を、記録しているその場でルートごとに記録します。あとから何もない生のトラックだけを頼りに計算し直しているわけではありません。ルートは点そのものを保持する GPX 1.1、あるいはペースを含む数値をまとめた CSV のどちらかで書き出せます。書き出しは任意の TrailCam Pro の機能で、アプリ自体のダウンロードは無料です。
よくある質問
- GPX にはそもそもペースや速度の項目がありますか?
- 基本仕様にはありません。GPX のトラックポイントが持つのは位置・標高・時刻です。拡張機能を使えば速度を書き加えることはできますが、別のアプリで読み取れる保証はないので、頼りにしないほうが安全です。
- 同じ GPX ファイルなのに、アプリによって平均ペースが違うのはなぜですか?
- どちらのアプリも保存されたペースの値を読んでいるわけではなく、座標と時刻から自分で計算しているためです。停止の扱いやノイズの処理の細かい違いが、少しずつ違う答えを生みます。
- ペースを残すなら GPX より CSV のほうがよいのでしょうか?
- 数字そのものを残す目的なら CSV のほうが向いています。ルートごとに確定したペースの数字が入っているからです。それでも GPX は残しておく価値があります。過去のペースも将来のペースも、結局はそこに保存された点から計算されるからです。
自分のルートを記録する
TrailCam は iPhone 用の GPS ルート記録アプリです。動画・写真・音声メモを撮ったその地点に紐づけて保存し、GPX 1.1 または CSV で書き出せます。ダウンロードは無料です。