BeatOnStep — musique au rythme de tes pas

BeatOnStep — music that matches your stride

BeatOnStep

BeatOnStep

Ta musique suit tes pas

Your music follows your stride

Tu cours. L’app sent le rythme de tes pas et propose un morceau au même tempo. Pas de compte BeatOnStep, pas de pub. Tu pars avec la musique que tu as déjà : mix démo, fichiers, YouTube, Apple Music, Spotify ou Deezer.

You run. The app feels your stride and picks a track at the same tempo. No BeatOnStep account, no ads. Use the music you already have: demo mix, files, YouTube, Apple Music, Spotify or Deezer.

Disponible sur Google Play et l’App Store.

Available on Google Play and the App Store.

Le problème

The problem

Playlist trop lente ? Trop rapide ?

Playlist too slow? Too fast?

134

tes pas · PPM your steps · PPM

≠

90

musique · BPM music · BPM

Musique hors rythme

Music off the beat

Ça casse le rythme. Tes jambes fatiguent pendant l’effort.

It breaks your rhythm. Your legs pay for it.

134

tes pas · PPM your steps · PPM

=

134

musique · BPM music · BPM

La solution BeatOnStep

The BeatOnStep fix

Un titre au rythme de tes pas.

A track at the rhythm of your steps.

PPM = pas / minute · BPM = tempo du titre

PPM = steps / minute · BPM = track tempo

Première sortie

First run

Tu peux courir tout de suite

You can run right away

Le mix démo est déjà dans l’app. Téléphone en poche, un titre part au rythme de tes pas.

The demo mix is already in the app. Phone in your pocket, a track kicks in with your stride.

Tes titres, plus tard, si tu veux.

Your own tracks later, if you want.

Rythme

Rhythm

Adaptatif, ou tu fixes le rythme

Adaptive, or you lock the rhythm

Adaptatif

Adaptive

Il s’adapte à toi

It follows you

Par défaut, attend 15 s que ton nouveau rythme se confirme, puis bascule sur le bon tempo.

By default, waits 15 seconds for your new rhythm to settle, then switches to the right tempo.

Marche Walk Course rapide Fast run Sprint Sprint

Musique douce Soft music Musique rapide Fast music Musique très rapide Very fast music

Fixe

Fixed

Tu fixes le rythme

You lock the rhythm

134

tes pas · PPM your steps · PPM

134

musique · BPM music · BPM

PPM = pas / minute · BPM = tempo du titre

PPM = steps / minute · BPM = track tempo

Glisse la pastille jaune : la verte suit. Même rythme pour tes pas et la musique.

Drag the yellow pill: the green one follows. Same rhythm for your steps and the music.

Ta musique

Your music

Tes sources musique

Your music sources

Mix et fichiers : ça joue dans BeatOnStep. YouTube, Apple Music, Spotify, Deezer : leur app joue, BeatOnStep choisit le titre.

Mix and files: they play in BeatOnStep. YouTube, Apple Music, Spotify, Deezer: their app plays, BeatOnStep picks the track.

Comment ajouter chaque source — clique une ligne pour le détailHow you add each source — click a row for details
SourceSource Comment tu l’ajoutesHow you add it Où ça joueWhere it plays
Mix démo Déjà dans l’appAlready in the app Dans BeatOnStep — écran verrouillé OKIn BeatOnStep — locked screen OK
Fichiers téléphonePhone files Tes MP3 déjà sur l’appareilMP3s already on the device Dans BeatOnStep — écran verrouillé OKIn BeatOnStep — locked screen OK
YouTube Connexion Google, tes playlistsGoogle sign-in, your playlists App YouTube / YouTube MusicYouTube / YouTube Music app
Apple Music Connexion Apple, tes playlistsApple sign-in, your playlists App Musique / Apple MusicMusic / Apple Music app
Spotify Coller le lien Partager d’un morceau, ou d’une playlist publiquePaste a Share link for a track, or a public playlist App SpotifySpotify app
Deezer Coller le lien Partager d’un morceau, ou d’une playlist publiquePaste a Share link for a track, or a public playlist App DeezerDeezer app

