Vidéos promotionnelles Roblox
Vous produisez vous-même la totalité de la vidéo : script, séquences, montage, audio, vignette. Le travail de l'utilisateur consiste à approuver le plan, à ne pas toucher au PC pendant l'enregistrement et, s'il le souhaite, à enregistrer une voix off. Le résultat est une vidéo en 1080x1920 @60fps H.264, -14 LUFS, accompagnée de vignettes.
Tout ce qui se trouve ici a été appris sur le terrain avec un vrai jeu (Archer Heroes). Les scripts dans scripts/ sont le pipeline fonctionnel ; copiez-les dans le projet de l'utilisateur et modifiez les blocs de données clairement marqués plutôt que de tout réécrire.
Flux de travail
- Analyser les références (si l'utilisateur partage des liens) →
references/research.md. Téléchargez avec yt-dlp, réalisez des planches d'images, transcrivez et extrayez les compteurs de vues. Les chiffres de vues comptent plus que les impressions : en test, un format histoire a fait 28M de vues alors qu'une re-publication d'un moment de stream déjà utilisé n'a fait que 34K vues. Dites à l'utilisateur ce qui fonctionne vraiment. - Choisir le format et écrire le script avec des faits réels. Lisez les chiffres du jeu (nombre de lignes, nombre d'ennemis, taux de drop) via Studio MCP ; n'inventez jamais de statistiques. Signalez toute affirmation que l'utilisateur doit confirmer (ex. « Je n'ai pas écrit une seule ligne »).
- Enregistrer les séquences depuis Studio →
references/studio-recording.md. Vols de caméra en mode édition (caméra animée en Luau + capture d'écran avec ffmpeg) et vrais playtests (remotes admin, waves accélérées, mode dieu). Demandez à l'utilisateur de mettre Studio au premier plan et de ne pas toucher aux entrées ; prévenez-le quand il peut réutiliser son PC. - Monter avec l'un des deux templates :
- Explainer motion-design →
references/explainer.md(scripts/render_explainer.py) - Réaction façon streamer →
references/reaction.md(scripts/render_reaction.py)
- Explainer motion-design →
- Audio →
references/audio.md. Uniquement des échantillons réels (Pixabay / bibliothèque de l'utilisateur), la musique apparaît sur le reveal, elle baisse sous la voix, loudnorm -14 LUFS. - Vignettes :
scripts/thumbnail_explainer.py(verticale + 16:9),scripts/thumbnail_reaction.py. - Vérifier, puis livrer : examinez les images fixes et une planche contact, transcrivez le final pour vérifier la synchronisation des sous-titres, contrôlez le niveau sonore, puis envoyez le MP4 + vignettes avec
SendUserFile.
Boîte à outils (scripts/driver.py)
python <skill>/scripts/driver.py check # ffmpeg, yt-dlp, whisper, demucs, polices
python <skill>/scripts/driver.py stills <proj> render.py 0.5,6,12 # aperçus d'images -> .promo_out/stills.jpg
python <skill>/scripts/driver.py sheet video.mp4 2 # planche contact -> à visualiser
python <skill>/scripts/driver.py cuts recording.mp4 # temps de coupes franches (PTS réels)
python <skill>/scripts/driver.py words final.mp4 # horodatages Whisper (vérification synchro)
python <skill>/scripts/driver.py mux video.mp4 mix.wav out.mp4 # encodage de livraison -14 LUFS
python <skill>/scripts/driver.py viewport # trouver la zone du viewport Studio à l'écran
python <skill>/scripts/driver.py grab take.mp4 40 168 1146 # enregistrer cette zone à 60 ips
python <skill>/scripts/music_drops.py track.mp3 # bpm, courbe de volume, moments de drop
Ouvrez toujours les images produites. Un rendu qui a « réussi » peut encore être plein d'écrans de mort, de caméra sous le sol ou d'un tag de nom que vous ne devez pas publier.
Règles qui protègent l'utilisateur
- Pas de clones vocaux IA de vraies personnes. Ne faites pas dire à un streamer des répliques qu'il n'a jamais dites, avec ElevenLabs ou autre. Utilisez ses vrais extraits (trouvez le VOD original, pas le montage d'un autre créateur) et isolez la voix avec Demucs. Suggérez de labelliser les montages comme étant des montages.
- Pas d'effets sonores synthétisés. L'utilisateur a trouvé douloureux les whoosh/ticks générés par numpy-synth (« comme des ongles sur un tableau »). Utilisez des échantillons réels, chauds/graves (centroïde spectral < ~2 kHz) pour les impacts.
- Les téléchargements nécessitent un accord. Avant de télécharger des effets sonores ou de la musique, listez les fichiers, la source et la taille approximative, et attendez l'approbation. yt-dlp pour les vidéos de référence/source est acceptable quand l'utilisateur l'a demandé.
- Ne publiez pas les informations d'autrui. Les collaborateurs Team Create apparaissent comme des tags de nom dans les captures en mode édition ; coupez autour ou floutez-les.
- Les playtests écrivent dans la vraie sauvegarde. Les équipements/dons admin persistent. Mentionnez-le et proposez de restaurer l'équipement. Restaurez toute modification du lieu (ShowDevelopmentGui, dossiers d'étape temporaires).
- N'enregistrez pas le bureau de l'utilisateur pendant qu'il l'utilise. Capturez l'écran seulement après qu'il ait dit que Studio est au premier plan ; sinon, utilisez des images fixes
screen_capture.
Livraison
Envoyez le MP4 de téléchargement et les vignettes avec SendUserFile (display: render). Dans le message : ce qu'il contient mesure par mesure, ce qui est réel vs placeholder (ex. voix TTS), le niveau sonore et les réserves honnêtes (affirmations à vérifier, risque Content ID de la musique Pixabay, modifications de profil). Proposez une reconstruction en une commande lorsque l'utilisateur enregistrera sa propre voix (references/explainer.md → « Remplacement par la voix de l'utilisateur »).