FlowKit

Générer un podcast automatique avec l’IA dans n8n : script, voix et flux RSS

Publié le 12 août 2026 · 7 min de lecture

Un digest hebdomadaire que personne ne lit dans sa boîte mail devient un rendez-vous audio de dix minutes écouté en marchant vers la gare : le même contenu, une friction de lecture en moins. Une étude qualitative sur les usages du podcast, Perks et Turner (2019), Podcasts and Productivity: A Qualitative Uses and Gratifications Study, publiée dans Mass Communication and Society (voir sur Google Scholar), montre que l’attrait du podcast tient largement à sa capacité de s’insérer dans des tâches déjà en cours — trajet, ménage, sport — là où la lecture exige une attention exclusive. C’est exactement ce qui rend le format intéressant pour repackager un contenu déjà produit (article de blog, veille RSS, digest interne) sans repartir de zéro. Ce guide construit dans n8n un pipeline complet : script par IA, voix de synthèse, hébergement, et surtout le flux RSS au format podcast que la plupart des tutoriels laissent de côté — sans lequel Apple Podcasts et Spotify ne référencent rien.

L’architecture en six étages

  1. Source — le contenu écrit de départ (flux RSS, digest, note interne).
  2. Script — un LLM réécrit ce contenu en texte pensé pour l’oral.
  3. Voix — la synthèse vocale convertit le script en fichier audio.
  4. Hébergement — l’audio est déposé sur un stockage accessible publiquement par URL stable.
  5. Flux RSS podcast — un fichier XML au format iTunes/Podcasting 2.0 référence chaque épisode.
  6. Distribution — Apple Podcasts et Spotify lisent ce flux et republient automatiquement.

Étage 1 — Choisir la source de contenu

N’importe quelle source déjà structurée fonctionne : un flux RSS de blog lu via un node RSS Feed Read (comme pour une veille RSS automatisée), le digest déjà produit par le workflow digest quotidien Slack du Pack Inbox IA, ou directement le contenu généré pour une newsletter RSS — dans ce dernier cas, le podcast devient un format de diffusion supplémentaire sur le même pipeline de collecte, sans nouvelle logique de sourcing à écrire.

Étage 2 — Rédiger un script pensé pour l’oral

Un texte écrit pour être lu ne fonctionne pas tel quel à l’oral : listes à puces, liens cliquables et phrases longues à subordonnées imbriquées passent mal en synthèse vocale. Un node Basic LLM Chain (voir la différence avec l’AI Agent node si vous hésitez) reçoit le contenu source avec une consigne explicite : phrases courtes, transitions orales (« ensuite », « pour finir »), aucune formule qui suppose un support visuel. Un Structured Output Parser force un JSON strict — titre_episode, script, resume_court — pour que les étages suivants n’aient jamais à parser du texte libre. Pour un format à deux voix qui dialoguent, le prompt structure directement le script en répliques balisées (HOTE_A: ..., HOTE_B: ...), traitées séparément à l’étage suivant.

Étage 3 — Synthèse vocale avec ElevenLabs

Le node officiel ElevenLabs ou un simple HTTP Request convertit le script en audio, avec une voix choisie à l’avance et cohérente d’un épisode à l’autre. Pour un monologue, un seul appel suffit. Pour un dialogue à deux voix, il faut boucler sur les répliques avec un voice_id différent par intervenant, ce qui produit plusieurs segments audio à assembler ensuite — n8n n’a pas de node natif de fusion audio, un service externe (function serverless avec ffmpeg, par exemple) prend le relais via un appel HTTP Request. C’est le point technique le plus délicat du pipeline : partez d’un monologue pour valider le reste de la chaîne avant d’ajouter cette complexité.

Étage 4 — Héberger l’audio sur un stockage public

Le node S3 de n8n (Community Edition, sans lien avec le mode de stockage binaire interne réservé à l’Enterprise) dépose le fichier audio généré. Deux points spécifiques au podcast, absents d’un archivage classique :

  • Le bucket ou les objets doivent être en lecture publique — Apple Podcasts et Spotify récupèrent l’audio par simple requête HTTP, sans authentification possible.
  • Chaque épisode doit avoir un nom de fichier unique, horodaté (episode-2026-08-12.mp3), jamais un nom fixe réécrit à chaque exécution : Apple Podcasts ignore silencieusement les URL d’enclosure dupliquées d’un épisode à l’autre.