Clique une ligne pour le détail et les captures.

Click a row for details and screenshots.

Touche une source pour le détail.

Tap a source for details.

Déjà dans l’app, pour courir tout de suite.

Already in the app, so you can run right away.

Lecture dans BeatOnStep. Téléphone verrouillé : la musique enchaîne.

Plays in BeatOnStep. Phone locked: the music keeps going.

Importe tes fichiers dans Bibliothèque.

Import your files in Library.

Lecture dans BeatOnStep. Téléphone verrouillé : la musique enchaîne.

Plays in BeatOnStep. Phone locked: the music keeps going.

Réglages → coche YouTube, puis connexion Google, import des playlists et analyse BPM.

Settings → tick YouTube, then Google sign-in, import playlists, and analyze BPM.

La musique joue dans YouTube ou YouTube Music. Premium : moins de pubs, lecture en arrière-plan plus simple.

Music plays in YouTube or YouTube Music. Premium: fewer ads, easier background playback.

Réglages → coche Apple Music, puis connexion Apple, import des playlists et analyse BPM (abonnement Apple Music).

Settings → tick Apple Music, then Apple sign-in, import playlists, and analyze BPM (Apple Music subscription).

Sur iPhone, Apple Music s’ouvre en arrière-plan — téléphone verrouillé OK.

On iPhone, Apple Music opens in the background — locked phone OK.

Apple Music : iPhone vs AndroidApple Music: iPhone vs Android
iPhoneiPhone AndroidAndroid
Lecture autoAuto-play OuiYes Oui — BeatOnStep ouvre Apple Music Yes — BeatOnStep opens Apple Music
Musique en arrière-plan ou tel verrouilléBackground music or phone locked Oui — aussi téléphone verrouilléYes — locked phone too Non — bascule entre les appsNo — you switch between apps
App à installerApp required Apple MusicApple Music Apple Music à installer Install Apple Music

Bibliothèque → colle le lien Partager d’un morceau, ou d’une playlist publique. Pas de connexion Spotify. Une playlist privée ne marche pas. Sans tempo : saisis-le ou « Détecter BPM ».

Library → paste the Share link of a track, or of a public playlist. No Spotify sign-in. A private playlist won’t work. Without tempo: enter it or tap “Detect BPM”.

Spotify lance le titre. Reviens ici, garde BeatOnStep ouvert pour la piste suivante. En course, l’écran ne s’éteint pas tant que BeatOnStep reste ouvert.

Spotify starts the track. Come back here, keep BeatOnStep open for the next one. On a run, the screen stays on while BeatOnStep is open.

Bibliothèque → colle le lien Partager d’un morceau, ou d’une playlist publique. Pas de connexion Deezer. Une playlist privée ne marche pas.

Library → paste the Share link of a track, or of a public playlist. No Deezer sign-in. A private playlist won’t work.

Deezer lance le titre. Reviens ici, garde BeatOnStep ouvert pour la piste suivante. En course, l’écran ne s’éteint pas tant que BeatOnStep reste ouvert.

Deezer starts the track. Come back here, keep BeatOnStep open for the next one. On a run, the screen stays on while BeatOnStep is open.

Réglages

Settings

Commun à toutes les sources

Shared across every source

Détection, sources cochées, changement de titre.

Detection, ticked sources, when the track changes.

Réglages : sources cochées
Sources Sources Coche les sources que tu veux en course. Tick the sources you want on a run.

En course

On a run

Quand le titre change

When the track changes

Dans Réglages : immédiat, quelques secondes (défaut 15 s) ou fin du morceau — seulement s’il existe un meilleur titre dans tes sources cochées.

In Settings: now, a few seconds (default 15 s) or end of track — only if a better match exists in your ticked sources.

15s

Quelques secondes

A few seconds

Par défaut 15 s. Tu accélères ? L’app attend que ça tienne, puis passe au titre le plus proche.

Default 15 s. You speed up? The app waits until it holds, then picks the closest track.

Fin End

Jusqu’au bout

Play it out

Tu finis le morceau. Le suivant est déjà calé sur ton nouveau rythme.

You finish the track. The next one already matches your new rhythm.

