crystal-rain

bySebastien Drure
Écran d'accueilStudio
Écran d'accueil

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirements Document for crystal-rain

1. Introduction

Cahier des charges — Crystal Rain Studio

Version 1.0

5 novembre 2026

• Document de cadrage produit et technique

1.1 CRYSTAL RAIN STUDIO / Cahier des charges fonctionnel, artistique et technique

Version : 1.0 — 5 novembre 2026

1.2 Présentation générale / Objectif principal

Permettre à un utilisateur de créer une vidéo en réalisant les actions suivantes :

1.3 Packs de décors / Variantes internes

1.4 Nouveaux univers musicaux / Infinite Loops

1.5 Livrables attendus du développeur

Page 1 of 95

2. System Overview

Objectif : développer une application web qui transforme automatiquement une mélodie en vidéo 3D photoréaliste, montrant des gouttes d'eau se formant sur des végétaux, tombant sur des instruments musicaux et produisant une composition synchronisée.

2.1 CRYSTAL RAIN STUDIO / Cahier des charges fonctionnel, artistique et technique

Nature du projet : Application web de génération automatisée de vidéos musicales 3D photoréalistes

Page 2 of 95

2.2 Présentation générale / Contexte

Le projet Crystal Rain Studio consiste à développer une application permettant de créer automatiquement des vidéos musicales hypnotiques, relaxantes et visuellement réalistes.

Les vidéos reposent initialement sur le principe suivant :

  • Des végétaux sont disposés dans la partie supérieure d'une scène.

  • Des gouttes d'eau apparaissent au bout des feuilles, grossissent et se détachent.

  • Les gouttes tombent vers des instruments situés plus bas.

  • Chaque impact déclenche une note précise d'une mélodie.

  • Certains instruments sont fixes, tandis que d'autres peuvent être installés sur un mécanisme rotatif.

  • L'ensemble est filmé par une caméra virtuelle reproduisant une photographie macro réaliste.

  • Les animations sont automatiquement synchronisées à un fichier musical importé.

Le logiciel devra produire des scènes variées à partir d'un moteur commun.

2.3 Interface du studio / Organisation générale

Application de bureau accessible dans un navigateur.

Page 3 of 95

3. Functional Requirements

Le logiciel doit permettre de changer les décors, notamment pour Noël ou d'autres saisons, d'ajouter des textes, de prévisualiser le résultat et d'exporter des vidéos prêtes à publier sur YouTube Shorts, TikTok et Instagram Reels.

Le produit devra satisfaire quatre exigences fondamentales :

  • Variabilité : une même mélodie doit pouvoir générer plusieurs vidéos distinctes en changeant le décor, les instruments, le cadrage et la graine de génération.

    Valider visuellement une goutte réaliste et sa collision avec un carillon.

  1. Phase 1 — Moteur musical et animation

    Transformer automatiquement un MIDI en gouttes, notes et impacts.

  2. Phase 2 — Studio MVP et export

    Importer, configurer, prévisualiser, ajouter du texte et exporter.

  3. Phase 3 — Photoréalisme avancé

    Végétation, gouttes déformables, carrousel, éclairage et caméra cinématographique.

  4. Phase 4 — Packs de décors

    Noël, Sakura, automne, Halloween, forêt tropicale, etc.

  5. Phase 5 — Réalisation automatique et export professionnel

    Caméra musicale, transitions, MP4 de qualité et rendu déterministe.

Page 4 of 95
  1. Phase 6 — Génération industrielle

    Lots de vidéos, variantes automatiques, gestion des projets et bibliothèque d'assets.

  2. Phase 7 — Extensions futures

    Import audio, nouvelles machines musicales, génération assistée par IA et éventuel SaaS.

  • Project name: crystal-rain.
  • Free credits claimed: 0.025 for 3 design rewards.
  • Scene content: a carousel that rotates; realistic leaves at the very top; realistic drops falling from the leaves onto a structure; the structure consequently makes noise and plays the melody (no sound available).
  • The user wants a beautiful 3D scene for a realistic video.
  • The user judged the current result as very ugly; the scene must be visually beautiful.
Page 5 of 95

3.1 Présentation générale / Objectif principal

  1. Importer un fichier MIDI.

  2. Choisir un environnement visuel.

  3. Sélectionner les instruments et les paramètres d'animation.

  4. Générer automatiquement une scène 3D cohérente.

  5. Prévisualiser le résultat avec sa musique.

  6. Ajouter éventuellement des textes et des éléments graphiques.

  7. Exporter une vidéo avec audio intégré.

Aucune animation manuelle des gouttes, feuilles ou instruments ne doit être obligatoire.

3.2 Présentation générale / Principes non négociables

3.3 Public cible et cas d'utilisation / Cas d'utilisation principaux

UC-05 — Exporter

L'utilisateur choisit le format vertical, la résolution et la qualité, puis génère une vidéo intégrant l'audio et les textes.

UC-06 — Produire plusieurs vidéos

À terme, l'utilisateur importe plusieurs fichiers MIDI et lance une file de production automatisée.

Page 6 of 95

3.4 Fonctionnalités musicales / Import MIDI — Priorité P0

Formats acceptés :

  • .mid

  • .midi

Le logiciel doit analyser :

  • Les pistes musicales.

  • Les notes MIDI.

  • Les instants de début des notes.

  • Les durées.

  • Les vélocités.

  • Les changements de tempo.

  • Les accords.

  • Les instruments déclarés, lorsque disponibles.

  • Les changements éventuels de mesure.

Les événements doivent être convertis dans une timeline commune, exprimée en secondes.

Les changements de tempo doivent être respectés.

Page 7 of 95

3.5 Fonctionnalités musicales / Prétraitement musical

Le moteur doit :

  • Trier les événements chronologiquement.

  • Identifier les notes simultanées.

  • Identifier les notes répétées.

  • Repérer les zones de forte et faible densité musicale.

  • Détecter les passages nécessitant plusieurs gouttes à la fois.

  • Identifier les limites de densité visuelle.

  • Signaler les notes impossibles à représenter proprement avec le décor choisi.

Une note n'a pas nécessairement besoin d'être représentée par une goutte unique : des notes secondaires peuvent être associées à un autre mécanisme, notamment dans les morceaux complexes.

Toute simplification visuelle doit être configurable.

Page 8 of 95

3.6 Fonctionnalités musicales / Affectation automatique des notes

Chaque événement musical doit être associé à :

  • Un instrument.

  • Une position d'impact.

  • Une feuille ou un émetteur.

  • Une goutte ou un mécanisme.

  • Une trajectoire.

  • Une animation de collision.

  • Un son.

  • Une durée de résonance.

Règle fondamentale : toutes les notes audibles appartenant à la mélodie principale doivent disposer d'une représentation visuelle cohérente.

Pour un MIDI polyphonique complexe, le moteur pourra distinguer une piste principale des pistes d'accompagnement et utiliser différents systèmes visuels.

Page 9 of 95

3.7 Fonctionnalités musicales / Instruments audio

Bibliothèque initiale :

  • Cloche en verre.

  • Carillon de cristal.

  • Lame de verre.

  • Kalimba douce.

  • Marimba.

  • Percussion d'eau.

Bibliothèque future :

  • Petites cloches métalliques.

  • Lames métalliques.

  • Tubes sonores.

  • Bols résonants.

  • Cordes.

  • Percussions mécaniques.

Le moteur audio doit prendre en charge les échantillons enregistrés et, si nécessaire, la synthèse sonore.

Chaque note doit être adaptée à la hauteur demandée, tout en minimisant les artefacts de transposition.

Une couche sonore d'ambiance pourra être ajoutée : pluie, forêt, vent léger, eau, bruissement de feuilles.

Page 10 of 95

3.8 Fonctionnalités musicales / Import audio futur — Priorité P3

Permettre l'import de fichiers :

  • WAV.

  • MP3.

  • FLAC, éventuellement.

Deux modes distincts devront être prévus :

Mode transcription : tentative de conversion de l'audio en notes et événements musicaux.

Mode synchronisation : utilisation d'une piste audio fournie avec un MIDI correspondant.

Le mode transcription devra signaler ses erreurs potentielles et permettre une correction manuelle des notes détectées.

3.9 Moteur de génération visuelle / Architecture de la scène

La scène doit être divisée en zones logiques indépendantes :

Zone supérieure : végétation et points d'émission des gouttes.

Zone centrale : espace de chute et instruments suspendus.

Zone inférieure : carrousel éventuel, supports, récipients et décors.

Arrière-plan : environnement naturel ou saisonnier.

Couche caméra : cadrage, mouvement, mise au point et profondeur de champ.

Couche graphique : textes, logos et éléments éditoriaux.

Page 11 of 95

3.10 Moteur de génération visuelle / Génération automatique

Le moteur doit créer une scène à partir :

  • D'un fichier MIDI.

  • D'un thème.

  • D'un preset de composition.

  • D'un niveau de complexité.

  • D'une graine aléatoire.

  • D'une configuration caméra.

  • D'un jeu d'instruments.

  • D'une configuration de lumières.

