Skip to content

Pourquoi DJ Live Playlist ?

Le contexte

Je suis DJ et développeur senior. Je streame mes sets en live sur Twitch, en mixant sur vinyle — un format encore très utilisé dans ma scène. Pendant un live, les gens dans le chat posent invariablement la même question :

"C'est quoi ce son ?"

Pendant longtemps, je gérais ça à la main — une liste dans un document texte, mise à jour entre les tracks, copié-collé dans le chat. Pas idéal quand on a deux mains occupées sur les platines et les yeux rivés sur les niveaux.

Pourquoi les solutions existantes ne conviennent pas

J'ai regardé ce qui existait déjà, et rien ne correspondait à mes besoins :

  • Le vinyle est invisible pour les logiciels. La plupart des applications existantes reposent sur l'analyse de fichiers audio numériques (MP3, FLAC…) pour détecter quel morceau est joué. Quand on mixe sur vinyle, il n'y a aucun fichier à analyser — ces outils sont tout simplement inutiles.
  • Plusieurs morceaux en même temps, sur plusieurs platines. Dans le style que je mixe, il y a souvent plusieurs morceaux joués simultanément. Il est parfois difficile — même pour le DJ — de distinguer exactement lesquels sont en cours de lecture, et surtout sur quelle platine. Le format de playlist DLP répond à cette question : chaque morceau est associé à une platine précise, avec ses instants de début et de fin, ce qui permet de reconstituer fidèlement le déroulé du mix.
  • Pas d'horodatage précis. Aucune application trouvée ne permet d'enregistrer les instants exacts de début et de fin de chaque morceau pendant un set. Impossible donc de revenir dessus après coup, de corriger des erreurs ou de rejouer la tracklist en regard de la vidéo ou du MP3 enregistré. Avec DJ Live Playlist, c'est désormais chose faite.
  • Aucun contrôle réel sur ses données. Les solutions existantes exigent généralement un compte cloud, envoient vos données on ne sait où et vous enferment dans la plateforme d'un tiers. Je voulais une maîtrise totale — aucune dépendance au cloud, aucune création de compte, aucun mystère sur ce qui advient de mes données personnelles.

L'idée

L'idée est simple : une application dans laquelle je prépare ma setlist à l'avance, et je n'ai plus qu'à appuyer sur un bouton quand je passe d'un morceau à l'autre. L'overlay OBS se met à jour automatiquement, les spectateurs voient le titre et l'artiste en temps réel.

Et si en plus ça peut se faire depuis le Stream Deck sans toucher au PC pendant le mix... parfait.

Pourquoi la développer moi-même ?

Étant à la fois DJ et développeur senior, je voulais mettre mes compétences à profit — pas seulement pour moi, mais pour la communauté. Trop d'artistes talentueux restent inconnus parce que leurs morceaux ne sont jamais correctement crédités dans les sets live. Cette application est ma façon de mettre en lumière des artistes trop peu connus et de stimuler une communauté de DJs qui se soucient de donner du crédit là où il est mérité.

Pourquoi Tauri ?

J'avais d'abord pensé à Electron, mais Tauri s'est imposé naturellement :

  • Binaires bien plus légers — quelques MB vs des centaines pour Electron
  • Rust pour le backend — WebSocket, fichiers, synchronisation : robuste, rapide, sans GC
  • Vue.js pour l'UI — j'y suis déjà à l'aise, la transition est naturelle
  • Build cross-platform natif — les GitHub Actions officielles de Tauri gèrent Windows, Linux et macOS en une seule CI

Le résultat

Une application qui tourne en arrière-plan et expose un serveur WebSocket local. L'overlay OBS s'y connecte comme à n'importe quel serveur. Le plugin Stream Deck aussi. Quand un track change dans l'app, les deux se mettent à jour en moins d'une seconde.

Tout est local, sans cloud, sans compte, sans abonnement.


Voir l'architecture technique →