Que fait simreel ?
Enregistrez l'application réelle de l'utilisateur dans le simulateur iOS et découpez-la en deux fichiers :
reel-1080x1920.mp4: l'enregistrement à l'intérieur d'un téléphone sur un fond dégradé, une légende par scène, une carte de fin. Pour X, Reels, TikTok, Product Hunt.appstore-preview-886x1920.mp4: l'enregistrement brut, dimensionné et encodé pour App Store Connect.
Tout s'exécute localement avec Xcode et ffmpeg. Pas de comptes, pas d'API payantes.
Règles
- Montrez uniquement ce que l'application fait réellement. Les légendes décrivent ce qui est à l'écran ; n'ajoutez jamais d'affirmations, de chiffres ou d'avis que la séquence ne montre pas.
- Gardez les données privées hors du cadre. Utilisez un simulateur neuf ou des données de démonstration, et examinez les images avant de livrer.
- Ne touchez qu'au simulateur que vous avez reçu l'ordre d'utiliser. D'autres simulateurs démarrés peuvent appartenir au travail de quelqu'un d'autre ; ne passez jamais
bootedquand plus d'un simulateur est en cours d'exécution. - Refusez les invites de suivi et de cookies pendant l'enregistrement, sauf si l'utilisateur dit le contraire.
Étapes
- Trouver le simulateur.
xcrun simctl list devices booted. Si l'application n'est pas installée, compilez-la et installez-la avec les outils de l'utilisateur. - Parcourez l'application une fois sans enregistrer. Choisissez 3 à 5 moments qui montrent les principales fonctionnalités. Effacez les dialogues d'onboarding, d'autorisation et de cookies maintenant afin qu'ils restent hors de la prise.
- Enregistrez une seule prise.
Faites une pause d'environ une seconde sur chaque écran que vous souhaitez conserver. Si les tapotements échouent juste après le démarrage du simulateur, attendez 20 secondes et réessayez.scripts/record.sh start work/raw.mp4 <UDID> # pilotez l'application : votre outil de simulateur, un XCUITest dans le projet, ou demandez à l'utilisateur de tapoter scripts/record.sh stop <UDID> - Lisez la prise. Le fichier se termine au dernier changement d'écran, donc un écran final fixe est coupé et une prise d'un écran qui ne change jamais est presque vide. Chronométrez les scènes à partir du fichier, pas de mémoire.
Ouvrezpython3 scripts/compose.py frames work/raw.mp4 workwork/contact-sheet.png: 8 vignettes par ligne, la vignette N correspond à la seconde N. - Écrivez
storyboard.json.{ "app_name": "MyApp", "background": ["#0B1020", "#3B2AA8"], "scenes": [ {"start": 0.3, "end": 5.8, "caption": "Ce que fait cet écran"}, {"start": 8.0, "end": 10.0, "speed": 0.8, "caption": "Étape suivante"} ], "end_card": {"title": "MyApp", "subtitle": "Le slogan de l'application"} }start/endsont les secondes dans l'enregistrement.speeden dessous de 1 ralentit une scène, au-dessus de 1 l'accélère.holdfige la dernière image de la scène pendant ce nombre de secondes, ce qui permet de s'attarder sur un écran de résultat.backgroundprend une couleur ou un dégradé du haut vers le bas ;text_coloretcaption_sizesont facultatifs. Laissezend_cardde côté pour terminer sur la dernière scène. Coupez les indicateurs de chargement. Les scènes doivent totaliser 15 à 30 secondes, sinon App Store Connect rejette la preview. - Rendu.
Cela imprimepython3 scripts/compose.py render work/raw.mp4 storyboard.json outout/report.jsonet prévient lorsque la durée de la preview est hors limites. - Vérifiez avant de remettre. Extrayez une image de chaque scène (
ffmpeg -ss <t> -i out/reel-1080x1920.mp4 -frames:v 1 f.png) et examinez-la : la légende correspond à l'écran, rien de privé, rien de coupé.
Remarques
- Prérequis : macOS, Xcode (pour
simctletswift), ffmpeg, python3. record.shrègle la barre d'état à 9:41 avec batterie et signal pleins. Effacez-la ensuite avecxcrun simctl status_bar <UDID> clear.- Les chiffres de preview App Store utilisés ici (886x1920, 15-30 s, 30 fps, H.264 High 4.0, AAC stéréo) proviennent des spécifications des previews d'applications d'Apple. Consultez cette page si un téléchargement est rejeté.
- La piste audio est silencieuse. Ajoutez de la musique ou une voix off dans un éditeur si vous souhaitez du son.