KML in TCX umwandeln

KML kannst du hier kostenlos und ohne Konto in TCX umwandeln: Datei oben ablegen, und ein, zwei Sekunden später steht das Ergebnis zum Herunterladen bereit. Die Umwandlung läuft in deinem eigenen Browser, die Datei wird also nie hochgeladen — das klappt unter Windows, macOS und Linux ebenso wie auf iPhone und Android, und es funktioniert selbst dann noch, wenn du das Netz abschaltest.

  • Wo es läuft In deinem Browser. Die Datei wird nicht hochgeladen.
  • Neu aufgebaut TCX funktioniert anders als KML. Es ist also nicht der schleichende Qualitätsverlust eines verlustbehafteten Codecs: Was TCX ausdrücken kann, wird originalgetreu wiedergegeben — was dort keine Entsprechung hat, bleibt ganz weg.
  • Größenbegrenzung Bis 100 MB pro Datei, kostenlos und ohne Konto.
  • Gut zu wissen Positionen, Höhen und Zeitstempel kommen mit. Sensordaten, Gestaltung und eingebettete Bilder nicht.

Bis zu 100 Dateien auf einmal. Gemischte Formate sind kein Problem.

Der Test mit einer Zeile, bevor überhaupt umgewandelt wird

Eine Radgruppe plant die nächste Ausfahrt in Google My Maps, zieht die Strecke mit ein paar Klicks entlang der Straßen und exportiert sie als KML, weil das der einzige Export ist, den das Werkzeug anbietet. Wer diese Datei anschließend in Garmin Connect oder TrainingPeaks als Einheit hochladen will und feststellt, dass dort eine TCX-Datei verlangt wird, findet auf dieser Seite die Umwandlung — und den Hinweis, sie in den meisten Fällen nicht zu benutzen.

Vor dem Umwandeln lohnt sich ein Test: die KML-Datei in einem Texteditor öffnen und nach dem Wort „when" suchen. Steht es dort, enthält die Datei einen gx:Track mit echten Zeitstempeln, und diese Umwandlung liefert ein sinnvolles Training. Steht es nicht dort — und bei allem von Hand Gezeichneten steht es dort nicht —, ist die Datei eine Form ohne Uhr, und die daraus gebaute TCX-Datei behauptet, um Mitternacht am 1. Januar 1970 stattgefunden zu haben und keine Zeit gedauert zu haben.

Was der Rückfall auf den Unix-Zeitpunkt tatsächlich schreibt

Das TCX-Schema verlangt ein StartTime-Attribut an jeder Lap und eine Id an jeder Activity, beides Zeitstempel. Fehlen Zeiten in der Quelle, gibt es nichts zu lesen, also wird der Unix-Zeitpunkt — 1970-01-01T00:00:00.000Z — in beide geschrieben, und TotalTimeSeconds wird zu null, weil die Differenz zwischen erstem und letztem Punktzeitpunkt nicht berechnet werden kann.

Die entstehende Datei ist schema-konform, weshalb sie überhaupt hochgeladen wird, statt abgelehnt zu werden. Was danach passiert, ist weniger sauber. Eine Plattform, die Einheiten nach Datum sortiert, setzt diese gut fünfzig Jahre vor alles andere, eine Trainingsbelastungsberechnung über eine nullsekündige Einheit teilt entweder durch null oder verwirft sie, und jedes aus Distanz durch Dauer abgeleitete Tempo ist undefiniert. Nichts davon ist ein Defekt — es ist die Arithmetik einer Datei, die behauptet, keine Zeit gebraucht zu haben.

Der Fall, in dem die Umwandlung tatsächlich richtig ist

Ein gx:Track ist Googles Erweiterung für aufgezeichnete Daten: parallele Listen aus when-Zeitstempeln und coord-Positionen, geschrieben von Werkzeugen, die eine GPS-Aufzeichnung als KML statt als GPX exportieren. Dieser Fall wird eigens erkannt, und die Zeitstempel wandern unverändert in das Time-Element jedes TCX-Trackpunkts.