Pour un fichier de plusieurs dizaines de Mo, passez le stockage binaire interne en mode filesystem le temps de l’upload — voir notre guide des fichiers volumineux — afin qu’il ne reste pas entièrement en mémoire vive.

Étage 5 — Générer le flux RSS podcast

C’est l’étage que la plupart des automatisations « podcast IA » esquivent : sans flux RSS conforme, aucune plateforme ne référence rien. Un flux podcast est un RSS 2.0 classique enrichi de l’espace de noms iTunes, avec une balise <enclosure> obligatoire par épisode :

<item>
  <title>Digest du 12 août 2026</title>
  <guid isPermaLink="false">episode-2026-08-12</guid>
  <pubDate>Wed, 12 Aug 2026 06:00:00 GMT</pubDate>
  <enclosure url="https://cdn.votre-domaine.fr/podcast/episode-2026-08-12.mp3"
             length="4821932" type="audio/mpeg"/>
  <itunes:duration>00:05:12</itunes:duration>
  <podcast:transcript url="https://cdn.votre-domaine.fr/podcast/episode-2026-08-12.txt" type="text/plain"/>
</item>

Un node Code construit ce bloc à chaque exécution : url, type et surtout length (la taille en octets du fichier, disponible dans les métadonnées binaires n8n avant l’upload). Le workflow télécharge ensuite le feed.xml existant sur S3 via HTTP Request, insère le nouvel <item> en tête de liste, tronque au-delà d’un nombre raisonnable d’épisodes conservés (200 par exemple), puis réécrit le fichier au même emplacement avec le node S3 — tout vit sur le même bucket que l’audio, sans base de données ni backend supplémentaire.

Au niveau du <channel>, l’espace de noms iTunes exige en plus une image de couverture carrée (1400×1400 à 3000×3000 pixels), une <itunes:category> officielle Apple, et une <itunes:explicit> (true/false) — des éléments statiques réglés une fois pour toutes au démarrage du projet.

Étage 6 — Soumettre le flux et laisser tourner

Une fois le premier épisode publié, soumettez l’URL du feed.xml une seule fois sur Apple Podcasts Connect (podcasters.apple.com) et Spotify for Podcasters — les deux sont gratuits, sans compte développeur payant. Chaque plateforme relit ensuite le flux automatiquement à intervalle régulier : publier un nouvel épisode revient simplement à laisser tourner le workflow n8n programmé (un Schedule Trigger hebdomadaire, par exemple), sans republication manuelle nulle part.

Podcasting 2.0 : deux balises à ajouter sans coût supplémentaire

L’espace de noms Podcasting 2.0 (xmlns:podcast="https://podcastindex.org/namespace/1.0") étend le format iTunes avec des balises désormais largement prises en charge par les applications récentes. Deux sont particulièrement faciles à remplir dans ce pipeline, car la donnée existe déjà :

  • <podcast:transcript> — le script généré à l’étage 2 est déjà un texte complet aligné sur l’audio : le publier tel quel en transcription coûte un simple upload supplémentaire, sans appel IA additionnel, et améliore à la fois l’accessibilité et le référencement de l’épisode.
  • <podcast:person> — utile pour créditer explicitement les voix utilisées, y compris quand elles sont synthétiques.

Rendre la voix synthétique transparente dès le départ

Un podcast entièrement généré par IA — script et voix — pose une question différente d’un simple message vocal automatisé isolé : l’auditeur construit avec le temps une familiarité avec une voix récurrente. Une étude récente, Rettberg (2026), AI-generated podcasts: Synthetic intimacy and cultural mistranslation in audio overviews from Google’s NotebookLM, publiée dans Media, Culture & Society (voir sur Google Scholar), analyse ce phénomène de « proximité synthétique » : des voix IA conçues pour paraître chaleureuses créent une forme d’intimité avec l’auditeur alors qu’aucun humain n’est réellement à l’origine du propos. La parade la plus simple reste la transparence : mentionner dans la description du podcast, et idéalement en introduction de chaque épisode, que le contenu est généré par IA.

