It is time for HTPC enthusiasts to rejoice! Videolan announced the availability of VLC 1.1.0 a couple of days back. VLC's popularity soared in the mid-2000s when standard definition videos were all the craze, and CPUs were powerful enough to easily decode them. Over the last few years, many people have built up a big library of high definition videos, and one of the complaints against VLC was the fact that all the inbuilt codecs relied completely on the CPU horsepower for decoding. Even the most powerful modern day multi-core processors have trouble decoding HD videos [Clarification: 'trouble' with CPU decoding might mean dropped frames, stutters, sudden spikes in CPU usage and kicking in of the CPU fan etc. These are more noticeable in single threaded decoder implementations].

HTPC users with GPUs capable of accelerating HD video decode initially relied on the bundled software (from Cyberlink / ArcSoft / Corel). However, the bloatware and container restrictions imposed by these players led enthusiasts to other open source projects such as Media Player Classic - Home Cinema (MPC-HC). These tapped into the GPU capabilities using DXVA / DXVA2 APIs on Windows and VAAPI on Linux. The extent of support provided in these APIs depended on the GPU vendor. Historically, Nvidia has provided much better support than ATI, while Intel was lagging behind for quite some time till late last year. This is evident from one of the popular blog posts used as a reference by people wanting to get DXVA working on their GPUs. Users of MPC-HC also had to deal with external codec packs such as CCCP. In addition, a large number of options had to be set up correctly in order to get GPU decoding to work. There was an urgent need for the big player in this space to come to the party, and Videolan has done that exactly with the 1.1.0 release of the VLC Media Player.

However, all is not well yet in VLC land. Videolan supplied the caveat that the experimental GPU acceleration would work only on Nvidia GPUs as of now. They cited troubles with the ATI drivers and the lack of access to a Intel IGP as the reason for not being able to support non-Nvidia platforms with confidence. With a core developer team of just 5 people, coupled with the fact that most of them are not Windows developers, it is hard to find fault with that reasoning.

At the end of our testing, we found out some unexpected good things. However, there was some disappointment as well. Before going into the details, let us take a look at the test bed and test suite we used for the analysis.

Testing Methodology
POST A COMMENT

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
    Reply
  • 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)
    Reply
  • ganeshts - Friday, June 25, 2010 - link

    Note: VLC devs recommend use of Yadif over other deinterlacing mode options which might be available Reply
  • 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.
    Reply
  • 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.
    Reply
  • 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 :)
    Reply
  • 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. Reply
  • 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.
    Reply
  • piroroadkill - Friday, June 25, 2010 - link

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

    http://en.wikipedia.org/wiki/K-Multimedia_Player#C...
    Reply
  • 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.
    Reply

Log in

Don't have an account? Sign up now