Log in

View Full Version : Tool for changing preferred DirectShow filters in Windows 7


Pages : 1 [2] 3 4 5 6 7 8 9

turbojet
4th June 2009, 19:06
Please clarify the following:
1) The unpatched Arcsoft filter only connects to its own splitters, right? Or does that only apply for VC-1 video?

VC-1 Arcsoft and PowerDVD for sure and probably WinDVD filters connect with their own splitters but they don't output video via directshow. PowerDVD used to be usable in directshow but I'm pretty sure BD+ made them change their minds, unsure about arcsoft and windvd prior to BD+.

Arcsoft MPEG2 either works in WMP12 or it's using MS decoders (verified with ffdshow tray on and set to highest merit), falls back to other directshow filters in MPC-HC/graphstudio.

Arcsoft H.264/XviD/DivX works with graphstudio and either WMP12 uses it or MS decoders (verified with ffdshow tray on and set to highest merit). MPC-HC falls back to FFDshow, or other directshow filters.

2) What happens if you use the unpatched Arcsoft filter and set it as preferred with the current tool? Does WMP fallback to using a different filter?

It falls back to ffdshow if it's set to decode VC-1, the merit doesn't affect anything, even at do not use level it still gets used. If ffdshow isn't set to decode it falls back to MS filter. MPEG2 falls back to nothing even if ffdshow is enabled to decode

3) Does the patched filter only connect to Haali splitter, or also to other splitters?

These 2 particular ones do, the thread I linked to also has arcsoft for gabest splitter, but only certain versions of the arcsoft filter work, v2 build 113 and 119 are the only 2 so far that work. Needs to be updated to work with newer versions.

4) Could you give MD5 hashes of those two patched filters?

f4e92a42845b5cc72e27fc91c0e5e1a8 *VC1Tweak_Haali.ax

0b2f8e0b80a1cb771a9e5efe3171a11d *VC1Tweak_clhaali.ax