Immédiat Now

Tout de suite

Right away

Tu changes de rythme : si un meilleur titre existe, il part tout de suite.

You change rhythm: if a better track exists, it switches right away.

En vidéo

Watch

Autres vidéos More videos
FAQ

Les questions d’un premier run.

First-run questions.

Comment j’installe l’app ? How do I get the app?

Cherche BeatOnStep sur Google Play ou l’App Store. Tu peux aussi utiliser les boutons de téléchargement de ce site.

Search for BeatOnStep on Google Play or the App Store. You can also use the download buttons on this site.

PPM et BPM, c’est quoi ? What’s PPM vs BPM?

PPM = tes pas par minute. BPM = le tempo du titre. BeatOnStep choisit le morceau dont le BPM est le plus proche de ton PPM, parmi tes sources cochées.

PPM = your steps per minute. BPM = the track’s tempo. BeatOnStep picks the song whose BPM is closest to your PPM, from your ticked sources.

Il me faut Spotify, YouTube, Apple Music ou Deezer ? Do I need Spotify, YouTube, Apple Music or Deezer?

Non. Le mix démo suffit. Tes fichiers téléphone aussi. Le reste est optionnel.

No. The demo mix is enough. So are your phone files. Everything else is optional.

Comment j’ajoute ma musique ? How do I add my music?

Le mix est déjà là. Le reste, dans Bibliothèque.

The mix is already there. Everything else, in Library.

YouTube et Apple Music — Réglages : coche la source, puis connecte ton compte, importe tes playlists et analyse les BPM des musiques importées.

YouTube and Apple Music — Settings: tick the source, then sign in, import your playlists, and analyze the BPM of the imported tracks.

Spotify et Deezer — pas de connexion dans BeatOnStep. Bibliothèque : colle le lien Partager d’un morceau, ou d’une playlist publique. Une playlist privée ne marche pas.

Spotify and Deezer — no sign-in in BeatOnStep. Library: paste the Share link of a track, or of a public playlist. A private playlist won’t work.

Où se lit la musique ? Where does music play?

Mix et fichiers : dans BeatOnStep. Apple Music sur iPhone : dans l’app Musique. Téléphone verrouillé : la musique enchaîne.

Mix and files: in BeatOnStep. Apple Music on iPhone: in the Music app. Phone locked: the music keeps going.

YouTube : dans YouTube. Premium : moins de pubs, lecture en arrière-plan plus simple.

YouTube: in YouTube. Premium: fewer ads, easier background playback.

Spotify et Deezer : leur app lance le titre. Reviens dans BeatOnStep pour la suivante. L’écran reste allumé tant que BeatOnStep est ouvert.

Spotify and Deezer: their app starts the track. Come back to BeatOnStep for the next one. The screen stays on while BeatOnStep is open.

Adaptatif ou Fixe ? Adaptive or Fixed?

Adaptatif : la musique suit ton rythme. Fixe : tu choisis le rythme toi-même.

Adaptive: music follows your rhythm. Fixed: you pick the rhythm yourself.

Quand le titre change ? When does the track change?

Dans Réglages : immédiat, quelques secondes ou fin du morceau. Seulement s’il existe un meilleur titre dans tes sources cochées.

In Settings: now, a few seconds or end of track. Only if a better match exists in your ticked sources.

Conseils pour la détection ? Detection tips?

Téléphone en poche. La détection avec le téléphone en mains est un peu moins précise.

Phone in your pocket. Detection with the phone in your hand is a bit less accurate.

Le − et le + à côté des pas ? The − and + next to my steps?

− : si l’app compte trop de pas → la détection devient moins sensible.

+ : elle en rate → la détection devient plus sensible.

Reset revient à la sensibilité par défaut.

−: if the app counts too many steps → detection becomes less sensitive.

+: it misses some → detection becomes more sensitive.

Reset goes back to default sensitivity.

Mes données ? My data?

Ton rythme de pas reste sur ton téléphone. Pas de compte BeatOnStep. Détail : politique de confidentialité.

Your step rhythm stays on your phone. No BeatOnStep account. Details: privacy policy.

