mise en page

This commit is contained in:
Alex 2026-09-17 10:26:08 +02:00
parent 165296fbf2
commit e30de33461

View File

@ -1,6 +1,16 @@
# GPX - Compteur de vitesse # GPX - Compteur de vitesse
Script Python qui transforme une trace GPX en vidéo MP4 carrée 1024×1024, prête à être incrustée dans un autre montage : trace blanche sur fond noir, cercle blanc qui suit le trajet, compteur de vitesse à aiguille et noms des villes traversées. <table>
<tr>
<td width="50%">
<img src="docs/exemple.png" alt="Image extraite de la vidéo d'exemple (trajet Brest - Plabennec)" width="100%">
</td>
<td width="50%" valign="top">
<p>Script Python transformant une trace GPX en vidéo MP4 carrée 1024×1024, prête à être incrustée dans un autre montage.</p>
<p>Trace blanche sur fond noir, cercle blanc qui suit le trajet, compteur de vitesse à aiguille et noms des villes traversées.</p>
</td>
</tr>
</table>
## Table des matières ## Table des matières
@ -11,8 +21,6 @@ Script Python qui transforme une trace GPX en vidéo MP4 carrée 1024×1024, pr
## Fonctionnalités ## Fonctionnalités
![Image extraite de la vidéo d'exemple (trajet Brest - Plabennec)](docs/exemple.png)
- Lecture GPX 1.0 / 1.1 (points `trkpt` horodatés). - Lecture GPX 1.0 / 1.1 (points `trkpt` horodatés).
- Vitesse issue de l'extension `gpxtpx:speed` (m/s, ex. GeoRide) si présente, sinon calculée à partir des distances et des temps ; lissage léger. - Vitesse issue de l'extension `gpxtpx:speed` (m/s, ex. GeoRide) si présente, sinon calculée à partir des distances et des temps ; lissage léger.
- Vidéo accélérée à durée fixe (60 s par défaut) : le trajet complet est parcouru du début à la fin. - Vidéo accélérée à durée fixe (60 s par défaut) : le trajet complet est parcouru du début à la fin.
@ -39,17 +47,18 @@ python gpx_video.py Trajet_16-09-2026_15h38.gpx
Produit `Trajet_16-09-2026_15h38.mp4` à côté du GPX. Produit `Trajet_16-09-2026_15h38.mp4` à côté du GPX.
| Option | Défaut | Rôle | | Option | Défaut | Rôle |
|---|---|---| | ---------------- | -------------------- | -------------------------------------- |
| `-o`, `--sortie` | nom du GPX en `.mp4` | fichier de sortie | | `-o`, `--sortie` | nom du GPX en `.mp4` | fichier de sortie |
| `--duree` | `60` | durée de la vidéo (secondes) | | `--duree` | `60` | durée de la vidéo (secondes) |
| `--fps` | `30` | images par seconde | | `--fps` | `30` | images par seconde |
| `--vmax` | `200` | graduation max du compteur (km/h) | | `--vmax` | `200` | graduation max du compteur (km/h) |
| `--sans-villes` | — | ne pas géocoder ni afficher les villes | | `--sans-villes` | — | ne pas géocoder ni afficher les villes |
Exemple : `python gpx_video.py trace.gpx -o balade.mp4 --duree 90 --fps 25` Exemple : `python gpx_video.py trace.gpx -o balade.mp4 --duree 90 --fps 25`
Notes : Notes :
- Le premier lancement interroge Nominatim (1 requête/s, un point par km de trajet) : compter environ 1 s par km. - Le premier lancement interroge Nominatim (1 requête/s, un point par km de trajet) : compter environ 1 s par km.
- En cas d'erreurs réseau, la vidéo est générée sans villes et le cache n'est pas écrit. Supprimer `<trace>.villes.json` pour forcer un nouveau géocodage. - En cas d'erreurs réseau, la vidéo est générée sans villes et le cache n'est pas écrit. Supprimer `<trace>.villes.json` pour forcer un nouveau géocodage.