Using AC3Filter in Media Center

AC3Filter Logo One of the main problems encountered by those who use SPDIF output on their Media Center is the inability to control volume through the PC. The most common solution is to control the volume through the receiver but this means using a different remote (or worse getting up to turn the knob!). A solution to this problem is to use AC3Filter to control the gain of the SPDIF output. This will allow you to artificially change the volume of the digital output through Windows.

The first step to using AC3Filter to control SPDIF volume is to download and install the latest version of AC3Filter from ac3filter.net. Unfortunately, AC3Filter doesn’t currently support x64 operating systems and only comes in an x86 package. Next we need to follow the same steps as for installing FFDShow to work with Media Center and Media Player.

You will need to have the “Take Ownership” registry hack we’ve used before in changing our Media Center theme. You can download the registry file to enable this menu here. Once you have the .reg file downloaded double-click to install the registry fix and permit it to change the registry when prompted.

To enable AC3Filter in Media Center/Player for music, open Windows Explorer and navigate to “C:\Windows\system32\” and locate the file name “MP3DMOD.DLL”. Right-click to bring up the menu and choose “Take Ownership” then rename the file “MP3DMOD.DLL.bak”.  This will disable the native filter and can be reversed by changing the file name back at any time.

mpd3mod.dll

To enable AC3Filter for live television and other formats using the MPEG2 codec inside of Media Center there is also a registry entry that needs to be changed. First we need to find the CLSID for AC3Filter. To do that download Radlight’s Filter Manager right here. Extract the files to any location and run the exe file inside. Inside this program expand DirectShow Filters and scroll down to AC3FIlter. Right click the entry and select “Copy CLSID to Clipboard”.

AC3Filter in Filter Manager

Next, open regedit in Administrator mode: using the start menu type regedit then press ctrl-shift-enter. Then navigate to “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ CurrentVersion\MediaCenter\Decoder”. Inside there should be two strings, right-click “PreferredMPEG2AudioDecoderCLSID” and choose “Modify..”. Then enter the CLSID that you’ve copied from FilterManager in the box and press ok

Media Center will need to be restarted before the changes will take effect but that should set your music, live television and most anything in Media Center to use AC3Filter instead of the native codecs included in Windows 7. The stability of this hack has not been tested outside of systems using purely Media Center as the user interface and may carry unintended consequences, perform at your own risk.

If you have any trouble (or success!)  getting this hack to work be sure to post a comment below!

16 comments:

ZZDEZ said...

Great Hack, Thank you!
It works great for with MP3 and Live TV, Is there any way to play WAV DTS files with AC3 Filter ?
With Vista, AC3 Filter can do this and it works fine, but not with Windows7…
I have tried many things, but nothing works.
Anyone have an Idea?

MHealy said...

Which version of the Windows 7 beta are you using? There are number of problems reported with the sound system in the Windows 7 betas that are reported to be fixed or in the process of being fixed in later betas. Hopefully, all of the sound issues will be fixed before release or through driver releases.

I'd tend to think if it worked in Vista but is broken in W7 that it's related to the sound issues in the beta.

ZZDEZ said...

Thank you MHealy.
I use the 7000 build with the 2.17 Realtek drivers that are compatible with Windows7. I have tried to see what media DTS sound I can play or not:

-With an mkv movie in DTS, I have sound only if I use ACFilter that recode in Dolby Digital.
-With a DVD movie in DTS, I have directly DTS sound.
-With a Wav DTS music File, I have no sound. AC3Filter don’t run with this file type, but worked before in Vista.

I have tried to see with graphstudio, and it works if I use: DTSMusicFile.Wav > Wav Parser > AC3Filter >Default DirectSound Device.

But with Graphstudio, I can only play single files, and I search a way to configure AC3Filter for all DTS WAV files.

I don’t know if Filter Manager can be used for this. I have not FFDshow Installed, just Haali Media Splitter for MKV.

MHealy said...

This appears to be the same problem I've encountered in W7 beta 7000 with DTS audio and AC3Filter. I believe it's a problem with sound management in the 7000 beta. I'm going to be testing build 7048 later this afternoon and I'll check to see if the problem still exists.

The best solution I have found up to this point is to edit the output types in the digital sound output properties and disable all of them. Then set AC3Filter to PCM output, depending on your hardware (sound card and reciever) you may be able to send the raw stream to the reciever to be decoded as DTS.

ZZDEZ said...