Liegt das vor, funktioniert alles Weitere richtig. Der Lap-Start kommt vom ersten Punkt, die Dauer ist die tatsächlich vergangene Zeit, und die Einheit landet an der richtigen Stelle im Trainingsprotokoll. Das ist ein echter Nutzfall für jeden, dessen Aufzeichnungssoftware KML exportiert und dessen Trainer Garmin-Dateien braucht — und der Grund, warum diese Umwandlung überhaupt existiert, statt schlicht abgelehnt zu werden.

Die Distanz misst die gezeichnete Linie, nicht die tatsächlich gefahrene Strecke

Eine TCX-Lap muss DistanceMeters angeben, eine KML-Datei speichert keine, die Zahl wird also berechnet, indem der Großkreisabstand zwischen aufeinanderfolgenden Eckpunkten auf einer Kugel mit Radius 6.371.000 Metern aufsummiert wird. Gegen eine ellipsoide Berechnung ist das auf ein paar Promille genau — nicht die Fehlerquelle, um die man sich hier sorgen sollte.

Die eigentliche Fehlerquelle ist die Form der Eingabe. Eine von Hand gezeichnete Linie hat einen Eckpunkt dort, wo geklickt wurde, jede Kurve wurde also durch die gerade Sehne über sie hinweg ersetzt. Eine Straße mit fünfzehn Serpentinen, in sechs Klicks nachgezeichnet, ist messbar kürzer als die Straße selbst, und die Einheit übernimmt diese kürzere Zahl als Fakt. Eine an das Straßennetz eingerastete Route aus einem echten Planer hat dieses Problem nicht — ein weiterer Grund, für alles, das gemessen werden soll, einen Planer zu benutzen.

Neutrale Werte, wo eine KML-Datei keine Meinung hat

Drei Angaben werden mit festen Werten geschrieben, weil nichts in einer KML-Datei ihnen entspricht. Sport wird zu Other, da das Schema nur eine kurze Aufzählung erlaubt und eine gezeichnete Linie nichts über die Disziplin aussagt. Intensity wird zu Active und TriggerMethod zu Manual — die ehrlichen Werte für eine Lap, die kein Gerät je gestartet oder gestoppt hat.

Alle drei lohnen sich nach dem Import zu korrigieren, wenn die Einheit bleiben soll. Die meisten Plattformen erlauben, die Sportart nachträglich zu ändern, und das ist wichtiger, als es aussieht — Trainingsbelastungsmodelle, Pulszonen und Bestleistungserkennung hängen alle an der Disziplin, eine als Other abgelegte Einheit fällt also aus den meisten davon still heraus.

Was mit den Pins in der Datei passiert

Ein Workout kennt kein Wegpunkt-Konzept, wo die KML-Datei also Punkte enthält, fallen diese Placemarks schlicht weg — es gibt kein TCX-Element, das sie fassen würde, und eines zu erfinden ergäbe eine Datei, die bei jedem Leser die Validierung verfehlt.

Eine KML-Datei, die nur aus Pins besteht, wird nicht abgelehnt, sondern verarbeitet: Die Punkte werden als ein Track in der Reihenfolge des Dokuments gelesen, was eine Einheit ergibt, die eine Route zwischen ihnen behauptet. Ob das etwas bedeutet, hängt davon ab, was die Pins waren. Eine Folge von Kontrollpunkten entlang einer Strecke ergibt etwas Erkennbares; eine Sammlung unzusammenhängender Orte ergibt eine Einheit, die eine Fahrt beschreibt, die niemand gemacht hat, über eine Distanz, die niemand zurückgelegt hat, datiert auf 1970.

Höhenwerte, die auf null enden

Der dritte Wert einer KML-Koordinate wird zu AltitudeMeters am Trackpunkt. Zeichnet Google Earth eine geländegebundene Linie, schreibt es diesen dritten Wert an jedem Eckpunkt als 0, weil die Darstellung ihn ignoriert. Eine daraus umgewandelte TCX-Datei trägt also häufig eine Höhe von null von Anfang bis Ende.

