Advertisement

Zibb

Brian DipertEDN Senior Technical Editor Brian Dipert exposes, analyzes and
opines on diverse topics in technology. Follow the Brian's Brain Twitter feed at www.twitter.com/BrianzBrain.



   Advertisement

Profile

RSS Feed

  • Add this blog to your RSS newsreader!

Recent Posts

Recent Comments

Most Commented On

Archives

By Category

Consumer Electronics Design Articles

Blog

Tuesday, April 29, 2008

H.264 and Hulu: Day Two, Additional Data

Apr 29 2008 10:09AM | Permalink |Comments (21) |


Over the last four months (specifically at January's CES and the earlier-this-month NAB), I've had at least a half-dozen different Hulu representatives emphatically tell me that all of the content served by the company is H.264-encoded. Therefore yesterday's two-part post. And therefore my confusion when commenter 'plasticbloodm' subsequently noted that he was able to watch Battlestar Galactica Season 4, Episode 3 just fine via a pre-H.264-supportive version of the Adobe Flash plugin.

So I hit Google, and quickly discovered what was really going on. My Hulu contacts, as it turns out, were only partly right. All of the standard-definition Hulu content, at minimum, is encoded using On2's VP6 codec, and served at bitrates of between 480 kbps and 700 Kbps (with unspecified corresponding resolution) depending on a particular recipient's downstream bandwidth capability. Since I'm fed by a 2.5 Mbps downstream DSL pipe, I likely was watching Battlestar Galactica content at the upper end of the bandwidth range. Some standard-definition Hulu material (but not the Season 4 material I was watching) is also encoded in 1 Mbps-peak H.264; you select that specific stream by clicking on the '480p' button in the UI. And all of the high-def Hulu content (such as the Street Kings trailer) is encoded as 720p H.264, albeit at unspecified bitrate.

So the H.264-vs-VP7 CPU burden and quality observations I made yesterday are still valid, but only in comparing Street Kings to Lost, and since I don't know the Street Kings bitrate, they're not definitive (ABC's Full Episode Player generously reports the incoming VP7 bitrate, which in my case is top-end ~1.5 Mbps). In evaluating Battlestar Galactica versus Lost, it turns out I was actually comparing standard-definition (or below) VP6 to high-definition VP7; both codecs come from On2 Technologies. And, as I indicated yesterday (reflecting back on a past color-space-conversion burden discussion) and a reader comment left earlier this morning confirmed, the up-scaling of that standard-definition (or below) content puts a tremendous processing load on the host CPU:

Adobe's Flash plug-in doesn't appear to use the hardware video overlay, hence all colour space conversion (YUV to RGB) and video scaling has to be done on the CPU. You can tell by rapidly dragging the browser window around- if the hardware overlay were used you would see the colour key used (usually blue or green) being "left behind". That's probably the reason ABC's standalone player works fine full-screen (the GPU would do the scaling instead) and Hulu's Flash-based video doesn't.

My revised results imply, but again can't definitively confirm, the truth of a different assertion On2's CEO Bill Joll lobbed at me during our NAB dinner. Video codec generational progression usually tracks Moore's Law-delivered silicon performance improvement trends. A newer iteration of an codec (such as, for example, the transition from industry-standard MPEG-2 to MPEG-4, or from MPEG-4's simple profile to advanced simple profile to H.264) delivers higher quality at an equivalent bitrate to its predecessor (or, said another way, equivalent quality at a lower bitrate) but requires heavier-duty processing than its predecessor both at the encode and decode stages of the delivery chain.*

Joll claimed, though, that each successive iteration of the VPx codec family delivers better quality at lower bitrates, along with reduced encode and decode processing requirements as compared to its predecessors. The company accomplishes this feat, he said, via several key focuses:

  • Fundamental improvements in video content (therefore compression) understanding and algorithmic implementation
  • A continuous and iterative code optimization emphasis, and
  • Leveraging microprocessors' multimedia-tuned instruction set enhancements, such as MMX, 3Dnow! and SSE.

I can't use this case study to prove (or disprove) Joll's boast, of course, because my testing is apples-vs-oranges in several key areas:

  • The Hulu- and ABC-delivered content isn't of the same show/trailer
  • The respective bitrates, resolutions and (potentially) framerates don't match, and I also have no way of knowing if either or both pieces of content are constant- or variable-bitrate-encoded.
  • I'm also using two different playback utilities; Adobe's Flash browser plugin, and the Move Networks-developed Full Episode Player.

This situation highlights why meaningful video codec testing is so difficult to accomplish. Even if you make all of the test conditions identical, for example, someone else with a different computing platform might achieve completely different encode and decode performance results. Video quality is similarly impermanent by virtue of its inherent subjective nature; artifacts that might not be noticed at all by one set of eyes-and-brain could be evaluated as highly objectionable by a different observer, and visa versa.

*As a quick aside, most video codecs (as is the case with all of the candidates mentioned in this writeup) are asymmetrical in nature, with much higher processing requirements for encode versus decode, therefore enabling lower-cost (aka consumer electronics price point-friendly) electronics at the playback stage. One notable exception to this rule is videoconferencing, in which both ends of the communication 'chain' are doing both video encoding and decoding (and in this particular case, in real time). The codecs used in such applications therefore tend to be symmetrical in nature.


Reader Comments



at 4/29/2008 3:24:30 PM, Jeff said:
are you that clueless or what? Please do your homework and then write an informative article....



at 4/29/2008 4:39:18 PM, Roger said:
Jeff,

Since you are so knowledgeable on the subject, perhaps you''d be willing to share your wisdom with the rest the clueless masses.



at 4/29/2008 6:00:58 PM, mike A. said:
I can''t figure out why some companies insist on beating their heads against a wall.We all can see the quality of ABC video vs others .But engineers have to be beaten to a pulp to relent.It seems to me the VP family codecs are superior to anything out their as far as flexibility.Only a matter of time before the industry goes knocking on ON2''S door.



at 4/29/2008 8:26:28 PM, adobe_gillis said:
I think On2 will eventually be DISCOVERED as the little company that could! Their codecs are fast becoming the standard to beat. With their recent purchase on Hantro, they are positioned to explode in growth over the next few months. Good products always have a good future.



at 4/29/2008 9:31:13 PM, DAM said:
I think some people responding are a little bit bias as they are also On2 investors. I think that the content providers will ultimately decide what format will be used.



at 4/30/2008 1:50:34 AM, Tell All guy! said:
Please note that HULU usses flash for video. That is obvious. What is not so obvious is that the flash video is poorly encoded compared with Matrixstream. It's 2 - 3 times bigger in it's file sizes. It does not stream instantly, no individual user targeted ad's and the bandwidth required to stream 720p or 1080p high definition is out of the range of just about all of the users in the US. Hulu will go down the toilet for various reasons. The shortest of which I can say is because it is ussing a quick fix solution that is flash.

PS: Did I mention it has no security as well? Download Hotspot shield and replay media catcher.

Tell All guy!

Good luck Hulu in making 1 Billion dollars. You'll need it!!!



at 4/30/2008 1:56:28 PM, seriously said:
Seriously, your analysis is so flawed that you come across as clueless. Comparing codecs based on streaming quality is wrong. ABC and Hulu have completely different streaming architectures. That itself can account for everything you are observing.



at 4/30/2008 2:12:29 PM, Brian Dipert said:
Dear seriously, and I made that very point, on multiple occasions, through multiple writeups in this particular post series. So what's YOUR point? The data's still useful, even if it's not definitive...as, I pointed out at the end of this particular writeup, it can NEVER be by virtue of video's (or more generally ANY multimedia presentation's) inherent six-sense-induced subjective nature.



at 4/30/2008 4:53:12 PM, seriously said:
Brian: Seriously, I''m trying to figure out what the purpose of the post is?! Clearly comparing codecs is difficult, esp. with apples-organges comparisons with pre encoded content. You point this out. You also point out the differences in the players. All I''m saying is that codecs may be secondary, even tertiary to this discussion of streaming video quality, esp. given the examples of Hulu and ABC you have used.



at 4/30/2008 6:16:02 PM, Brian Dipert said:
Dear seriously, so what would be a meaningful test to you? What codec(s) and encode setting(s)? What type(s) of content? What bitrate(s)? What resolution(s)? What frame rate(s)? What delivery mechanism(s)? Are you getting my drift? I think you're saying that in the absence of completely comprehensive data, no data subset is at all meaningful. I frankly find that attitude silly, especially since I've clearly documented the limitations of my study.



at 5/1/2008 11:04:17 AM, seriously said:
Brian: While not an exact science, codec comparisons can and are done with reasonable objective precision. You need to isolate all possible external factors and minimize the variables. There are a lot of methodologies you can find on the web, so I won''t be redundant here. My point is not that codec comparisons is a fools errand - it certainly is not. However, what you have is a comparison between streaming video websites. Making a causal link to the codecs is huge leap IMO, even with all the caveats.



at 5/1/2008 11:06:19 AM, Brian Dipert said:
Dear seriously, did you happen to access the link to my past work in this area? www.edn.com/article/CA233723.html



at 5/1/2008 11:54:24 AM, seriously said:
Brian: I did not, but thank you.



at 5/1/2008 12:31:46 PM, Brian Dipert said:
Dear seriously, still think I'm clueless? ;-)



at 5/1/2008 2:02:09 PM, seriously said:
Brian: reread my original comment - I did not say you were clueless now, did I?



at 5/1/2008 2:32:30 PM, Brian Dipert said:
Dear seriously, I believe the distinction you're (unsuccessfully) attempting to draw is what is commonly referred to as 'splitting hairs'...;-)



at 5/3/2008 7:35:14 AM, SEC Scout said:
Brian, don''t be concerned with comments from the likes of ''seriously''. As evidenced by the blabble, he knows very little about codecs and streaming video and only pounced here as On2 was mentioned. The same nonsense behavior is also being tracked on various internet message boards. VP7 is indeed world-class technology, but not something the standards based patent pools are too happy about. Thanks for all of your work here at EDN.



at 1/19/2009 2:19:13 AM, meh said:
FLV ought not contain episodes

H.264 in mp4 or mov containers is where it's at





at 1/19/2009 2:19:50 AM, meh said:
rather x264



at 6/10/2009 10:24:44 AM, dasrhino said:
I think one poster is biased since he was canned from On2





at 10/16/2009 6:27:32 PM, Alex said:
Brian, please ignore all that crap - you did contribute into the community - they did not. Great job! All of those - just crying babies-you know. Thank you, man! They all can stick they tongs up to... Well... Great job anyway..

Post a comment



Display Name

Change Image
Before submitting this form, please type the characters displayed above.
Note the letters are NOT case sensitive.


ADVERTISEMENT

©1997-2010 Reed Business Information, a division of Reed Elsevier Inc. All rights reserved.
Use of this Web site is subject to its Terms of Use | Privacy Policy