The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"name": "Podcast Audio Pipeline (Trim \u2192 Normalize \u2192 Fade \u2192 MP3)",
"nodes": [
{
"parameters": {},
"id": "trigger-001",
"name": "Start",
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [
100,
300
]
},
{
"parameters": {
"operation": "trim",
"inputFile": "/path/to/raw-recording.wav",
"startTime": "5",
"endTime": "3600"
},
"id": "trim-001",
"name": "Trim Intro Silence",
"type": "n8n-nodes-ffmpeg-studio.ffmpegAudio",
"typeVersion": 1,
"position": [
340,
300
]
},
{
"parameters": {
"operation": "loudnorm",
"inputFile": "={{ $json.filePath }}",
"integratedLoudness": -16,
"truePeak": -1.5,
"lra": 11
},
"id": "norm-001",
"name": "Loudness Normalize (-16 LUFS)",
"type": "n8n-nodes-ffmpeg-studio.ffmpegAudio",
"typeVersion": 1,
"position": [
580,
300
]
},
{
"parameters": {
"operation": "fade",
"inputFile": "={{ $json.filePath }}",
"fadeInDuration": "2",
"fadeOutDuration": "3"
},
"id": "fade-001",
"name": "Add Fade In/Out",
"type": "n8n-nodes-ffmpeg-studio.ffmpegAudio",
"typeVersion": 1,
"position": [
820,
300
]
},
{
"parameters": {
"operation": "convert",
"inputFile": "={{ $json.filePath }}",
"outputFormat": "mp3",
"audioBitrate": "192k",
"audioCodec": "libmp3lame"
},
"id": "export-001",
"name": "Export MP3 192kbps",
"type": "n8n-nodes-ffmpeg-studio.ffmpegAudio",
"typeVersion": 1,
"position": [
1060,
300
]
},
{
"parameters": {
"fileName": "podcast-episode.mp3"
},
"id": "write-001",
"name": "Write MP3 File",
"type": "n8n-nodes-base.writeBinaryFile",
"typeVersion": 1,
"position": [
1300,
300
]
}
],
"connections": {
"Start": {
"main": [
[
{
"node": "Trim Intro Silence",
"type": "main",
"index": 0
}
]
]
},
"Trim Intro Silence": {
"main": [
[
{
"node": "Loudness Normalize (-16 LUFS)",
"type": "main",
"index": 0
}
]
]
},
"Loudness Normalize (-16 LUFS)": {
"main": [
[
{
"node": "Add Fade In/Out",
"type": "main",
"index": 0
}
]
]
},
"Add Fade In/Out": {
"main": [
[
{
"node": "Export MP3 192kbps",
"type": "main",
"index": 0
}
]
]
},
"Export MP3 192kbps": {
"main": [
[
{
"node": "Write MP3 File",
"type": "main",
"index": 0
}
]
]
}
},
"settings": {},
"meta": {
"description": "Full podcast production pipeline: trim silence, loudness-normalize to -16 LUFS (podcast standard), add fade in/out, export as broadcast-quality MP3.",
"tags": [
"audio",
"podcast",
"loudnorm",
"mp3",
"broadcast"
]
}
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Podcast Audio Pipeline (Trim → Normalize → Fade → MP3). Uses n8n-nodes-ffmpeg-studio, writeBinaryFile. Event-driven trigger; 6 nodes.
Source: https://github.com/ArielleTolome/n8n-nodes-ffmpeg/blob/main/examples/podcast-audio-pipeline.json — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
The Recap AI - Podcast Generator. Uses httpRequest, stopAndError, chainLlm, lmChatGoogleGemini. Event-driven trigger; 14 nodes.
Export Wordpress Posts To Spreadsheet. Uses manualTrigger, wordpress, spreadsheetFile, writeBinaryFile. Event-driven trigger; 4 nodes.
Wordpress-to-csv. Uses manualTrigger, wordpress, spreadsheetFile, writeBinaryFile. Event-driven trigger; 4 nodes.
Creating high-quality, SEO-friendly blog posts consistently can be time-consuming. This template helps content creators, bloggers, SEO specialists, and agencies fully automate their blogging workflow.
This workflow is for content teams, marketers, and solo site owners who draft posts in Google Sheets and want a reliable way to publish to WordPress automatically — including featured images and tags.