Eine Trainingsplattform, die diese Datei liest, meldet keinen Anstieg und ein flaches Profil — die korrekte Lesart der Zahlen, die sie bekommen hat. Lässt die KML-Datei den dritten Wert ganz weg, was bei My-Maps-Exporten häufig vorkommt, wird gar kein Höhenelement geschrieben, und die meisten Plattformen füllen dann die Höhe aus dem eigenen Geländemodell auf — eine bessere Antwort als die Nullen, die vorher dagestanden hätten.

Grobe Eckpunkte ergeben eine unplausible Punktfolge

Über die Distanz hinaus wirkt sich die Eckpunktzahl darauf aus, wie die Einheit im Trainingsprotokoll aussieht. Eine aufgezeichnete Fahrt hat einen Punkt pro Sekunde, eine gezeichnete Strecke vielleicht einen pro Kilometer. Diagramme aus der zweiten Art bestehen aus einer Handvoll Stichproben, und jedes Tempo, das eine Plattform aus nicht vorhandenen Zeitstempeln berechnen würde, wird schlicht nicht berechnet.

Das Ergebnis ist eine Einheit, die als Linie auf der Karte erscheint und sonst als leerer Bereich — kein Tempodiagramm, kein Höhenprofil, keine Kilometersplits. Das ist eine faire Wiedergabe einer Datei mit vierzig Koordinaten und keiner Uhr, und es ist das klarste praktische Argument dafür, das Ding als Route zu behandeln statt es als Einheit zu verkleiden.

Das Format, das tatsächlich zur geplanten Strecke passt

Ist die KML-Datei ein Plan, gehört sie in GPX umgewandelt und dort als Route oder Kurs geladen. Jede Plattform und jedes Gerät hat dafür eine Funktion — Garmin nennt es einen Kurs, Strava und Komoot eine Route —, und keine davon verlangt einen Startzeitpunkt oder eine Dauer, weil ein Plan keins von beidem haben soll. Die Linie wird navigiert, die Wegpunkte kommen mit, und nichts in der Datei behauptet, eine Messung zu sein.

Die gewünschte Einheit entsteht danach, aufgezeichnet vom Gerät, das dem Kurs folgt, mit echten Zeiten und echten Sensordaten. Das ist die Reihenfolge, für die die Werkzeuge gebaut wurden, und sie ist deutlich weniger Arbeit, als eine erfundene Einheit zu importieren und anschließend Datum, Sportart und Dauer von Hand zu korrigieren.

Im eigenen Tab umgewandelt, egal für welche Strecke man sich entscheidet

Die KML-Datei wird gelesen und die TCX-Datei geschrieben, alles in diesem Browser. Keine Anfrage trägt die Datei irgendwohin, was sich im Netzwerkfenster während der Umwandlung prüfen lässt, und die Seite arbeitet nach dem Laden auch ohne Verbindung weiter.

Bei einer geplanten Strecke ist die Empfindlichkeit nicht dieselbe wie bei einer aufgezeichneten, aber nicht viel geringer. Eine gezeichnete Linie sagt trotzdem, wo jemand beabsichtigt zu sein und wann — die geplante Vereinsausfahrt einer Radgruppe für das kommende Wochenende ist genau die Art Planung, die vor der Veröffentlichung noch niemanden etwas angeht. Örtlich umzuwandeln bedeutet, dass die Datei nie zum Protokolleintrag auf einem fremden Server wird, allein durch das Ändern der Dateiendung.

Mehrere Etappen einer Tour in einem Durchgang umwandeln

Plant eine Radgruppe eine mehrtägige Tour, liegt am Ende oft eine KML-Datei je Etappe vor, jede für sich in Google My Maps gezeichnet. Alle Etappen lassen sich gemeinsam ablegen, jede wird für sich in eine TCX-Datei umgewandelt, und das Ergebnis kommt als eine ZIP-Datei zurück — praktisch, wenn eine ganze Woche auf einmal in ein Trainingsprotokoll soll.