I have a Gigabyte P35-DQ6 motherboard and I use the embedded soundcard Realtek ALC889A, and you’re right, I can play DTS Wav files if I configure my soundcard with these settings: 24bits 44100, but if I do this, I cannot use the DTS Connect option.

This feature is really excellent to convert all 2 way sounds files to 5.1 DTS, but with DTS connect enabled, I can only play DTS Wav’s with AC3Filter, and under Windows 7, AC3Filter won’t work…

Under Vista, all worked fine! With these settings: DTS connect enabled + DTS Wav’s played with AC3 Filter…I hope you understand better the problem.

For sure, I can use the 24bits 44100 settings to play my Wav’S DTS files, but I must every time go to the settings to disable the DTS connect feature and I don’t want to keep it disabled.

I’m curious to see what happened with the 7048 build, and I will install it tomorrow too.

Thank you very much MHealy..

Anonymous said...

Hello ALl,

I have done this trick in Windows 7 build 7057 and it works fine in WMC but if i try to play any vidoes or MP3 in WMC or WMP it does not work and i receive a DRM error

MHealy said...

This hack likely will not work with media that has been encoded with DRM. Unfortunately, there will likely be no solution for this problem due to the nature of DRM.

If the files you're trying to play don't contain DRM double check your codec setup using Graphstudio. The problem likely lies with codecs if DRM isn't the issue, try raising the priority of AC3Filter. If the problem is still there after trying these let me know.

David said...

I am using Windows 7 7057 x86 with a Radeon 4550 wth HDMI output and using this via Sony AVR for all sounds - stereo , lpcm , DD and DTS which all seem to pass thru ok ( except no sound from center channel using lpcm with PDVD for some strange reason )
The problem I have is live TV in MC the audio is slightly ahead of the video - will either AC3 filter or FFDshow fix this ?
Can I just install it to work or do I have to do the hack aswell ?
Would the Vista Media Center Decoder Utility do the same thing as your hack ?
http://mediacenterexpert.blogspot.com/2006/07/vista-media-center-decoder-utility.html
Also I would like to convert stereo mp3s to surround sound ( amp can do this for me using SPDIF but not usig HDMI )

MHealy said...

All of those things should be possible using either AC3Filter or FFDShow audio. I find using FFDShow to be simpler than AC3Filter and it's my preffered codec, you can find a guide to using FFDShow Audio right here. There is also a guide to FFDShow Audio settings here that should help you get it set up.

You will need to apply the registry setting noted in the guide to use the codec with live TV, otherwise the default Microsoft codec will be used.

David said...

Does Damien's Mediacontrol do the same type of hack because I get " Use FFDShow Yes/No " windows appearing when playing some videos

MHealy said...

I'm not sure as I've never gotten Media Control to work 100% correctly on x64 bit systems. I prefer to control my codec setup directly on both x32 and x64 systems. I'm unsure exactly what Media Control modifies to take control of playback on Media Center.

Dustin said...

It's a no-go for me. I was hoping that changing audio decoders for Live TV would change an issue I'm having on my extender end with HD audio (the audio stream cuts out every 5-10 seconds, making listening unbearable). I followed all the steps in this hack to the letter, but all I get in Media Center is a decoder error. What gives? (P.S., I am using built 7057 x64).

MHealy said...

The media foundation pipeline was changed in version 7057. I'm working on cracking it but haven't quite got it yet. It seems MS is going to great lengths to keep people from using their own codecs in any MS apps.

Dustin said...

Hey, thanks for the quick update!

David said...

I tried this hack with both ffdshow and ac3filter and they worked well with both mp3 and live TV

AC3 Filter works better for the audio delay as there is a slider for before and after a fixed point in time whereas in FFDShow you can only enter positive numbers for audio delay

My m2ts files no longer work with this hack it states "error - media center cannot open the file"

Also DD and DTS are no longer passing through

Any ideas ?

Basically I want the following -
stereo pcm to be mixed for surround sound
DD and DTS to passthrough as bitstream
True HD etc to be converted to mlpcm
Live tv audio to be delayed
With all my videos playing normally

What settings should I choose ?

mswlogo said...

You are completely destroying the quality of the output by attenuating it DIGITALLY. You always WANT to control volume in the analog domain.

Leave a comment using any OpenID including Yahoo!, AIM, Google and more. You can even leave an Anonymous comment below!

Post a Comment

Hack7MC Has Moved!

Hack7MC has left Blogspot for a new home. Following the original address @ http://www.hack7mc.com will take you to the new home page.