La génération doit être reproductible.

Le nombre de cristaux peut dépendre des notes utilisées, mais ne doit pas nécessairement correspondre à une pièce différente pour chaque hauteur MIDI. Des stratégies de regroupement, de réutilisation et de variation d'instruments sont autorisées.

Page 12 of 95

3.11 Moteur de génération visuelle / Gestion des contraintes

Le générateur doit détecter et limiter :

  • Les collisions entre objets du décor.

  • Les trajectoires traversant des branches.

  • Les gouttes passant derrière des instruments sans visibilité.

  • Les instruments hors du cadre.

  • Les superpositions excessives.

  • Les accords générant trop de gouttes au même endroit.

  • Les problèmes de perspective.

  • Les éléments de texte masquant les impacts.

En cas d'échec de placement, le moteur doit tenter une autre configuration ou utiliser une solution de repli.

Page 13 of 95

3.12 Système de végétation / Caractéristiques des modèles

Chaque modèle végétal peut contenir :

  • Plusieurs feuilles.

  • Une branche principale.

  • Des branches secondaires.

  • Des textures haute définition.

  • Des matériaux avec transparence et diffusion de la lumière.

  • Des variations de couleur.

  • Des points d'attache pour les gouttes.

  • Des paramètres de mouvement.

Les plantes devront être fournies comme assets réutilisables.

3.13 Système de végétation / Animation

Page 14 of 95

3.14 Système de gouttes d'eau / Cycle d'animation

Chaque goutte doit pouvoir traverser les états suivants :

  1. Apparition d'une petite quantité d'eau.

  2. Croissance progressive.

  3. Modification de la forme sous l'effet de la gravité.

  4. Étirement.

  5. Formation éventuelle d'un col liquide.

  6. Rupture et détachement.

  7. Chute.

  8. Impact.

  9. Éclaboussure ou absorption.

  10. Disparition ou intégration au décor.

Une animation stylisée mais physiquement plausible est acceptable : une simulation de fluides complète n'est pas exigée pour toutes les gouttes.

Page 15 of 95

3.15 Système de gouttes d'eau / Propriétés configurables

  • Volume.

  • Rayon.

  • Durée de croissance.

  • Durée d'étirement.

  • Hauteur de chute.

  • Vitesse initiale éventuelle.

  • Forme.

  • Transparence.

  • Indice de réfraction.

  • Réflexion.

  • Taille de l'éclaboussure.

  • Intensité de l'impact.

Page 16 of 95

3.16 Système de gouttes d'eau / Synchronisation

Pour chaque note à l'instant T :

  • Calculer la position cible.

  • Déterminer la trajectoire.

  • Calculer le temps de chute.

  • Programmer le détachement à T moins le temps de chute.

  • Programmer la croissance suffisamment tôt.

  • Déclencher les animations d'impact et de résonance exactement à T.

Le calcul doit pouvoir être évalué à n'importe quel instant de la timeline.

3.17 Système de gouttes d'eau / Variantes futures

  • Gouttes de pluie.

  • Gouttes de rosée.

  • Eau colorée.

  • Eau partiellement gelée.

  • Fonte de neige.

  • Condensation.

  • Petites cascades.

  • Plusieurs gouttes fusionnant sur une feuille.

Page 17 of 95

3.18 Instruments et interactions / Instruments fixes

Le système doit prendre en charge des objets situés sous les gouttes :

  • Carillons.

  • Plaques de verre.

  • Tubes résonants.

  • Bols.

  • Cloches.

  • Coupelles.

  • Percussions légères.

Chaque objet possède :

  • Un modèle 3D.

  • Une zone de collision.

  • Une plage musicale compatible.

  • Un ou plusieurs sons associés.

  • Une animation d'impact.

  • Une animation de résonance.

Page 18 of 95

3.19 Instruments et interactions / Effets d'impact

Selon l'instrument :

  • Vibration.

  • Oscillation.

  • Déformation légère.

  • Ondulation.

  • Éclaboussure.

  • Reflet lumineux subtil.

  • Résonance.

3.20 Carrousel mécanique / Concept

Un mécanisme circulaire peut être installé dans la partie inférieure ou centrale.

Il tourne lentement et transporte plusieurs instruments ou objets.

Le carrousel doit ressembler à un dispositif réel : engrenages, axes, supports et matériaux cohérents.

Page 19 of 95

3.21 Carrousel mécanique / Fonctionnalités

  • Activation ou désactivation.

  • Choix du modèle.

  • Vitesse de rotation.

  • Sens de rotation.

  • Position dans la scène.

  • Nombre d'éléments.

  • Type d'instruments transportés.

  • Rotation continue ou pilotée par la musique.

3.22 Carrousel mécanique / Synchronisation

Le moteur doit calculer la position des instruments mobiles à l'instant de chaque impact.

La goutte doit atteindre la position réelle de l'instrument au moment du contact.

Si la configuration ne permet pas un impact plausible, l'algorithme doit sélectionner une autre trajectoire ou un instrument fixe.

Page 20 of 95

3.23 Carrousel mécanique / Variantes futures

  • Carrousel en laiton.

  • Carrousel en bois.

  • Mécanisme ancien de boîte à musique.

  • Roue à eau.

  • Mécanisme d'horlogerie.

  • Plateforme de cristaux.

  • Petits marteaux mécaniques.

  • Engrenages activant des percussions.

Page 21 of 95

3.24 Photoréalisme et direction artistique / Caméra

  • Position.

  • Orientation.

  • Focale virtuelle.

  • Mise au point.

  • Profondeur de champ.

  • Mouvement lent.

  • Travelling.

  • Orbite légère.

  • Gros plan.

  • Plan général.

  • Cadrage automatique.

La caméra doit préserver la visibilité des impacts.

3.25 Photoréalisme et direction artistique / Post-traitement

Prévoir :

  • Correction colorimétrique.

  • Bloom subtil.

  • Profondeur de champ.

Page 22 of 95

3.26 Packs de décors / Fonctionnement

Un décor doit être défini par un manifeste indépendant du moteur musical.

Chaque pack regroupe :

  • Végétation.

  • Modèles d'instruments.

  • Matériaux.

  • Environnement.

  • Éclairage.

  • Paramètres de caméra.

  • Sons d'ambiance.

  • Variantes de couleurs.

  • Contraintes de placement.

Page 23 of 95

3.27 Packs de décors / Décors prévus

Zen Rain — P0

Végétation verte, bambou éventuel, mousse, eau, verre et bois, lumière matinale.

Christmas Rain — P2

Branches de sapin, neige, givre, lumières chaudes, carillons de cristal et mécanique en laiton.

Autumn Rain — P2

Feuilles d'érable, couleurs orangées, bois ancien, cloches de cuivre.

Sakura Rain — P2

Fleurs de cerisier, teintes pastel, petites gouttes et carillons délicats.

Page 24 of 95

3.28 Packs de décors / Variantes internes

Chaque décor doit pouvoir produire plusieurs variations :

  • Répartition des plantes.

  • Position des instruments.

  • Angle de caméra.

  • Couleurs secondaires.

  • Intensité de la pluie.

  • Conditions lumineuses.

  • Petits éléments de décoration.

L'objectif n'est pas de simplement recolorer une scène identique.

3.29 Interface du studio / Organisation générale

Disposition recommandée :

Panneau gauche : import musical, choix du décor et des instruments.

Centre : prévisualisation 3D au format vertical ou horizontal.

Panneau droit : propriétés de la scène, de la caméra, des effets et des textes.

Partie inférieure : timeline, lecture, marqueurs et export.

Page 25 of 95

3.30 Interface du studio / Écran d'accueil

Fonctionnalités :

  • Nouveau projet.

Fonctionnalités :

  • Ouvrir un projet.

Fonctionnalités :

  • Dupliquer un projet.

Fonctionnalités :

  • Importer un MIDI.

Fonctionnalités :

  • Accéder aux presets.

Fonctionnalités :

  • Accéder aux derniers exports.
Page 26 of 95

3.31 Interface du studio / Prévisualisation

  • Lecture.

  • Pause.

  • Recommencer.

  • Déplacement dans la timeline.

  • Lecture en boucle.

  • Réduction de la qualité pour accélérer la prévisualisation.

  • Affichage facultatif des zones de collision.

  • Affichage facultatif des trajectoires.

  • Capture d'image.

Page 27 of 95

3.32 Interface du studio / Paramètres principaux

  • Thème.

  • Graine de génération.

  • Nombre maximal de gouttes simultanées.

  • Complexité visuelle.

  • Densité de végétation.

  • Type d'instruments.

  • Activation du carrousel.

  • Caméra.

  • Éclairage.

  • Couleur dominante.

  • Effets d'impact.

  • Volume sonore.

  • Durée d'introduction et de conclusion.

Page 28 of 95

3.33 Interface du studio / Actions de régénération

L'utilisateur doit pouvoir :

  • Régénérer toute la scène.

L'utilisateur doit pouvoir :

  • Régénérer uniquement la végétation.