Der Epochen-Rückfall betrifft dann jede Etappe einzeln und gleichermaßen: Fehlen in allen Dateien Zeitstempel, tragen alle entstehenden TCX-Dateien dasselbe Datum 1970 und lassen sich in der Plattform kaum noch auseinanderhalten. Für eine geplante Mehretappentour ist deshalb der Umweg über GPX-Routen die praktikablere Wahl, gerade weil dort mehrere Etappen als getrennte, sinnvoll benannte Dateien ankommen, statt als mehrere gleich datierte Workouts.

KML in TCX umwandeln — so geht es

  1. Leg deine KML-Datei auf dieser Seite ab, oder klick, um eine auszuwählen.
  2. Wähl TCX als Ziel. Die Umwandlung läuft in deinem Browser, die Datei wird nicht hochgeladen.
  3. Lade die fertige TCX-Datei herunter.

KML und TCX im Vergleich: was sich ändert

KML im Vergleich zu TCX
KMLTCX
Vollständiger NameKeyhole Markup LanguageTraining Center XML
Dateiendung.kml.tcx
Medientypapplication/vnd.google-earth.kml+xmlapplication/vnd.garmin.tcx+xml
Erstmals veröffentlicht2007
Herausgegeben vonKeyholeGarmin
SpezifikationOGC KML 2.3Training Center XML
LizenzlageOffener StandardVeröffentlicht, nicht standardisiert
Heutiger StandAktuellAktuell
Öffnet im BrowserKein BrowserKein Browser
Stattdessen erwogenKMZ, GPXGPX, FIT

Das Ergebnis öffnen

Die üblichen Programme überschneiden sich nicht: KML öffnest du in Google Earth, QGIS und ArcGIS, TCX in Garmin Connect, Strava und TrainingPeaks — wer das Ergebnis bekommt, braucht also eines aus der zweiten Reihe.

Wofür die beiden Formate gedacht sind

Die beiden zielen auf verschiedene Arbeit: KML auf Karten, TCX auf die Sportaufzeichnung. Das lohnt sich vorher abzuwägen — der Grund, aus dem es das eine gibt, ist meist der Grund, aus dem das andere unpraktisch ist.

KML stammt von Keyhole. Festgehalten ist das in OGC KML 2.3 — lohnt sich zu kennen, wenn die Datei das Programm überleben soll, das sie geschrieben hat.

TCX kommt von Garmin und stammt aus 2007, festgehalten in Training Center XML. Garmin Connect, Strava und TrainingPeaks lesen das Format.

KML zu TCX: häufige Fragen

Werden meine KML-Dateien irgendwo hochgeladen?

Nein. Diese Umwandlung läuft vollständig in deinem Browser, die Datei verlässt dein Gerät also nicht. Du kannst das selbst nachprüfen: Öffne den Netzwerk-Tab der Entwicklerwerkzeuge und wandle etwas um. Zu sehen sind die Seite selbst und die Statistik- und Werbeanfragen, mit denen dieser Dienst bezahlt wird — und keine einzige, die deine Datei trägt.

Ist das Umwandeln von KML in TCX kostenlos?

Ja. Kein Konto, kein Wasserzeichen und kein Tageskontingent, das sich verbraucht — es läuft auf deinem eigenen Rechner, du darfst also so oft wiederkommen, wie du willst. Dateien bis 100 MB verarbeitet der Browser, 100 auf einmal.

Geht beim Umwandeln von KML in TCX Qualität verloren?

KML und TCX beschreiben Inhalte auf grundverschiedene Weise. Die Umwandlung ist deshalb ein Nachbau und keine Kopie: originalgetreu, aber nicht Byte für Byte dasselbe. Positionen, Höhen und Zeitstempel kommen mit. Sensordaten, Gestaltung und eingebettete Bilder nicht.

Muss ich etwas installieren, um TCX-Dateien zu öffnen?

Für die Umwandlung selbst nicht — sie läuft in dem Browser, den du ohnehin offen hast. Zum Öffnen brauchst du danach das Programm, das auf deinem Gerät üblicherweise Training Center XML anzeigt.

Mehr über diese Formate