Hacking Windows 7 Media Center

Replacing the Default DTV/DVD Decoder without Breaking Live TV Playback

by @ 7:45 am on April 10th, 2009 in codecs, windows media foundation with 39 Comments

You can also try this new tool for changing your Directshow Filters without manually entering the registry!

windows_7_logo_warpped We covered completely replacing the native Microsoft DTV/DVD Decoder with third-party codecs a few days ago but what if you still want to use that codec for live TV? Previously the only way to deactivate the built-in Microsoft codec was to rename the file, breaking all support for the decoder and reverting to third-party codecs. Now thanks to mr_greedy on The Green Button Forums, we have instructions to disabling the native Microsoft DTV/DVD Decoder only for video files.

Go here to replace DTV/DVD Decoder for Live TV Playback as well.

This method changes some registry settings to narrow specify which file types will be affected, leaving live TV support intact (as well as any other dependant software). First install the codecs you’d like to use for playback of movies, you can find a guide to a Minimalist Install of FFDShow here.

Once you’ve got the proper codecs installed, open regedit as administrator (start > regedit > ctrl + shift + enter). Navigate to:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectShow\Preferred

preffered

Then right-click the “Preffered” key (the folder in the left hand pane) and select “Permissions..”. By default the only user with permission to change these keys is “TrustedInstaller”. To take control select the “Advanced” button and go to the “Owner” tab. Select “Administrators”, check the “Replace Owner on subcontainers and objects” checkbox and press OK.

permissions

In the first window select “Administrators” in the textbox and then check “Full Control” and press OK. Now you should have full control to modify the registry entries in this folder. In the left hand pane find the following entries:

{e06d8026-db46-11cf-b4d1-00805f6cbbea}
{31435641-0000-0010-8000-00AA00389B71}

Double-click each one to replace the value data with the CLSid of the codec you’d like to use. Either use RadLight Filter Manager or Graphstudio to find the CLSid or use one of the common ids below:

FFDShow – {04FE9017-F873-410E-871E-AB91661A4EF7}
MPCVideoDecoder – {008BAC12-FBAF-497B-9670-BC6F6FBAE2C4}

edit

Restart your machine and that should be it! Hopefully this hack worked for you, if you have any additional CLSid values you’d like included in this article leave a note in the comments below!

Get the latest hacks, plug-ins and tweaks for Windows 7 Media Center by subscribing to the RSS Feed or Follow on Twitter!

39 Comments


anonim
Comment #318 from anonim [Reply]

I follow the threads on thegreenbutton.com, yet I truly appreciate your efforts to extract the necessary info from that site and create easy-to-follow how-to’s on various topics. Keep up the good work!

Comment left April 10, 2009 at 4:10 pm Permanent Link

elminster13
@Reply #1875 from elminster13 [Reply]

I agree the site is great, there is so much guff on thegreenbutton its great to have all the useful stuff in one place. please keep up the good work

Comment left June 26, 2009 at 11:43 am Permanent Link
Comment #324 from mhealy [Reply]

Thanks! I try to make it easier to find the good information without having to search through the rest each time you need it.

Comment left April 11, 2009 at 11:32 am Permanent Link

Brink4
Comment #403 from Brink4 [Reply]

Initially I had issues getting this to function with x64 (7077). I made quite a few extra reg. changes and verified ffdshow default usage in both WMC and WMP 64. Don’t know if anyone else will use this info, but here goes:

HKLM\SOFTWARE\Classes\Wow6432Node\CLSID\{04FE9017-F873-410E-871E-AB91661A4EF7}\InprocServer32

modify path to 64bit filter

Modified as listed above, also changed more instances of same dword in preferred_default:
{212690FB-83E5-4526-8FD7-74478B7939CD} replaced with ffdshow clsid.

Comment left April 21, 2009 at 12:13 am Permanent Link

pcmike
Comment #459 from pcmike [Reply]

FYI… as qritten this fails to work on Windows 7 64bit. In order for it to work on 64bit you need to follow the same steps but on the keys in

[HKLM\SOFTWARE\Wow6432Node\Microsoft\DirectShow\Preferred]

.

Thanks.

Comment left April 26, 2009 at 4:36 am Permanent Link

pcmike
Comment #460 from pcmike [Reply]

Also, evem after doing the above it doesnt change the codec mc7 will use to playback an mkv…. it only seems to work under WMP. Can you shed any light on this? Anyway to also change the default for mkv in mc7 on 64bit?

Comment left April 26, 2009 at 4:48 am Permanent Link
@Reply #463 from Michael Healy [Reply]

I haven’t had the chance to test the latest versions of Win7 which included native support for MKV yet. I do have a copy of RC1 here though that I plan on getting into in the next day or so.