BTW all the links to VC1tweak powerDVD from the original author seem dead now. I have uploaded it again with decoders that work with it here (http://www.mediafire.com/download.php?j3mym4on2nn). It isn't very useful though since it always resizes to 720x480, I'm pretty sure it's an issue with the VC1Tweak_clhaali.ax

I can get clsid's on powerDVD and winDVD filters if you want me to as well.

It's probably far beyond the scope of this project but ultimately until libavcodec adds full support for interlaced VC-1 it would be really nice to get Arcsoft VC-1 working with the latest Arcsoft 3.0.120 trial version decoders, no v2 trial available. Another possibility is powerDVD ax that doesn't resize and pixelate with the troublesome interlaced VC-1. This is how big of a headache proper VC-1 decoding has been since microsoft developed it a few years ago :(

clsid
5th June 2009, 13:06
New version in first post.

zachdms
5th June 2009, 21:07
Would it be possible for you (in your role as MS dev) to share some info/stats about crash reports? It would be interesting to see which DS filters cause the most stability issues. Such knowledge would also be useful for me and others to assist people with solving multimedia issues in Windows. It would also be useful for the developers of those filters, since users often choose not to report bugs.AFAIK, I have to be careful in this space. I generally try to be as helpful as I can, but I'm going to extremely err on the side of caution since it's probably more important to get important information out than dive into specifics.

Ideally vendors sign up to view error reports, as I believe this:
* http://www.microsoft.com/whdc/winlogo/maintain/StartWER.mspx
lets you do.

If that's a problem for filter dev teams, I can potentially check with the WER team about what to do for lighter weight operations - but it'd be a potentially dodgy area. =\

clsid
5th June 2009, 21:26
That is something for commercial companies as it requires a VeriSign ID.

I was more thinking of a top 25 list of most troublesome filters.

turbojet
6th June 2009, 17:15
Thanks both VC1tweak filters work great.

I thought of a few more things:
- add PowerDVD 7 for H.264: CL264dec.ax {F2E3D920-0F9B-4319-BE87-EB94CCEB6C09} I've test it working with 7.3.3319, build 4617, and the latest 5105
- for PowerDVD VC1, MPEG2 add a note that it only outputs 720x480
- change Next button to Apply and it doesn't exit, just makes the changes (like changing resolution without a timer)
- change cancel button to close and if there was changes made ask whether to save (yes/no) or cancel. If nothing changed it exits without question (like text editors)
- titlebar naming more specific then 'tool'

Any chance of any of these?

clsid
6th June 2009, 21:55
I didn't know the PowerDVD MPEG2 decoder had any limitations. It works fine for me at different resolutions on XP. I haven't tested it on Win7. Are you really sure about that?

RadioactiveMan
6th June 2009, 22:13
is there a special way to use this program? no matter if i start it with my normal account with 'start as administrator' or directly under the administrator account, i always get this message as soon as i press 'next' after chosen the preferred decoder:
---------------------------
Tool
---------------------------
Failed to change registry key access permissions for:

HKLM\SOFTWARE\Wow6432Node\Microsoft\DirectShow\Preferred
---------------------------
OK
---------------------------

What did i do wrong?

clsid
6th June 2009, 22:19
I don't know. It works ok for me on clean installs of all recent Windows 7 builds.

turbojet
7th June 2009, 00:45
I didn't know the PowerDVD MPEG2 decoder had any limitations. It works fine for me at different resolutions on XP. I haven't tested it on Win7. Are you really sure about that?

You are right, the MPEG2 m2ts I was using for test had bad headers or something. After I demuxed or remuxed it was giving 1080p output. So it's just the PowerDVD VC1tweak that has the 720x480 output issue, and only with interlaced streams, with progressive there is no issue.

A few more things I thought of:
- check for missing filters that are still registered (cyberlink and arcsoft TMT2 are notorious for leaving these)
- function to completely remove the preferred folder (too hazardous for this tool? or is there some other way to load in graphs without this folder)

EDIT: Just noticed new version, PDVD7 H.264 decoder is working great, thanks. Also thanks for the apply button for quick changes without having to reopen the app.
Do you think the exit now question is needed when you hit apply?
Also is the exit now question needed when you hit close without any changes done?

Also I forgot to mention earlier that I tested WinDVD 9 filters and they appear unusable, even after manually registering all the ax files it couldn't load any video via directshow.

is there a special way to use this program? no matter if i start it with my normal account with 'start as administrator' or directly under the administrator account, i always get this message as soon as i press 'next' after chosen the preferred decoder:
---------------------------
Tool
---------------------------
Failed to change registry key access permissions for:

HKLM\SOFTWARE\Wow6432Node\Microsoft\DirectShow\Preferred
---------------------------
OK
---------------------------

What did i do wrong?

This type of management system wasn't introduced until RC build 7100 as far as I know. Are you using build 7100 or newer?

RadioactiveMan
7th June 2009, 01:00
This system wasn't introduced until RC build 7100 as far as I know. Are you using build 7100 or newer?

I am using Windows 7 RC Build 7100 64bit German

turbojet
7th June 2009, 01:12
I am using Windows 7 RC Build 7100 64bit German

Oh maybe it's some issue with non-english versions.

If you open regedit and browse to that key does it exist?
If not, is it named something else like 'Directshow' or 'Preferred' in german?

RadioactiveMan
7th June 2009, 10:11
If you open regedit and browse to that key does it exist?
If not, is it named something else like 'Directshow' or 'Preferred' in german?


I have already taken a look at it. The key is there.

clsid
7th June 2009, 11:41
Oh maybe it's some issue with non-english versions.Translations only apply to the Windows GUI and a few folder names, not to stuff in the Registry.
Perhaps it is an issue with UAC. Completely disabling UAC can cause problems for applications (like this tool) that need to run with Administrator privileges.

I have already taken a look at it. The key is there. Which group is set as the owner of the key? Originally it is TrustedInstaller. The tool changes it to the Administrators group. After that it sets full access permissions on the key for Administrators.

A few more things I thought of:
- check for missing filters that are still registered (cyberlink and arcsoft TMT2 are notorious for leaving these)
I am not planning to add that at this moment. There are other tools that can scan for such issues. If a preferred filter can not be loaded, then DirectShow will simply fall back to using a different filter.
- function to completely remove the preferred folder (too hazardous for this tool? or is there some other way to load in graphs without this folder)Those who want different alternatives than given by the tool can either request an addition or mess with the Registry themselves. I am not going to offer the possibility to delete the whole key.
Do you think the exit now question is needed when you hit apply?
Also is the exit now question needed when you hit close without any changes done?The prompt can't be easily removed. I am not wasting my time on it.

RadioactiveMan
7th June 2009, 12:54
Translations only apply to the Windows GUI and a few folder names, not to stuff in the Registry.
Perhaps it is an issue with UAC. Completely disabling UAC can cause problems for applications (like this tool) that need to run with Administrator privileges.

Which group is set as the owner of the key? Originally it is TrustedInstaller. The tool changes it to the Administrators group. After that it sets full access permissions on the key for Administrators.
.

i will try to disable uac as soon as the current encoding job is done. that will be in about twelve hours.

regarding the owner of the key: it was trustedinstaller. i have already changed it to administrators and have given the administrator an the users full rights. unfortunately it didn't work.

Atak_Snajpera
7th June 2009, 12:59
Completely disabling UAC can cause problems for applications (like this tool) that need to run with Administrator privileges.


i will try to disable uac as soon as the current encoding job is done.
Did you understand what he said?

RadioactiveMan
7th June 2009, 13:56
Did you understand what he said?

now, when reading it a second time i do. but it also didn't work with uac being activated.

clsid
7th June 2009, 14:36
Perhaps you have some kind of security application (firewall, virusscanner) installed that is blocking the tool.

battles
8th June 2009, 14:08
CLSID,

I know that you've been barraged with requests for adding more decoder options to your very helpful bit of software; here's another. Would you mind adding MPCVidDec.ax to your list of decoder options? Because it enables hardware acceleration, it has been my experience that it is a very good video decoder.

Many thanks on behalf of the HTPC enthusiast community,

Battles

clsid
8th June 2009, 15:44
I'll put it on the todo list for next version.

The Microsoft decoder also has hardware acceleration and is probably has better compatibility than MPC's decoder (which is still buggy).

battles
8th June 2009, 18:37
Thanks CSLID,

This may not be the appropriate thread for this, but I'd appreciate your view on the best video decoders (by file type encoding...VC-1, .264, mpeg, etc.) that employ hardware acceleration. One problem I was having, in particular, when using the media foundation decoders in Win7, was with regard to the playback of .m2ts files encoded in VC-1 (got audio but no video when playing back through MCE/WMP12). I have since solved the problem by disabling the Media Foundation wrapper (msds.dll) and the WMV decoder (wmvdecod.dll). Now WMP/MCE plays back all of my video files; however, in the process, I feel as though I have lost some of the hardware acceleration for .m2ts AVC/.264 encoded files I was experiencing before disabling the aforementioned files (CPU load used to by 10% now around 60%) when using Microsoft's DTV/DVD Video decoder.

Your recommendations would be very helpful.

Best, Battles

clsid
8th June 2009, 19:50
Report your problems at the Microsoft Technet forums, preferably with a sample file. Then they might be able to solve those problems before Windows 7 goes RTM.

I don't play any VC1 content, so I can't make any recommendations for it.

zachdms
8th June 2009, 22:26
VC1 in M2TS won't be supported for RTM. It's a feature request that'll be looked at for the future. =\

battles: yeah, disabling aspects of playback would result in different and potentially bad results. That seems like it would be expected... ? :)

battles
8th June 2009, 23:02
Thanks. But, I'd rather have MCE playback .m2ts VC-1 than not, even with some slight degradation to CPU efficiency. Considering MS developed VC-1, I'm surprised that MS' support of VC-1 .m2ts will not be in the RTM. I'm sure there is a reason, but if you look at the number of blu-ray titles being released which were encoded in VC-1, it sure would be nice if MS supported this natively. Please feel free to enlighten me on this.

zachdms
9th June 2009, 01:29
Priorities. You have N people capable of doing X work at Y quality level.

You're making a Feature Request. :) The right people are aware of it, but it is not going to make the cut for this release, sorry. If they did go off and do that non-trivial work, it's a trade-off with 'other feature' that was deemed of more general value. Trying to be everything to everyone at once doesn't work well in practice. :)

battles
9th June 2009, 02:25
Thanks. I'm glad to hear that this is on the MCE project team's radar screen -- as it seems support for VC-1 playback is no less important than .264. Hopefully it will be addressed in a service pack or update post release. As you know, there's a community of enthusiasts who spend countless hours poring over chat rooms, forums etc, trying to get their MCE completely dialed in. I'm hopeful that those heading up the MCE project team for win7 fit this profile. A lot of us don't necessarily love the MCE product out of the box, but love its potential, and certainly appreciate what the MCE community on the web has done to optimize the MCE experience.

Thanks for sharing an insider's perspective.

MysTinuX
10th June 2009, 01:29
I am using Windows 7 RC Build 7100 64bit German I also had problems with a french release of 7 RC.

I had to set permissions on the Prefered regkey manually with SetACL Command line to use CLSID's tool.

How to do this :

Download and unzip this file : permissions.zip (http://www.homemedia.fr/dl/mce/reg/permissions.zip)
Edit permissions.cmd file
Change for every line this string : "Administrateurs" by the "Administators word" in german/french/spanish...
Save the file and run it with command line (see attached image file)

After that you sould be able to change decoders with CLSID's tool.

CLSID, do you think you could update your tool to support non english Windows 7 versions. I think you just have to change the "Administrator" or "Administrators" strings for SetACL command lines (I think your tool use this).

French translation :
Administrator=Administrateur
Administrators=Administrateurs

turbojet
10th June 2009, 09:34
I am not planning to add that at this moment. There are other tools that can scan for such issues. If a preferred filter can not be loaded, then DirectShow will simply fall back to using a different filter.
Those who want different alternatives than given by the tool can either request an addition or mess with the Registry themselves. I am not going to offer the possibility to delete the whole key.
The prompt can't be easily removed. I am not wasting my time on it.

OK I understand.

I also had problems with a french release of 7 RC.

I had to set permissions on the Prefered regkey manually with SetACL Command line to use CLSID's tool.

How to do this :

Download and unzip this file : permissions.zip (http://www.homemedia.fr/dl/mce/reg/permissions.zip)
Edit permissions.cmd file
Change for every line this string : "Administrateurs" by the "Administators word" in german/french/spanish...
Save the file and run it with command line (see attached image file)

After that you sould be able to change decoders with CLSID's tool.

CLSID, do you think you could update your tool to support non english Windows 7 versions. I think you just have to change the "Administrator" or "Administrators" strings for SetACL command lines (I think your tool use this).

French translation :
Administrator=Administrateur
Administrators=Administrateurs

Another option is using regini which shouldn't be affected by non-English versions because it uses numbers to set permissions.

For instance this pasted to a cmd or bat should work:
@echo off
Reg Query "HKLM\SOFTWARE\Wow6432Node" >nul
if errorlevel 1 goto 32BIT

echo \Registry\Machine\Software\Wow6432Node\Microsoft\DirectShow\Preferred [1 5 8] >> x64.txt
regini x64.txt >nul
del x64.txt >nul

:32BIT
echo \Registry\Machine\Software\Microsoft\DirectShow\Preferred [1 5 8] >> x86.txt
regini x86.txt >nul
del x86.txt >nul


This should set full access to admin/creator and read access to world.

clsid
10th June 2009, 12:56
Changing the ownership of the key is the problem. But I have found the solution for it. By using the SID instead of the localized name.

sarastro
10th June 2009, 19:09
Thank a lot for adding support for the MPC DXVA decoder! Now I've got the same performance -CPU wise- with Media Center on x64 as I have with MPC-HC.

MPC-HC is my default player and a great one, but Windows Media Center with the Mediabrowser plug-in is just a lot slicker and awesomer for browsing through your video collection.

MysTinuX
11th June 2009, 10:37
CLSID, could you also add NVIDIA Pure Video MPEG-2 Decoder?
It is as good as Dscaler 5.

NVIDIA Pure Video MPEG-2 Decoder : {EAFD99D7-54B6-4e87-8C7C-6A3C85F8997C}

turbojet
11th June 2009, 12:31
There's also xvid x64 but I'm having issues finding the CLSID.

clsid
11th June 2009, 12:57
Will add Purevideo in next version.

Xvid x64 is already supported. I have assumed its clsid is the same as the 32bit version.

dimitrik
13th June 2009, 23:31
Hi CLSID, and thank you very much for the fantastic tool!
Combined with K-lite it makes my Win7 desktop sing.

I have a feature request though. Can you add Audio codecs to the tool?

I nhave some videos with multiple audio streams and some flacs and the tool would make it possible to make ffdshow audio the default for those in Win-7 Media Centre.

Thanks a lot, your work is incredibly valuable to the community!

clsid
13th June 2009, 23:51
AC3/DTS/Vorbis don't have a preferred decoder set. I have tried adding an entry for AC3, but it did not have any effect. Although I did only do a tiny bit of testing.

For MP3 there is a preferred entry. However, setting ffdshow as the default caused problems, audio was not decoded properly.

But since the tool makes the contents of the Registry key modifiable, everyone can experiment with adding/changing entries. The mediatype value for MP3 is {00000055-0000-0010-8000-00AA00389B71}. AAC is {000000FF-0000-0010-8000-00aa00389b71}. LPCM is {e06d8032-db46-11cf-b4d1-00805f6cbbea}.

dimitrik
14th June 2009, 08:57
That's too bad. Although its not that common, there's still plenty of multi-audio-stream content out there and it seams Win-7 will not cope with it no matter what we hack:-(

dimitrik
17th June 2009, 22:59
By the way, will this be incorporated in k-lite?

battles
18th June 2009, 17:33
CLSID,

Thanks for adding the MPC decoder to your excellent utility. However, even though I have MPC registered as a decoder in Win7, it does not show up as an option in your preferred filter utility. Does MPC show up for you?

Thanks,

Battles

clsid
18th June 2009, 18:27
I haven't got time to test it right now. Afaik it is working for other users. Maybe someone here can confirm if it works or not.

turbojet
18th June 2009, 22:11
MPCVideoDec.ax 1161 (http://www.xvidvideo.ru/component/option,com_docman/task,doc_download/gid,1908/) x86 and x64 work ok for me with H.264 and VC-1 but the tool isn't showing for DivX\XviD even though it decodes ok. Are you registering it ok?

This is what I used to install, copy to txt and rename to .cmd or .bat
@echo off
Reg Query "HKLM\SOFTWARE\Wow6432Node
if errorlevel 1 goto 32bit
copy MPCVideoDec.ax "%SYSTEMROOT%\syswow64" /Y 1>nul 2>&1
regsvr32 /s "%SYSTEMROOT%\syswow64\MPCVideoDec.ax"
exit
:32bit
copy MPCVideoDec.ax "%SYSTEMROOT%\system32" /Y 1>nul 2>&1
regsvr32 /s "%SYSTEMROOT%\system32\MPCVideoDec.ax"
exit


and uninstall
@echo off
Reg Query "HKLM\SOFTWARE\Wow6432Node
if errorlevel 1 goto 32bit
regsvr32 /s /u "%SYSTEMROOT%\syswow64\MPCVideoDec.ax"
del "%SYSTEMROOT%\syswow64\MPCVideoDec.ax"
exit
:32bit
regsvr32 /s /u "%SYSTEMROOT%\system32\MPCVideoDec.ax"
del "%SYSTEMROOT%\system32\MPCVideoDec.ax"
exit


For x64 only include the lines below :32bit

A filter that's missing is MPC - MPEG-2 Video Decoder (Gabest): Mpeg2DecFilter.ax, {39F498AF-1A09-4275-B193-673B0BA3D478}

clsid
18th June 2009, 22:20
The tool only shows it as an option for H.264 and VC-1. I could add it for DivX and Xvid in some future version, if people really want to use this crippled filter instead of ffdshow for non-DXVA stuff.

turbojet
19th June 2009, 19:31
It's up to you but some users might like the choice to use them. I use MPC-HC's internal decoder for XviD\DivX and they work fine but I haven't tried comparing the video to other decoders but I'm ok with using ffdshow in directshow.

One more thing that seems missing is XviD under default DivX decoder.

clsid
19th June 2009, 23:47
One more thing that seems missing is XviD under default DivX decoder.That would require adding a check on the DivX filter settings to verify that it is configured for Xvid/MP4V decoding. At least that is the proper way to make it idiot-proof. I simply haven't had time to add it yet. It's not a priority for me. Same thing applies for using the Xvid decoder for DivX/MP4V.

clsid
20th June 2009, 13:53
New version available.

Snowknight26
20th June 2009, 22:23
Possible to host it somewhere that doesn't require you to wait?

Keiyakusha
20th June 2009, 22:35
Possible to host it somewhere that doesn't require you to wait?
... and that doesn't require you to turn off all adblocking

Yes, please host it somewhere else...

elminster13
21st June 2009, 21:44
I hate to ask dumb questions, but if you don't ask you'll never know, so here goes, and please don't flame me, if I should direct this question into another thread then I shall.

As a lay person, what does this tool allow me to do? I have ffdshow and arcsoft tmt3 installed and ideally I would like to be able to play blu ray rips direct in mediacenter. Would this tool allow me to change my filter to arcsoft and play in media center? or am I way off?

Again sorry if posted in wrong thread.

mhealy
22nd June 2009, 14:20
I'd be glad to set up ftp hosting or even a complete site hosting for the files if you'd like. I can't stand file sharing sites that make you wait and throw every ad in the book at you either.

Edit: That was dumb I didn't leave contact info. You can reach me via email at mhealy@hack7mc.com

clsid
22nd June 2009, 17:01
It will soon be placed on a proper host.

Joniii
28th June 2009, 20:22
New problems with the latest Windows 7 builds (7229, 7260 and newer).

Haali Media Splitter doesn't work anymore with .ts or .m2ts files, only with .mkv.

I forced Haali splitter to load by disabling one of the Media Foundation files in system32 dir, installed latest ffdshow and changed VC-1, H.264 and MPEG-2 codecs to ffdshow with this utility but only VC-1 uses ffdshow.

It seems that H.264 and MPEG-2 (msmpeg2vdec.dll) can't be changed from DirectShow registry entries anymore, it can only be changed from [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Decoder].

But if you change that registry entry for ffdshow, LiveTV won't work anymore in Media Center.

dimitrik
28th June 2009, 23:57
I'm beginning to think Win-7 is a waste of time for video especially media center. Every new build finds new ways to disable our ability to select codecs and settings.

I have a functioning set-up in Win7-x64, using only the x64 KLCP, although some niceties like flac playback in WMC and tag support for aac/m4a and flac is iffy.

But the prospect of hacking it again on the RTM version even with great tools like this one, is enough to make me stick with vista for another year:mad: