Come on, the most important benefit of using a GPU to decode video is the fact that you can apply hardware deinterlacing. VLC deinterlacing is nowhere near even remotely comparable to any GPU.
Deinterlacing is a legacy concept relating to content produced with CRTs in mind. It is not important in the modern world. If you have content that is interlaced, your encoding software should deal with it, or else download a better version.
TONS of DVDs are interlaced, both from PAL and NTSC regions. Plenty of content --- HDV and tape sources, for starters --- has never been anything other than interlaced, right from camera acquisition, and is directly encoded from the interlaced source to an interlaced DVD... for obvious reasons.
Many film-based DVDs released prior to 2000 or so are also interlaced, because they were encoded from old cable, laserdisc and VHS masters. Also, heaps of low-budget and foreign (especially Asian) DVDs are made from interlaced masters, due to old or subpar equipment, or simply because interlaced workflows are often cheaper.
And NO, your "encoding software" should NOT "deal with it." Deinterlacing prior to encoding gives you the following options: you can deinterlace to half-resolution and encode w/ a good bitrate but with poor quality, or you can deinterlace to full-resolution, but that'll require a doubled frame-rate and, obviously, doubled file-sizes. Interlaced sources should always be encoded to interlaced targets and deinterlaced during playback, preferably by a high-quality temporal/spatial filter @ a doubled frame-rate. Realistically speaking, you're only going to get that from a GPU (or a smokingly fast CPU running one of the newer software deinterlacers).
WHY do people write things that are flatly untrue?
I agree, but all DVD movies that I have are interlace. Yes, even the latest movie from 2007 is interlace. I am sure that Blu-ray and HD-DVD are interlaced as well. Like you said, these interlace content have to be set at double the frame rate and be de-interlaced to view correctly on a progressive screen. Though a 3:2 pull-up also have to be used to keep within 24 frame rate of the movie, but this adds distortion.
Not all codecs are compatible with interlace content, so the video have to be deinterlace. This means double frame rate and adding 3:2 pull-up if it needs it.
There are dozens of deinterlace algorithms. Not one will suit every content. The only programs that I know that include most of the deinterlacing algorithms is dscaler and tvtime.
None of the GPU that I know of actually increases the frame rate, so you are back where you started. In order to do it right, it is do the post-processing task with the CPU. Though there is a compromise between loading the CPU to 100% and not using the GPU or using the GPU and have fraction of the CPU being utilized.
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)
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.
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.
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 :)
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.
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.
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.
Have to agree. MPC/MPC-HC is very nice already. I use the k-lite codec pack myself and just go with the default setting during installation. No tweaking for me so it's nice. However, the latest version has a new MPC with new buttons and some of the codecs are a bit buggy as now many of my encoded animes can't be read properly. But my 720P and 1080P encoded files plays just fine and that's more important :)
I tested myself some samples I had from the "popular blog post". The result is very bad: some videos just play the first seconds and others got very blocky.
The best solution for me was Cuda acceleration with CoreAVC (tutorial also available in that blog post), I play 1080p movies with less than 5~10% CPU usage.
MPC-HC doesn't need any external codec packs. You don't even have to install it. Just download and run the exe. All integrated, DXVA works perfectly and has for quite some time now.
I agree, I use a third-party updated build of MPC-HC that has madVR as an option. It really does give the best quality upscaling for SD content. Combined with ffdshow tweaked, I can't really find any other codec that can compete.
For HD content, I just use MPC-HC and its built in decoder. It really looks good on my 4850, and hardly registers as loading the GPU.
Splash is indeed very impressive. It looks good and works well. They recently released the Pro version, which is not free but has more features. I'll wait till it gets a bit better and then might buy it.
Until then MPC-HC + ffdshow is great, though post processing doesn't work with DXVA so I don't use the GPU acceleration.
"Even the most powerful modern day multi-core processors have trouble decoding HD videos."
Not true, any decent software decoder, like previous versions of vlc or coreavc or ffdshow/mpc-hc would easily decode current web or mkv type videos at 1080p. A fraction of a multicores processor would be necessary. 720p was possible on even old pentium m at times using coreavc decoder. any modern athlon2 or core2 can playback 1080p mkv at even 2x time stretched without a problem.
i've found that this vlc fails pretty hard on xp, it crashes on exit playing mkv h264 videos for me to the point where i've gone back to the previous version. coreavc gpu decode however works fine using other players so its vlc thats wonky.
the only processors that would hickup on hd video were the atom processors. any recent core2 could pull off hd decode for most web videos just fine, even at 1080p.
Software able to use multiple cores are better off, as you rightly observe.
However, we just saw how VLC had to use 100% of the CPU to decode some of the HD videos.
For the non-technology folks, VLC is probably the only media player installed by whoever set up the computer for them. If they try to see HD videos, they are going to hit issues with CPU usage. VLC's GPU acceleration is meant for people like them :)
Using ffdshow tryouts that came with CCCP (from 2008 at that), i could decode almost all 720p files at 1.2 GHz (on a 2.4 Ghz T7700). At 2.4 GHz I could take on any 1080p file, including a massive 24 GB rip of The Godfather.
Now I have it set up to run DXVA first, then a fairly recent FFdshow tryout, with the h.264 decoder on MT.
well no once again, if you install vlc on a n00bs computer, they are simply not likely to run a raw bluray rip. they are neither going to download or know how to get their hands on such a file of massive proportions. any web rip or youtube type ripped 1080p files or apple trailers are FAR easier to playback than bluray. playing back those on even an older dual core is easy as pie.
That being said, somethings wrong with the 100% usage thing. even with software players based on anandtechs own 2006 article an e6700 2.6ghz could playback bluray in software. and that was back when chips were both slower, and the software decoders far less efficient. or perhaps vlc is just not that efficient at bluray.
High-Def is becoming more and more popular. A n00b will probably get MKVs from friends on a USB drive and expect to play it back couple of years down the line ( maybe, even right now :) )
The 100% usage is because VLC is pretty crappy and uses a single threaded implementation to decode when GPU is not enabled. Also, the streams are pretty taxing (16 reference frames , 60 frames per second and so on).
Also, I would mention that having 'trouble' with CPU decoding might mean dropped frames, stutters, sudden spikes in CPU usage and kicking in of the CPU fan etc. etc.
yea but those "mkv"' are at a fraction of the original blurays bitrate, and thus easier to play, at most they are 12gb or so, and those are more rare, the more common 1dvd size or 2 dvd rips easily play even on a 2ghz core 2. i know, i've tried this before. and even that is really not common usage for a true n00b who will at best run apple trailers, and those don't use vlc.
It is just not the bit rate, right? Actually, more than the bit rate, it is other encoding characteristics such as reference frames which are the issue in a PC. (On a PMP with hardware acceleration, it is the other way round). Most PCs have more than enough bandwidth to handle high bit rate scenes, but the CPU intensive calculations are what causes the spikes in CPU usage and stutters (I am trying to find some information about which part of the decode process consumes most time in CPU based decoding.. Let me know if you find any thing relevant !)
VLC's development motto, I feel, is that they should be able to play back anything and everything perfectly. From that viewpoint, it makes sense for them to develop GPU accelerated playback, though their primary target audience might not make use of it :)
stuff like global hot keys/multimedia kb support have sat in the interface broken for years now while they play iwth other stuff.. Its just kind of annoying.
i can tell you what the results would be. WMP 12 would have the lowest cpu usage, followed closely by mpc hc, and vlc would be in last by a large margin.
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.
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.
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.
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.
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.
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!
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.
Thank you. I've used KLCP+MPC since its inception with no trouble whatsoever, whether as a RunOnceEx-initiated install on a fresh OS or clients' existing junk configs (common sense -- look for, uninstall, and reg-clean the previous 1 or 2 codecs first). I'd experimented with other codec packs (Nimo was a common one years back) and VLC and always came back to the tried and true.
The later versions of the pack are so dependent on ffdshow (in default install), however, that I'm considering using just ffdshow herein.
Hopefully they get a Mac port with the support out. As I use a Mac Mini as my HTPC. Although it would also need to support ATI or an Intel GMA (I have an old G4 Mini and an Intel).
But its certainly a step in the right direction getting it working at all.
This is why Nvidia has a better reputation from a driver and software standpoint over the competition it's like trying to compare x86 to ARM there's a reason x86 is preferable from a performance and usability standpoint.
if you time stretch videos for some reason the vlc implementation of audio pitch adjustment is just not as clear as say gomplayers. it does cost a few dollars but coreavc's gpu acceleration works without a hitch right now, and with gom you can speed crank videos at your pleasure, using gpu accel on or off. vlc's problems are that its half baked in so many ways that its just a fall back player for me. it plays dvds well, i'll give it that.
True, it takes a jack of all trades master of none approach. Seems to have worked well so far, except that they now have some serious catching up to do with the rest of the media players :)
no idea about GPU Accelerarion on VLC but in CPU decode its one of lightest softwares i have seen ever . i could play some video files containing DVDRIPs and even 1080i mpeg videos on a vaio p serie with a poor z520 1.33GHz intel atom while any other player and codecs but coreavc were unable . so except for h264i will go for VLC on atom .
I've been using MPC-HC, and MPC before that, for years now. MPC-HC is easily the best media player currently available as it plays DVD, mkv, DivX, Xvid, Blu-ray etc without the need for additional codecs. In addition, it even plays HD DVD, albeit with a little codec assistance. As such, it plays pretty much all the main media containers and codecs with ease and supports full GPU hardware acceleration of all HD codecs.
As for the several users commenting on deinterlacing which such gems as it being a "legacy concept" or that "DVDs and Blu-Ray are not interlaced", I guess they need to do a bit more research regarding both video formats, as there is still content stored on both formats that is interlaced. If there wasn't, then why is deinterlacing such a big topic? You just need to check out the numerous posts on AVSForums or have a look at ATI's CCC to see the numerous deinterlacing options available, e.g. Weave, Bob, Adaptive, Motion adaptive, Vector Adaptive. I doubt that ATI would waste any time on providing so many different deinterlacing options for something that is "not important in the modern world".
Hi. I have an Asus 1201N. The inicial install of windows 7, came with arcsoft, wich reads hd content smoth and with low cpu usage. The problem with that player are using srt subtitles and usability. I`m using "Gomplayer 2.2.25.5017" with "K-lite 5.7.5 Full" codecs, means that i`m not using built in codecs. I`ve been using previous versions of both, and the experience is pleasant, except for view dvd. Don`t recomend for dvd`s.
While reading this article i instaled both vlc and mcp-hc.
I made several tests using "trailer_720p.mov" form Avatar.
CPU USAGE during playback min and max; Gomplayer - 17/49 average 32 Arcsoft - 09/36 average 14 vlc without hardware aceleration - 16/33 average 25 vlc with hardware aceleration - 13/28 average 16 windows media player - reads with 50 to 80 % of cpu usage, but is not smoth. not viewable wmp classic hc - not smoth, high cpu usage
So, vlc is not bad, but i will stick with gomplayer using k-lite full
I have a 3g Usb Modem (ZTE MF622) and a bluetooth mice (Genius Navigator BT905).
I use the 1201N manly for internet and movies on the move.
If i only use internet, the battery lasts a little more than 3 hours. If i only use it for movies (hd content) i last more than 2 hours but less than 3.
The user experience is not bad, but could be better. I had for a little time a Acer 1810T with a SU2300 and the experience was better. Windows Media Player with K-lite, played Hd content flawless and smooth, and battery life was way better than 1201N.
The atom 330 is always at full power. Asus should be working in a bios version, which could downclock the processor and support AHCI. The only 2 faults worth mentioning.
I still always have VLC installed because I have yet to find any video it won't play in 4 years. I very rarely watch movies on my computer (never blu-ray), and have a decent quad core, so CPU usage isn't a problem. When I find a video that VLC can't handle, I might consider something else. In the meantime, on with the performance increase!
Personally I don't like VLCs interface much and prefer ZoomPlayer. But seeing them adress this important topic with its diverse problems is very good and will ensure that I also keep VLC installed for all the cases ZoomPlayer can't handle. And thanks to Anandtech for testing - this is certainly not a trivial task. As becomes obvious to me when I consider all the abreviations in this article which don't tell me anything, except "probably somehow video related".
I have many avi files from 2005-2009 that used to play just fine on VLC. Now they don't work. It is retarded. I complain how WMP doesnt play certain mp3's, but this is just as annoying.
Mpc hc supports most of the codecs except few odd ones (real and quicktime) out of the box without having to install the codec packs, so why use vlc for other formats than mkv?
Thanks for the review, & for mentioning just how badly ATI have neglected their Blue Screening, Lockup Causing, DPC Spiking horrible DXVA drivers.
I would be eternally grateful, if/when the fixed ati drivers ever come your way, if you can also check for these problems, that have been ignored in Anandtech for way too long:
I think Linux is the best way to handle HD content compared to Windows because it works out of the box if you have either Intel or nVidia as the graphics card. The processing power being used is less than 20%. Though nVidia is better than Intel for graphics.
IMHO, Video Lan Client was and still is designed to stream media from one computer and then to the next. It was not designed to be a stand-alone player. Also its reliability is poor compared to other media players that I used. Windows users have to rely on pathetic software for media playback from open source projects or go with the Windows Media Player. In Linux the media players are great except VLC. In Linux, Mplayer is the best and probably the best open source media player that is out there. Though open source software is great, but whatever they use to compile the code for Windows screws up everything.
From what I read on here and other sites, the best way to playback HD in Windows is use commercial software or juggle with the reliability, stability, and high CPU usage when using open source software.
The following is how I playback HD content or any videos using H.264, WM3/9, MPEG, VC with Mplayer and nVidia assuming using 190.x or higher nVidia driver and Mplayer is compiled with VDPAU support.
I have tried most and no one ever says anything about the player which works the best. I have tried them all and I find for MKV playback SplashHD is the best. You can get it here at http://mirillis.com/en/
I purchased the Pro version so I can output digital audio to my amp. Anyways it uses GPU for both NVIDIA and ATI and I have yet to come across a problem with it.
Dunno what you are talking about advertising goon. I actually bought it and use it cause its better than all the other hack shit out there and is the easiest to use so my wife and child can use it.
We’ve updated our terms. By continuing to use the site and/or by logging into your account, you agree to the Site’s updated Terms of Use and Privacy Policy.
74 Comments
Back to Article
MGSsancho - Friday, June 25, 2010 - link
What software did you use to test DXVA compatibility? Also if possible where can we get a hold of it? :)Per Hansson - Friday, June 25, 2010 - link
It is "DXVA Checker"You can doiwnload it here;
http://bluesky23.hp.infoseek.co.jp/en/index.html
barniebg - Friday, June 25, 2010 - link
Come on, the most important benefit of using a GPU to decode video is the fact that you can apply hardware deinterlacing. VLC deinterlacing is nowhere near even remotely comparable to any GPU.MGSsancho - Friday, June 25, 2010 - link
I am disappointed as well but applaud VLC for being another competitor in this very important arena.CSMR - Friday, June 25, 2010 - link
Deinterlacing is a legacy concept relating to content produced with CRTs in mind. It is not important in the modern world. If you have content that is interlaced, your encoding software should deal with it, or else download a better version.probedb - Friday, June 25, 2010 - link
What about those of us that don't want to reencode video? Or that play DVDs back from the drive.De-interlacing is still very much required.
mckirkus - Friday, June 25, 2010 - link
DVD content is stored as progressive (480p) On an old CRT/Tube TV, the DVD player interlaces the content (480i) so it is compatible with the TV.I can't think of any digital content that is stored in interlaced format these days.
mckirkus - Friday, June 25, 2010 - link
(ok, no edit button, non HD tv is interlaced, as is 1080i broadcast ATSC). I should have said DVDs and Blu-Ray are not interlaced.flanger216 - Sunday, June 27, 2010 - link
Swing and a miss, #2. Try again, please.TONS of DVDs are interlaced, both from PAL and NTSC regions. Plenty of content --- HDV and tape sources, for starters --- has never been anything other than interlaced, right from camera acquisition, and is directly encoded from the interlaced source to an interlaced DVD... for obvious reasons.
Many film-based DVDs released prior to 2000 or so are also interlaced, because they were encoded from old cable, laserdisc and VHS masters. Also, heaps of low-budget and foreign (especially Asian) DVDs are made from interlaced masters, due to old or subpar equipment, or simply because interlaced workflows are often cheaper.
And NO, your "encoding software" should NOT "deal with it." Deinterlacing prior to encoding gives you the following options: you can deinterlace to half-resolution and encode w/ a good bitrate but with poor quality, or you can deinterlace to full-resolution, but that'll require a doubled frame-rate and, obviously, doubled file-sizes. Interlaced sources should always be encoded to interlaced targets and deinterlaced during playback, preferably by a high-quality temporal/spatial filter @ a doubled frame-rate. Realistically speaking, you're only going to get that from a GPU (or a smokingly fast CPU running one of the newer software deinterlacers).
WHY do people write things that are flatly untrue?
electroju - Monday, June 28, 2010 - link
I agree, but all DVD movies that I have are interlace. Yes, even the latest movie from 2007 is interlace. I am sure that Blu-ray and HD-DVD are interlaced as well. Like you said, these interlace content have to be set at double the frame rate and be de-interlaced to view correctly on a progressive screen. Though a 3:2 pull-up also have to be used to keep within 24 frame rate of the movie, but this adds distortion.Not all codecs are compatible with interlace content, so the video have to be deinterlace. This means double frame rate and adding 3:2 pull-up if it needs it.
There are dozens of deinterlace algorithms. Not one will suit every content. The only programs that I know that include most of the deinterlacing algorithms is dscaler and tvtime.
None of the GPU that I know of actually increases the frame rate, so you are back where you started. In order to do it right, it is do the post-processing task with the CPU. Though there is a compromise between loading the CPU to 100% and not using the GPU or using the GPU and have fraction of the CPU being utilized.
puffpio - Friday, June 25, 2010 - link
uh that's not truethere 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 availablepaulpod - 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.
piroroadkill - Friday, June 25, 2010 - link
I use Media Player Classic Homecinema as well.Why would you bother with something else?
DustinW - Friday, June 25, 2010 - link
I'd say XBMC is a pretty important free media player for HTPC users...But anyway, yes I'll agree with everyone else...using DXVA with MPC-HC is dead-simple and quite powerful.
The0ne - Friday, June 25, 2010 - link
Have to agree. MPC/MPC-HC is very nice already. I use the k-lite codec pack myself and just go with the default setting during installation. No tweaking for me so it's nice. However, the latest version has a new MPC with new buttons and some of the codecs are a bit buggy as now many of my encoded animes can't be read properly. But my 720P and 1080P encoded files plays just fine and that's more important :)CSMR - Friday, June 25, 2010 - link
Yes I remembered that after posting but no edit button. Thanks.Furuya - Friday, June 25, 2010 - link
I tested myself some samples I had from the "popular blog post". The result is very bad: some videos just play the first seconds and others got very blocky.The best solution for me was Cuda acceleration with CoreAVC (tutorial also available in that blog post), I play 1080p movies with less than 5~10% CPU usage.
Touche - Friday, June 25, 2010 - link
MPC-HC doesn't need any external codec packs. You don't even have to install it. Just download and run the exe. All integrated, DXVA works perfectly and has for quite some time now.Although I prefer MPC-HC+madVR. Quality>>DXVA.
hechacker1 - Friday, June 25, 2010 - link
I agree, I use a third-party updated build of MPC-HC that has madVR as an option. It really does give the best quality upscaling for SD content. Combined with ffdshow tweaked, I can't really find any other codec that can compete.For HD content, I just use MPC-HC and its built in decoder. It really looks good on my 4850, and hardly registers as loading the GPU.
Pino - Friday, June 25, 2010 - link
Splash Lite is better, simpler and work with Intel, AMD and Nvidia.kasakka - Friday, June 25, 2010 - link
Splash is indeed very impressive. It looks good and works well. They recently released the Pro version, which is not free but has more features. I'll wait till it gets a bit better and then might buy it.Until then MPC-HC + ffdshow is great, though post processing doesn't work with DXVA so I don't use the GPU acceleration.
0roo0roo - Friday, June 25, 2010 - link
"Even the most powerful modern day multi-core processors have trouble decoding HD videos."Not true, any decent software decoder, like previous versions of vlc or coreavc or ffdshow/mpc-hc would easily decode current web or mkv type videos at 1080p. A fraction of a multicores processor would be necessary. 720p was possible on even old pentium m at times using coreavc decoder. any modern athlon2 or core2 can playback 1080p mkv at even 2x time stretched without a problem.
i've found that this vlc fails pretty hard on xp, it crashes on exit playing mkv h264 videos for me to the point where i've gone back to the previous version. coreavc gpu decode however works fine using other players so its vlc thats wonky.
the only processors that would hickup on hd video were the atom processors. any recent core2 could pull off hd decode for most web videos just fine, even at 1080p.
ganeshts - Friday, June 25, 2010 - link
Software able to use multiple cores are better off, as you rightly observe.However, we just saw how VLC had to use 100% of the CPU to decode some of the HD videos.
For the non-technology folks, VLC is probably the only media player installed by whoever set up the computer for them. If they try to see HD videos, they are going to hit issues with CPU usage. VLC's GPU acceleration is meant for people like them :)
fabarati - Friday, June 25, 2010 - link
Using ffdshow tryouts that came with CCCP (from 2008 at that), i could decode almost all 720p files at 1.2 GHz (on a 2.4 Ghz T7700). At 2.4 GHz I could take on any 1080p file, including a massive 24 GB rip of The Godfather.Now I have it set up to run DXVA first, then a fairly recent FFdshow tryout, with the h.264 decoder on MT.
fabarati - Friday, June 25, 2010 - link
(no Edit)When I was using coreavc (1.9.0), i could take on nearly any 1080p file at 1.6GHz, and that beastly godfather rip at 2 GHz.
0roo0roo - Friday, June 25, 2010 - link
well no once again, if you install vlc on a n00bs computer, they are simply not likely to run a raw bluray rip. they are neither going to download or know how to get their hands on such a file of massive proportions. any web rip or youtube type ripped 1080p files or apple trailers are FAR easier to playback than bluray. playing back those on even an older dual core is easy as pie.That being said, somethings wrong with the 100% usage thing. even with software players based on anandtechs own 2006 article an e6700 2.6ghz could playback bluray in software. and that was back when chips were both slower, and the software decoders far less efficient. or perhaps vlc is just not that efficient at bluray.
ganeshts - Friday, June 25, 2010 - link
High-Def is becoming more and more popular. A n00b will probably get MKVs from friends on a USB drive and expect to play it back couple of years down the line ( maybe, even right now :) )The 100% usage is because VLC is pretty crappy and uses a single threaded implementation to decode when GPU is not enabled. Also, the streams are pretty taxing (16 reference frames , 60 frames per second and so on).
Also, I would mention that having 'trouble' with CPU decoding might mean dropped frames, stutters, sudden spikes in CPU usage and kicking in of the CPU fan etc. etc.
0roo0roo - Friday, June 25, 2010 - link
yea but those "mkv"' are at a fraction of the original blurays bitrate, and thus easier to play, at most they are 12gb or so, and those are more rare, the more common 1dvd size or 2 dvd rips easily play even on a 2ghz core 2. i know, i've tried this before. and even that is really not common usage for a true n00b who will at best run apple trailers, and those don't use vlc.ganeshts - Friday, June 25, 2010 - link
It is just not the bit rate, right? Actually, more than the bit rate, it is other encoding characteristics such as reference frames which are the issue in a PC. (On a PMP with hardware acceleration, it is the other way round). Most PCs have more than enough bandwidth to handle high bit rate scenes, but the CPU intensive calculations are what causes the spikes in CPU usage and stutters (I am trying to find some information about which part of the decode process consumes most time in CPU based decoding.. Let me know if you find any thing relevant !)VLC's development motto, I feel, is that they should be able to play back anything and everything perfectly. From that viewpoint, it makes sense for them to develop GPU accelerated playback, though their primary target audience might not make use of it :)
0roo0roo - Friday, June 25, 2010 - link
stuff like global hot keys/multimedia kb support have sat in the interface broken for years now while they play iwth other stuff.. Its just kind of annoying.legoman666 - Friday, June 25, 2010 - link
Can you compare the HD decoding performance of VLC, WMP, MPC-HC and other software? I'd do it myself, but I have an ATI card ;)mindbomb - Friday, June 25, 2010 - link
i can tell you what the results would be.WMP 12 would have the lowest cpu usage, followed closely by mpc hc, and vlc would be in last by a large margin.
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.
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.
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.
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:
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.
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:
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.
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...
Touche - Saturday, June 26, 2010 - link
Although GUIs could use a little touchup, it really is the content that you are watching.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.
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!
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.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.
Boofster - Friday, June 25, 2010 - link
Not sure if it was mentioned but the K-Lite pack is by far the best I've used. It handles everything and is updated to the latest patches.I've also had great results with ffdshow from afterdawn but that ended with Windows 7.
CCCP + VLC was also just fine. No hardware GPU love for us ATI 5xxx traitors.
But K-Lite from http://www.codecguide.com/download_kl.htm with MPC-HC definitely trumps all.
larson0699 - Saturday, June 26, 2010 - link
Thank you. I've used KLCP+MPC since its inception with no trouble whatsoever, whether as a RunOnceEx-initiated install on a fresh OS or clients' existing junk configs (common sense -- look for, uninstall, and reg-clean the previous 1 or 2 codecs first). I'd experimented with other codec packs (Nimo was a common one years back) and VLC and always came back to the tried and true.The later versions of the pack are so dependent on ffdshow (in default install), however, that I'm considering using just ffdshow herein.
Stuka87 - Friday, June 25, 2010 - link
Hopefully they get a Mac port with the support out. As I use a Mac Mini as my HTPC. Although it would also need to support ATI or an Intel GMA (I have an old G4 Mini and an Intel).But its certainly a step in the right direction getting it working at all.
knowom - Friday, June 25, 2010 - link
This is why Nvidia has a better reputation from a driver and software standpoint over the competition it's like trying to compare x86 to ARM there's a reason x86 is preferable from a performance and usability standpoint.0roo0roo - Friday, June 25, 2010 - link
if you time stretch videos for some reason the vlc implementation of audio pitch adjustment is just not as clear as say gomplayers. it does cost a few dollars but coreavc's gpu acceleration works without a hitch right now, and with gom you can speed crank videos at your pleasure, using gpu accel on or off. vlc's problems are that its half baked in so many ways that its just a fall back player for me. it plays dvds well, i'll give it that.ganeshts - Friday, June 25, 2010 - link
True, it takes a jack of all trades master of none approach. Seems to have worked well so far, except that they now have some serious catching up to do with the rest of the media players :)mojtabaalemi - Saturday, June 26, 2010 - link
no idea about GPU Accelerarion on VLC but in CPU decode its one of lightest softwares i have seen ever . i could play some video files containing DVDRIPs and even 1080i mpeg videos on a vaio p serie with a poor z520 1.33GHz intel atom while any other player and codecs but coreavc were unable .so except for h264i will go for VLC on atom .
Rsaeire - Saturday, June 26, 2010 - link
I've been using MPC-HC, and MPC before that, for years now. MPC-HC is easily the best media player currently available as it plays DVD, mkv, DivX, Xvid, Blu-ray etc without the need for additional codecs. In addition, it even plays HD DVD, albeit with a little codec assistance. As such, it plays pretty much all the main media containers and codecs with ease and supports full GPU hardware acceleration of all HD codecs.As for the several users commenting on deinterlacing which such gems as it being a "legacy concept" or that "DVDs and Blu-Ray are not interlaced", I guess they need to do a bit more research regarding both video formats, as there is still content stored on both formats that is interlaced. If there wasn't, then why is deinterlacing such a big topic? You just need to check out the numerous posts on AVSForums or have a look at ATI's CCC to see the numerous deinterlacing options available, e.g. Weave, Bob, Adaptive, Motion adaptive, Vector Adaptive. I doubt that ATI would waste any time on providing so many different deinterlacing options for something that is "not important in the modern world".
vfigueira - Saturday, June 26, 2010 - link
Hi.I have an Asus 1201N.
The inicial install of windows 7, came with arcsoft, wich reads hd content smoth and with low cpu usage.
The problem with that player are using srt subtitles and usability.
I`m using "Gomplayer 2.2.25.5017" with "K-lite 5.7.5 Full" codecs, means that i`m not using built in codecs. I`ve been using previous versions of both, and the experience is pleasant, except for view dvd. Don`t recomend for dvd`s.
While reading this article i instaled both vlc and mcp-hc.
I made several tests using "trailer_720p.mov" form Avatar.
CPU USAGE during playback min and max;
Gomplayer - 17/49 average 32
Arcsoft - 09/36 average 14
vlc without hardware aceleration - 16/33 average 25
vlc with hardware aceleration - 13/28 average 16
windows media player - reads with 50 to 80 % of cpu usage, but is not smoth. not viewable
wmp classic hc - not smoth, high cpu usage
So, vlc is not bad, but i will stick with gomplayer using k-lite full
Sorry my english
mojtabaalemi - Sunday, June 27, 2010 - link
as you have 1201N?is it satisfying?
how long is battery life?
dual core atom 330 power?
and about mpc-hc : try a new version .
vfigueira - Monday, June 28, 2010 - link
1201NI have a 3g Usb Modem (ZTE MF622) and a bluetooth mice (Genius Navigator BT905).
I use the 1201N manly for internet and movies on the move.
If i only use internet, the battery lasts a little more than 3 hours.
If i only use it for movies (hd content) i last more than 2 hours but less than 3.
The user experience is not bad, but could be better.
I had for a little time a Acer 1810T with a SU2300 and the experience was better.
Windows Media Player with K-lite, played Hd content flawless and smooth, and battery life was way better than 1201N.
The atom 330 is always at full power.
Asus should be working in a bios version, which could downclock the processor and support AHCI. The only 2 faults worth mentioning.
All the players i used, are the latest version.
smartalco - Sunday, June 27, 2010 - link
I still always have VLC installed because I have yet to find any video it won't play in 4 years. I very rarely watch movies on my computer (never blu-ray), and have a decent quad core, so CPU usage isn't a problem. When I find a video that VLC can't handle, I might consider something else. In the meantime, on with the performance increase!MrSpadge - Sunday, June 27, 2010 - link
Personally I don't like VLCs interface much and prefer ZoomPlayer. But seeing them adress this important topic with its diverse problems is very good and will ensure that I also keep VLC installed for all the cases ZoomPlayer can't handle.And thanks to Anandtech for testing - this is certainly not a trivial task. As becomes obvious to me when I consider all the abreviations in this article which don't tell me anything, except "probably somehow video related".
archer75 - Sunday, June 27, 2010 - link
It has everything built in! And it's still the preferred player of choice for HTPC's.Shadowmaster625 - Monday, June 28, 2010 - link
I have many avi files from 2005-2009 that used to play just fine on VLC. Now they don't work. It is retarded. I complain how WMP doesnt play certain mp3's, but this is just as annoying.david007 - Monday, June 28, 2010 - link
Mpc hc supports most of the codecs except few odd ones (real and quicktime) out of the box without having to install the codec packs, so why use vlc for other formats than mkv?Nx6 - Monday, June 28, 2010 - link
Interesting article, but it would be much more useful if there was some comparison to other CPU-only and/or GPU-assisted decoders such as CoreAVC.PR3ACH3R - Tuesday, June 29, 2010 - link
Thanks for the review, & for mentioning just how badly ATI have neglected their Blue Screening, Lockup Causing, DPC Spiking horrible DXVA drivers.I would be eternally grateful, if/when the fixed ati drivers ever come your way, if you can also check for these problems, that have been ignored in Anandtech for way too long:
http://www.avsforum.com/avs-vb/showthread.php?p=18...
ganeshts - Thursday, July 1, 2010 - link
Thanks for the forum post link.I will try to take these issues up with ATI once I have a testbed with their new card set up.
PR3ACH3R - Saturday, July 3, 2010 - link
Thank you very much for your reply.God bless you for taking it on, this has been going on since the 5xxx launch & has been ignored here so far.
Please fill us all in on this when possible,
All The Best.
electroju - Wednesday, June 30, 2010 - link
I think Linux is the best way to handle HD content compared to Windows because it works out of the box if you have either Intel or nVidia as the graphics card. The processing power being used is less than 20%. Though nVidia is better than Intel for graphics.IMHO, Video Lan Client was and still is designed to stream media from one computer and then to the next. It was not designed to be a stand-alone player. Also its reliability is poor compared to other media players that I used. Windows users have to rely on pathetic software for media playback from open source projects or go with the Windows Media Player. In Linux the media players are great except VLC. In Linux, Mplayer is the best and probably the best open source media player that is out there. Though open source software is great, but whatever they use to compile the code for Windows screws up everything.
From what I read on here and other sites, the best way to playback HD in Windows is use commercial software or juggle with the reliability, stability, and high CPU usage when using open source software.
The following is how I playback HD content or any videos using H.264, WM3/9, MPEG, VC with Mplayer and nVidia assuming using 190.x or higher nVidia driver and Mplayer is compiled with VDPAU support.
mplayer -vo vdpau -vc ffmpeg12vdpau,ffwmv3vdpau,ffvc1vdpau,ffh264vdpau [FILE]
VLC is not the best for HTPC. It is the worst to use. XBMC is better.
Kailen - Wednesday, June 30, 2010 - link
I have tried most and no one ever says anything about the player which works the best. I have tried them all and I find for MKV playback SplashHD is the best. You can get it here at http://mirillis.com/en/I purchased the Pro version so I can output digital audio to my amp. Anyways it uses GPU for both NVIDIA and ATI and I have yet to come across a problem with it.
PR3ACH3R - Friday, July 2, 2010 - link
These damn SplashHD advertising goons are a menace.Kailen - Monday, July 5, 2010 - link
Dunno what you are talking about advertising goon. I actually bought it and use it cause its better than all the other hack shit out there and is the easiest to use so my wife and child can use it.