Squeezing the most battery life out of my netbook is a personal obsession of mine. One of the many uses to which I put my netbook is watching video during lunch, on the bus, in line at the DMV, etc. For this reason, choosing a battery-efficient method of playing videos is important to me.

MPC-HC, my favorite player, comes with a number of renderers for video output. Having done a bit of testing in the past, I have found that with some renderers, high bit-rate HD video is playable, and with others, it is not. This led me to believe that there might be a significant difference in hardware utilization and power efficiency between them.

I decided to conduct a test to see which of the renderers consumed the least amount of power.

Testing method:

To test power consumption, I bought a copy of BatteryBar Pro, which has the ability to log total system draw in milliwats per hour (mWh), in the background, to a CSV format that is easy to work with.

Testing environment is as follows:

  • Atom N280, 1.66ghz
  • 1gb DDR2 RAM
  • Intel GMA950 Graphics
  • 160GB WD SATA/300 HDD
  • 1024×600 screen resolution
  • nLite’d Windows XP SP3, all updates installed
  • MPC-HC 1.5.1.2903
  • K-Lite Codec Pack 700

To isolate video performance, I turned off non-critical power-consuming features:

  • WiFi disabled
  • Screen brightness minimum
  • Antivirus disabled
  • System restore, and many other Windows services disabled
  • Player and system set to mute
  • All programs closed except for one Explorer window, and MPC-HC itself

Codecs and other MPC-HC settings were left default.

The videos used in testing were nine 5-minute clips that represent my typical video watching habits. They were strung together with a playlist file to eliminate human factors introduced by manually advancing the clips. They are as follows:

Container Resolution Codec FPS Bit Rate Description
.mp4 1280×720 H264 29.83 2574Kbps Youtube
.flv 854×480 H264 29.84 905Kbps Youtube
.flv 640×360 H264 29.84 754Kbps Youtube
.mkv 1280×720 H264 29.97 4336Kbps Live Action
.mkv 1024×576 H264 23.98 1123Kbps Japanese Anime
.avi 720×544 Xvid 29.97 1199Kbps American Animation
.mkv 720×480 H264 23.98 773Kbps Japanese Anime
.avi 624×352 Xvid 23.98 1455Kbps American Sitcom
.wmv 320×240 MSMPEG4v3 23.98 1006Kbps American Drama

 

I cut them down to 5 minutes using Avidemux. The YouTube files were downloaded via the DownloadHelper FireFox plugin. No subtitles were rendered in any video.

You will notice that there are no 1080p videos. That is because I believe that watching 1080p video on a screen that is only capable of 1024×600 resolution is a silly waste of resources. You HTPC folks out there are probably using Windows 7 with a respectable GPU anyway, so this test doesn’t apply to you.

For each test, I selected the renderer in question, and started the playlist. I cut out the first and last minute of log data for each test, to eliminate factors of human movement and whatever processing Windows might feel needed to be done because of it. Then, I averaged everything in between.

Results:

Sorted in order from best to worst, with the difference in power consumption from idle, and maximum gross play time on my 9-cell 86,580 mWh battery.

Renderer Avg mWh Diff Life (Hrs)
idle 9508.84 9.11
VMR-7 Windowed 11098.59 1589.75 7.8
System Default 11112.5 1603.66 7.79
Old Renderer 11336.01 1827.17 7.64
Overlay Mixer 11608.26 2099.42 7.46
VMR-9 Windowed 11676.49 2167.65 7.41
VMR-7 Renderless 12258.62 2749.78 7.06
EVR 12319.46 2810.62 7.03
VMR-9 Renderless 12460.86 2952.02 6.95
Haali 13379.49 3870.65 6.47
EVR Custom 13421.63 3912.79 6.45
EVR Sync

 

The “default” for XP is said to be VMR-7 Windowed. Looks like it’s true.

VMR-7 Renderless and both types of VMR-9 expressed unacceptable stuttering. EVR Sync would not function.

Out of curiosity, I also conducted tests playing the YouTube videos straight from the web. FireFox 3.6, Adobe Flash 10.2. Wifi on, but idle – videos were allowed to finish downloading before the test was started, to isolate video performance. The Adblock Plus FireFox extention was enabled.

Renderer Avg mWh Diff Life (Hrs)
idle 10043.49 8.62
YT360 11937.6 1894.11 7.25
TY480 12478.21 2434.72 6.94
YT720 13237.4 3193.91 6.54

 Conclusion:

VMR-7 Windowed wins.

Granted, this is test is conducted under circumstances confined to my hardware and personal choices of software and operating system. On a computer with Windows 7 and/or hardware acceleration, I suspect that VMR-9 or EVR might do better.

The average difference from idle for VMR-7 rendering is 240mW less than that of even the small 360p YouTube video through the browser. While Adobe has implemented hardware acceleration into Flash Player 10.2, on this test system it’s still much more battery efficient to download flash-based movies and play them via MPC-HC.

While not directly tested, it seems to me that the system draws less power when playing video in full screen mode, rather than in a window, even with scaling involved. I did notice a definite correlation between watchability and efficiency – the smoother a renderer displayed video, the less power it consumed. Predictably, this implies that a more efficient render method will do less to tax the system’s capabilities while accomplishing the task at hand.

Hope someone found this useful!