Coûts et garde-fous

  • LLM (script) — quelques centimes par épisode avec un modèle économique.
  • ElevenLabs (voix) — l’essentiel du coût, facturé au caractère synthétisé ; plafonnez la longueur du script et suivez la consommation avec notre guide de suivi des coûts d’appels IA.
  • S3 — quelques centimes par Go et par mois, négligeable tant que l’audience reste modeste.
  • Erreurs non bloquantes — un workflow d’erreur évite qu’un échec de synthèse ou d’upload laisse le flux RSS pointer vers un fichier inexistant.

Aller plus loin avec un pack FlowKit

Ce pipeline réutilise la logique de tri et de résumé déjà en place dans le Pack Inbox IA (79 €) — même architecture LLM Chain + Structured Output Parser que pour le digest Slack ou Telegram, rebranchée vers une sortie audio. Pour une base documentaire déjà vectorisée avec le Pack Assistant RAG (119 €), le même schéma produit un épisode de synthèse hebdomadaire à partir des documents ingérés, sans nouveau connecteur.

Check-list de mise en route

  • Source de contenu déjà structurée (flux RSS, digest, ou export documentaire).
  • Prompt de script strict : phrases courtes, transitions orales, JSON en sortie via Structured Output Parser.
  • Bucket S3 en lecture publique, nom de fichier audio unique et horodaté par épisode.
  • feed.xml régénéré à chaque exécution : nouvel <item> en tête, historique tronqué à un nombre raisonnable d’épisodes.
  • Image de couverture, catégorie et mention explicite sur le contenu généré par IA renseignées une fois pour toutes dans le <channel>.
  • Flux soumis une seule fois sur Apple Podcasts Connect et Spotify for Podcasters.

Le morceau qui manque à la plupart des tutoriels « podcast IA » n’est ni le script ni la voix — ElevenLabs fait l’essentiel du travail en un appel — mais le flux RSS conforme sans lequel aucune plateforme ne référence l’épisode. Une fois ce fichier généré correctement à chaque exécution, publier un podcast automatique revient à laisser tourner un Schedule Trigger de plus sur une instance n8n déjà en place.

FAQ

Questions fréquentes

Faut-il un compte développeur payant pour publier sur Apple Podcasts et Spotify ?

Non. Apple Podcasts Connect (podcasters.apple.com) et Spotify for Podcasters sont gratuits : il suffit de soumettre l’URL de votre flux RSS une seule fois, chaque plateforme le relit ensuite automatiquement à chaque nouvelle publication. Comptez quelques jours de délai de revue la première fois chez Apple, quasi instantané ensuite et côté Spotify.

Le node S3 de n8n suffit-il, ou faut-il un hébergeur de podcast dédié ?

Le node S3 en accès public reproduit le mécanisme central d’un hébergeur de podcast (fichier audio accessible par URL stable + flux RSS) pour le prix d’un stockage objet, quelques centimes par Go. Un hébergeur dédié (Transistor, Buzzsprout, Acast) ajoute des statistiques d’écoute détaillées, une distribution automatique et un flux généré sans code — utile si le volume d’épisodes ou le besoin d’analytics justifie l’abonnement mensuel, sinon S3 + n8n fait le travail.

Combien coûte la génération d’un épisode avec ce pipeline ?

Pour un épisode de 5 à 10 minutes : quelques centimes de LLM pour le script (modèle économique type gpt-4o-mini), et l’essentiel du coût vient d’ElevenLabs, facturé au caractère de texte synthétisé — de l’ordre de quelques dizaines de centimes selon la longueur et le forfait souscrit. Le stockage S3 et la bande passante de diffusion restent négligeables tant que l’audience reste modeste.

Peut-on générer un podcast à deux voix qui dialoguent plutôt qu’un monologue ?

Oui pour le script (un prompt peut structurer un dialogue à deux intervenants), mais la synthèse demande un étage supplémentaire : appeler ElevenLabs une fois par réplique avec un voice_id différent selon le locuteur, puis concaténer les segments audio résultants. n8n ne fusionne pas nativement plusieurs fichiers audio dans un seul binaire : ce montage se fait via un service externe dédié (function serverless avec ffmpeg, ou API de montage audio) appelé en HTTP Request depuis le workflow — la partie la plus délicate techniquement de ce pipeline.

Bundle FlowKit Complet

269 €