Until then using MCDU should work fairly well in almost any version as it completely disables the native Microsoft codecs. If you are using 7MC for live TV you’ll need to be sure to use compatible settings for your codecs however.

Comment left April 26, 2009 at 9:39 am Permanent Link

pcmike
Comment #465 from pcmike [Reply]

To Michael:

Good morning! I was finally able to get ffdshow video to be the default by making the same edits (just as you described in the tutorial) both in …Microsoft\DirectShow\Preferred and Wow6432Node\Microsoft\DirectShow\Preferred. After editing the same entries in both places, everything works as you say it should. :)

Comment left April 26, 2009 at 11:48 am Permanent Link
@Reply #928 from StevenChmura [Reply]

x64 Help:

So I have changed the 32 bit ones, and the IDENticle ones in Wow6432node to

{04FE9017-F873-410E-871E-AB91661A4EF7}

In GraphStudio x64 I see FFDSHOW and all looks good.

However with 7MC, I am still getting corruption etc – looks like the microsft one is being used.

Using the Shark007 x64 components, disabling the Microsft one for everything, is the only way to make it all work. This is not ideal as I would prefer the MPEG2 and other acceleration for the hardware (using ATI 4870)

Comment left May 10, 2009 at 10:06 am Permanent Link

Ade
Comment #564 from Ade [Reply]

“if you have any additional CLSid values you’d like included in this article leave a note in the comments below!”

AC3 filter please!

Thank you so much for your tutorial. Just one remark: for those who, like me, aren’t native english speakers, you have to check the subtitles box in FFDShow video decoder configuration.

Comment left May 3, 2009 at 10:06 am Permanent Link

Ade
Comment #568 from Ade [Reply]

AC3 filter is already working. Thank you, nonetheless

Comment left May 3, 2009 at 12:07 pm Permanent Link

Hax
Comment #927 from Hax [Reply]

Hi! This works great, except that subtitles (SRT) works fine on the MCE machine, but not on the extender? Any thoughts on that?

Comment left May 10, 2009 at 9:45 am Permanent Link

James
Comment #945 from James [Reply]

All media files work perfectly now, thank you, however subtitles no longer appear on .mkv files.
I’m able to use Haali splitter to change between the audio streams but no subtitles show up at all.

Comment left May 10, 2009 at 4:24 pm Permanent Link

James
@Reply #948 from James [Reply]

By the way, this is RC1 I’m trying this on.
Even after making the adustments in the registry, ffdshow isn’t be used for .mkv files.

Am I wrong in assuming if ffdshow is being used and set up to be visible, I would see the icons in the task bar?
The only one I do see is the Haali splitter.

Now, if I go to the System32 folder and rename MP3DMOD.DLL, MP4SDECD.DLL, and MP43DECD.DLL, everything works perfectly and the icons appear.

In advance, I appreciate any comments on this.
Thanks.

Comment left May 10, 2009 at 5:38 pm Permanent Link
@Reply #956 from Michael Healy [Reply]

Glad to hear you’ve got it working! I’ll be sure to make a note of installing vsfilter when I update the guide for RC1, which should be soon.

Comment left May 10, 2009 at 9:53 pm Permanent Link

Bob Smith
Comment #968 from Bob Smith [Reply]

Would someone be so kind as to post the ORIGINAL registry key values that are being altered in the article? I forgot to backup my registry, and I need to reverse this hack in order to troubleshoot. TIA.

Comment left May 11, 2009 at 9:44 am Permanent Link
@Reply #970 from Michael Healy [Reply]

the original CLSid value for the MS DTV/DVD decoder is {212690FB-83E5-4526-8FD7-74478B7939CD}

Comment left May 11, 2009 at 10:56 am Permanent Link

Bob Smith
@Reply #971 from Bob Smith [Reply]

Thank you!! I followed your guide in order to play high bit rate MKV’s with CoreAVC (worked perfectly). But now some of my DivX avi’s are not working. Is the only solution to my problem to try ffdshow, or is there a way to limit CoreAVC to mkv’s and leave DivX with default MS? I want to avoid tweaking with ffdshow if possible.

Comment left May 11, 2009 at 11:49 am Permanent Link

Creasy
Comment #1303 from Creasy [Reply]

How can i play divx with ffdshow, not mpeg4s?

Comment left May 27, 2009 at 9:36 am Permanent Link

steve daley
Comment #1344 from steve daley [Reply]

I went to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectShow, but the only submenu is ‘Debug’

Comment left May 30, 2009 at 8:24 am Permanent Link

Andy
Comment #1486 from Andy [Reply]

For CoreAVC 1.9.5

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectShow\Preferred]

From
“{31435641-0000-0010-8000-00AA00389B71}”=”{212690FB-83E5-4526-8FD7-74478B7939CD}”

