Audio5 min

How to Merge Podcast Episodes into a Single File

Combine multiple MP3, WAV, or M4A episodes into one continuous audio file in the browser — lossless concat, no re-encoding.

All merging runs locally via Zro7 Merge Audio using ffmpeg.wasm. Nothing is uploaded.

To merge podcast episodes into a single file, open Zro7 Merge Audio, drop your files in order, and export. When every file uses the same codec, sample rate, and channel layout, Zro7 stream-copies them with FFmpeg's concat demuxer — no re-encoding, no quality loss, done in seconds even for hours of audio.

Fast path: concat demuxer (lossless)

If your episodes came from the same encoder (typical for one podcast feed), FFmpeg can bit-copy them end-to-end:

  1. All files share codec (e.g. MP3 128 kbps), sample rate (44.1 kHz), and channels (stereo).
  2. Zro7 writes a concat list and runs -f concat -c copy.
  3. Output is a single MP3/M4A with the sum of all input durations. Zero quality loss.

Slow path: concat filter (re-encode)

Mixed formats (MP3 + WAV + M4A) need decoding to a common PCM stream before re-encoding. This is slower and lossy for MP3/AAC targets, but it always works. Zro7 switches to this automatically when your files don't match.

Steps

  1. Open Merge Audio.
  2. Drop files. Drag them in the sidebar to reorder.
  3. Pick output format (matches the input by default).
  4. Export. Download the single merged file.

Before merging: clean each episode

Frequently asked questions

Will the merged file play on every device?

Yes — output is a standard MP3, M4A, or WAV. Any modern player handles it.

Chapter markers?

Basic merge doesn't add chapters. For chapterised M4B audiobooks you need a dedicated tagger — merge here, then tag externally.

Max file count?

Practical limit is total RAM. 20–50 typical episodes merge without issue on most laptops.

Does merging change bitrate?

Lossless concat path: no. Re-encode path: yes, at whatever bitrate you pick for the output.

Any upload?

Zero. All concat and re-encode work happens in ffmpeg.wasm inside your browser.

Related posts

← Back to blog