L'utilisateur doit pouvoir :

  • Régénérer les instruments.

L'utilisateur doit pouvoir :

  • Régénérer la caméra.

L'utilisateur doit pouvoir :

  • Modifier le décor sans perdre la synchronisation.

L'utilisateur doit pouvoir :

  • Conserver une variante satisfaisante.

L'utilisateur doit pouvoir :

  • Revenir à une version précédente.
Page 29 of 95

3.34 Éditeur de textes et éléments graphiques / Fonctionnalités initiales

  • Titre principal.

  • Sous-titre.

  • Texte libre.

  • Nom de chaîne.

  • Logo ou filigrane.

Chaque élément peut posséder :

  • Texte.

  • Police.

  • Taille.

  • Couleur.

  • Ombre.

  • Position.

  • Alignement.

  • Instant d'apparition.

  • Instant de disparition.

Page 30 of 95

3.35 Éditeur de textes et éléments graphiques / Animations futures

  • Fondu.

  • Apparition progressive.

  • Déplacement doux.

  • Zoom.

  • Animation synchronisée à une note.

  • Apparition au début d'un nouveau passage musical.

3.36 Éditeur de textes et éléments graphiques / Templates

  • Relaxing music.

  • Sleep.

  • Christmas melody.

  • Satisfying sounds.

  • Morning relaxation.

  • No text.

  • Minimal branding.

Les textes doivent respecter les zones de sécurité propres au format vertical et éviter les espaces occupés par les interfaces des plateformes.

Page 31 of 95

3.37 Éditeur de textes et éléments graphiques / Édition

L'utilisateur doit pouvoir déplacer et redimensionner les textes dans la prévisualisation.

3.38 Moteur de rendu et export / Formats

Initial :

  • Vertical 9:16.

  • 720 × 1280.

  • 1080 × 1920.

  • WebM avec audio.

Évolutions :

  • MP4 H.264 avec audio AAC.

  • 30 et 60 images par seconde.

  • Horizontal 16:9.

  • Carré 1:1.

  • Export 1440p et 4K selon capacités matérielles.

  • Image de miniature.

  • Export audio seul.

  • Export de la configuration du projet.

Page 32 of 95

3.39 Moteur de rendu et export / Modes de rendu

Prévisualisation temps réel

Priorité à la fluidité. Qualité adaptable selon le matériel.

Export haute qualité

Priorité à la fidélité visuelle et à la synchronisation. Temps de calcul potentiellement supérieur à la durée réelle de la vidéo.

3.40 Moteur de rendu et export / Rendu déterministe

Le système doit disposer d'une fonction de rendu permettant de définir directement l'état visuel d'une scène à un instant précis.

Le moteur ne doit pas dépendre exclusivement du temps écoulé depuis le démarrage de l'application.

Cela doit permettre :

  • Revenir à un instant donné.

  • Reprendre un export.

  • Générer chaque image séparément.

  • Reproduire une vidéo.

  • Comparer deux moteurs de rendu.

Page 33 of 95

3.41 Moteur de rendu et export / Audio

L'audio final doit être créé depuis la timeline musicale et les sons d'ambiance, puis synchronisé avec les images.

Il ne doit pas dépendre uniquement d'une capture sonore en direct pendant le rendu.

3.42 Moteur de rendu et export / Gestion des exports

  • Nom du fichier.

  • Format.

  • Résolution.

  • FPS.

  • Qualité.

  • Progression.

  • Annulation.

  • Messages d'erreur.

  • Dossier de destination.

  • Historique des exports.

À terme, reprise sur incident et file de rendu.

Page 34 of 95

3.43 Architecture technique / Structure d'un projet

Un projet sauvegardé doit contenir :

  • Version du schéma.

  • Référence au MIDI.

  • Événements normalisés.

  • Identifiant du thème.

  • Version des assets.

  • Graine aléatoire.

  • Paramètres visuels.

  • Paramètres musicaux.

  • Paramètres de caméra.

  • Paramètres de texte.

  • Préférences d'export.

3.44 Architecture technique / Référentiel temporel unique

Les événements visuels doivent pouvoir être recalculés depuis un temps absolu.

Page 35 of 95

3.45 Génération automatique des vidéos / Principe

La génération suit une succession d'étapes :

  1. Lecture de la composition.

  2. Normalisation des événements.

  3. Analyse de la densité musicale.

  4. Sélection des instruments.

  5. Génération de la disposition spatiale.

  6. Attribution des sources de gouttes.

  7. Calcul des trajectoires.

  8. Validation des collisions.

  9. Création des animations secondaires.

  10. Calcul des mouvements de caméra.

  11. Génération de la prévisualisation.

  12. Export.

Page 36 of 95

3.46 Génération automatique des vidéos / Génération de variantes

Un projet doit permettre de créer plusieurs versions à partir d'une même composition.

Variantes possibles :

  • Thème.

  • Graine aléatoire.

  • Placement des plantes.

  • Composition des instruments.

  • Carrousel.

  • Angle de caméra.

  • Éclairage.

  • Ambiance sonore.

  • Type de gouttes.

3.47 Génération automatique des vidéos / Contraintes de qualité

Le moteur doit rejeter ou corriger certaines générations :

  • Impacts invisibles.

Le moteur doit émettre un rapport de génération avec des avertissements et les éventuels compromis retenus.

Page 37 of 95

3.48 Réalisateur automatique / Objectif

Créer une mise en scène évoluant en fonction de la musique.

3.49 Réalisateur automatique / Analyse musicale

Le réalisateur peut exploiter :

  • Densité des notes.

  • Intensité.

  • Entrée ou sortie de pistes.

  • Accords.

  • Changements de tempo.

  • Silences.

  • Fin du morceau.

Page 38 of 95

3.50 Réalisateur automatique / Actions automatiques

  • Déplacement lent de caméra.

  • Zoom progressif.

  • Passage d'un plan général à un détail.

  • Changement de point de focalisation.

  • Révélation d'un autre instrument.

  • Mise en valeur d'un passage musical.

  • Retour au cadrage initial.

3.51 Réalisateur automatique / Règles

  • Permettre la désactivation complète de la réalisation automatique.

3.52 Génération par lots et automatisation / Objectif

Permettre de produire plusieurs vidéos sans répéter toutes les opérations.

Page 39 of 95

3.53 Génération par lots et automatisation / Fonctionnalités

  • Import multiple de fichiers MIDI.

  • Choix des thèmes autorisés.

  • Nombre de variantes par MIDI.

  • Attribution automatique de graines.

  • Génération de titres.

  • Application de templates.

  • File de rendu.

  • Export dans un dossier commun.

  • Gestion des erreurs.

  • Reprise des rendus interrompus.

Page 40 of 95

3.54 Génération par lots et automatisation / Diversification

Pour éviter des vidéos pratiquement identiques, la génération doit permettre des variations artistiques réelles :

  • Différentes compositions.

  • Différentes structures instrumentales.

  • Différents dispositifs mécaniques.

  • Différents environnements.

  • Différents cadrages.

  • Différentes progressions visuelles.

Les vidéos doivent être vérifiées avant publication.

3.55 Génération par lots et automatisation / Automatisation future

Possibilités :

  • API locale.

  • Génération par ligne de commande.

  • Planification de rendus sur une machine.

  • Génération de miniatures.

  • Préparation des titres et descriptions.

  • Organisation des fichiers par date, thème ou composition.

Page 41 of 95

3.56 Nouveaux univers musicaux / Pendulum Symphony

Pendules synchronisés qui déclenchent des notes.

3.57 Nouveaux univers musicaux / Domino Beats

Dominos produisant des sons lors de leur chute.

3.58 Nouveaux univers musicaux / Mechanical Harmony

Engrenages, roues et mécanismes musicaux.

3.59 Nouveaux univers musicaux / String Physics

Billes ou dispositifs frappant des cordes.

3.60 Nouveaux univers musicaux / Sand Orchestra

Écoulement de sable et résonateurs.

3.61 Nouveaux univers musicaux / Liquid Beats

Liquides, gouttes colorées, coupelles et percussions.

3.62 Nouveaux univers musicaux / Particle Piano

Particules lumineuses associées aux événements musicaux.

3.63 Nouveaux univers musicaux / Rhythm Factory

Machine miniature industrielle jouant des percussions.

Page 42 of 95

3.64 Nouveaux univers musicaux / Infinite Loops

Mécanismes répétitifs synchronisés à la musique, avec transitions invisibles.

Page 43 of 95

3.65 Plan de développement par phases / Phase 0 — Validation technique et artistique

Développements :

  • Scène Three.js minimale.

Développements :

  • Import d'une branche réaliste.

Développements :

  • Création d'un cristal ou d'un carillon.

Développements :

  • Modèle de goutte transparent.

Développements :

  • Animation de croissance et détachement.

Développements :

  • Chute avec impact.

  • Éclairage de type macro.

  • Premier test de réfraction et profondeur de champ.

  • Première comparaison entre rendu temps réel et rendu Blender.

