Catalyst 10.6 does not provide any support for VLC's GPU acceleration methodology, but AMD seems to suggest that a update to fix this is coming soon. Knowing ATI's lethargy in fixing drivers for anything not related to gaming, we decided to ignore their GPUs for the time being.

[UPDATE 1: June 26, 2010: We heard back from AMD PR as well as the concerned VLC developer, and we are told that Catalyst 10.7 (expected by mid-July), and VLC 1.1.1 (expected in 3 - 4 days) enable acceleration on ATI GPUs also. Apparently, they have verified that the acceleration works in the labs, and are waiting on final QA. I am now willing to reconsider my earlier opinion on ATI's lethargy and hope that this sort of response is a sign of good things to come for AMD/ATI HTPC users.]

[UPDATE 2: July 2, 2010: AMD provided us with the pre-release Catalyst 10.7, and Jean-Baptiste gave us the VLC 1.1.1 build. On one of AMD's recent Radeon chipsets, GPU acceleration works better than Nvidia's. Also, it looks likely that Radeon 3xxx users will be unable to take advantage of VLC's acceleration. More details will follow once Catalyst 10.7 is officially released].

VLC developers couldn't test their acceleration methodology on the Intel IGPs at all. As end users, we decided to test it out for them.

We utilized 3 test beds for our evaluation

1. Intel IGP - Arrandale ClearVideo: Gateway NV5935u
2. Nvidia - Quadro FX2700M PureVideo VP2: Customised HP 8730w [ Core 2 Duo T9400 / 4GB RAM ]
3. Nvidia - GeForce G210M PureVideo VP4: Sony Vaio VPCCW13FX/R [ PDF ]

The DXVA capabilities of each platform are evident in the screenshots below.

 
Intel i5-430M DXVA Capabilities
 
 
 
Quadro FX2700M DXVA Capabilities
 
 
 
GeForce G210M DXVA Capabilities
 
 

All machines were tested using VLC 1.1.0 on Microsoft Windows 7, using a 37" Toshiba Regza HDTV connected via HDMI through an Onkyo TX-SR606, at 1920x1080p resolution in Extend mode (with the primary screen running at 1366x768). One set of tests was run with GPU acceleration disabled, and another with GPU acceleration enabled. CPU usage was tracked for both runs and the maximum values over the course of playback compared.

GPU acceleration has been provided by VLC for MPEG-2, H.264 and VC-1. Since MPEG-2 is easily handled by even low performance processors, we decided to cover only H.264 and VC-1 in our test suite. Eight different streams were tested, with the following characteristics

1. L4.1 H.264 1080p30 @ 8.3 Mbps (M2TS)
2. L4.1 H.264 1080p24 @ 10.2 Mbps (MKV)
3. L5.1 H.264 1080p60 @ 10 Mbps - 8 reference frames (MKV)
4. L5.1 H.264 1080p24 @ 19 Mbps - 16 reference frames (MKV)
5. VC-1 Main Profile 1080p24 @ 8 Mbps (WMV9)
6. VC-1 Advanced Profile 1080p24 @ 18 Mbps (MKV)
7. VC-1 Advanced Profile 1440 x 576 @ 6 Mbps (WMV)
8. VC-1 Advanced Profile 720p60 @ 15 Mbps (WMV)

We decided not to use any interlaced media in the test suite since VLC does the deinterlacing on the CPU using SSE2 instructions even if GPU acceleration is enabled. This ensures that deinterlaced media playback remains consistent across different cards and driver versions.

The GPU acceleration support provided by VLC on Windows has a very different architecture compared to the one used by programs such as MPC-HC and Windows Media Player. As explained by one of the developers here, VLC prefers a slower method of GPU acceleration in order to maintain the framework aspect. It decodes on the GPU but gets the decoded data back for further processing. Therefore, CPU usage would be worse off when compared with playback using MPC-HC or Windows Media Player. For this reason, the only comparisons we make further down in this piece are within VLC (acceleration on vs. acceleration off), and not with other media playback programs.

Introduction Playback Performance
POST A COMMENT

74 Comments

View All Comments

  • Phynaz - Friday, June 25, 2010 - link

    But I'm afraid this article is so full of misinformation that it should just be pulled.

    At least choose authors that are familiar with the subject they are writing about, as the author of this article knows next to nothing about digital video.
    Reply
  • ganeshts - Friday, June 25, 2010 - link

    Phynaz,

    Please do let me know what is wrong with the info in the article.

    Most of it is based on personal testing of a variety of media on different systems, and a lot of information has been gleaned from actual interaction with a VLC developer.

    I have no trouble with criticism, but it needs to be constructive. I am afraid your comments don't give me any insights into where I will need to improve.
    Reply
  • Phynaz - Friday, June 25, 2010 - link

    Others before me posted comments where the information in this article is just plain wrong. For example your statements that MPC requires codec packs for GPU accelerated decoding, or that modern cpu's have problems decoding HD video.

    Please post the specs of an i7 build that can't decode H.264 or VC-1 video without GPU assistance. Heck, a P4 could play H.264 with version 0.9 of VLC.
    Reply
  • ganeshts - Friday, June 25, 2010 - link

    There is absolutely no statement that MPC requires codec packs for GPU accelerated decoding.

    The original statements in the article are:


    Users of MPC-HC also had to deal with external codec packs such as CCCP


    This is true if people wanted to play files not supported internally by MPC-HC such as Real Media and other arcane codecs. There also used to be a time when the internal Matroska splitter used in MPC-HC wasn't working properly, and Haali's splitter had to be used, which was again bundled with CCCP. :: I never talked about CCCP for GPU decode here.


    In addition, a large number of options had to be set up correctly in order to get GPU decoding to work.


    This is true, since one had to set the renderer depending on the OS, and disable some internal filters. I have actually lost track of the number of options I played around with before I got DXVA to work with MPC-HC for the first time on my P4 with ATI 3450.

    Onto your next point, modern CPU's have problems decoding HD video:

    This is the exact quote:


    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.


    The trouble decoding HD videos is when VLC is used ( and in testing on Windows XP, even when Windows Media Player is used - The WMP in Win7 actually uses the GPU (if available) and not the CPU for majority of the decoding.)

    It is easy to say i7 build can decode H.264 or VC-1 without GPU assistance, but the important thing is not the spec of the build, but the spec of the stream (high definition - 1080p / 720p, bitrate - 10 Mbps / 50 Mbps? and so many other encoding characteristics).

    In the playback performance section, I have indicated the specs of 3 modern day builds which spiked upto 100% CPU utilization for various H264 and VC1 streams.

    By the way, my HTPC is a P4, and it couldn't keep up with playing HD H.264 using VLC. The key here is the HD moniker.

    I don't wish to sound disrespectful, but am not sure how your misunderstanding of 4 simple lines in the article would (i) make the whole article full of misinformation, (ii) brand the author as not being familiar with what they are writing about and on top of that (iii) state that the author knows next to nothing about digital video ;

    I will leave it to the rest of the readers to draw any conclusions in light of my above clarifications.
    Reply
  • Mumrik - Friday, June 25, 2010 - link

    People seem to have blind irrational loyalty towards MPC and it seems to distort their vision.

    I can't get myself to use either of these two regularly because of the horrible GUIs...
    Reply
  • Touche - Saturday, June 26, 2010 - link

    Although GUIs could use a little touchup, it really is the content that you are watching. Reply
  • kasakka - Sunday, June 27, 2010 - link

    The GUI in MPC is rather old fashioned and VLC's GUI is not only crappy looking but also rather unintuitive especially in settings. VLC's skins help a bit but most of them seem to be somewhat incomplete too.

    It's truly a shame that many Windows developers seem to be very poor user interface designers, even though they may be wizards at things like codec development and whatnot.
    Reply
  • jtleon - Tuesday, June 29, 2010 - link

    I will second that - My own HTPC (P4 2Ghz laptop) cannot keep up with my home-made 720P (1280x720) HD videos that I have shrunk using VLC h.264 encoding to 1/10 their motion jpeg size. Now I am faced with upgrading the HTPC, or down-scaling my videos (not!).

    I have found the socket 754 Mobile Semprons (90nm, E-stepping) have absolutely no problem rendering h264 with VLC at HALF the P4 speed!
    Reply
  • tlmaclennan - Friday, June 25, 2010 - link

    I dropped VLC a long time ago for MPC-HC. Video quality is much better and I have the ability to bitstream via ffdshow. Most players support DXVA now, so sorry VLC but you're a bit too late. Reply
  • Wellsoul2 - Friday, June 25, 2010 - link

    It would be interesting to see the test with a 3GHZ+ Quad core .

    For playing 720P and 1080P single music videos VLC seems to do fine already.

    It tends to crap out after a few videos if you use the playlist feature...I don't know why..

    I still use it alot and like it..so great if it's becoming better.
    Reply

Log in

Don't have an account? Sign up now