We will now devote a couple of sections to open source / freeware software for HTPCs running Windows 7.

One of the main issues with the integrated GPUs in the Clarkdale/Arrandale and Sandy Bridge CPUs is the fact that the Intel HD Graphics engine doesn't play nice with open source software. Commercial Blu-ray playback software have woeful support for MKVs and HD audio bitstreaming from non-Blu-ray sources. Users of the Intel IGP are often left to implement a series of hacks (such as using the Arcsoft and Cyberlink decoders in other DirectShow players) to get the expected HTPC experience.

Windows 7 uses the DirectShow / Media Foundation framework for media processing. A detailed description of the framework is beyond the scope of this piece. However, what we need to specifically be aware of is the architecture of the DirectShow framework, as described here.

The two important components of the filter chain in the above link are the splitter and the decoder. MPC-HC is undoubtedly the most common DirectShow based media player used to playback HD material. The player aims to make the task of the filter construction transparent to the user by packaging a variety of source filters for various containers. These include the Gabest MPEG Splitter, internal Matroska Splitter (I remember preferring the Haali Matroska Splitter from the CCCP codec pack in late 2009), MP4 Splitter, OGG Splitter etc. A look at the standalone filters reveals the large number of standalone source filters / splitters which are in the self-contained executable.

It is preferable to have a single actively developed multi-format splitter capable of handling a wide variety of containers with a multitude of audio and video codecs / subtitle formats. This is where the LAV Splitter project comes in. Basic supported for decrypted Blu-rays (playback of MPLS / index.bdmv files) is the icing on the cake.

With HD audio capable AV receivers becoming the rule rather than the exception, one increasingly finds users interested in HD audio bitstreaming. MediaSmartServer's Damian has a great guide dealing with the usage of ffdshow for HD audio bitstreaming. Advanced users often consider ffdshow Audio as bloatware for those who just want HD audio bitstreaming. LAV Splitter comes with the optional LAV Audio Decoder which achieves the same purpose. For users who want HD audio to be decoded in a bit-perfect manner, the LAV Splitter can also connect to the Arcsoft Audio Decoder as explained here. In this section, we will deal only with HD audio bitstreaming.

The gallery below shows the sequence of steps to install LAV Splitter and Audio Decoder on a Windows 7 machine for usage with MPC-HC. You can also use any other DirectShow based player. The LAV Audio Decoder is then configured to bitstream all the HD audio formats.

Ensure that all the file formats chosen in screenshot 5 are unselected in screenshot 8 (MPC-HC options -> Internal Filters -> Source Filter). Also, the Transform Filters for AC3 and DTS must be unselected to ensure that the LAV Audio Decoder is used. Screenshots 9 through 12 show the setting up of the LAV Audio Decoder for bitstreaming in the External Filters section using the 'Add Filter' button. Screenshots 13 through 16 show the setting up of the LAV Splitter in a similar manner. Fortunately, the default settings in the splitter configuration are good to go unless you have some specific requirements with respect to the language code or don't want the LAV Splitter to activate for some specific extensions. Make sure that both the LAV Splitter and the LAV Audio Decoder are set to 'Prefer' in the External Filters section.

Playing back interlaced VC-1 clips with the default codecs in MPC-HC usually results in a blank screen. To resolve this, the Arcsoft Video Decoder needs to be registered and used. (The WMV Decoder DMO codec is able to play back such clips, but it does software decode). After installing Arcsoft TMT (TMT 5 was used to test this out), the Arcsoft Video Decoder (ASVid.ax) was manually registered using the regsvr32 command in Administrator mode. This exposes the decoder for inclusion in the External Filters section in MPC-HC, as in the first picture of the gallery below. However, setting the decoder to Preferred doesn't enable its usage unless the checkactivate.dll from this doom9 post gets placed in the same folder as ASVid.ax. After this process, an interlaced VC-1 clip can be loaded into MPC-HC. In the default configuration, you will still end up with a blank screen. The VC-1 output compatibility of the LAV Splitter needs to be configured to reflect the presence of the Arcsoft VC-1 decoder, as in the rest of the screenshots in the gallery below. Note that this configuration is necessary only for AMD (and Intel) GPUs. NVIDIA GPUs have a open source decoder capable of playing back interlaced VC-1 clips in any DirectShow based player. We will cover that in the next section.

Once configured, you should be able to see the filters in action during the playback of any media file in the appropriate container.

Playing The DaVinci Code's BR Folder Structure - index.bdmv

(Click to Enlarge)

We have never seen the ffdshow Audio decoder successfully bitstream E-AC3 (Dolby Digital Plus). With the LAV Audio Decoder, there were no such issues.

Dolby Digital + Lights Up on the Onkyo 606

The ease of use of the LAV Audio Decoder, its tight integration with LAV Splitter and the ability to use the Arcsoft HD audio decoder for DTS-HD / DTS-ES streams (for which no open source decoders exist) make it a very attractive option for HTPC users.

GT 430 Bitrate Limitations and the GT 520 VDPAU Feature Set D Software for NVIDIA HTPCs : LAV CUVID and madVR
Comments Locked