Livrables :

  • Prototype technique isolé.

  • Courte animation de démonstration.

Page 44 of 95
  • Documentation des performances.

  • Liste des limites visuelles.

  • Décision sur la stratégie de rendu finale.

Validation : une goutte se forme, tombe et atteint un instrument dans une scène visuellement crédible, sans artefact majeur.

Page 45 of 95

3.66 Plan de développement par phases / Phase 1 — Moteur musical et synchronisation

Objectif : convertir automatiquement une mélodie en événements visuels.

Développements :

  • Import MIDI.

  • Normalisation des notes.

  • Gestion du tempo.

  • Timeline.

  • Association notes/instruments.

  • Génération des gouttes.

  • Calcul rétroactif des trajectoires.

  • Synchronisation des impacts.

  • Gestion des accords.

  • Lecture audio.

  • Moteur de synchronisation.

  • Scène jouant une mélodie de 15 à 30 secondes.

Validation : tous les événements principaux sont synchronisés avec leurs impacts, y compris après un déplacement dans la timeline.

Livrables :

  • Tests automatiques sur les horaires des événements.
Page 46 of 95

3.67 Plan de développement par phases / Phase 2 — Studio MVP

Objectif : obtenir un outil utilisable de bout en bout.

Développements :

  • Interface React.

  • Nouveau projet.

  • Import MIDI.

  • Choix d'un thème.

  • Prévisualisation.

  • Lecture/pause.

  • Timeline navigable.

  • Réglages de base.

  • Gestion de la graine.

  • Textes simples.

  • Sauvegarde des projets.

  • Export WebM avec son.

Validation : un utilisateur peut produire et exporter une vidéo depuis un MIDI sans modifier le code.

Page 47 of 95

3.68 Plan de développement par phases / Phase 3 — Rendu réaliste et mécanique

Livrables :

  • Scène Zen Rain aboutie.

  • Carrousel fonctionnel.

  • Presets visuels.

  • Exports comparatifs.

Page 48 of 95

3.69 Plan de développement par phases / Phase 4 — Décors et saisons

Objectif : multiplier les univers sans dupliquer le moteur.

Développements :

  • Système de packs.

  • Manifeste de thème.

  • Remplacement des assets.

  • Christmas Rain.

  • Autumn Rain.

  • Sakura Rain.

  • Variation des lumières.

  • Variation des instruments.

  • Variation des ambiances sonores.

  • Bibliothèque de presets.

Livrables :

  • Au moins quatre thèmes.

  • Gestionnaire de décors.

  • Documentation pour créer un nouveau pack.

Validation : un même MIDI fonctionne dans tous les thèmes sans réglage manuel des trajectoires.

Page 49 of 95

3.70 Plan de développement par phases / Phase 5 — Réalisation automatique et export avancé

Objectif : atteindre une qualité de production régulière.

Développements :

  • Analyse de la dynamique musicale.

  • Mouvements de caméra automatiques.

  • Changements de cadrage contrôlés.

  • Éditeur de textes avancé.

  • Templates de Shorts.

  • Rendu hors temps réel.

  • Export MP4.

  • Audio finalisé indépendamment du rendu vidéo.

  • Gestion des hautes résolutions.

  • Gestion des erreurs d'export.

Livrables :

  • Export vidéo final haute qualité.

  • Réalisateur automatique.

  • Presets de publication.

Page 50 of 95

3.71 Plan de développement par phases / Phase 6 — Production en série

Développements :

  • Import de plusieurs MIDI.

  • Variantes automatiques.

  • File de rendu.

  • Gestion des projets.

  • Catalogue d'assets.

  • Historique des rendus.

  • Génération de miniatures.

  • Contrôles qualité automatiques.

  • Rapports d'erreurs.

  • Reprise des exports.

Livrables :

  • Générateur par lots.

  • Interface de suivi.

  • Export structuré des vidéos.

Validation : plusieurs vidéos distinctes peuvent être produites sans reconfigurer chaque scène.

Page 51 of 95

3.72 Plan de développement par phases / Phase 7 — Extensions avancées

Objectif : transformer l'outil en plateforme extensible.

Fonctionnalités potentielles :

  • Transcription MP3/WAV vers MIDI.

  • Génération assistée de mélodies originales.

  • Création de décors assistée par IA.

  • Nouveaux moteurs visuels.

  • Éditeur de trajectoires manuel facultatif.

  • Bibliothèque communautaire.

  • Export de séquences longues.

  • Génération de loops parfaites.

  • API de rendu.

  • Rendu distribué.

  • Gestion multi-utilisateur.

  • Offres SaaS.

  • Packs de thèmes payants.

  • Interface de programmation pour créer de nouveaux générateurs.

Page 52 of 95

3.73 Stratégie de tests / Tests fonctionnels

  • Import valide.

  • Import corrompu.

  • MIDI vide.

  • MIDI très court.

  • MIDI très long.

  • Changements de tempo.

  • Accords importants.

  • Notes répétées rapidement.

  • Notes hors de la plage de certains instruments.

  • Lecture et déplacement dans la timeline.

Page 53 of 95

3.74 Critères de recette

Le MVP pourra être considéré comme fonctionnel lorsque :

  • Un MIDI compatible peut être importé.

  • Sa durée et ses notes sont correctement analysées.

  • Une scène est générée automatiquement.

  • Les gouttes atteignent visuellement leurs instruments.

  • Les notes principales sont synchronisées.

  • Le résultat peut être prévisualisé.

  • Les textes peuvent être ajoutés.

  • Le projet peut être enregistré.

  • Une vidéo verticale avec audio peut être exportée.

  • L'utilisateur n'a pas besoin de manipuler un logiciel 3D.

La version artistique avancée devra en complément satisfaire :

  • Végétation crédible.

  • Gouttes avec croissance et détachement réalistes.

  • Matériaux de qualité.

  • Absence d'intersections visibles majeures.

  • Instruments cohérents.

  • Carrousel fonctionnel.

Page 54 of 95
  • Caméra macro convaincante.

  • Performances raisonnables en prévisualisation.

3.75 Risques et contraintes / Photoréalisme navigateur

Réponse : prototype précoce, presets de qualité et option de rendu hors ligne.

3.76 Risques et contraintes / Polyphonie musicale

Réponse : séparation des pistes, instrumentation secondaire et limites visuelles configurables.

3.77 Risques et contraintes / Export navigateur

Réponse : utiliser WebM pour un premier export, puis développer un pipeline déterministe avec encodage dédié.

3.78 Risques et contraintes / Charge de modélisation 3D

Réponse : créer une bibliothèque réutilisable et définir un format strict pour les nouveaux packs.

3.79 Risques et contraintes / Droits musicaux

Réponse : privilégier les compositions originales ou sous licence appropriée et conserver les informations de provenance.

4. User Personas

Page 55 of 95

4.1 Public cible et cas d'utilisation / Utilisateur initial

Le créateur du projet, produisant des vidéos de manière régulière à partir d'une interface accessible sur ordinateur.

5. Core User Flows

Les parcours ci-dessous décrivent les objectifs acceptés du créateur. Ils ne sont pas séquentiellement dépendants : chaque parcours peut être engagé depuis l'accueil ou depuis un projet existant, sans imposition d'ordre entre eux.

Page 56 of 95

5.1 Créer une vidéo depuis un MIDI (UC-01)

Acteur : le créateur. Déclencheur : un fichier MIDI prêt à être mis en scène.

  1. L'utilisateur crée un nouveau projet ou importe directement un MIDI.
  2. Il choisit un univers visuel (par exemple Zen Rain), un preset, un niveau de complexité et une graine aléatoire.
  3. Il lance la génération automatique : normalisation des notes, gestion du tempo, analyse de la densité, association notes/instruments, génération des gouttes, calcul rétroactif des trajectoires, synchronisation des impacts, gestion des accords, animations secondaires et mouvements de caméra.
  4. Le studio produit une prévisualisation avec audio ; l'utilisateur la contrôle (lecture, pause, recommencer, déplacement dans la timeline, boucle, qualité réduite, affichage facultatif des zones de collision et des trajectoires).
  5. Résultat : une scène 3D cohérente et synchronisée, prête à être exportée.

Branche d'échec / reprise : si un impact plausible est impossible (instrument mobile mal positionné à l'instant du contact), le moteur choisit une autre trajectoire ou un instrument fixe ; l'utilisateur peut régénérer tout ou partie de la scène (voir flux 4). La synchronisation reste valide après un déplacement dans la timeline.

Page 57 of 95

5.2 Créer une variante (UC-02)

Acteur : le créateur. Déclencheur : un projet existant satisfaisant.

  1. L'utilisateur ouvre ou duplique le projet.
  2. Il change le thème (par exemple Christmas Rain) et la graine, et peut ajuster le placement des plantes, la composition des instruments, le carrousel, l'angle de caméra, l'éclairage, l'ambiance sonore et le type de gouttes.
  3. Il génère une nouvelle vidéo à partir de la même composition.
  4. Résultat : plusieurs versions issues d'un même MIDI, sans retoucher la mélodie.

