The first version of this article has elicited passionate responses from many readers. Some people have come out in support of VLC, while others are proponents of MPC-HC or Windows Media Player, with a preference for some codec packs. This is the sort of comparison I really didn't want to make in the article. However, I do feel it is now pertinent to add a few notes.

VLC's Target Audience

VLC is targeted at the lowest common denominator of computer users. We are talking about users for whom the average Anandtech reader actually sets up a newly purchased PC or does tech support for. This is not to say that VLC doesn't have its utility for power users. There is no 'one-size-fits-all' media player. VLC used to be one, but with the advent of HD media, it ceased to be. MPC-HC is trying to be one, but it is not so convincing in its current state.

VLC is Bloatware

A reader in a private communication accuses VLC of being bloatware, and praises MPC-HC for being light and fast. VLC used to be light and fast in its early days too. As more and more functionality is added, and people request more and more features, there is no guarantee that MPC-HC will continue to remain so. Software application development goes through these stages, and past a particular point, it becomes bloatware (Adobe Acrobat Reader is a case in point). At some point or the other, the developers realize this, and rewrite parts of the application / implement acceleration of some sort. I hope (and believe) VLC's development is at that stage now. It is probably too late for VLC to shift to the approach used by MPC-HC / mplayer-VDPAU of having separate development for Windows and Linux platforms. This could have resulted in more efficient code.

One also has to remember that VLC has support for more file formats and containers than any other player considered standalone. It is a framework, with support for scripting in order to further functionality (using Lua). Consider a RMVB file with RMVB video and Cook audio. VLC has had the capability to play such a file since the last 5 or 10 releases. I just tried opening one in MPC-HC, and ended up with a 'cannot render pins in graph because some codec or filter not installed'. On the same system, at the same time, VLC plays back the file without issues. If a tech noob sees this, would you fault him for preferring VLC to MPC-HC?  Despite being a power user, I believe in installing as few programs / codec packs as possible in order to get the file to playback, and VLC fits this criterion. Yes, we all know RMVB is on the way out, but that is no excuse not to support it.

VLC's DXVA Implementation

The VLC developers are more interested in the framework and multi-platform support with a unified code base, rather than just the media player capability. I do have my reservations about their approach, in case they want to compete with MPC-HC's capabilities. I see comments on the article comparing DXVA acceleration on MPC-HC with that of VLC right now, and declarations that MPC-HC is light years ahead. Of course, and that is the reason why MPC-HC is not shown in the graphs. Let us give some chance to VLC to improve their DXVA implementation. MPC-HC has been implementing DXVA since March 2007. It has taken them 3 years to come where it is now. VLC has just started out on this. It is not fair to put them down for this reason.

That said, I am not sure the VLC developers reached out to the GPU vendors enough. A quick search on various AV forums / Google reveals technical contacts for Nvidia and Intel. ATI is a different story, but we do see some marketing managers on Twitter (like CatalystMaker). I am sure all three would have been more than willing to help out a project like VLC. The GPU acceleration could have been in RC versions till all the kinks were ironed out. To the defence of the developers, they do mark the feature as 'experimental'.

Wait! MPC-HC is more popular than VLC!

A reader in a private communication took issue with my statement that VLC is much more popular than MPC-HC. While it might be difficult to quantify this statement, the reader went on to suggest that this was completely false. I was curious and wanted to dig up some numbers. For statistical purposes, as of 25th June, 2010, SourceForge reports less than 10 million downloads of MPC-HC (all standalone filters / 32 and 64 bit versions put together) since v1.0.4 (last 4 years). On the other hand, VLC on the Windows platform seems to have had more than 150 million downloads (and this doesn't include the latest release) since v1.0.0 (last 1 year). Given these statistics, VLC seems to be more popular, though I do agree that MPC-HC has some advanced technical merits.

The reader also happened to mention that, according to MPC-HC's project manager, Microsoft told him MPC-HC is the second most used video player on Windows after WMP (can't beat the bundled apps). I have been keeping track of MPC-HC development on Doom9 on and off, and vaguely remembered something like this being discussed over there. I managed to dig up three posts, one on why MPC-HC's executable name was changed from mplayerc.exe to mpc-hc.exe, and the other two detailing some communication from Microsoft regarding the high volume of MPC-HC crash reports.

Apparently, mplayerc.exe crashed so often on Windows systems a year or two back, that Microsoft got flooded with error reports from customers noting MPC-HC as the culprit. I am unable to find a statement from tetsuo55 (MPC-HC project manager's username on Doom9) on the net backing up what the reader sent in, but if it is true, I think it is easy to see why Microsoft may have reported that MPC-HC is the second most popular media player (I don't think they have any way to track which media player is being used on their OS, other than by using the error reports, right?)

I am not suggesting that MPC-HC is unstable (after all, these error reports were from the original Media Player Classic, and the issues have been fixed for quite some time now) or denying that MPC-HC is currently the best option to play HD videos on Windows, but when one considers the whole ecosystem (SD as well as HD video, and all codecs and file formats), I would think VLC has a much larger installed base. This is also supported by the download statistics at the beginning of this section.

VLC - One of the Best Open Source Softwares?

One reader in a private communication took offence when I termed VLC as one of the best open source softwares of all time, citing that MPC-HC annihilated it on Windows and Mplayer / VDPAU did the same on Linux. He also cited frequent commits and community activity in the MPC-HC repository as indications that MPC-HC deserved recognition as a better open source software than VLC. While his statements on performance may be true, we believe one should not take away credit from VLC, considering where and how it started, and where it is now. MPC-HC is indeed a great program with a very active development community. So, the commits and updates to the program are frequent. However, one also has to note that the project is quite new compared to VLC, which is much more stable and already has had a lot of development behind it.

