I had a firm belief that this head-to-head was going to be a rout for VideoLAN Player aka, VLC. Over the years, I've used Media Player Classic - Home Cinema (MPC-HC), it's predecessor Media Player Classic, and VLC extensively. MPC-HC's pronounced and long-time tendency to crash pushed nearly everyone, including myself, to the somewhat geeky, but very capable VLC.
In fact, the only reason this article exists was a tenuous plan I formulated for my VLC 2.2 review to temper any unkind comments by calling out MPC-HC's numerous flaws. The only flaw was with my plan. After pitting the two players against each other on eight criteria, I'm back to using MPC-HC as my everyday video player.
Best video support: MPC-HC
I'm not sure why it surprised me, but MPC-HC played HEVC (x.265) files flawlessly, including 4K with decently high bit rates. I'd expected this from VLC, whose authors are almost fetish-like in supporting everything, but VLC didn't play the 4K files as smoothly. VLC skipped frames like they were going out of style. This won't affect many users now, but it may soon.
What's more, MPC-HC played nearly everything else I threw at it. There was one exception: an old MPEG-1 file that VLC won't handle either. Both also had a hard time seeking in certain WMV files, though VLC was quicker on long jumps. On the other hand, MPC-HC did play another older MPEG-1 that choked VLC. Both programs played VCDs and DVDs (even commercial ones), nicely handling the menus and other elements, and both played non-protected Blu-ray movies, too.
There was another factor: The stark difference between the way the two programs react to a file they don't understand. When VLC runs into a problem, it often goes into a loop that requires several attempts to break out of. Sometimes killing the VLC process tree using task manager is the only solution. MPC-HC simply doesn't play a file it doesn't understand. It might be nice if it displayed a frown clown instead of just sitting there, but that's being picayune.
MPC-HC's new-found stability with video seems due to replacing its old internal DirectShow filters with Nevcairiel's excellent LAV filters. The release notes for version 1.7 actually stress the increased stability. LAV is based on the popular GNU-licensed FFmpeg.
Best streaming support: VLC
This one was a laugher for VLC. It's called VideoLAN for a reason. Just paste a URL into the "Open Media Stream" dialog and if access is allowed, you're streaming YouTube and what have you. MPC-HC doesn't even try to do this.
Best audio support: MPC-HC
A squeaker for MPC-HC. Both programs played WAV files up to 96kHz/32-bits, and all the standard compressed formats, including MP3, M4A, FLAC, APE, and even Opus. Both failed with .VQF files (a very old codec), but so does everything else. The small difference was that VLC also misfired on Windows Lossless, starting but continuously glitching. I'm guessing this will be fixed soon. but it's not unusual for a VLC update to break something else. MPC-HC played both Apple Lossless and Windows Lossless just fine, and the program was more responsive when switching tracks.
Both programs also played audio CDs, with VLCbeing smoother at switching tracks in this instance.
Best with subtitles: VLC (barely)
In my subtitle tests, MPC-HC was generally fine, but for some reason refused to display text after I installed the external version of the LAV filters for use with Windows Media Player. Re-installing MPC-HC cured the issue, which may simply have undone my tinkering with which codecs to use, but it was an issue that VLC seemed immune to.
VLC's ability to add subtitles by dragging a .sub, .srt, etc. file on top of a playing movie in VLC (MPC-HC tries to open it as a playable file) and you have the winner by a small margin. Both automatically load subtitles the vast majority of the time.
Best photo format support: MPC-HC
Neither program is really made for images, nor will they do a slideshow worth a darn; but while VLC spun its wheels on nearly everything other than PNG and JPEG files, MPC-HC displayed BMP, compressed and uncompressed TIFF, PNG, static and animated GIFs, and TGA (Targa) files. On the other hand, it failed on one JPEG, then displayed it fine later. So that's eight formats to two, but a random fail on by far the most common type. I'm calling it for MPC-HC, but that JPEG glitch was puzzling.
Best user interface: MPC-HC
Neither VLC or MPC-HC are much to look at. MPC-HC was derived from the older Media Player Classic, whose interface is based on the Windows 95/XP Media Player. VLC has clunky icons and its garish orange work cone (aren't you supposed to avoid these?).
But the real difference is that MPC-HC's menus and features are far better organized and laid out. MPC-HC's context menus don't change as VLC's do when you're in full-screen mode, and it's easier to remember where everything is. I've used VLC for years and still have to hunt around for options on occasion.
I also appreciate that when I resize MPC-HC, it stays that way, even when I'm looping a video. VLC always returns to its previous window size when it starts playback again. This wasn't as close as I made it sound. VLC could use a lot of UI work.
Best support for filters, shaders, and FX: VLC
This was a tough call. Both players play normal speed and allow you to skip anywhere you want in the material. But VLC has more granular speed control; smoother slow speed playback; it stretches/compresses audio to retain the original pitch, instead of simply speeding it up or down as MPC-HC does; it lets you loop portions of the material, which MPC-HC does not allow; and it offers a few more tweaks that you can apply to video, such as interactive magnification, although they're hidden away in multiple dialog boxes.
MPC-HC lets you use shaders (aka filters or FX), such as grayscale, edge sharpen, and emboss. You can also load these from files, but I never located any that don't already ship with MPC-HC. There may be some, but the MPC-HC crew never responded to my queryand I got tired of hunting around. I'm calling shaders/FX a tie, but more facile and feature-complete playback wins the day for VLC.
Odds and ends: Tie
VLC has a very nice audio boost feature built right into the volume control, where MPC-HC has its boost buried in a dialog. VLC is cross-platform, supporting just about everything, including Windows Phone and Windows RT. Wow. MPC-HC is Windows-only. A big shout out to the VLC guys for that.
MPC-HC feels tightly programmed, which is something I appreciate from my days coding. I run a Core i7-3770 with SSDs, which tends to make everything seem the same speed; but MPC-HC still opens faster, reacts more quickly to drag and drop, and even resizes more smoothly. Then there's it's ability to play back 4K. It's not a massive difference, but it's there.
And I hate to harp, but it MPC-HC doesn't waste your time trying to close it when it can't read a file. VLC should really up its file-parsing game.
Why not use Windows Media Player?
Installing external DirectShow filters like LAV can enable Windows Media Player to play just about any file type, and its audio enhancement is the best in the business. It's also a pretty fair librarian/organizer, which neither VLC or MPC-HC is good for. The ridiculous hoops that you must jump through with WMP to skip about material, however, have always sent me looking for something else. Especially for sporting-event video. But that's another article.
I'm going to call this a victory for MPC-HC. Major kudos to the MPC-HC developer team for finally making it stable (with a nod to LAV package by Nevcairiel) while maintaining its keep-it-simple-stupid philosophy.
I would recommend keeping VLC around and up to date for those times that you want to stream outside of a browser, or loop segments, or play material at different speeds.