What the hell is madFlac?
madFlac is a FLAC decoder + source filter written by the same guy who makes madVR.
Okay, but what does this have to do with me?
FFmpeg‘s FLAC decoder cannot handle some multi-channel configurations correctly apparently, also some occasional issues about sound distortion. I don’t really know how true any of this is since I’ve never come across it, but some groups have recommended (in the past) to not use the ffmpeg FLAC decoder, or decoders that depend on it. MadFlac is guaranteed to be lossless no matter what you throw at it.
Installation guide
This guide assumes you use MPC-HC. If you don’t know what that is or don’t have it, we highly recommend installing it.
Step One: Installation
- Download and install madFlac. This will generally be relatively stable since it’s already lossless and bug-free and there’s not much else to do, but in case you want to check the thread every once in a while, you can
- Unpack the file anywhere (you’re going to keep it there) and run “install.bat” inside the folder
Step Two: Setup
- Open up MPC-HC’s options menu, and browse to “External Filters”. Click on “Add Filter”, choose “madFlac Decoder” from the list and hit ok. Highlight the new entry and set it to “Prefer” as shown:
(Optional) Installing ffdshow’s audio processor
If you don’t have a 5.1 speaker setup, or want to use a custom mixer, you can use ffdshow’s audio processor filter.
- To do this, you must first install ffdshowif you haven’t already
- After setup, just add the filter to MPC-HC the same way you did with madFlac:
- You may now configure the processor any way you want. The easiest way to enter the settings is to double click the “ffdshow Audio Processor” entry on the same screen you were just on. An example configuration is shown here, for mixing 8.1 audio down to 2.0, but you don’t have to follow these values:
One last thing..
- If you have a DAC or sound card capable of accepting 24-bit PCM, then you can enable it in ffdshow’s output settings:
- You probably also want to apply a time shift equal to your monitor’s input latency. My U2410 has an input lag of 33.8 ms so I applied a 34 ms offset to correct this.