The problem with VLC is that its initial development was done in the days when GPU acceleration of video decode was unheard of, and HD videos were non-existent. It is now trying to cover lost ground, and this must definitely be appreciated and supported. It has started taking steps on the way to becoming the Swiss army knife of the media player world once again. I would also offer the opinion that VLC developers should take some leaves out of the MPC-HC books in order to implement DXVA better. After all, one of the biggest advantages of being open source is co-operation. There is always space for two players in this field.

Note on Codec Packs

Codec packs are usually a mess to maintain. Even tech savvy users find it very easy to shoot themselves in the foot. What works on one system might conflict with another system (unless it is a clean and fresh OS installation). So, it is probably not something one should consider for the type of users mentioned in the first section on this page.

Just for disclosure purposes, I repeat one of my comments here: On my HTPC, MKV / M2TS files default to MPC-HC, while all other formats open in VLC. No codec packs are installed. I love MPC-HC for providing me with the best interface and experience while watching high definition stuff, but that doesn't mean I consider VLC any less worthy for what it does.

Final Words
Comments Locked

74 Comments

View All Comments

  • puffpio - Friday, June 25, 2010 - link

    uh that's not true

    there exists some dvds that are encoded interlaced..some dvds that are of old tv shows, for example
  • ganeshts - Friday, June 25, 2010 - link

    barniebg, I agree with you!

    However, VLC developers are more interested in maintaining consistency across platforms and the framework, rather than improving performance and quality on a single type of system.

    Currently, VLC uses CPU SSE2 instructions to implement the Yadif deinterlace filter [ http://avisynth.org.ru/yadif/yadif.html ]. I am trying to find out how it compares with GPU deinterlacing (any benchmarks?). If the performance is similar, but we just take a CPU usage hit, it might not be such a bad thing after all (since VLC wishes to cater to the lowest common denominator amongst media player users)
  • ganeshts - Friday, June 25, 2010 - link

    Note: VLC devs recommend use of Yadif over other deinterlacing mode options which might be available
  • paulpod - Friday, June 25, 2010 - link

    It is a bad joke for anyone to claim hardware acceleration of video when deinterlacing is not included. But you get what you pay for, I guess.

    Software and CPUs can decode any video format at full quality without much effort. It is deinterlacing that requires GPU acceleration because detection of moving diagonal edges is extremely compute intensive. And as people have pointed out, most TV broadcast is 1080i mpeg. Yes, the Olympics, the World Cup (in Spanish with better announcers than ESPN), and other little things like that.

    Let's hope the simple API connections necessary for them to support deinterlacing will be in a future release, at least to the point where they pass control to the graphics driver.
  • Rainman200 - Friday, June 25, 2010 - link

    Your opening comments about MPC-HC are a bit inaccurate.

    1) That guide linked to is overkill, intended for very specific anime people.
    2) The CCCP pack installs MPC-HC but has nothing to do with it. Codecs packs are a bad thing in general go ask anyone on Doom9 forums though MPC-HC is directshow capable unlike VLC.

    To enable DXVA playback under MPC-HC you just install the player and change the output to EVR-Custom thats it no other changes are necessary nor any codec packs.

    If it doesn't work then it a hardware/driver issues but not the fault of MPC-HC.

    That said its good to see VLC add this support, XBMC is also working on DXVA2/VAAPI and CrystalHD support.
  • ganeshts - Friday, June 25, 2010 - link

    I first started using MPC-HC when I was on WinXP.

    I remember the countless nights I spent in trying to accelerate some HD files. It refused to do DXVA till some registry entries were modified to make it ignore L4.1 restrictions. Even then, some files would work better with the Cyberlink decoder, and hence I had to make mods in MPC-HC to load that filter. All in all, it was a bit of a trying (but ultimately satisfying -- after I moved to Win7) experience.

    I agree that the recent releases work much better than the ones I used to tussle with, but I still see the comments list on that anime blog being updated years after it was first posted! I would assume that this means MPC-HC offers options / makes users want options which can easily make them shoot themselves in the foot!

    PS : I love MPC-HC! All my MKVs and M2TS default to that, but for everything else, I still use VLC :)
  • ciukacz - Friday, June 25, 2010 - link

    AFAIK there is no standardized API for HD audio bitstreaming under Windows (and probably under other OS's too). developers have to add it "per device". with a development team of 5 it is wishful thinking.
  • Nehemoth - Friday, June 25, 2010 - link

    Kmplayer had hardware acceleration since a lot of time ago and as VLC you don't need to install codecs pack, even better in Windows 7 you can use the system codecs if you want to.

    I would like to see kmplayer against VLC.
  • piroroadkill - Friday, June 25, 2010 - link

    Kmplayer is a rip off of Media Player Classic...

    http://en.wikipedia.org/wiki/K-Multimedia_Player#C...
  • CSMR - Friday, June 25, 2010 - link

    Spotty DXVA in VLC is not news. Even if VLC gets perfect playback, including subtitles, all popular formats, and is customizable, then you just have a competitor to MPC-HC, good but not exactly a step forward for the HTPC world.

    MPC-HC has no problems with DXVA playback on any modern mainstream GPU (including integrated). You do not need a tutorial to do this; the link is for people who want to get all the settings right, because MPC-HC is very customizable.

    The only important free media players atm for HTPC users are MPC-HC, because it is the best, and WMP, because it is popular and integrated into WMC.

Log in

Don't have an account? Sign up now