eac3to is a free command-line utility for Windows that extracts, converts, and repairs high-definition audio from Blu-ray discs, UHD discs, and media files - handling formats like Dolby TrueHD, DTS-HD Master Audio, EAC3, AC3, and FLAC with a precision that graphical converters rarely match.
Originally created by madshi - the developer behind the well-known madVR video renderer - the tool is now actively developed by the DG Tools team in collaboration with its original author, and version 3.63 continues that streak - fixing audio decoding artifacts, dialog normalization handling, and format detection bugs that had lingered for years.
If you rip Blu-ray or UHD discs with MakeMKV, eac3to picks up exactly where that process ends.
MakeMKV pulls disc content into lossless MKV containers (the how to use MakeMKV for free guide covers the setup), and eac3to then gives you granular control over the audio inside: pull individual tracks, convert between lossless and lossy formats, strip dialog normalization, and prepare clean streams for remuxing or encoding.
What eac3to Actually Does
The tool handles every major HD audio format found on modern discs. Dolby TrueHD and DTS-HD Master Audio streams can be extracted losslessly or converted down to standard AC3 or DTS for broader device compatibility.
FLAC output covers open-source lossless archival, and EAC3 (Dolby Digital Plus) support handles the streaming-era format that powers Netflix, Disney+, and Prime Video - our guide on why EAC3 matters explains the bigger picture in plain language.
Beyond conversion, eac3to works as a full demuxing toolkit. It splits Blu-ray disc structures into individual video and audio elementary streams, extracts PGS subtitle tracks (including forced-only subtitles via the -forced option), fixes audio synchronization problems, and downmixes surround sound to stereo.
It also detects and correctly reports DTS:X streams and distinguishes E-AC3 JOC (Atmos) 7.1 from 5.1.2 layouts - details that matter when you are deciding which track on a disc is actually worth keeping.
Version 3.63 is worth grabbing even if an older build has served you fine. It fixes audible decoding flaws in AC3 and EAC3 - spectral "garbage" that showed up as banding and haze, plus a downmix bug that produced spikes in the audio - and it changes dialog normalization removal to check every frame instead of trusting the first one, since the normalization value can vary across a track. In short: cleaner output from the exact same source files.
A Command-Line Tool With a GUI Escape Hatch
eac3to runs from the command line, which gives experienced users unmatched speed and scriptability but can feel intimidating at first.
The bundled eac3to GUI 1.3.6 adds a graphical wrapper: browse disc structures, pick tracks, and set output formats without memorizing switches. It is a comfortable starting point before you graduate to batch scripts for a larger collection.
Where eac3to Fits in Your Workflow
The real power shows up when eac3to is one link in a complete chain. A typical Blu-ray archival workflow: rip with MakeMKV, demux and convert audio with eac3to, verify stream parameters with MediaInfo, then remux everything into your preferred container with MKVToolNix.
For the video side, HandBrake, StaxRip, or VidCoder handle re-encoding while eac3to takes care of audio independently - and if 4K HEVC output is the goal, x265 and our best 4K HEVC encoder guide cover that step.
Version 3.63 helps here too: it now accepts H.264 and H.265 streams that lack AUD units - a technical quirk of some encoders and rippers that used to make eac3to reject otherwise perfectly good files - and it no longer throws false "non-standard framerate" warnings on streams that are fine.
MKVToolNix users get a specific quality-of-life win: demuxed filenames use ISO 639 language codes (like [eng] instead of "English"), so MKVToolNix auto-detects track languages during remuxing - no more manual tagging on every file.
The -sf (skip first M2TS) and -sl (skip last M2TS) options also solve a long-standing headache with Kino Lorber and similar discs that include spurious M2TS segments that used to break batch jobs.
Converting and Troubleshooting Audio
If an EAC3 track refuses to play on a device, eac3to converts it to universally compatible AC3 or AAC. This is the classic "EAC3 audio not supported" error on Android players - covered step by step in our how to fix EAC3 audio not supported guide.
For a purely visual way to do the same conversion, XMedia Recode works well (see how to convert EAC3 audio).
Note that AAC encoding in eac3to relies on an external encoder - for standalone AAC jobs, X AAC Encoder or qaac are simpler picks, and for batch FLAC conversion outside the disc pipeline, X FLAC Encoder wraps the same reference encoder in a modern GUI.
For AC3 files that play silently on Windows, the AC3 Filter or the DTS/AC3/DD+ Source Filter can resolve DirectShow playback issues - our guides on fixing no-audio issues with AC3 files and AC3 Filter vs LAV Audio explain the old fix and the modern one.
For broad playback compatibility across everything eac3to produces, the K-Lite Codec Pack or VLC Media Player has you covered on any Windows setup.
System Requirements and Getting Started
eac3to runs on Windows 7 through Windows 11. It is a 32-bit application, but it runs fine on 64-bit systems - and if an older build ever complained about a missing msvcr100.dll, that dependency was removed back in version 3.59, so current releases just work.
The download is a compact package with no installation: extract the archive and run from the command line or launch the GUI. The tool also disables system sleep while processing and re-enables it afterward, so long batch conversions no longer die when your PC dozes off.
Before finalizing any output, a quick pass with MediaInfo confirms codec parameters, bitrates, and channel layouts match what you expected. And if eac3to turns out to be more tool than your job needs, the full audio encoders category lists lighter alternatives.
Changes in eac3to 3.63
- Added support for AC3 streams with bsid 9 and 10 - unusual AC3 variants that previously failed to open
- New -numLogFiles=xxx option to set how many log files are retained
- Report lines now distinguish DTS L/R from DTS Lt/Rt, so matrixed stereo tracks are labeled correctly
- Added support for AVC and HEVC streams without AUD units
- Fixed spurious "The video track has a non-standard framerate." messages
- Fixed crashes during format detection for some AVC/HEVC streams
- Fixed spectral "garbage" (banding and haze) when decoding AC3/EAC3
- Fixed wrong downmix handling that caused spikes in the spectrogram when decoding AC3/EAC3
- Dialnorm removal now runs on all frames instead of skipping when the first frame already reads -31dB, since dialog normalization is a per-frame property that can vary across a track
- Fixed format detection for some 7.1 JOC (Atmos) streams
- The -ffmpeg option now supports wav, wavs, w64, rf64, and flac output
- Documentation updated
