How to widen a mono recording to stereo — browser tool
- Step 1Decide whether width is appropriate — Pseudo-stereo suits music-style content that will mostly be heard in stereo. If the file is speech, or will often play on a single mono speaker, prefer Duplicate — the Haas delay will hurt mono playback.
- Step 2Drop the mono file in — Drag an MP3, WAV, FLAC, M4A, OGG, Opus, or video file onto the tool. FFmpeg WebAssembly decodes it locally — nothing uploads.
- Step 3Select Pseudo-stereo mode — In the Mode selector choose Pseudo-stereo (Haas widen ~15 ms). This is the only width option — the delay is fixed at ~15 ms; there is no adjustable width slider, no mid-side control, and no per-channel pan on this page.
- Step 4Process the filter graph — Run the conversion. FFmpeg splits the duplicated mono, delays the right channel by 15 ms (
adelay=15:all=1), and merges to stereo. This takes slightly longer than Duplicate because of the filter graph. - Step 5Audition on stereo AND in mono — Listen on stereo speakers/headphones for the width, then check a mono fold-down (sum L+R). If the mono version sounds noticeably thinner or hollow, that is the Haas comb-filtering — decide whether your audience's playback makes that acceptable.
- Step 6Download — or switch to Duplicate — If the width works for your use, save the widened file (output keeps your container). If the mono trade-off is a problem, re-run with Duplicate for a mono-safe dual-mono file instead.
Pseudo-stereo (Haas) — what it does and costs
The width mode, grounded in the FFmpeg filter graph the tool runs.
| Aspect | Detail |
|---|---|
| Technique | Haas / precedence effect — delay one channel by a few ms |
| Delay applied | ~15 ms on the right channel (adelay=15:all=1) |
| Filter graph | asplit → delay R → amerge → stereo |
| On stereo playback | Perceived width; single apparent source |
| On mono fold-down | Comb-filtering — thinner/hollow sound |
| Adjustable? | No — delay is fixed at ~15 ms, no width slider |
Pseudo-stereo vs. Duplicate — choosing
Both are the only two modes available. Pick by content and playback context.
| Use case | Recommended mode | Reason |
|---|---|---|
| Instrumental loop / music bed | Pseudo-stereo | Width lifts the track; mostly heard in stereo |
| Spoken word / podcast / voice-over | Duplicate | Often heard in mono; Haas would comb-filter the voice |
| Need a valid 2-ch file, no width | Duplicate | Clean dual-mono, mono-sum safe |
| Broadcast / loudness-spec delivery | Duplicate | Phase-safe; predictable mono compatibility |
Tier limits
Size and duration enforced independently.
| Tier | Max size | Max duration | Batch |
|---|---|---|---|
| Free | 50 MB | 30 min | 1 |
| Pro | 200 MB | 120 min | 10 |
| Pro-media | 100 GB | Unlimited | 100 |
| Developer | 100 GB | Unlimited | Unlimited |
Cookbook
When Haas pseudo-stereo helps, when it hurts, and how to check before committing.
Mono instrumental loop → wider stereo loop
A flat mono loop needs to sit wider in a stereo arrangement. Pseudo-stereo's 15 ms delay opens the image on stereo systems.
loop.wav (1 ch) → Mode: Pseudo-stereo Filter graph: [0:a]aformat=channel_layouts=mono,asplit=2[L][Rsrc]; [Rsrc]adelay=15:all=1[R]; [L][R]amerge=inputs=2,aformat=channel_layouts=stereo[out] → loop-widened.wav (2 ch, perceived width)
Mono-sum check before you commit
Always audition the mono fold-down. If your audience plays back in mono, the comb-filtering may be a dealbreaker.
Stereo listen: wider, fuller image — good. Mono fold-down (L+R): voice/lead sounds thinner, hollow. Decision: music for stereo playlists → keep widened content for phones/podcasts → re-run with Duplicate
Why speech should use Duplicate, not widen
Spoken word is frequently heard on one speaker. The Haas delay degrades that experience, so Duplicate is the correct choice for voice.
Speech file? Don't widen. Mode: Duplicate → identical L/R, mono-safe Pseudo-stereo would comb-filter the voice on a single phone/earpiece/smart speaker.
Widen, then keep it lossless
Apply width to a lossless source to avoid extra generation loss in a production chain.
pad.flac (1 ch) → Mode: Pseudo-stereo → pad-widened.flac Stays FLAC (lossless container) Note: the two channels now differ (R delayed), so the file no longer null-tests to silence.
You wanted a clean stereo file, not an effect
If your real goal was a valid 2-channel file with no width, Pseudo-stereo is the wrong mode — switch to Duplicate.
Goal: valid stereo, no width → Mode: Duplicate, see /audio-tools/solutions/stereo-from-mono-audio-free Goal: perceived width → Pseudo-stereo (this page)
Edge cases and what actually happens
Widened file sounds thin/hollow on a phone speaker
ExpectedPhones and mono Bluetooth speakers sum L+R. With the right channel delayed 15 ms, that sum comb-filters the original, thinning the sound. This is inherent to Haas pseudo-stereo, not a defect. If much of your audience listens in mono, use Duplicate instead.
Need to control the amount of width
Not availableThe delay is fixed at ~15 ms; there is no width slider, depth control, or mid-side option on this page. It is a single on/off width effect. For finer stereo-imaging control you'd need a dedicated DAW plugin — this tool offers only Duplicate and Pseudo-stereo.
Widened file no longer passes a null test
By designBecause the right channel is delayed, Left and Right differ — so inverting one channel and summing no longer cancels to silence. That is expected for Pseudo-stereo. If you need identical channels (dual-mono), use Duplicate.
Applying widen to speech
Not recommendedVoice is commonly heard on a single speaker, where Haas comb-filtering thins the voice and can make it sound phasey. Use Duplicate for any spoken-word material; reserve Pseudo-stereo for music-style content.
Phase / loudness measurement looks off after widen
Phase artefactThe inter-channel delay introduces phase differences, which can affect correlation meters and some loudness/true-peak readings. For broadcast or streaming loudness compliance, widen first if you must, then measure and normalise with loudness-normalizer — or skip widening entirely for spec deliveries.
Source is already stereo
By designThis widener builds from a mono source. An already-stereo file isn't the target. To rebalance existing stereo channels you'd use channel-splitter and recombine; this tool won't widen an existing stereo image.
File exceeds size or duration cap
Limit reachedFree: 50 MB / 30 min per file, enforced separately. Pro: 200 MB / 120 min; Pro-media and Developer: 100 GB / unlimited. Trim with audio-trimmer if a long track is over the duration cap.
Lossy source re-encoded
Generation lossWidening a lossy file decodes and re-encodes, adding minor generation loss on top of the width effect. Start from a lossless WAV/FLAC master for production work.
Frequently asked questions
How does this widen a mono recording?
Pseudo-stereo mode uses the Haas (precedence) effect: it duplicates the mono signal and delays the right channel by ~15 ms (FFmpeg adelay=15:all=1), then merges to a 2-channel file. On a stereo system the ear reads the small delay as width while still hearing one source.
Is this real stereo?
No. Real stereo needs independent channel content from a multi-mic or mixed source. Pseudo-stereo is perceived width created from a single channel — it sounds wider but carries no genuinely separate stereo information.
What's the downside of the Haas effect?
When the two channels are summed to mono — phone earpieces, mono Bluetooth, some PA sub feeds — the delayed copy comb-filters the original, making the sound thinner or hollow. That is why it suits stereo-played music but not speech often heard in mono.
Can I adjust how wide it is?
No. The delay is fixed at ~15 ms; there's no width slider or mid-side control. It's a single width effect (on via Pseudo-stereo, off via Duplicate). Finer control requires a dedicated DAW imaging plugin.
Should I widen a podcast or voice-over?
No — use Duplicate for speech. Many listeners hear voice on a single mono speaker, where the Haas delay comb-filters the voice. Pseudo-stereo is best kept for instrumental loops and music-style content.
Why doesn't my widened file null-test to silence?
Because the right channel is delayed, Left and Right are no longer identical, so inverting and summing won't cancel. That's expected for Pseudo-stereo. If you want identical channels, use Duplicate (dual-mono).
Will widening affect loudness or phase metering?
It can. The inter-channel delay introduces phase differences that affect correlation meters and some loudness/true-peak measurements. For spec deliveries, normalise afterwards with loudness-normalizer, or avoid widening for compliance-critical files.
What output format do I get?
The same container as your input (MP3, WAV, FLAC, M4A, OGG, Opus). The Mode selector is the only control on this page.
Does the audio get uploaded?
No. The filter graph runs in your browser via FFmpeg WebAssembly; your file never leaves your device. See the no-upload spoke.
What if I just want a valid stereo file without width?
Use Duplicate instead of Pseudo-stereo — it produces clean dual-mono with identical channels that's mono-safe. The dual-mono spoke covers it in detail.
What formats can I widen?
MP3, WAV, FLAC, M4A, OGG, Opus, and video files (audio track). All processed in-browser by FFmpeg 8.1.
How large a file can I widen?
Free: 50 MB / 30 min per file. Pro: 200 MB / 120 min. Pro-media and Developer: 100 GB / unlimited duration. Size and duration are checked separately.
Privacy first
Every JAD Audio tool runs entirely in your browser via FFmpeg (WebAssembly) and RNNoise. Your audio files never leave your device — verified by zero outbound network requests during processing.