Vista MCE Codec Bible (abridged edition)
As codec conflicts are inevitable as soon as you install several applications that do the same thing, and as there is NO single Codec Pack that just makes everything work, I'm sharing my experience on configuring DivX, XviD and MKV playback for maximum quality and feature support.
This is especially important for those who need subtitles, multiple audio streams, and features like resuming, fast forward and rewind in Media Center -- all sorely lacking in the default setup.
I've extensively researched workarounds and solutions for common problems, limitations and annoyances, like the Haali media splitter crashing with subtitles, FFDShow picking the "right" subtitle file (if properly named) but unable to detect alternate-language subtitles for the same video, the impossibility to fast forward and rewind DivX and XviD movies in Media Center, the lack of resume support for the same files, the DivX codec on its own being unable to correctly play a "BivX" (DivX with multiple audio streams, e.g. the movie and the commentary, or two audio languages) without losing audio-video synchronization, the high CPU usage of some codecs and filters versus the low quality of others, etc.
What works for me is the following series of products installed on my MCE, installed in this order:
Making it work for DivX / XviD AVIs:
NOTE: when (re-)installing FFDShow, preferably use the following options:
NOTHING else for now. In Speaker Setup (next screen), choose your setup correctly, or just pick 2.0 (stereo) [see below !]. If asked to restart: do so.
- open the FFDShow Audio Configuration tool:
The Volume filter can allow you to normalize volume or increase surround; the Mixer will modify the audio stream to fit your speaker configuration. Note: if MP3 audio doesn't play correctly in movies, you may associate MP3 audio with LibAvCodec here. If AAC and/or AC3 don't work, you can enable that here too. These steps are actually necessary if you want to play "BivX" (dual-audio avi) movies.
The Volume filter can allow you to normalize volume or increase surround; the Mixer will modify the audio stream to fit your speaker configuration.
Note: if MP3 audio doesn't play correctly in movies, you may associate MP3 audio with LibAvCodec here. If AAC and/or AC3 don't work, you can enable that here too. These steps are actually necessary if you want to play "BivX" (dual-audio avi) movies.
- open the FFDShow Video Config:
The "Raw" option in the Codecs ensures that FFDShow Video is always used when decoding movies; it won't do the actual decoding, but act as a "middle man" which allows other stuff, such as displaying subtitles, but more importantly, it'll allow us to have Automatic Resume as well as fast forward and rewind for nearly all video formats [requires MediaControl: see below].
- open the DivX Decoder Configuration Utility:
These options ensure that the DivX Pro Codec is used as default for DivX, XViD and related formats, with Full Deblocking & Sharpening enabled (say what you want, it displays much better than XViD's decoder or FFDshow on its own).Leave "DivX Logo Watermark" ON, it'll help you verifying that this codec is being used.
- open XVid's Decoder configuration utility:
make sure it is NOT the default for anything (uncheck all under FourCC support), and enable the four deblocking and dering options. I'm just keeping XviD for encoding, and as a backup if DivX has a problem with a file.
- open the DirectVobSub (VSFilter) configuration tool:
Don't worry if an error occurs after quitting the DirecVobSub configuration, it's normal if you started it on its own. This doesn't happen if you double-click the "green arrow" that appears in the system tray while playing a movie with subtitles played through DirecVobSub. On Resolution Doubling: 1279x719 is what works for me. It'll double the movie size (and subtitle resolution, making them much nicer) for all movies that are any size up to 1 pixel smaller than a standard .MKV 720 lines movie. Above that, you MAY only see half the picture with this option enabled. This setting may not be right for all users. Some may be able to use "Always double resolution" in all cases, or may have to set it to "1919x1079" (1 pixel smaller than 1080 lines)... just try it out with a 1080p .MKV movie and see how far you can go.
Don't worry if an error occurs after quitting the DirecVobSub configuration, it's normal if you started it on its own. This doesn't happen if you double-click the "green arrow" that appears in the system tray while playing a movie with subtitles played through DirecVobSub.
On Resolution Doubling: 1279x719 is what works for me. It'll double the movie size (and subtitle resolution, making them much nicer) for all movies that are any size up to 1 pixel smaller than a standard .MKV 720 lines movie. Above that, you MAY only see half the picture with this option enabled. This setting may not be right for all users. Some may be able to use "Always double resolution" in all cases, or may have to set it to "1919x1079" (1 pixel smaller than 1080 lines)... just try it out with a 1080p .MKV movie and see how far you can go.
- open the AC3Filter Config tool:
Note that the "Output Format" present in different tabs depends on your actual system. Select what corresponds to your actual audio outputs, not the number of speakers you have. If you have 4 speakers but they're connected using a single "Audio Out" on your computer and not Front and Rear separately, you must select "2/0 Stereo".
- opening movies for analysis and codec / filter tweaking in HeadBand GSpot:
(Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[ffdshow Video Decoder ]>--(C)-->[Video Renderer ]Failed to connect Output pin 0x06c6da9c ("Stream 00") on AVI Splitter to input pin 0x076c7f6c ("In") on filter 0x04f82b1c ("ffdshow Video Decoder").ConnectDirect() failed. Error: 0x80040207: [unknown] (Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[DivX Decoder Filter ]>--(C)-->[Video Renderer ]Video Render OK. Use [3] to play. (Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[Xvid MPEG-4 Video Decoder ]>--(C)-->[Video Renderer ]Video Render OK. Use [3] to play.(Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[VFW:XviD MPEG-4 Codec ]>--(C)-->[Video Renderer ]Video Render OK. Use [3] to play. The stuff in red above shows that FFDShow failed to render this video "on its own". That's quite normal, because DivX and XviD decoding are disabled in FFDShow (change those options temporarily and you'll see this line will be green too).
(Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[ffdshow Video Decoder ]>--(C)-->[Video Renderer ]Failed to connect Output pin 0x06c6da9c ("Stream 00") on AVI Splitter to input pin 0x076c7f6c ("In") on filter 0x04f82b1c ("ffdshow Video Decoder").ConnectDirect() failed. Error: 0x80040207: [unknown]
(Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[DivX Decoder Filter ]>--(C)-->[Video Renderer ]Video Render OK. Use [3] to play.
(Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[Xvid MPEG-4 Video Decoder ]>--(C)-->[Video Renderer ]Video Render OK. Use [3] to play.
The stuff in red above shows that FFDShow failed to render this video "on its own". That's quite normal, because DivX and XviD decoding are disabled in FFDShow (change those options temporarily and you'll see this line will be green too).
(Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[DivX Decoder Filter ]>--(C)-->[DirectVobSub (auto-loading version) ]>--(D)-->[Video Renderer ](Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[ffdshow Audio Decoder ][Default DirectSound Device ] or (Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[DivX Decoder Filter ]>--(C)-->[DirectVobSub (auto-loading version) ]>--(D)-->[Video Renderer ](Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[ffdshow Audio Decoder ]>--(C)-->[AC3Filter ]>--(D)-->[Default DirectSound Device ]
(Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[DivX Decoder Filter ]>--(C)-->[DirectVobSub (auto-loading version) ]>--(D)-->[Video Renderer ](Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[ffdshow Audio Decoder ][Default DirectSound Device ]
or
(Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[DivX Decoder Filter ]>--(C)-->[DirectVobSub (auto-loading version) ]>--(D)-->[Video Renderer ](Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[ffdshow Audio Decoder ]>--(C)-->[AC3Filter ]>--(D)-->[Default DirectSound Device ]
NOTE: if you have other filters from e.g. Sonic, Cyberlink, Nero, Roxio or others occuping those "top" positions, either lower their Merit or unregister them. If they are used to "split" or "decode" any of the formats used by Media Center, they'll cause unpredictable behavior. Also, you must make sure that Microsoft's MPEG video and audio decoders are always at the top of the list, as these are used for Recorded TV in Media Center. See below in the Matroska section for details.
(Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[DivX Decoder Filter ]>--(C)-->[ffdshow Video Decoder ]>--(D)-->[DirectVobSub (auto-loading version) ]>--(E)-->[Video Renderer ] (Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[ffdshow Audio Decoder ]>--(C)-->[AC3Filter ]>--(D)-->[Default DirectSound Device ]
(Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[DivX Decoder Filter ]>--(C)-->[ffdshow Video Decoder ]>--(D)-->[DirectVobSub (auto-loading version) ]>--(E)-->[Video Renderer ]
(Src)-->>--(A)-->[AVI Splitter ]>--(B)-->[ffdshow Audio Decoder ]>--(C)-->[AC3Filter ]>--(D)-->[Default DirectSound Device ]
... you can see in the 1st line that the FFDShow Video Decoder now comes after the DivX Decoder in the same rendering path.
If FFDShowVideo Decoder doesn't appear at all in your case, try opening FFDShow Video Configuration, go to Codecs, and enable libavcodec for DivX 4/5/6 and for XVid temporarily. Save, then render an XviD and a DivX in GSPot. Back in the codecs screen, re-disable XViD and DivX 4/5/6 and save, then back to GSpot (reload !!) and render again using MS A/V. Now FFDShow Video Decoder should appear... don't ask me why.
Now for Matroska's .MKV movies:
Load a .MKV high-res movie (720p or 1080p) in MediaInfo and verify that it uses an AVC video stream and an AC-3 Audio stream like proper HD rips should (note: .MKV movies don't "have" to be HD, there are also low-definition MKVs. If it's over 1 GB for a 40-minute series episode, it's probably HD). Close MediaInfo. Open the same file in GSpot. You can only render using MS A/V, the other rendering options are disabled: press the "1" button to render.
NOTE: Haali vs. Gabest's Matroska Splitter: Gabest's Matroska splitter has issues where .MKV movies in 1080p would inexplicably "stutter" when played from a LAN device (e.g. a NAS box), and testing showed that Haali doesn't have this problem. To avoid subtitle issues with Haali, make sure it doesn't handle the subtitles (DirectVobSub should do that).Check your rendering results. If you see 3rd party filters or codecs like e.g. "Nero Splitter" (but this also applies to stuff from Sony / Sonic, Roxio, ...), proceed as follows - BE CAREFUL!!.
Lowing the Merit of / Unregistering Unwanted Filters and Codecs:
You should see the following:
(Src)-->>--(A)-->[Haali Media Splitter ]>--(B)-->[DivX H.264 Decoder]>--(C)-->[DirectVobSub (auto-loading version) ]>--(D)-->[Video Renderer ] (Src)-->>--(A)-->[Haali Media Splitter ]>--(B)-->[AC3Filter ]>--(C)-->[Default DirectSound Device ]
(Src)-->>--(A)-->[Haali Media Splitter ]>--(B)-->[DivX H.264 Decoder]>--(C)-->[DirectVobSub (auto-loading version) ]>--(D)-->[Video Renderer ]
(Src)-->>--(A)-->[Haali Media Splitter ]>--(B)-->[AC3Filter ]>--(C)-->[Default DirectSound Device ]
FFDShow's "Raw Video" option: Why you should enable this
Wonder why I insist on using FFDShow and having it enabled for all types of video (through the "Raw Video: All Supported" setting in FFDShow video config) ?
Because it's the only way -- in conjunction with the excellent Media Control tool -- to enable Fast Forwarding, Rewinding and Resuming in DivX and MKV movies.
Media Control for Windows Media Center
You can download MediaControl from http://damienbt.free.fr/index.php.
Current version is 6.0.2 You need to have .NET installed first, but due to a bug in the installer, MediaControl may continue to prompt to install it. Ignore this and continue the setup.
Mind the following options, which you need to set through the Media Control Configuration Program:
Note that Media Control can also be used to "add" FFDShow processing to Live TV, Recorded TV and DVD Playback in Media Center. This would enable picture improvement, rescaling, removal of black bars, etc. for those video sources. I haven't really experimented with it.
Also, Media Control can be used to assign "macros" and some direct commands to your MCE Remote. Among other things, you can use the Direct Commands to change the subtitle stream on the fly, without needing to minimize MCE to go to the DirectVobSub icon.Audio Stream switching is theoretically also possible, but I couldn't get it to work for "BivX" movies.
Macros are launched through a "prefix" key (the Yellow button by default). They can be used for almost anything, from launching keyboard commands to starting external programs.
Direct commands are accessed during playback by pressing the Up key on the remote; then you can use the Left & Right keys to scroll through the available commands, and Up & Down to change the values.
... and what now ?
Now you can try playing media files in Media Player by double-clicking them in Windows Explorer. If everything has been done correctly, you'll see the following icons in the System Tray when opening a DivX or XviD file:
When movies are decoded through the Divx Decoder, you'll also see the DivX logo as a watermark at the bottom right of your video for about 5 seconds each time you start playing a video. I leave this on to ensure I'm always using this codec (upgrades etc. can change the codec merits !).
You can right-click on the green arrow icon (DirectVobSub) in the system tray to change subtitles or to change audio streams if there are several. You can then also see which audio / video filters & codecs are in use to play this file.Right-click the blue FFDShow icon to switch audio stream as well, and to enable / disable its filters, if any. The same goes for the red FFDShow icon. Both FFDSHow icons allow you to enable / disable their OSD, which shows additional info in the video window, which is great for troubleshooting when you're starting. Advice: configure the OSD for Video to display CPU Load, Input and Output description, Input Size, Encoder and Decoder info. For the audio OSD, use the same except Output description and Input Size.
Caveat: with the setup I've explained here, double-clicking a DivX or XviD video file in Windows Explorer, in order to play it in Media Player, will cause the following problem if this file has no subtitles: it will take longer before it starts playing, and the DivX system tray icon will appear and disappear several times. This is a consequence of passing all raw video through FFDShow, and there is no workaround for this in conjunction with the DivX 7 codec. No problem though: this does not occur when playing in Media Center... " src="http://thegreenbutton.com/emoticons/emotion-1.gif" mce_src="/emoticons/emotion-1.gif">.
You can now open the file in Windows Media Center too. In order to properly monitor the results, proceed as follows for testing:
Conclusions:This method for configuring your codecs gives you the following advantages and features:
Resources and Downloads:
OK That's it for now. Last updated: 17 September 2009, 20.10 CET
______________________________________________________________
Also check out my post on Changing Vista Media File Associations in this thread:http://thegreenbutton.com/forums/thread/314597.aspx
Greetings,
Frank.
Hey thank you for sharing. This type of document has been needed for awhile now.
Jay
Frank,
Check your inbox... but I'd be happy to host this in a form that would be very easy to edit if you'd like. You could also then include pictures and/or any files for download related to it.
Let me know, and thanks for the great work thus far.
1) it IS ffdshow-tryouts (check the download link) i'm just using "ffdshow" as the name because that's the name of the software, in the software, on the title bar etc. The techincality that it's a kind of development spinoff doesn't interest users.
2) RealAlternative: I have no use for this. Is there anything that's MCE-integrated that uses Real ? If not, I don't want it.
3) QuickTimeAlternative: why use the alternative rather than the original product ?
4) AC3 filter: quality, performance, and PROPER volume gains and normalization. FFDshow does a much poorer job.
5) Roxio / Nero / etc.: I mention those because it's what I use. Many people have one of those. I only mention them because i'm talking about codec conflicts later. I have imgburn, yes, too. As imgburn doesn't have any codec-related features, it's actually irrelevant whether it's installed or not. This is a CODEC (and related) guide, after all.
6) CoreAVC: i'd have to see real data on whether it actually performs better than ffdshow for x264 decoding. Haven't seen anything similar until now.
7) CyberDVD: don't know it (unless you mean Cyberlink PowerDVD of course). The quality and stability of Cyberlink's PowerDVD is well known (it's even recommended to install it so its codecs can be used for some "advert-skipping" products).
8) AutoGK: yes, in case someone wants to rip something, and also because it installs a stable version of XviD, and VDubMod which I use to verify codec versions and properties from time to time, and Gabest's full VobSub suite.
You're not taking subtitles and audio streams into account. This is the main problem in any MCE setup, and it's something English-speaking users don't seem to understand. If you haven't done this, then you cannot understand why so much complication, therefore you cannot give an estimation of what's necessary or not.
As far as DivX is concerned, either you don't know what you're talking about or you didn't read my article. There is no match for the quality of DivX's "full deblocking with sharpening". Nothing else even comes close. FFDshow doesn't, and XviD doesn't. I've stated why I'm keeping XviD "as a backup just in case". It can also be used to encode movies if the user wants to rip something.
The aim of my guide is to get the highest possible picture quality and the best possible functionality with a "mainstream" processor (my mediacenter is now a Dual Core E4600).
Conclusion: if you want basic picture quality with little or no improvement and have no need for subtitles or multiple audio streams, yes, ffdshow and haali media splitter and some .x264/AVC decoder are probably all you need, and then my guide isn't for you.
If however you do need real picture improvement and require subtitle switching and the ability to switch audio streams, it's a lot more complicated.
And face it: the majority of the world population is NOT English-speaking, whatever the Americans want to believe. For non-English speakers, and for non-native English speakers like me, subtitles are often necessary. Multiple audio streams are nice, not only for different languages, but also for e.g. making a DivX with the main movie audio and the commentary track. This requires special processing, and an interface that can handle it.
Ffdshow on itself doesn't handle subtitles well. If you have a .SRT subtitle file in the same folder as the movie you're playing, ffdshow will pick it up; but if there are many movies or episodes in the same folder, and you have different language versions of the subtitles, ffdshow cannot show you the language alternatives. When asking for a different subtitle, it'll just list ALL the .srt files in that folder. Which is a mess. With DirecVobSub, all you need is to append some kind of language identifier after the movie name in the .SRT filename, e.g. "Stargate Atlantis 1.01.EN.srt" and "Stargate Atlantis 1.01.NL.srt". It'll show those two in its system tray menu while playing the movie. And MediaControl will then offer just those two when using direct commands.
Also, ffdshow's subtitle display isn't very nice, the polygonized rendering quality in DirectVobSub is a lot better.
Another reality is that many people install some of those awful "codec packs" out there that create more problems than they solve.
One of the important aspects of keeping your codecs under control is to be able to master the Filter Merits; that's why a good part of my guide is exactly about that.
Any installation (e.g. PowerDVD, Nero, Roxio, WinDVD, you name it... iTunes...) is likely to mess up your preferences for which codecs are used when playing a file of a certain type; therefore it's important to know how to analyze which codecs are used and how to change that.
FrankGeelen: 1) it IS ffdshow-tryouts (check the download link) i'm just using "ffdshow" as the name because that's the name of the software, in the software, on the title bar etc. The techincality that it's a kind of development spinoff doesn't interest users. 2) RealAlternative: I have no use for this. Is there anything that's MCE-integrated that uses Real ? If not, I don't want it. 3) QuickTimeAlternative: why use the alternative rather than the original product ? 4) AC3 filter: quality, performance, and PROPER volume gains and normalization. FFDshow does a much poorer job. 5) Roxio / Nero / etc.: I mention those because it's what I use. Many people have one of those. I only mention them because i'm talking about codec conflicts later. I have imgburn, yes, too. As imgburn doesn't have any codec-related features, it's actually irrelevant whether it's installed or not. This is a CODEC (and related) guide, after all. 6) CoreAVC: i'd have to see real data on whether it actually performs better than ffdshow for x264 decoding. Haven't seen anything similar until now. 7) CyberDVD: don't know it (unless you mean Cyberlink PowerDVD of course). The quality and stability of Cyberlink's PowerDVD is well known (it's even recommended to install it so its codecs can be used for some "advert-skipping" products). 8) AutoGK: yes, in case someone wants to rip something, and also because it installs a stable version of XviD, and VDubMod which I use to verify codec versions and properties from time to time, and Gabest's full VobSub suite. You're not taking subtitles and audio streams into account. This is the main problem in any MCE setup, and it's something English-speaking users don't seem to understand. If you haven't done this, then you cannot understand why so much complication, therefore you cannot give an estimation of what's necessary or not. As far as DivX is concerned, either you don't know what you're talking about or you didn't read my article. There is no match for the quality of DivX's "full deblocking with sharpening". Nothing else even comes close. FFDshow doesn't, and XviD doesn't. I've stated why I'm keeping XviD "as a backup just in case". It can also be used to encode movies if the user wants to rip something. The aim of my guide is to get the highest possible picture quality and the best possible functionality with a "mainstream" processor (my mediacenter is now a Dual Core E4600). Conclusion: if you want basic picture quality with little or no improvement and have no need for subtitles or multiple audio streams, yes, ffdshow and haali media splitter and some .x264/AVC decoder are probably all you need, and then my guide isn't for you. If however you do need real picture improvement and require subtitle switching and the ability to switch audio streams, it's a lot more complicated. And face it: the majority of the world population is NOT English-speaking, whatever the Americans want to believe. For non-English speakers, and for non-native English speakers like me, subtitles are often necessary. Multiple audio streams are nice, not only for different languages, but also for e.g. making a DivX with the main movie audio and the commentary track. This requires special processing, and an interface that can handle it. Ffdshow on itself doesn't handle subtitles well. If you have a .SRT subtitle file in the same folder as the movie you're playing, ffdshow will pick it up; but if there are many movies or episodes in the same folder, and you have different language versions of the subtitles, ffdshow cannot show you the language alternatives. When asking for a different subtitle, it'll just list ALL the .srt files in that folder. Which is a mess. With DirecVobSub, all you need is to append some kind of language identifier after the movie name in the .SRT filename, e.g. "Stargate Atlantis 1.01.EN.srt" and "Stargate Atlantis 1.01.NL.srt". It'll show those two in its system tray menu while playing the movie. And MediaControl will then offer just those two when using direct commands. Also, ffdshow's subtitle display isn't very nice, the polygonized rendering quality in DirectVobSub is a lot better. Another reality is that many people install some of those awful "codec packs" out there that create more problems than they solve. One of the important aspects of keeping your codecs under control is to be able to master the Filter Merits; that's why a good part of my guide is exactly about that. Any installation (e.g. PowerDVD, Nero, Roxio, WinDVD, you name it... iTunes...) is likely to mess up your preferences for which codecs are used when playing a file of a certain type; therefore it's important to know how to analyze which codecs are used and how to change that.
This must be where I fall in then. The only 3rd party codec I have is Divx 6.8 installed, unless you count the vader transcoder, but this is just for my extender for ripped movies. I had PD8 on it until the restricted content was irritating my wife, so it was removed and went back to the MS decoder.
7MC (x64) Optiplex 745, DMA2200,Dlink DSM-750 connected Panny 46" Plasma
FrankGeelen:3) QuickTimeAlternative: why use the alternative rather than the original product ? 4) AC3 filter: quality, performance, and PROPER volume gains and normalization. FFDshow does a much poorer job. 6) CoreAVC: i'd have to see real data on whether it actually performs better than ffdshow for x264 decoding. Haven't seen anything similar until now. 7) CyberDVD: don't know it (unless you mean Cyberlink PowerDVD of course). The quality and stability of Cyberlink's PowerDVD is well known (it's even recommended to install it so its codecs can be used for some "advert-skipping" products).You're not taking subtitles and audio streams into account. This is the main problem in any MCE setup, and it's something English-speaking users don't seem to understand. If you haven't done this, then you cannot understand why so much complication, therefore you cannot give an estimation of what's necessary or not. As far as DivX is concerned, either you don't know what you're talking about or you didn't read my article. There is no match for the quality of DivX's "full deblocking with sharpening". Nothing else even comes close. FFDshow doesn't, and XviD doesn't. I've stated why I'm keeping XviD "as a backup just in case". It can also be used to encode movies if the user wants to rip something. The aim of my guide is to get the highest possible picture quality and the best possible functionality with a "mainstream" processor (my mediacenter is now a Dual Core E4600). Conclusion: if you want basic picture quality with little or no improvement and have no need for subtitles or multiple audio streams, yes, ffdshow and haali media splitter and some .x264/AVC decoder are probably all you need, and then my guide isn't for you. If however you do need real picture improvement and require subtitle switching and the ability to switch audio streams, it's a lot more complicated. And face it: the majority of the world population is NOT English-speaking, whatever the Americans want to believe. For non-English speakers, and for non-native English speakers like me, subtitles are often necessary. Multiple audio streams are nice, not only for different languages, but also for e.g. making a DivX with the main movie audio and the commentary track. This requires special processing, and an interface that can handle it. Ffdshow on itself doesn't handle subtitles well. If you have a .SRT subtitle file in the same folder as the movie you're playing, ffdshow will pick it up; but if there are many movies or episodes in the same folder, and you have different language versions of the subtitles, ffdshow cannot show you the language alternatives. When asking for a different subtitle, it'll just list ALL the .srt files in that folder. Which is a mess. With DirecVobSub, all you need is to append some kind of language identifier after the movie name in the .SRT filename, e.g. "Stargate Atlantis 1.01.EN.srt" and "Stargate Atlantis 1.01.NL.srt". It'll show those two in its system tray menu while playing the movie. And MediaControl will then offer just those two when using direct commands. Also, ffdshow's subtitle display isn't very nice, the polygonized rendering quality in DirectVobSub is a lot better.
Okay for number 3, because Quicktime itself is very bloated and you already have the proper directshow filters anyway. I don't use Quicktime myself anymore anyway though.
4. Many would argue that the highest quality doesn't include any volume gains and normalization. Moreover, for me personally, any normalization that I might want performed is done by my receiver, so it needs to be untouched on the way out, which makes ffdshow perfect for that. I guess maybe if you just have speakers attached directly to the PC I could understand that.
6. CoreAVC is MUCH faster than ffdshow x264 decoding. I don't have any tests or anything to prove it, but the general consensus is that if your PC isn't fast enough for ffdshow, then use CoreAVC. It does have slightly lesser video quality, but I'd imagine if your PC is that slow, you'd be happy to just play it.
7. I did mean Cyberlink PowerDVD, and have since fixed my post.
Now, for Divx's sharpening, I will say again, that many would say artificial sharpening of the picture isn't the highest quality. But anyway, you can choose to do any of that in post-processing in ffdshow should you choose to. It gives you much more control over the sharpening performed as well.
Multiple audio streams... I'm not sure why you would use any container other than mkv for multiple audio streams, so I don't see what the problem is there.
Subtitles... I have to admit, that I've never used DirectVobSub, so I can't comment on the quality of the subtitles there. However, even just in ffdshow, they're much better than any DVD / TV subtitles I've ever seen before, and you can add shadowing to them and choose the font to your preference.
A special interface to control the audio and subtitles is necessary, yes, and that's why I agreed that for some people Media Control is necessary. I don't use separate subtitle files but multiplex them into the video file itself and have absolutely no issues doing that with ffdshow, Haali, and Media Control.
And finally... I'm not sure why there was any reason for a comment about Americans there, but whatever.
I appreciate the work you put into the guide, and I'm glad that it works for you, but like I said, it seems like overkill for most, whether you care about quality or not.
FrankG,
Have you looked into anything regarding the DXVA codecs in use in the latest version of Media Player Classic - Home Theater? Besides the splitter, registering a few codecs (which are available separately from the player) gives me hardware-accelerated playback of h.264 in VMC, and it can even compensate for improperly flagged/profiled rips. This works for any of the modern cards that include HA for h.264 / VC-1.
Ha, so THAT is what DVXA is for
Well the good thing is: the x264/AVC1 decoder from PowerDVD9 has a DXVA option (found it when opening the decoder's properties through DirectVobSub's system tray menu while playing an MKV file).
So I guess that could explain why PowerDVD9, for HD MKV decoding, works very well on some machines but is bloody awfully slow on others....
Now, does anybody know if ffdshow's decoders support DVXA or not ?
And: can you also use DXVA to accelerate decoding of other formats (like DivX, XviD,...) ?