5.3 Ajouter un texte (UC-03)

Acteur : le créateur. Déclencheur : besoin d'habiller la vidéo.

  1. Dans l'éditeur de textes et éléments graphiques, il ajoute un titre, une phrase relaxante et éventuellement le nom de sa chaîne.
  2. Il déplace et redimensionne les textes dans la prévisualisation.
  3. Résultat : les textes sont positionnés, visibles en prévisualisation et repris à l'export.
Page 58 of 95

5.4 Corriger un résultat (UC-04)

Acteur : le créateur. Déclencheur : un défaut constaté (par exemple une goutte masquée par une feuille).

  1. L'utilisateur identifie le défaut dans la prévisualisation.
  2. Il régénère uniquement la végétation, les instruments, la caméra ou toute la scène, sans modifier la mélodie ; la synchronisation est conservée.
  3. Il conserve la variante retenue ou revient à une version précédente.
  4. Résultat : une scène corrigée, la synchronisation musicale restant intacte.

5.5 Exporter (UC-05)

Acteur : le créateur. Déclencheur : prévisualisation validée.

  1. L'utilisateur choisit le format vertical, la résolution, les FPS, la qualité, le nom du fichier et le dossier de destination.
  2. Il lance l'export ; la progression est affichée et l'export peut être annulé.
  3. Résultat : une vidéo verticale intégrant l'audio et les textes, prête pour YouTube Shorts, TikTok et Instagram Reels.

Branche d'échec / reprise : des messages d'erreur sont affichés ; le rendu déterministe permet de reprendre un export, de revenir à un instant donné et de reproduire la vidéo.

Page 59 of 95

5.6 Produire plusieurs vidéos (UC-06, à terme)

Acteur : le créateur. Déclencheur : plusieurs MIDI à traiter.

  1. L'utilisateur importe plusieurs fichiers MIDI et choisit les thèmes autorisés, le nombre de variantes par MIDI, l'attribution automatique des graines, la génération de titres et les templates.
  2. Il lance une file de rendu avec export dans un dossier commun ; une interface de suivi affiche l'avancement.
  3. Les vidéos sont vérifiées avant publication.
  4. Résultat : plusieurs vidéos distinctes produites sans reconfigurer chaque scène ; les erreurs sont gérées et les rendus interrompus peuvent être repris.

5.7 Importer un audio (futur, P3)

Acteur : le créateur. Déclencheur : une piste audio sans MIDI exploitable.

  1. L'utilisateur choisit le mode transcription (audio converti en notes et événements) ou le mode synchronisation (piste audio fournie avec un MIDI correspondant).
  2. En mode transcription, les erreurs potentielles sont signalées et les notes détectées peuvent être corrigées manuellement.
  3. Résultat : une composition utilisable par le moteur de génération, comme après un import MIDI.

5.8 Flux cible à terme

Importer une mélodie → choisir un univers → générer une scène photoréaliste → ajuster le rendu → ajouter des textes → exporter une vidéo, sans manipulation d'un logiciel 3D.

Page 60 of 95

5.9 Public cible et cas d'utilisation / Cas d'utilisation principaux

UC-01 — Créer une vidéo depuis un MIDI

L'utilisateur importe un MIDI, sélectionne Zen Rain, puis lance une génération automatique.

UC-02 — Créer une variante

À partir d'un projet existant, l'utilisateur choisit Christmas Rain, change la graine et génère une nouvelle vidéo.

UC-03 — Ajouter un texte

L'utilisateur ajoute un titre, une phrase relaxante et éventuellement le nom de sa chaîne.

UC-04 — Corriger un résultat

L'utilisateur remarque qu'une goutte est masquée par une feuille. Il régénère le placement de la scène sans modifier la mélodie.

5.10 Résultat final attendu

Crystal Rain Studio doit évoluer vers un logiciel permettant de transformer une composition musicale en une vidéo originale par quelques interactions simples.

À terme, le flux cible est le suivant :

Importer une mélodie → choisir un univers → générer une scène photoréaliste → ajuster le rendu → ajouter des textes → exporter une vidéo.

6. Visuals Colors and Theme

[Design proposal; unspecified choices are defaults.]

Page 61 of 95

6.1 Palette and theme

Dark-mode studio palette, applied by role:

RoleToken
Background (ink ground)#101418
Surface (panels, code strips)#1A2127
Text#F2F4F1
Primary (scene controls)#2F6B4F
Accent (active impact, export)#E8552F
Muted (labels, secondary values)#8A969B

The deep ink ground holds the dark macro scene; moss green marks scene controls; a single ember accent marks the active drop impact and the export action.

Typography. Headings Space Grotesk, tight, medium weight, mixed case. Body IBM Plex Sans. Timecodes, seeds and impact counts in IBM Plex Mono with tabular numerals. Modular scale 1.25: 64/48/32/20/16/14, with 11px mono labels.

Shape and spacing. Sharp 2px corners on panels and code strips; hairline 1px borders; one 8-pt spacing grid. No soft blobs, no rounded pills.

Imagery. The 3D render is the only image — no stock photography. A wireframe overlay of the carousel appears on hover; small schematic diagrams explain the drop path.

Page 62 of 95

6.2 Scene art direction

The render must read as a real miniature installation filmed with a macro lens, not a basic game or an artificial 3D animation. The user rejected the earlier result as very ugly; beauty is a requirement, not a polish pass. Non-negotiable: plausible motion, realistic materials, cared-for vegetation, natural light and depth of field. A modest but credible animation beats a spectacular but fake one.

Materials in scope: water, glass, crystal, wood, brass, copper, brushed metal, stone, moss. Materials must work under physically coherent lighting.

Lighting: HDR environment, key, fill and rim lights, colour temperature, intensity, shadows, exposure, time of day and seasonal mood.

Vegetation (first theme): green leaves, small branches, mosses, undergrowth vegetation — several leaves, a main branch, secondary branches, high-definition textures, translucent light-diffusing materials, colour variation, drop attachment points and motion parameters. Leaves are never flat green planes or basic geometry. Future variants: fir and pine needles, bamboo, maple leaves, cherry blossom, tropical leaves, frosted and nocturnal vegetation, dry branches.

Drops: plausible silhouette, environment-coherent reflections, credible refraction, deformation during formation, size compatible with leaves and instruments. A drop visibly passing through a leaf or crystal is a blocking defect.

Carousel: must look like a real device — gears, axles, supports, coherent materials.

Page 63 of 95

Impact effects (by instrument): vibration, oscillation, slight deformation, rippling, splash, subtle light reflection, resonance — never masking the object or turning the scene into a game animation.

Post-processing: colour correction, subtle bloom, depth of field, discreet vignetting, anti-aliasing, contrast, light photographic grain, exposure tuning. Post-processing improves realism; it never hides geometry defects.

Scene zones: upper (vegetation, drop emission points), central (fall space, suspended instruments), lower (carousel, supports, vessels, decor), background (natural or seasonal environment), camera layer (framing, movement, focus, depth of field), graphic layer (text, logos, editorial elements).

Decorative packs (future): Zen Rain (green vegetation, bamboo, moss, water, glass, wood, morning light — P0); Christmas Rain (fir branches, snow, frost, warm lights, crystal chimes, brass mechanics — P2); Autumn Rain (maple leaves, orange tones, aged wood, copper bells — P2); Sakura Rain (cherry blossom, pastel tints, small drops, delicate chimes — P2); Tropical, Frozen, Halloween, Valentine, Night Garden and Golden Forest (P3). Each pack yields real internal variants — plant distribution, instrument positions, camera angle, secondary colours, rain intensity, lighting conditions, small decor — not a recoloured identical scene.

6.3 Système de végétation / Objectif artistique

La végétation doit donner l'impression d'être réelle et filmée en gros plan.

Les feuilles ne doivent pas être de simples plans verts ou des objets géométriques basiques.

Page 64 of 95

6.4 Système de végétation / Types de végétaux

Premier thème :

  • Feuilles vertes.

  • Petites branches.

  • Mousses.

  • Végétation de sous-bois.

Variantes futures :

  • Sapin et aiguilles de pin.

  • Bambou.

  • Feuilles d'érable.

  • Fleurs de cerisier.

  • Feuilles tropicales.

  • Végétation givrée.

  • Végétation nocturne.

  • Branches sèches.

6.5 Photoréalisme et direction artistique / Objectif

La vidéo doit évoquer une installation miniature réelle photographiée en macro.

Le résultat doit éviter l'apparence d'un jeu vidéo basique ou d'une animation 3D artificielle.

Page 65 of 95

6.6 Photoréalisme et direction artistique / Matériaux

Prendre en charge :

  • Eau.

  • Verre.

  • Cristal.

  • Bois.

  • Laiton.

  • Cuivre.

  • Métal brossé.

  • Pierre.

  • Mousse.

  • Feuillage.

  • Neige.

  • Givre.

Les matériaux doivent fonctionner avec un éclairage physiquement cohérent.

Page 66 of 95

6.7 Photoréalisme et direction artistique / Éclairage

Paramètres :

  • Environnement HDR.

  • Lumière principale.

  • Lumière de remplissage.

  • Lumière de contour.

  • Température colorimétrique.

  • Intensité.

  • Ombres.

  • Exposition.

  • Heure de la journée.

  • Ambiance saisonnière.

6.8 Photoréalisme et direction artistique / Caméra

Fonctionnalités :

Page 67 of 95

6.9 Photoréalisme et direction artistique / Post-traitement

  • Vignettage discret.

  • Anticrénelage.

  • Contraste.

  • Grain photographique léger.

  • Réglages d'exposition.

Le post-traitement doit améliorer le réalisme, non dissimuler des défauts de géométrie.

Page 68 of 95

6.10 Packs de décors / Décors prévus

Tropical Rain — P3

Grandes feuilles tropicales, humidité, pluie dense, atmosphère de forêt.

Frozen Rain — P3

Branches givrées, cristaux glacés, condensation et lumière froide.

Halloween Rain — P3

Branches sombres, objets anciens, citrouilles discrètes, ambiance nocturne et cloches métalliques.

Valentine Rain — P3

Fleurs, lumière douce, tons roses et composition plus romantique.

Night Garden — P3

Végétation nocturne, lucioles, reflets et lumière de lune.

Golden Forest — P3

Forêt lumineuse, matériaux dorés, mécanismes précieux.

6.11 Nouveaux univers musicaux / Crystal Rain

Gouttes d'eau, végétation et cristaux.

Page 69 of 95

6.12 Plan de développement par phases / Phase 3 — Rendu réaliste et mécanique

Développements :

  • Végétation haute qualité.

  • Gouttes avec morphologie avancée.

  • Matériaux d'eau et de verre.

  • Micro-éclaboussures.

  • Résonances visuelles.

  • Éclairage amélioré.

  • Caméra macro.

  • Optimisation des performances.

7. Signature Design Concept

[Design proposal; unspecified choices are defaults.]

Page 70 of 95

7.1 Signature concept: the scene and its score, side by side

Crystal Rain Studio is not a classic music visualiser. It is a studio for one creator who turns an imported MIDI file into a hypnotic, realistic macro video: vegetation hangs in the upper zone, drops swell at leaf tips, detach, fall onto instruments below, and each impact triggers a precise note. Some instruments sit fixed; others ride a slowly turning mechanical carousel. A virtual camera reproduces realistic macro photography, and all animation is synchronised automatically to the imported music — no manual animation of drops, leaves or instruments is ever required.

The muse: Adham Dannaway. The interface is a browser studio, calm and precise, not a toy. Its signature is a split screen: the 3D scene on one side, its technical parameters on the other, as two halves of one surface joined by a shared hairline seam.

Layout. Left half: the vertical 9:16 preview on ink. Right half: a dark parameter panel of ruled label-and-value rows. A timeline strip runs under both halves, with ruled ticks and one ember playhead. The studio follows the same three-part organisation: left panel for music import, decor and instrument choice; centre for the 3D preview in vertical or horizontal format; right panel for scene, camera, effects and text properties; bottom for timeline, playback, markers and export.

Signature moves.

  • Preview and parameter panel share one hairline seam.
  • Hovering the preview reveals a wireframe overlay of the carousel and the drop path.
  • Timecodes, seeds and impact counts use IBM Plex Mono tabular numerals.
  • One ember line marks the active drop impact.
Page 71 of 95

Avoid: centred marketing hero with a headline and blue button; glass cards, gradient blobs, hover-lift grids; stock photos of people or keyboards; rounded pill buttons and pastel surfaces.

Readability. Headlines, wordmarks, labels, numbers, card text and controls stay whole inside the viewport and their container at 375px, 768px and 1280px, wrapping or scaling (clamp(...)) to fit; nothing covers them. Imagery and decoration may crop, bleed, rotate or overlap freely — the gesture is carried by imagery, never by cropping readable text or controls.

Quality gate. The visual quality of the drops is validated independently before secondary features are built; a realistic drop and its collision with a chime is the first visual milestone. Phase 0 delivers an isolated technical prototype: a crystal or chime, a transparent drop model, growth-and-detachment animation, fall with impact, macro lighting, a first refraction and depth-of-field test, and a real-time versus Blender comparison. Validation: a drop forms, falls and reaches an instrument in a visually credible scene without major artefacts. Later phases add advanced photorealism (vegetation, deformable drops, micro-splashes, visual resonances, improved lighting, macro camera, performance optimisation), the brass carousel with rotation and collisions with moving elements, decor packs, then automatic realisation and professional export (musical camera, transitions, quality MP4, deterministic render).

Vision du produit

Le résultat recherché n'est pas un visualiseur musical classique, mais une scène qui donne l'impression qu'une véritable machine musicale a été filmée avec un objectif macro.

Page 72 of 95

7.2 Système de gouttes d'eau / Importance

Le système de gouttes constitue l'une des principales fonctionnalités différenciantes du projet.

Le niveau de qualité visuelle des gouttes doit faire l'objet d'une validation indépendante avant de développer des fonctionnalités secondaires.

8. Interaction Model & Motion Direction

[Design proposal; unspecified choices are defaults.]

Interaction Model: Animated Motion Tempo: restrained Hero Dimensionality: layered_2d

Page 73 of 95

8.1 Landing Hero Motion Brief

Focal subject. The macro scene in a 9:16 frame: wet leaves above a brass carousel, one drop mid-fall toward an instrument.

Thesis. Input: the creator's imported MIDI file and its parameters. Transformation: the engine schedules each note backwards — target position, trajectory, fall time, detachment at T minus fall time, growth earlier still — and the carousel's instrument position is computed at the instant of impact. Outcome: the drop lands exactly at T, the instrument resonates, and the ember line marks the active impact while the mono timecode advances.

Motion vocabulary. Reveal-by-hover across the split; the preview camera pans slowly; parameter changes fade in 160ms; no bounce. Leaves carry a slight wind movement, deform under a drop's weight, rebound after detachment and vibrate faintly from neighbouring impacts — always subtle. Drops pass through appearance, growth, gravity deformation, stretching, optional liquid neck, rupture, fall, impact, splash or absorption, then disappearance. Stylised but physically plausible is acceptable; full fluid simulation is not required.

Composed first frame. Full-viewport split on ink. Left: the macro scene, wet leaves above the brass carousel, one drop at a leaf tip. Right: ruled parameter rows and a live mono timecode. The timeline strip runs beneath both, one ember playhead at rest.

Reduced-motion state. A static arrangement: the split holds, the drop rests at its leaf tip, the ember line sits on the current impact, and the timeline strip wraps or scrolls horizontally so every tick is reachable. No camera pan, no hover reveal required to read any value.

Page 74 of 95

8.2 Motion rules across the product

  • Synchronisation: for each note at T, compute target, trajectory and fall time; schedule detachment and growth; trigger impact and resonance animations exactly at T. Object positions are never accumulated frame by frame; every visual event is recomputable from an absolute time.
  • Carousel: continuous or music-driven rotation, with speed, direction, position, element count and instrument type configurable; if no plausible impact is possible, the engine picks another trajectory or a fixed instrument.
  • Camera: position, orientation, virtual focal length, focus, depth of field, slow movement, travelling, light orbit, close-up, wide shot and automatic framing; the camera must preserve the visibility of impacts.
  • Automatic director: driven by note density, intensity, track entry and exit, chords and tempo changes, it performs slow camera moves, progressive zoom, wide-to-detail transitions, focus changes, instrument reveals, passage emphasis and return to the initial framing. Rules: no abrupt movement by default, limited reframing, impacts stay readable, no motion that causes discomfort.
  • Constraint handling: the generator detects and limits decor collisions, trajectories through branches, drops hidden behind instruments, out-of-frame instruments, excessive overlap, chords spawning too many drops in one place, perspective errors and text masking impacts; on placement failure it retries another configuration or falls back.
  • Text and graphics: fade, progressive appearance, gentle movement, zoom and note-synchronised animation, including appearance at the start of a new musical passage; text can be moved and resized in the preview.
  • Restraint: impact effects never obscure the object; motion stays coherent with the scene and never reads as a game.
Page 75 of 95

8.3 Système de végétation / Animation

Les feuilles peuvent subir :

  • Un léger mouvement de vent.

  • Une déformation sous le poids d'une goutte.

  • Un rebond après le détachement.

  • Une vibration indirecte due aux impacts voisins.

Les mouvements doivent être subtils et cohérents avec la scène.

8.4 Plan de développement par phases / Phase 3 — Rendu réaliste et mécanique

Développements :

  • Carrousel en laiton.

  • Rotation et collisions avec éléments mobiles.

Page 76 of 95

9. Non-Functional Requirements

Le produit devra satisfaire quatre exigences fondamentales :

  • Automatisation : aucune goutte, note ou collision ne doit nécessiter un placement manuel pour produire une vidéo.

Le produit devra satisfaire quatre exigences fondamentales :

  • Crédibilité visuelle : mouvements plausibles, matériaux réalistes, végétation soignée, lumière naturelle et profondeur de champ.

Le produit devra satisfaire quatre exigences fondamentales :

  • Synchronisation : chaque impact musical doit correspondre précisément à un événement visible, même en cas de rendu plus lent que le temps réel.

9.1 CRYSTAL RAIN STUDIO / Cahier des charges fonctionnel, artistique et technique

Niveau de priorité : Photoréalisme, synchronisation audio/visuelle, automatisation, export vidéo

Page 77 of 95

9.2 Présentation générale / Principes non négociables

Synchronisation musicale : la partition commande la scène, et non l'inverse.

Déterminisme : une même configuration, avec les mêmes assets et la même graine aléatoire, doit produire le même résultat.

Réalisme prioritaire : une animation modeste mais crédible est préférable à une animation spectaculaire mais artificielle.

Architecture modulaire : les décors, modèles, instruments, sons et mouvements doivent pouvoir évoluer indépendamment.

Production sans manipulation 3D manuelle : l'utilisateur ne doit pas avoir besoin d'utiliser Blender pour réaliser chaque nouvelle vidéo.

9.3 Système de gouttes d'eau / Réalisme

Les gouttes doivent présenter :

  • Une silhouette plausible.

  • Des reflets cohérents avec l'environnement.

  • Une réfraction crédible.

  • Des déformations pendant leur formation.

  • Une taille compatible avec les végétaux et les instruments.

Une goutte traversant visuellement une feuille ou un cristal doit être considérée comme un défaut bloquant.

Page 78 of 95

9.4 Instruments et interactions / Réalisme physique

Les proportions des objets et leurs mouvements doivent rester crédibles.

Les sons peuvent être artistiquement amplifiés pour la vidéo, mais leur timbre doit correspondre autant que possible au matériau et à la forme de l'instrument.

9.5 Instruments et interactions / Effets d'impact

Les effets ne doivent pas masquer l'objet ou transformer la scène en animation de jeu vidéo.

9.6 Architecture technique / Structure d'un projet

Les projets doivent être versionnés pour rester ouvrables après les mises à jour.

9.7 Architecture technique / Référentiel temporel unique

Tous les systèmes doivent utiliser la même horloge musicale.

La position des objets ne doit pas être calculée par accumulation d'un nombre arbitraire de frames.

Les effets secondaires nécessitant un état devront être déterministes ou basés sur des caches reproductibles.

9.8 Architecture technique / Rendu avancé

Page 79 of 95

9.9 Génération automatique des vidéos / Contraintes de qualité

  • Instruments trop serrés.

  • Feuilles traversées par les gouttes.

  • Caméra obstruée.

  • Texte illisible.

  • Trop grand nombre d'événements simultanés.

  • Éléments majeurs hors cadre.

9.10 Réalisateur automatique / Règles

  • Aucun mouvement brusque par défaut.

  • Limiter les changements de cadrage.

  • Préserver la lisibilité des impacts.

  • Éviter les mouvements provoquant une sensation de malaise.

9.11 Plan de développement par phases / Phase 2 — Studio MVP

Livrables :

  • Application locale utilisable.

  • Format de projet documenté.

  • Guide d'utilisation.

  • Première vidéo verticale complète.

Page 80 of 95

9.12 Plan de développement par phases / Phase 3 — Rendu réaliste et mécanique

Validation : les vidéos ne présentent plus les défauts typiques d'un prototype 3D et possèdent une direction artistique cohérente.

9.13 Plan de développement par phases / Phase 5 — Réalisation automatique et export avancé

Validation : les exports sont synchronisés et reproductibles, même sur une machine qui ne peut pas lire la scène à vitesse réelle.

9.14 Plan de développement par phases / Phase 7 — Extensions avancées

Validation : chaque extension s'intègre sans modifier le cœur musical et temporel du moteur.

9.15 Stratégie de tests / Tests fonctionnels

  • Enregistrement et réouverture d'un projet.

  • Export et annulation.

Page 81 of 95

9.16 Stratégie de tests / Tests visuels

  • Reflets de l'eau.

  • Transparences superposées.

  • Gouttes partiellement cachées.

  • Collisions.

  • Réfraction.

  • Animation des feuilles.

  • Ombres.

  • Vibrations.

  • Visibilité des textes.

  • Apparence des matériaux.

  • Cadrage sur différents formats.

9.17 Stratégie de tests / Tests de synchronisation

Comparer les timestamps des impacts visuels aux notes de référence.

Pour les tests automatiques, viser une précision à l'image près sur la timeline exportée.

Le résultat final doit également être vérifié avec l'audio encodé afin de détecter les retards introduits par le pipeline de rendu ou de compression.

Page 82 of 95

9.18 Stratégie de tests / Tests de performance

Mesurer :

  • Temps de chargement.

  • Mémoire RAM.

  • Mémoire GPU.

  • Nombre d'objets.

  • Temps de calcul par frame.

  • Fluidité de la prévisualisation.

  • Durée d'export.

  • Taille du fichier final.

Prévoir plusieurs profils de qualité pour les machines moins puissantes.

9.19 Stratégie de tests / Tests de reproductibilité

À configuration identique, vérifier que les objets, impacts, cadrages et animations sont identiques à chaque exécution.

9.20 Critères de recette

  • Rendu final utilisable pour une publication.

9.21 Livrables attendus du développeur

Le code devra être maintenable, typé, modulaire et préparé pour les évolutions futures.

Page 83 of 95

10. Tech Stack

10.1 Moteur de rendu et export / Gestion des exports

10.2 Architecture technique / Technologies proposées

Frontend : React, TypeScript et Vite.

Rendu 3D interactif : Three.js.

Chargement des assets : glTF/GLB.

Analyse MIDI : @tonejs/midi.

Audio : Web Audio API et éventuellement Tone.js.

Modélisation : Blender.

Styles UI : Tailwind CSS.

Gestion d'état : bibliothèque légère adaptée aux besoins.

Persistance locale : fichiers projet JSON, IndexedDB si nécessaire.

Export initial : MediaRecorder, sous réserve des formats pris en charge par le navigateur.

Export professionnel : moteur image par image avec FFmpeg, et option Blender/Cycles.

Page 84 of 95

10.3 Architecture technique / Architecture modulaire

Modules à prévoir :

  • Project Manager.

  • MIDI Parser.

  • Music Event Normalizer.

  • Audio Engine.

  • Timeline Engine.

  • Scene Generator.

  • Asset Manager.

  • Vegetation System.

  • Droplet System.

  • Instrument System.

  • Carousel System.

  • Camera Director.

  • Theme Manager.

  • Text Overlay Editor.

  • Preview Renderer.

  • Export Engine.

  • Batch Manager.

Page 85 of 95

Les modules doivent communiquer via des interfaces typées.

10.4 Architecture technique / Rendu avancé

Le rendu Three.js servira de référence interactive.

Un export via Blender/Cycles pourra être ajouté pour obtenir une meilleure fidélité sur les transparences, la réfraction et les ombres.

Cette étape nécessitera un système de génération de scène compatible et des tests pour garantir que les deux rendus respectent les mêmes positions, timings et animations.

11. Assumptions and Constraints

Le cahier des charges ci-dessous comprend l'ensemble des fonctionnalités envisagées, y compris celles qui seront développées après le MVP. Les phases sont conçues pour qu'un développeur puisse travailler progressivement sans devoir réécrire le moteur à chaque évolution.

Roadmap cible

  1. Phase 0 — Prototype de faisabilité

11.1 CRYSTAL RAIN STUDIO / Cahier des charges fonctionnel, artistique et technique

Utilisation initiale : Outil privé de production de vidéos courtes

Évolution possible : Plateforme SaaS et moteur de création de plusieurs univers musicaux

Page 86 of 95

11.2 Présentation générale / Objectifs secondaires

  • Produire une bibliothèque de vidéos courtes destinées aux réseaux sociaux.

  • Réutiliser un même fichier musical pour générer différentes variantes visuelles.

  • Automatiser progressivement la production de plusieurs vidéos.

  • Proposer des décors saisonniers.

  • Créer des animations longues à vocation relaxante.

  • Mutualiser le moteur pour d'autres concepts de machines musicales.

  • Conserver la possibilité d'une commercialisation future du générateur.

11.3 Public cible et cas d'utilisation / Utilisateur initial

Aucun système de comptes ou de paiement n'est nécessaire au lancement.

11.4 Système de gouttes d'eau / Cycle d'animation

Une animation stylisée mais physiquement plausible est acceptable : une simulation de fluides complète n'est pas exigée pour toutes les gouttes.

11.5 Réalisateur automatique / Objectif

Ce système est distinct du moteur de notes et pourra être développé après stabilisation du rendu de base.

Page 87 of 95

11.6 Génération par lots et automatisation / Automatisation future

La publication directe sur les plateformes est hors MVP.

11.7 Nouveaux univers musicaux

Le moteur pourra ultérieurement accueillir plusieurs systèmes de visualisation.

11.8 Nouveaux univers musicaux / Infinite Loops

Ces concepts devront partager le même système d'import MIDI, la timeline, l'audio, l'éditeur et les outils d'export.

11.9 Plan de développement par phases / Phase 0 — Validation technique et artistique

Objectif : démontrer que le niveau de réalisme envisagé est atteignable dans le navigateur.

11.10 Plan de développement par phases / Phase 3 — Rendu réaliste et mécanique

Objectif : passer d'une démonstration technique à une identité visuelle publiable.

11.11 Plan de développement par phases / Phase 6 — Production en série

Objectif : réduire fortement l'intervention humaine.

11.12 Plan de développement par phases / Phase 7 — Extensions avancées

Page 88 of 95

11.13 Critères de recette

Le passage en production par lots exigera une stabilité supplémentaire et la capacité à signaler automatiquement les générations défectueuses.

11.14 Risques et contraintes / Photoréalisme navigateur

Le rendu temps réel de l'eau, du verre et de la végétation peut être coûteux et présenter des artefacts.

11.15 Risques et contraintes / Polyphonie musicale

Certains morceaux possèdent davantage de notes simultanées qu'une scène ne peut en montrer clairement.

11.16 Risques et contraintes / Carrousel mobile

La rotation des instruments augmente la complexité géométrique.

Réponse : commencer avec une plateforme simple, puis introduire des rotations et contraintes plus complexes.

11.17 Risques et contraintes / Export navigateur

Le rendu temps réel peut ralentir et certains codecs ne sont pas disponibles partout.

11.18 Risques et contraintes / Charge de modélisation 3D

Chaque thème nécessite des assets réellement adaptés.

Page 89 of 95

11.19 Risques et contraintes / Droits musicaux

Les musiques utilisées doivent disposer de droits compatibles avec leur utilisation et leur monétisation.

11.20 Risques et contraintes / Contenus répétitifs

Une génération automatisée peut aboutir à des vidéos trop similaires.

Réponse : privilégier de véritables variations musicales et visuelles, et contrôler les exports avant publication.

11.21 Stratégie de versionnement / V0.1 — Preuve de concept

Une feuille, une goutte, un carillon, une note.

11.22 Stratégie de versionnement / V0.2 — Séquence musicale

Plusieurs notes, plusieurs gouttes, timeline synchronisée.

11.23 Stratégie de versionnement / V0.3 — Premier studio

Import, prévisualisation, sauvegarde et export simple.

11.24 Stratégie de versionnement / V0.5 — Zen Rain

Scène photoréaliste soignée, végétation et instruments.

11.25 Stratégie de versionnement / V0.6 — Mechanical Rain

Ajout du carrousel et des instruments mobiles.

Page 90 of 95

11.26 Stratégie de versionnement / V0.7 — Seasonal Rain

Packs de Noël, Sakura et automne.

11.27 Stratégie de versionnement / V0.8 — Director Edition

Caméra musicale, textes avancés et qualité d'export améliorée.

11.28 Stratégie de versionnement / V0.9 — Batch Edition

Génération de plusieurs vidéos et variantes.

11.29 Stratégie de versionnement / V1.0 — Production Studio

Outil robuste, stable, documenté et adapté à une production régulière.

Page 91 of 95

11.30 Livrables attendus du développeur

Le projet doit être transmis avec :

  • Code source complet.

  • Instructions d'installation.

  • Scripts de démarrage.

  • Documentation de l'architecture.

  • Documentation du format projet.

  • Documentation du système de thèmes.

  • Dossier d'assets et liste de licences.

  • Jeu de fichiers MIDI de test.

  • Tests automatisés.

  • Documentation du moteur de synchronisation.

  • Documentation de l'export.

  • Exemples de scènes.

  • Guide d'utilisation.

  • Liste des limitations connues.

Page 92 of 95

11.31 Résultat final attendu

Le projet doit pouvoir ensuite évoluer vers une production semi-automatisée de plusieurs vidéos et vers d'autres familles d'installations musicales.

La priorité initiale reste de valider la qualité esthétique et la synchronisation d'une scène unique. La richesse des décors et le volume de production ne devront pas se développer au détriment de cette exigence.

Page 93 of 95

12. Glossary

Crystal Rain — Nom du projet (crystal-rain) : scène 3D réaliste destinée à une vidéo, où des feuilles et des gouttes d'eau tombent sur une structure musicale posée sur un carrousel en rotation. Univers visuel associé : gouttes d'eau, végétation et cristaux.

Carrousel — Plateforme tournante portant la structure musicale frappée par les gouttes ; son mouvement fait partie de la scène filmée.

Instrument fixe — Objet situé sous les gouttes et destiné à être frappé par elles. Chaque instrument fixe possède un modèle 3D, une zone de collision, une plage musicale compatible, un ou plusieurs sons associés et une animation d'impact. Types pris en charge : carillons, plaques de verre, tubes résonants, bols, cloches, coupelles et percussions légères.

Zone de collision — Volume d'un instrument fixe qui détecte l'impact d'une goutte et déclenche le son et l'animation correspondants.

Plage musicale compatible — Ensemble de notes qu'un instrument fixe donné peut restituer lorsqu'il est frappé.

Animation d'impact — Réaction visuelle d'un instrument fixe au moment où une goutte le frappe.

Bibliothèque d'instruments audio — Ensemble initial de sons disponibles : cloche en verre, carillon de cristal, lame de verre, kalimba douce, marimba, percussion d'eau, petites cloches métalliques, lames métalliques, tubes sonores, bols résonants, cordes et percussions mécaniques.

Page 94 of 95

Univers musicaux — Thèmes musicaux et visuels distincts du produit. Outre Crystal Rain (gouttes d'eau, végétation, cristaux), la liste comprend : Pendulum Symphony (pendules synchronisés déclenchant des notes), Domino Beats (dominos produisant des sons lors de leur chute), Mechanical Harmony (engrenages, roues et mécanismes musicaux), String Physics (billes ou dispositifs frappant des cordes), Sand Orchestra (écoulement de sable et résonateurs), Liquid Beats (liquides, gouttes colorées, coupelles et percussions) et Particle Piano (particules lumineuses associées aux événements musicaux).

Crédits gratuits — Allocation initiale de 0,025 correspondant à 3 récompenses de design, réclamée par l'utilisateur.

Récompense de design — Unité de déblocage associée aux crédits gratuits ; trois récompenses de design sont couvertes par l'allocation initiale.

Page 95 of 95
Live
Écran d'accueil design preview
new project started
MIDI imported successfully
environment selected
parameters configured
generation completed
scene generated
preview playing
preview validated
text added
visual defect spotted
regeneration done
variant kept, re-preview
text placement accepted
export settings set
export error or cancellation
export resumed
export completed
existing project to open
project opened
duplicate created
theme and seed changed
variant satisfactory
multiple MIDI files ready
files imported
batch options set
queue finished
Écran d'accueil: Start new project
Studio: Import MIDI file
Studio: Choose visual environment
Studio: Set seed and camera
Studio: Launch automatic generation
Studio: Review generation warnings
Studio: 1. Preview with music
Studio: 2. Scrub and loop timeline
Studio: 3. Add title and channel text
Studio: 4. Reposition text in preview
Studio: 5. Regenerate targeted scene parts
Studio: 6. Keep variant or revert
Studio: Configure export settings
Studio: 1. Start export and monitor progress
Studio: 2. Cancel or resolve export error
Export History: Review completed exports
Écran d'accueil: Open existing project
Projects: Duplicate project for variant
Studio: Change theme and seed
Studio: Generate and preview variant
Projects: Save project
Écran d'accueil: Import multiple MIDI files
Studio: Set batch themes and variants
Studio: Launch production queue
Export History: Verify batch exports
Live
Écran d'accueil design preview
new project started
MIDI imported successfully
environment selected
parameters configured
generation completed
scene generated
preview playing
preview validated
text added
visual defect spotted
regeneration done
variant kept, re-preview
text placement accepted
export settings set
export error or cancellation
export resumed
export completed
existing project to open
project opened
duplicate created
theme and seed changed
variant satisfactory
multiple MIDI files ready
files imported
batch options set
queue finished
Écran d'accueil: Start new project
Studio: Import MIDI file
Studio: Choose visual environment
Studio: Set seed and camera
Studio: Launch automatic generation
Studio: Review generation warnings
Studio: 1. Preview with music
Studio: 2. Scrub and loop timeline
Studio: 3. Add title and channel text
Studio: 4. Reposition text in preview
Studio: 5. Regenerate targeted scene parts
Studio: 6. Keep variant or revert
Studio: Configure export settings
Studio: 1. Start export and monitor progress
Studio: 2. Cancel or resolve export error
Export History: Review completed exports
Écran d'accueil: Open existing project
Projects: Duplicate project for variant
Studio: Change theme and seed
Studio: Generate and preview variant
Projects: Save project
Écran d'accueil: Import multiple MIDI files
Studio: Set batch themes and variants
Studio: Launch production queue
Export History: Verify batch exports