Introduction
ICON AI Reels Generator is an automated face-swap video tool. It takes an Instagram Reel (or an uploaded video), extracts a frame, swaps the face with the chosen model via Nano Banana Pro, then generates a new video with Kling V3 Motion Control.
7-step pipeline
- 1.Download the Instagram Reel
- 2.Extract a frame (configurable)
- 3.Upload frame to Evolink
- 4.Upload de la photo du modèle
- 5.Nano Banana Pro — swap du visage
- 6.Kling Motion Control — génération vidéo
- 7.Save final video locally
Full Workflow
1. Choose a source Reel
Paste an Instagram Reel URL in the URL field, or switch to Upload mode to send a local video (.mp4, .mov).
2. Select a model
Choose the face to insert into the video. Models are managed in the Models section of the sidebar.
3. Choisir une catégorie
Teams allow filtering jobs. Manage them in Settings → Team Members.
4. Prompt Nano Banana (optional)
Quand renseigné, ce prompt remplace entièrement le prompt par défaut envoyé à Nano Banana Pro. Laisse vide pour utiliser le prompt système. Utile pour débloquer les erreurs de modération : un prompt neutre comme Generate a new image where the person matches the second image. Keep background, pose and lighting identical. Photorealistic. contourne souvent les faux positifs.
5. Launch the job
Click Launch. The job appears in the list with real-time progress. Average duration: 3–5 minutes.
6. Get the video
Once done, the video displays directly on the job card. Click to play or download.
Models
Models are face photos used for the swap. Each model is a JPG/PNG image of a person.
Add a model
Via la section Models dans le Générateur. Upload une photo nette, de face, bien éclairée. Évite les photos avec lunettes de soleil ou masque.
Best practices
- Photo portrait, visage bien visible
- Bonne luminosité, pas de flou
- Un seul visage dans la photo
- Format carré ou portrait de préférence
Settings
Nano Banana Pro — Format
Format de l'image swappée envoyée à Kling. 9:16 recommended for Reels. Ce paramètre influence la composition du swap avant la génération vidéo.
Kling Motion Control — Quality
720p coûte ~8.16 cr/s · 1080p coûte ~10.88 cr/s. Utilise 720p pour tester, 1080p pour les livrables finaux.
Kling Motion Control — Format
Format of the final generated video. 9:16 for Reels/TikTok, 16:9 for YouTube, 1:1 for square posts.
Extracted frame (number)
Frame number to extract from the source video. Frame 1 is often black. Recommended: between 10 and 30. If Nano Banana blocks (logo detected), try a different frame.
Instagram Cookies
Nécessaires pour télécharger les Reels privés ou contourner les limitations d'Instagram. Exporte-les avec l'extension Get cookies.txt LOCALLY sur Chrome, puis uploade le fichier ici.
Clipping
Clipping lets you d'exporter un extrait d'une vidéo finale déjà générée, ou de lancer un nouveau Motion Control sur un segment précis.
Cut an existing video
Dans la liste des jobs, each completed video shows un bouton Cut. Tu peux définir un point de début et de fin via le trimmer, puis exporter le clip.
Motion Control on segment
In the Clipping tab, load a video, trim it, then launch Motion Control only on that segment — without reprocessing the whole video.
Trim — Vidéos finales
From the Creations tab, trim the beginning or end of any generated video — without re-encoding, without quality loss.
How to use
- 1.Go to Creations
- 2.On a completed video, click ✂ Trim
- 3.Drag the left (start) and right (end) handles on the bar
- 4.Clique Confirmer le trim — le fichier est modifié directement sur le serveur
Notes
- — Opération irréversible : the original video is replaced
- — No quality loss (pas de re-encodage, -c copy)
- — Le téléchargement après trim donne directement la version coupée
Edit a Video
From the Creations tab, each completed video has an ✏ Edit button that opens the edit modal.
Ajouter du texte
Type your text in the field. Line breaks supported (Enter key). Text displays in real-time preview on the video. Drag to reposition.
Text settings
- Police — Arial Bold ou SF Pro
- Taille — size in video pixels (défaut : 25)
- Line spacing — spacing between lines (valeurs négatives = lignes plus serrées)
- Black outline — active un contour pour améliorer la lisibilité sur les fonds clairs
Trim (rognage)
Drag the trim bar handles to set start and end. Trim and text are applied together with one click on Confirm.
Résultat
Un fichier export séparé est créé (suffixe _export_…). La vidéo originale sur la carte est conservée intacte. La nouvelle version s'affiche dans un popup avec un bouton de téléchargement.
Notes
- — L'aperçu reflète fidèlement la taille et l'interligne du rendu final
- — Text is burned into the video (libx264 re-encoding)
- — L'original reste inchangé sur la carte Creations
Crédits
Credits are consumed par chaque job. Balance visible top right à tout moment.
Cost per job
Exemple : un Reel de 10s en 720p coûte environ 3.10 + 81.6 = ~84.7 cr.
1 crédit ≈ $0.0138 (72.26 cr/$). Le coût réel est affiché sur chaque job une fois terminé.
Errors & Solutions
Generation failed. The prompt or image may involve watermark removal or protected content
Cause: Nano Banana Pro a détecté un logo, texte ou marque (parfois invisible — watermark numérique Instagram/TikTok intégré dans les pixels).
Solutions:
1. Renseigne un prompt neutre dans le champ Prompt Nano Banana : Generate a new image where the person matches the second image. Keep background, pose and lighting identical. Photorealistic.
2. Change le numéro de frame dans Settings
3. Retry with ↺
Resource temporarily exhausted / route unavailable
Cause: Les serveurs Evolink sont temporairement saturés. Ce n'est pas un bug de l'outil.
Solution: Le système retente automatiquement 5 fois. If the job still fails, click ↺ — le job reprend là où il s'est arrêté sans re-facturer les étapes déjà faites.
yt-dlp download failed / login required / rate-limit reached
Cause: Instagram bloque le téléchargement — cookies expirés ou absents.
Solution: Go to Settings → Instagram Cookies, exporte tes cookies depuis Chrome avec l'extension Get cookies.txt LOCALLY et uploade le nouveau fichier.
Task failed: Generation failed (raison inconnue)
Cause: Generic failure on Evolink's side. Can come from the image, video, or a temporary API instability.
Solution: Retry with ↺. If it fails again on the same step, try with a different Reel or model.
Frame extraction failed / output file not found
Cause: The source video is too short or the configured frame number exceeds the video duration.
Solution: Reduce the frame number in Settings (try 5 or 10).
Nano Banana Pro returned no results
Cause: Le swap n'a produit aucune image (timeout ou erreur silencieuse Evolink).
Solution: Retry with ↺. Vérifie que la photo du modèle est nette et que la frame contient bien un visage visible.
Kling Motion Control returned no results
Cause: Kling n'a pas généré de vidéo (timeout ou erreur API).
Solution: Retry with ↺. Le swap est déjà fait — seule la génération vidéo sera re-tentée.
Task timed out after 600s
Cause: Le job a dépassé 10 minutes (serveurs Evolink très chargés).
Solution: Retry with ↺ — il reprend à l'étape bloquée.