[General Topics] Menneisyys:
UPDATE (01/25/2009):

1.	CorePlayer 1.3 has been released for both Windows Mobile and Symbian in the meantime. I've made some very thorough tests on it to find out whether it's faster at playing back H.264 than the 1.2.x series or whether there is H.264-specific decoding acceleration support of the Xscale 3xx series (tested this with the 310-based HP iPAQ 210) or the TI OMAP 2xxx-series (tested this on the Nokia N95 equipped with an OMAP 2420), two chip(set)s announced as ones that might receive hardware support in the future. Unfortunately, there isn't. Nevertheless, if you have a previous version of CorePlayer, you will want to update to the new version – it has much better YouTube support. For example, it supports iterating over all the search / category results and also supports the latest YouTube video formats. Unfortunately, HE-AACv2 and, on Symbian S60, WMV support is still painfully missing – I really-really hope they'll be added before long.

2.	I've also played a bit with the latest (1.8.5.0) version of the desktop version of CoreAVC, the desktop decoder for H.264 and directly compared it to the recently-released DivX Player 7.0, which, among other things, has a brand new H.264 decoder. I've also thrown the latest (0.9.8a) version of VideoLan VLC player to see how the two compare to the well-established (but not very efficient, H.264 playback-wise), free, all-in-one video player.

All my tests have been conducted on a 2 GHz IBM ThinkPad t42p with a Pentium-M Dothan running at 2 GHz, 2GB of RAM and an UXGA screen, under the recently-released build 7000 of Windows 7 beta. I've run the tests in full screen mode. (Note that, unlike with, say, the IBM ThinkPad a31p and HP TC1100, video acceleration is fully supported on the t42p. Without it, watching high-resolution videos would be a painful experience.)

I've mostly used (torrented) 720p material like Ratatouille (video encoded at 1280x528 @ 4380 Kbps, bilingual audio left at the default 640kbps AC3) and Harry Potter and the Chamber of Secrets, encoded using very similar parameters. Of the former, I especially took care of checking switching between the two soundtracks (English / German); of the latter, I paid special attention to the jerkiness of the animation at the end of the movie, starting at 2:31:05. In addition, I've thrown in some 1024*768*15 fps Canon IXUS SD960 video clips encoded by the latest (version 2009 build .35), highly recommended SUPER (Simplified Universal Player Encoder & Renderer) using 1200 kbps, 15 fps video and LLC-AAC 64 kbps 44 kHz mono audio.

The results are as follows: VLC, as one could easily guess, was by far the slowest to render. It just couldn't produce enjoyable results – the 720p videos stuttered so bad. (The much simpler 1024*768*15fps videos were, of course, played back without problems.)

The free(!) DivX Player was much-much better. It delivered far less stuttering. A quick note: it, by default, doesn't support AC3. Therefore, you'll want to install AC3filter [latest, tested version: 1.51]. Note that, as is explained in section 4.10 HERE, you'll also want to do this if you use other players and find the audio volume low while playing back movies with an AC3 soundtrack; this also applies to CoreAVC and any compliant player like the built-in Windows Media Player or, in newer Windows versions, Windows Media Center. (Note that these do play back AC3 soundtracks – at least under Windows 7 – without installing any codecpack; just pretty quietly) Just install the driver and, under XP, follow the just-linked tutorial; under Vista / Windows 7, go to All Programs / AC3Filter / AC3Filter Config and raise the gain level.

CoreAVC was still (a bit) better than DivX Player. While the difference between CoreAVC and DivX Player was certainly much-much lower than between VLC and DivX Player, I do think it's still worth paying for the standard version of CoreAVC (unfortunately, the Professional version still doesn't support hardware acceleration and it'll unlikely receive any, based on the comments HERE) if you want to minimize CPU utilization.

Note that I've tried very hard to remove (or reduce) stuttering in all players. In CoreAVC, setting "Deblocking" to "Skip always" from the default "Standard" didn't seem to have any effect at all – the video, with very fast panning / action, occassionally stuttered, while the CPU usage, interestingly, remained around 30-40%. In Divx Player, under Tools / Preferences / Video, the "Post-processing mode" drop-down list turned out to be uneditable – it is set to "Custom deblocking". Finally, I didn't really bother with VLC as it was bad enough and in no way recommended for H.264 playback. If you absolutely must use a free H.264 player (and can't shell out $8 for the Standard edition of CoreAVC), go for the (in this regard, much superior) DivX Player 7 instead.