70 Comments

View All Comments

  • ganeshts - Thursday, June 16, 2011 - link

    PotPlayer apparently doesn't have support for hardware deinterlacing, and has a host of other issues [ Search for PotPlayer in this page and then read the next set of posts about it : http://www.avsforum.com/avs-vb/showthread.php?p=20... ].

    Of course, if it works for you, it is great :) (probably it is a good solution for people watching progressive material only).

    The author of LAV CUVID talks in that thread about how renderless DXVA mode works with madVR at the cost of deinterlacing.

    Btw, there is no decode of DTS-HD in any open source software now. Both ffdshow and PotPlayer can decode only the core DTS soundtrack. DTS decode has been around for a long time, though.
  • NikosD - Saturday, June 18, 2011 - link

    Indeed, I was referring to progressive material only - interlaced material is rare - but the page you mentioned says PotPlayer has CPU deinterlacing.

    I don't see where is the problem.

    Hardware Deinterlacing is less important - for most users - than Hardware Decoding (DXVA) and less important than the UNIQUE capability of using DXVA + madVR at the same time.

    The cost of hardware deinterlacing is nothing compared to the cost of DXVA and madVR.

    For the audio part of your answer, I have to say that because of my AVR (Pioneer VSX-920) decoding inside a PC, BluRay, Media Player or any other decoding capable device of multi-channel audio is never an option for me.

    I always prefer the bitstreaming solutions for multi-channel audio - as most of the owners of AVR do - like those provided by FFDshow and PotPlayer which both are more than capable of providing them.

    That's why I wrote "decoding and pass-through", I had to write "splitting and pass-through".

    One last word.

    For every piece of software out there, there is always a list of changes, bugs, things to do.

    That doesn't mean we don't use it or like it.
  • PR3ACH3R - Friday, June 17, 2011 - link

    @Ganesh T S,
    This is some NICE work.
    In fact, I cannot recall when was the last time I have seen such an in depth article on the HTPC GPU subject in Anandtech.

    The balance between the technical issues, the background, & the effort to honestly report all issues known to you in this article, is spot on.

    If it is missing something on the issues report, it misses on the ATI/AMD DPC Latency spiking issues.

    As this is still remains unnoticed in Anandtech even in this excellent article, here is a link to the AVS post describing it.

    http://www.avsforum.com/avs-vb/showthread.php?t=12...

    (Ignore some of the discredit attempt posts in this thread, this problem exists to this very day.)
  • NikosD - Thursday, June 23, 2011 - link

    Well, I did some further tests and found out that PotPlayer does have hardware deinterlacing.

    Have you done any tests by yourself to see if the player supports Hardware Deinterlacing ?
  • ganeshts - Saturday, June 25, 2011 - link

    NikosD, I will definitely try PotPlayer out in the next GPU review. Till now, my knowledge is limited to what is there in the AVSForum thread.
  • flashbacck - Friday, June 24, 2011 - link

    I know HTPCs are even more of niche these days than ever, so I appreciate you still doing these tests very much.
  • wpoulson - Thursday, July 28, 2011 - link

    I really appreciate this guide and have been stepping through it

    I just registered the ASVid.ax file from TMT5 but the filter is not showing up in the External Filter section of MPC-HC. At first I thought it might be because I registered it on the 32 bit side and I'm using 64 bit MPC-HC, so I unregistered the file from System 32 and registered it on the 64 bit side.

    I registered it by going to Start>CMD>Cntrl-Shift-Enter and using the "Regsvr32" command to register the file. I put the file along with the checkactivate dll in a folder in the root directory of my C drive and pointed the Regsvr command to the ASVid.ax file. After hitting enter, I received a "dll successfully registered" message.

    Can someone help me to get the filter visible for MPC-HC?

    A question...While it's considered beta, will the new LAV video decoder do the same thing the arcsoft video decoder does?

    Thanks

    Warren
  • stuartm - Friday, January 20, 2012 - link

    I am aware the gt 430 is a good choice to work around the infamous WMC 29/59 framerate bug. Can you comment on whether or not the 6570 will stutter or not when playing content with 29/59 framerate problems? A very important consideration for those of us using ceton or HDHR Primes (or the new Hauppauge box) for cable TV Live viewing and record/replay.

    Thank You
  • MichaelSan1980 - Saturday, January 21, 2012 - link

    I'd use my HTPC for DVD's and BD's only with an Full-HD TV. Since i have a rather strong CPU and wouldn't use Hardware Deinterlacing for DVDs, i wonder, if the GT520 is ~that~ bad, in terms of image quality?
  • drizzo4shizzo - Wednesday, June 20, 2012 - link

    Old guy here.

    In the market but I need confirmation that these cards can do component output to "old guy" HDTV.

    NONE of the marketing materials suggest that any recent card can.

    Meaning they either come with a component video breakout or at least are compatible with a known 3rd party product, and that they can do the RGB -> YUV thing.

    This ancient EVGA 7600 GT I have does it... with an "svideo lookalike" 7 pin -> component breakout.

    Anyone? Beuller?

Log in

Don't have an account? Sign up now