Android ou iPhone ? Android or iPhone?

Les deux. Sur Android, Apple Music seulement si l’app est installée.

Both. On Android, Apple Music only if the app is installed.

Technique Technical
Comment on détecte le PPM ? How is PPM detected?
  1. Accéléro ~50 HzAccel ~50 Hz
  2. Calibration 1,25 sCalibrate 1.25 s
  3. Passe-haut + lissageHigh-pass + smooth
  4. Pics = pasPeaks = steps
  5. PPM lisséSmoothed PPM

Accéléromètre du téléphone, ~50 Hz. On prend la magnitude \(\sqrt{x^{2}+y^{2}+z^{2}}\). Environ 1,25 s de calibration, puis un passe-haut (500 ms) et un lissage (100 ms). Les pas sont des pics : fenêtre 480 ms en marche, 360 ms en course. Le PPM est la moyenne tronquée des intervalles entre pas (interne 30–300). Sans pas pendant 3,5 s, le PPM retombe à 0.

Phone accelerometer, ~50 Hz. Magnitude \(\sqrt{x^{2}+y^{2}+z^{2}}\). About 1.25 s of calibration, then a 500 ms high-pass and 100 ms smoothing. Steps are peaks: 480 ms window walking, 360 ms running. PPM is a trimmed mean of inter-step intervals (internal 30–300). No step for 3.5 s → PPM drops to 0.

Marche → course est automatique (score toutes les 750 ms, après 5 s d’échauffement). En Adaptatif, la cible est encore lissée : moyenne des 10 derniers relevés, mise à jour si ça bouge de plus de 5 PPM. Il faut 8 pas avant le premier titre.

Walk → run is automatic (score every 750 ms, after a 5 s warmup). In Adaptive, the target is smoothed again: average of the last 10 readings, updated if it moves by more than 5 PPM. 8 steps before the first track.

Adaptatif vs Fixe, sous le capot Adaptive vs Fixed, under the hood
Adaptatif Adaptive Capteur ON → PPM lissé → matching continu Sensor ON → smoothed PPM → continuous matching
Fixe Fixed Capteur OFF → cible manuelle → matching au changement Sensor OFF → manual target → match on change

Adaptatif : le capteur tourne, le matching est continu (sauf si le PPM n’a presque pas bougé). Fixe : capteur arrêté. Tu règles le PPM sur l’accueil (40–240). Le matching ne relance que quand tu changes la cible.

Adaptive: the sensor runs, matching is continuous (unless PPM barely moved). Fixed: sensor off. You set PPM on Home (40–240). Matching only reruns when you change the target.

D’où vient le BPM, par source ? Where does BPM come from, per source?
  1. Mix : déjà taguéMix: pre-tagged
  2. Musiques téléphone : analyse ~90 sPhone music: ~90 s analysis
  3. YouTube : saisie / détectionYouTube: enter / detect
  4. Apple Music : saisie / détectionApple Music: enter / detect
  5. Spotify : saisie / détection (lien d’un morceau ou d’une playlist publique)Spotify: enter / detect (track or public playlist link)
  6. Deezer : parfois fourni, sinon saisie / détectionDeezer: sometimes provided, else enter / detect
  7. Sans BPM : ignoréNo BPM: skipped

Sans tempo, un titre importé n’entre pas dans le matching. Mix démo : déjà tagué, lecture dans BeatOnStep. Fichiers téléphone : analyse (~90 s / piste) ou saisie. YouTube, Apple Music, Spotify : saisis ou « Détecter BPM » ; lecture dans leur app. Deezer : le tempo est parfois fourni, souvent pas — même geste.

Without tempo, an imported track isn’t used for matching. Demo mix: already tagged, plays in BeatOnStep. Phone files: analysis (~90 s / track) or manual entry. YouTube, Apple Music, Spotify: enter it or “Detect BPM”; plays in their app. Deezer: tempo is sometimes provided, often not — same gesture.

Comment un titre est choisi ? How is a track chosen?
  1. Sources cochéesTicked sources
  2. Tempo connuKnown tempo
  3. Écart minimalSmallest gap
  4. Pas les 20 récentsNot last 20
  5. Hystérésis une fois lancéHysteresis once playing

Parmi les sources cochées, seulement les titres dont le tempo est connu. Pour le choix, l’app retient le tempo le plus proche de ton rythme — pas de seuil à franchir. On écarte les 20 titres les plus récents. Une fois lancé, un petit écart de rythme ne suffit pas à changer (hystérésis), pour éviter le yo-yo. Si tu forces un morceau, le matching reprend au suivant.

From ticked sources, only tracks with a known tempo. For the pick, the app takes whichever tempo is closest to your rhythm — no cutoff threshold. It skips the 20 most recent tracks. Once playing, a small rhythm wobble isn’t enough to switch (hysteresis), to avoid yo-yoing. If you force a song, matching resumes on the next one.

Attente / Fin / Immédiat, concrètement Wait / End / Now, concretely
Immédiat Now Meilleur titre → change tout de suite Better track → switch now
Attente Attend que ça tienne · candidat figé · crossfade 1 s Wait until it holds · frozen candidate · 1 s crossfade
Fin End On finit le morceau, puis on change Finish the track, then switch

Pas de changement tant que le titre en cours reste le plus proche. Dès qu’un autre convient mieux : Immédiat = bascule tout de suite. Attente = on attend que ton rythme se stabilise ; le candidat est figé (anti yo-yo). Si lecture dans BeatOnStep, crossfade 1 s. Fin = on attend la fin du morceau ; bannière dans les 5 dernières secondes s’il reste un meilleur choix.

No switch while the current track is still the closest match. Once another fits better: Now = switch immediately. Wait = wait until your rhythm stabilizes; the candidate is frozen (anti yo-yo). In-app playback gets a 1 s crossfade. End = wait until the track finishes; banner in the last 5 seconds if a better pick remains.

Sensibilité − / + (compteur de pas) Sensitivity − / + (step count)
− Moins de pas détectés Fewer steps detected
+ Plus de pas détectés More steps detected

Uniquement en Adaptatif, pendant la détection. Les boutons encadrent le compteur de pas. Chaque tap déplace le seuil de l’accéléromètre (échelle interne −999…+999, 0 = défaut). Badge Sensibilité + Reset. Appui long = plus vite. Persistent.

Adaptive only, while detecting. The buttons sit around the step count. Each tap moves the accelerometer threshold (internal scale −999…+999, 0 = default). Sensitivity badge + Reset. Long-press = faster. Persistent.

« Sous-estimée / Surestimée » : anciens libellés quand l’allure (min/km) était affichée — un facteur ±2 % (bornes 1/3–3) corrigeait l’allure, pas le compteur de pas. Plus dans l’UI.

“Too fast / too slow”: old labels from when pace (min/km) was shown — a ±2% factor (clamped 1/3–3) corrected pace, not the step count. No longer in the UI.

Formule PPM ↔ allure (pas affichée) PPM ↔ pace formula (not shown)

L’app n’affiche plus l’allure (min/km) : la conversion PPM + taille est trop approximative. La formule reste documentée ici pour transparence ; une calibration (ex. 100 m + GPS) pourra revenir plus tard.

The app no longer shows pace (min/km): converting PPM + height is too approximate. The formula stays documented here for transparency; a calibration (e.g. 100 m + GPS) may come back later.

\[ \mathrm{allure}=\dfrac{1000}{\mathrm{PPM}\times k\times h} \]
\[ \mathrm{PPM}=\dfrac{1000}{\mathrm{allure}\times k\times h} \]
k
0,878 — foulée calibrée
h
taille en mètres (défaut 1,70)
ex.
134 PPM à 170 cm → 5:00 min/km
\[ \mathrm{pace}=\dfrac{1000}{\mathrm{PPM}\times k\times h} \]
\[ \mathrm{PPM}=\dfrac{1000}{\mathrm{pace}\times k\times h} \]
k
0.878 — calibrated stride
h
height in meters (default 1.70)
ex.
134 PPM at 170 cm → 5:00 min/km

Un bug, une idée d’évolution, un désaccord sur la formule ?

A bug, a feature idea, a disagreement on the formula?

Forum