To:
“{31435641-0000-0010-8000-00AA00389B71}”=”{09571A4B-F1FE-4C60-9760-DE6D310C7C31}”

Comment left June 7, 2009 at 1:42 am Permanent Link

Rik
Comment #1530 from Rik [Reply]

Will this tweak get rid of the player selection that comes up after loading a DVD ISO? I’d like my DVDs to load into Total Media Theater 3 by default (without asking), but nothing I change seems to get rid of this nag screen.

Once I can get rid of that, I’m set!

Comment left June 9, 2009 at 3:37 am Permanent Link
@Reply #1534 from Michael Healy [Reply]

No, this method will only let you change the default directshow filters for playback.

Comment left June 9, 2009 at 8:39 am Permanent Link

Ethan
Comment #3102 from Ethan [Reply]

Will is enable DVD .ISO file playback in Media Center?

Comment left September 4, 2009 at 11:25 pm Permanent Link

Tom
Comment #5598 from Tom [Reply]

Uuhm… did not work for me.
x64 with Sharks. All I want to have is S/PDIF Audio for Video AND LiveTV.

Thought, this “hack” would bring that to me :-(

Comment left December 11, 2009 at 7:49 am Permanent Link
Comment #6418 from Scott Kingery [Reply]

So, I think I have this working but how can I tell? I guess if I was using it with FFDShow it would show the icon in the tray, correct? But what about other tools like the MPC-HC codec?

Comment left January 7, 2010 at 9:16 pm Permanent Link

James
Comment #7023 from James [Reply]

I have made all the changes, and Graphstudio shows that I am using FFDShow. However, when I run in WMC7, I don’t get the tray icon for FFDShow and quality is poor, so I assume WMC7 is not using FFDShow. Anyone else in this boat (or has ideas on how to fix)?

Comment left January 23, 2010 at 2:56 pm Permanent Link

Fede
Comment #8382 from Fede [Reply]

If you want avi files played you need to change this reg entry as well {64697678-0000-0010-8000-00AA00389B71}, and put the ffdshow clsid.

Comment left March 8, 2010 at 6:55 pm Permanent Link

Kenny Woo
Comment #8438 from Kenny Woo [Reply]

The method can also force WMP to use CoreAVC to play H.264/AVC files. But one thing I feel very confused is that changing CLSIDs in the registry will make the VobSub defunct for external subtitles, while changing the file names of Microsoft codecs won’t.

Comment left March 10, 2010 at 6:47 pm Permanent Link

Anonymous
Comment #8621 from Anonymous [Reply]

hi

since i changed the decoder, i no longer have the option to burn a video cd/dvd in mc. just data.
i put things back, but still no option

Comment left March 18, 2010 at 8:34 pm Permanent Link

Johann Lo
Comment #9061 from Johann Lo [Reply]

Hey guys, i’m trying to do this reghack on avi files only. However I can’t seem to change permissions in regedit, it says unable to save permissions. Hence I can’t get full control to make changes.

I’m logged in as admin + I’ve disabled UAC. Can anyone help?

note I did read something about editing group policy, but I can’t find the appropriate setting. MS’s naming convention is insane (instead of sorting items by area e.g. network, kernel etc. they sort it by the verb so “allow”, “edit”, “change” etc. which is insane

Comment left April 5, 2010 at 5:10 am Permanent Link

JeeJoo
Comment #10286 from JeeJoo [Reply]

I have, probably a stupid, question. Can you link me to or post a blog entry about *why* we would want to do this? Thank you!

Comment left April 26, 2010 at 8:38 pm Permanent Link

tom
Comment #13956 from tom [Reply]

should this method have an effect on media center playing mpeg-2/.ts files with ffdshow as a decoder or only on other direct show player, since in media center/player the microsoft decoder still active after this reg edit.

Comment left July 20, 2010 at 3:35 pm Permanent Link

iNtel
Comment #14665 from iNtel [Reply]

Thanks but it didnt help me =\
Im running windows 7 x64.. with k lite codec pack full x86.
changed the registry.. and nothing… before trying this method i was able to play mkv using Haali and ac3filter.. but without subs.. now nothing works.. i cant open mkv at all on mc.. please help mee…

thanks in advance,
iNtel

Comment left August 4, 2010 at 3:13 pm Permanent Link

Matt
Comment #25004 from Matt [Reply]

Check out this link. This might do what you want it to without hacking. It works in Windows 7

http://www.microsoft.com/downloads/en/details.aspx?FamilyId=DE1491AC-0AB6-4990-943D-627E6ADE9FCB&displaylang=en

Comment left December 3, 2010 at 10:21 am Permanent Link

Leave A Comment

Post Anonymously, Fill in your details or Use one of the Social Networks below to login and post a comment!