<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" media="screen" href="/styles/xslt/rss.xslt"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:c9="http://channel9.msdn.com">
<channel>
	<title>Channel 9 - Entries tagged with vc-1</title>
    <atom:link rel="self" type="application/rss+xml" href="http://channel9.msdn.com/Tags/vc-1/RSS"/>
    <itunes:summary></itunes:summary>
    <itunes:author>Microsoft</itunes:author>
    <itunes:subtitle></itunes:subtitle>
    <image>
      <url>http://mschnlnine.vo.llnwd.net/d1/Dev/App_Themes/C9/images/feedimage.png</url>
      <title>Channel 9 - Entries tagged with vc-1</title>
      <link>http://channel9.msdn.com/Tags/vc-1</link>
    </image>
    <itunes:image href=""/>
    <itunes:category text="Technology"/>
    <description>Channel 9 keeps you up to date with the latest news and behind the scenes info from Microsoft that developers love to keep up with. From LINQ to SilverLight – Watch videos and hear about all the cool technologies coming and the people behind them.</description>
    <link>http://channel9.msdn.com/Tags/vc-1</link>
    <language>en</language>
    <pubDate>Sun, 12 Feb 2012 11:57:54 GMT</pubDate>
    <lastBuildDate>Sun, 12 Feb 2012 11:57:54 GMT</lastBuildDate>
    <generator>Rev9</generator>
    <c9:totalResults>58</c9:totalResults>
    <c9:pageCount>3</c9:pageCount>
    <c9:pageSize>25</c9:pageSize>
  <item>
      <title>Tool Shed Tooltip #23 - Expression Encoder 3 (Part 1 of 2) - Overview and Screen Capture</title>
      <description><![CDATA[Looking to learn more about encoding videos for the internet and several other potential deployments&nbsp;using
<a shape="rect" href=" http://www.microsoft.com/expression/try-it/" target="_blank" shape="rect">
Expression Encoder 3</a>? Looking for a screen capture utility? Do you have a HD&nbsp;WMV file, but it does not play properly when streamed over the internet? Learn the answers to these questions and more in this tooltip.<br>
<br>
<br>
<p>Expression® Encoder 3 – Part 1 of 2 Screen Capture<br>
What is it?<br>
Expression Encoder 3 provides the power of industry leading encoding, in a simple approachable interface to make it easy to prepare video for use in a variety of ways, including Silverlight on the Web.<br>
<br>
Download Site: <a shape="rect" href="http://www.microsoft.com/expression/try-it/" shape="rect">
http://www.microsoft.com/expression/try-it/</a><br>
<br>
Example Problem(s) it solves:<br>
Encoder has a screen capture application to record from your screen with webcam and microphone support to produce demo and training materials<br>
<br>
Usage Notes: Expression Community Home: <a shape="rect" href="http://expression.microsoft.com" shape="rect">
http://expression.microsoft.com</a></p>
This is the&nbsp;second of Tool Shed Tooltips clips released from&nbsp;<a shape="rect" href="http://channel9.msdn.com/shows/toolshed/Show-Episode-4-Its-All-About-The-Tools-TV-Show/" target="_blank" shape="rect">Episode 4 of the TV Show Russ Tool Shed presents... &quot;It's
 All About The Tools&quot; </a>hosted by Russ Fustino and Co-Host Stan Schultes. Download code, ppt and demo script from&nbsp;<a shape="rect" href="http://code.msdn.com/toolshed" target="_blank" shape="rect">http://code.msdn.com/toolshed</a> for all episodes. Also, use
 the links on&nbsp;<a shape="rect" href="http://channel9.msdn.com/toolshed" shape="rect">http://channel9.msdn.com/toolshed</a> to download tools. Finally, check out some more great videos on the Developer Evangelist East site:
<a shape="rect" href="http://channel9.msdn.com/dpeeast" target="_blank" shape="rect">
http://channel9.msdn.com/dpeeast</a>  <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:b113880777804df4bc0e9deb0172abe0">]]></description>
      <comments>http://channel9.msdn.com/Shows/toolshed/Tool-Shed-Tooltip-23-Expression-Encoder-3-Part-1-Overview-and-Screen-Capture</comments>
      <itunes:summary>Looking to learn more about encoding videos for the internet and several other potential deployments&amp;nbsp;using

Expression Encoder 3? Looking for a screen capture utility? Do you have a HD&amp;nbsp;WMV file, but it does not play properly when streamed over the internet? Learn the answers to these questions and more in this tooltip.


Expression&#174; Encoder 3 – Part 1 of 2 Screen Capture
What is it?
Expression Encoder 3 provides the power of industry leading encoding, in a simple approachable interface to make it easy to prepare video for use in a variety of ways, including Silverlight on the Web.

Download Site: 
http://www.microsoft.com/expression/try-it/

Example Problem(s) it solves:
Encoder has a screen capture application to record from your screen with webcam and microphone support to produce demo and training materials

Usage Notes: Expression Community Home: 
http://expression.microsoft.com
This is the&amp;nbsp;second of Tool Shed Tooltips clips released from&amp;nbsp;Episode 4 of the TV Show Russ Tool Shed presents... &amp;quot;It&#39;s
 All About The Tools&amp;quot; hosted by Russ Fustino and Co-Host Stan Schultes. Download code, ppt and demo script from&amp;nbsp;http://code.msdn.com/toolshed for all episodes. Also, use
 the links on&amp;nbsp;http://channel9.msdn.com/toolshed to download tools. Finally, check out some more great videos on the Developer Evangelist East site:

http://channel9.msdn.com/dpeeast </itunes:summary>
      <itunes:duration>432</itunes:duration>
      <link>http://channel9.msdn.com/Shows/toolshed/Tool-Shed-Tooltip-23-Expression-Encoder-3-Part-1-Overview-and-Screen-Capture</link>
      <pubDate>Tue, 01 Sep 2009 00:13:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Shows/toolshed/Tool-Shed-Tooltip-23-Expression-Encoder-3-Part-1-Overview-and-Screen-Capture</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/100/488756_100x75.jpg" height="75" width="100"/>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/220/488756_220x165.jpg" height="165" width="220"/>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/ch9/6/5/7/8/8/4/ToolShedTooltip0023_320_ch9.png" height="240" width="320"/>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/ch9/6/5/7/8/8/4/ToolShedTooltip0023_512_ch9.png" height="384" width="512"/>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/ch9/6/5/7/8/8/4/ToolShedTooltip0023_85_ch9.png" height="64" width="85"/>
      <media:group>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/6/5/7/8/8/4/ToolShedTooltip0023_2MB_ch9.wmv" expression="full" duration="432" fileSize="28361097" type="video/x-ms-wmv" medium="video"/>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/6/5/7/8/8/4/ToolShedTooltip0023_ch9.mp3" expression="full" duration="432" fileSize="3461124" type="audio/mp3" medium="audio"/>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/6/5/7/8/8/4/ToolShedTooltip0023_ch9.mp4" expression="full" duration="432" fileSize="17902480" type="video/mp4" medium="video"/>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/6/5/7/8/8/4/ToolShedTooltip0023_ch9.wma" expression="full" duration="432" fileSize="3513649" type="audio/x-ms-wma" medium="audio"/>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/6/5/7/8/8/4/ToolShedTooltip0023_ch9.wmv" expression="full" duration="432" fileSize="29899633" type="video/x-ms-wmv" medium="video"/>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/6/5/7/8/8/4/ToolShedTooltip0023_Zune_ch9.wmv" expression="full" duration="432" fileSize="18171561" type="video/x-ms-wmv" medium="video"/>
      </media:group>      
      <enclosure url="http://ecn.channel9.msdn.com/o9/ch9/6/5/7/8/8/4/ToolShedTooltip0023_ch9.wmv" length="29899633" type="video/x-ms-wmv"/>
      <dc:creator>Russell Fustino</dc:creator>
      <itunes:author>Russell Fustino</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Shows/toolshed/Tool-Shed-Tooltip-23-Expression-Encoder-3-Part-1-Overview-and-Screen-Capture/RSS</wfw:commentRss>
      <category>Expression Encoder 3</category>
      <category>Expression Studio 3</category>
      <category>h.264</category>
      <category>Screen Capture</category>
      <category>Tool Shed</category>
      <category>vc-1</category>
      <category>wmv</category>
    </item>
  <item>
      <title>Silverlight 3 and Expression 3 announcement roundup</title>
      <description><![CDATA[So, Silverlight 3 was released today, and the Expression Studio is available in a public release candidate, including the awesome Expression Encoder 2.<br><br>I'll have a bunch more to say about it, of course, but first off let me just provide links to the important stuff relating to the media side of things.<br><br>Scott Guthrie's always-excellent blog post roundup:<br><a shape="rect" href="http://weblogs.asp.net/scottgu/archive/2009/07/10/silverlight-3-released.aspx" shape="rect">http://weblogs.asp.net/scottgu/archive/2009/07/10/silverlight-3-released.aspx</a><br><br>Technical overview of media features:<br><a shape="rect" href="http://www.microsoft.com/silverlight/overview/media/media-details.aspx#smooth" shape="rect">http://www.microsoft.com/silverlight/overview/media/media-details.aspx#smooth</a><br><br>Expression Encoder 3 overview:<br><a shape="rect" href="http://www.microsoft.com/expression/products/Encoder_Overview.aspx" shape="rect">http://www.microsoft.com/expression/products/Encoder_Overview.aspx</a><br><br>Extensive blog post about Expression Encoder 3 new features (it is awesome):<br><a shape="rect" href="http://blogs.msdn.com/expressionencoder/archive/2009/07/10/9828866.aspx" shape="rect">http://blogs.msdn.com/expressionencoder/archive/2009/07/10/9828866.aspx</a><br><br>Alas, the RC of that isn't available for download quite yet. Soon, I'm told.<br><br>And I had this interview on Streaming Media about the new media features:<br><a shape="rect" href="http://streamingmedia.com/article.asp?id=11268" shape="rect">http://streamingmedia.com/article.asp?id=11268</a> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:ff0e8855fc504d62a45e9e1000b2164e">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Silverlight-3-and-Expression-3-announcement-roundup</comments>
      <itunes:summary>So, Silverlight 3 was released today, and the Expression Studio is available in a public release candidate, including the awesome Expression Encoder 2.I&#39;ll have a bunch more to say about it, of course, but first off let me just provide links to the important stuff relating to the media side of things.Scott Guthrie&#39;s always-excellent blog post roundup:http://weblogs.asp.net/scottgu/archive/2009/07/10/silverlight-3-released.aspxTechnical overview of media features:http://www.microsoft.com/silverlight/overview/media/media-details.aspx#smoothExpression Encoder 3 overview:http://www.microsoft.com/expression/products/Encoder_Overview.aspxExtensive blog post about Expression Encoder 3 new features (it is awesome):http://blogs.msdn.com/expressionencoder/archive/2009/07/10/9828866.aspxAlas, the RC of that isn&#39;t available for download quite yet. Soon, I&#39;m told.And I had this interview on Streaming Media about the new media features:http://streamingmedia.com/article.asp?id=11268</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Silverlight-3-and-Expression-3-announcement-roundup</link>
      <pubDate>Sat, 11 Jul 2009 03:35:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Silverlight-3-and-Expression-3-announcement-roundup</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Silverlight-3-and-Expression-3-announcement-roundup/RSS</wfw:commentRss>
      <category>Expression Encoder</category>
      <category>h.264</category>
      <category>IIS</category>
      <category>media</category>
      <category>Silverlight</category>
      <category>Silverlight 3</category>
      <category>vc-1</category>
      <category>NBC Universal</category>
    </item>
  <item>
      <title>My Silverlight 3 preview up at StreamingMedia.com</title>
      <description><![CDATA[The newest in my &quot;Silverlight Guru&quot; interviews with Troy Dreier is up now. It offers a concise overview of some of the big features we have coming for Silverlight 3 and with our encoding infrastructure.<br><br><a shape="rect" href="http://www.streamingmedia.com/article.asp?id=11268" shape="rect">http://www.streamingmedia.com/article.asp?id=11268</a><br><br>And the previous installments are here:<br><a shape="rect" href="http://www.streamingmedia.com/article.asp?id=11188" shape="rect">http://www.streamingmedia.com/article.asp?id=11188</a><br><a shape="rect" href="http://www.streamingmedia.com/article.asp?id=11140" shape="rect">http://www.streamingmedia.com/article.asp?id=11140</a><br><br>We're doing these roughly once a month, mainly driven by questions from the Streaming Media forums or send directly to Troy.<br><br>As Troy alwasy ends the interviews:<br><br><i>Submit your Silverlight questions to Streaming Media’s </i><a shape="rect" href="http://forums.streamingmedia.com/forum-6.html" target="new" shape="rect"><i>Formats, Codecs, and Players forum</i></a><i>, or send them directly to the author at </i><a shape="rect" href="mailto:tdreier@streamingmedia.com" shape="rect"><i>tdreier@streamingmedia.com</i></a><i>.</i><br> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:a6a87a9259264659b45e9e1000b211a9">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/My-Silverlight-3-preview-up-at-StreamingMediacom</comments>
      <itunes:summary>The newest in my &amp;quot;Silverlight Guru&amp;quot; interviews with Troy Dreier is up now. It offers a concise overview of some of the big features we have coming for Silverlight 3 and with our encoding infrastructure.http://www.streamingmedia.com/article.asp?id=11268And the previous installments are here:http://www.streamingmedia.com/article.asp?id=11188http://www.streamingmedia.com/article.asp?id=11140We&#39;re doing these roughly once a month, mainly driven by questions from the Streaming Media forums or send directly to Troy.As Troy alwasy ends the interviews:Submit your Silverlight questions to Streaming Media’s Formats, Codecs, and Players forum, or send them directly to the author at tdreier@streamingmedia.com.</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/My-Silverlight-3-preview-up-at-StreamingMediacom</link>
      <pubDate>Thu, 09 Jul 2009 19:11:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/My-Silverlight-3-preview-up-at-StreamingMediacom</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/My-Silverlight-3-preview-up-at-StreamingMediacom/RSS</wfw:commentRss>
      <category>Expression Encoder</category>
      <category>h.264</category>
      <category>IIS</category>
      <category>media</category>
      <category>Silverlight</category>
      <category>Silverlight 3</category>
      <category>Smooth Streaming</category>
      <category>vc-1</category>
      <category>Compression</category>
      <category>Streaming Media</category>
    </item>
  <item>
      <title>NAB Day 1: Smooth Streaming released, Partners, 1080p in SL3, new VC-1</title>
      <description><![CDATA[So, it's the end of Monday here in Las Vegas, and I've already got Thursday voice. I wish I could explain with a great Vegas story involving cigars and bourbon, but it's actually a nasty virus from my three year old that's been hammering me for a couple of weeks. So I'm skipping the Akamai shindig to rest my voice and get some blogging done.<br><br>There's lots of big news&nbsp;from Microsoft and our partners around Silverlight that I wanted to link to. This is just the highlights - there's tons more in the press release: &quot;<a shape="rect" href="http://www.microsoft.com/presspass/press/2009/apr09/04-20SmoothStreamingPR.mspx" shape="rect">Microsoft Smooth Streaming Provides True High-Definition Video Delivery</a>.&quot; The Silverlight Team Blog has a <a shape="rect" href="http://team.silverlight.net/announcements/nab09-microsoft-releases-iis-smooth-streaming-for-true-hd-1080p-video-delivery/" shape="rect">more nerd-friendly take </a>as well.<br><br>So, highlights so far?<br><br><strong>Smooth Streaming is released!</strong><br>The release-to-world&nbsp;out-of-beta&nbsp;version of the IIS7 module for on-demand.&nbsp;<a shape="rect" href="http://www.iis.net/extensions/SmoothStreaming" shape="rect">Smooth Streaming </a>is now available for download. <a shape="rect" href="http://www.iis.net/extensions/LiveSmoothStreaming" shape="rect">Live Smooth Streaming </a>remains in beta, with release planned for later this year.<br><br><strong>Broad CDN support</strong><br>And with the full release of the server, we have a bunch more CDNs joining Akamai with Smooth Streaming support. Today we have announcements from<br><ul><li><a shape="rect" href="http://www.business.att.com/enterprise/Family/application-hosting-enterprise/content-distribution-service-enterprise/" shape="rect">AT&amp;T</a></li><li><a shape="rect" href="http://www.us.cdnetworks.com/" shape="rect">CD Networks</a></li><li><a shape="rect" href="http://www.internap.com/" shape="rect">Internap</a> </li><li><a shape="rect" href="http://www.level3.com/" shape="rect">Level 3</a> </li><li><a shape="rect" href="http://www.limelightnetworks.com/" shape="rect">Limelight</a></li></ul>Needless to say, those five added to Akamai are a very broad swath of the CDN industry.<br><br><strong>Compression Tool Vendor support</strong><br>We've also got a bunch more support announcements from encoding tool vendors for both live and on-demand Smooth Streaming, including:<br><ul><li><a shape="rect" href="http://www.digital-rapids.com/" shape="rect">Digital Rapids</a></li><li><a shape="rect" href="http://envivio.com/" shape="rect">Envivio </a>(and <a shape="rect" href="http://envivio.com/news/press_release.php?id=195" shape="rect">press release</a>) </li><li><a shape="rect" href="http://www.grabnetworks.com/" shape="rect">Grab Networks </a>(formerly Anystream) </li><li><a shape="rect" href="http://inlethd.com/?q=news" shape="rect">Inlet</a>&nbsp;(and <a shape="rect" href="http://inlethd.com/?q=news_release/04/16/09" shape="rect">press release</a>) </li><li><a shape="rect" href="http://rhozet.com/" shape="rect">Rhozet</a> </li><li><a shape="rect" href="http://www.telestream.net/" shape="rect">Telestream</a>&nbsp;(and <a shape="rect" href="http://www.telestream.net/company/press/2009-04-16.htm" shape="rect">press release</a>) </li><li><a shape="rect" href="http://vbrick.com/index.asp" shape="rect">VBrick</a> </li><li><a shape="rect" href="http://viewcast.com/" shape="rect">Viewcast</a>&nbsp;(and <a shape="rect" href="http://www.viewcast.com/press_releases/pr_smoothstreaming.pdf" shape="rect">press release</a>) </li><li><a shape="rect" href="http://winnov.com/" shape="rect">Winnov</a> </li></ul><p>Which is a huge swath of the professional compression tools market.<br><br><strong>DRM service provider support<br></strong>And we've had a bunch of support for Silverlight DRM powered by PlayReady from DRM service providers. Since Silverlight encryption is applied during content creation, not during content distribution, using DRM has no real&nbsp;impact on the server side; access to a DRM license server to provide licenses to the Silverlight client is the only big difference from a service perspective.</p><ul><li><a shape="rect" href="http://buydrm.com/" shape="rect">BuyDRM</a>&nbsp;(<a shape="rect" href="http://buydrm.com/silverlight/index.html" shape="rect">press release</a>) </li><li><a shape="rect" href="http://www.entriq.com/" shape="rect">Entriq</a> </li><li><a shape="rect" href="http://www.extend.com/" shape="rect">ExtendMedia</a>&nbsp; </li><li><a shape="rect" href="http://www.ipercast.com/" shape="rect">Ipercast</a> </li><li><p><a shape="rect" href="http://www.istreamplanet.com/" shape="rect">iStreamPlanet </a></p></li></ul><p>I haven't had a chance to drop by everyone's booth yet, but will be highlighting some of their demos and cool announcements throughout the week when I find out which of the many projects we've been collaborating on are public now.<br><br><strong>Silverlight 3: we're 1080p24 <br></strong>So, we had that whole <a shape="rect" href="http://on10.net/blogs/benwagg/Proposed-definition-of-HD-on-the-web-with-examples/" shape="rect">HD on the web discussion </a>a few weeks ago which spun out into many threads on different forums. A few die-hards said that only 720p60 and 1080p24 should count as full HD, based on the original ATSC definition.<br><br>It'll keep on being discussed, but that won't keep anyone from calling Silverlight HD, because we've now got 1080p24 working in Silverlight 3. This represents a huge amount of media playback tuning and testing by the Silverlight team, and it's really paid off. Much of the improvements have been since the public Silverlight 3 beta, so those not at NAB will have to take my word for it for the moment, but we're showing off:</p><ul><li>1920x1080p24 VC-1 at 6 Mbps </li><li>On a Core 2 Duo 2.4 GHz system </li><li>With smooth playback at any size using GPU scaling </li></ul><p>And it is glorious.<br><br>On the same system we're also showing off H.264 720p24 2.5 Mbps with similarly smooth playback.<br><br>While those specs are obviously beyond what many home PCs can do due to screen size or network speed, with Smooth Streaming we can offer that as the highest-end experience while offering further bitrate bands as low as required.<br><br>And of course, optimization that enables 1080p on the high end makes 480p work on lower-end machines than Silverlight 2 could support, due to both media pipeline improvemetnts and offloading scaling and compositing to the GPU. The gains on single-core machines are particularly notable; we've got a quite nice Smooth Streaming experience even on NetBooks now.<br><br>The public release of Silverlight 3 will be later this year.<br><br><strong>New Smooth-Streaming VC-1 implementation</strong><br>We're working with the encoder tool vendors to integrate a new VC-1 implementation that's specifically tuned for Smooth Streaming. You <a shape="rect" href="http://on10.net/blogs/benwagg/Expression-Encoder-2-Service-Pack-1-ndash-Intro-and-Multibitrate-Encoding/" shape="rect">may recall </a>Expression Encoder's&nbsp; Smooth Streaming mode uses the VC-1 Encoder SDK in 1-pass CBR mode with a fixed GOP size. While that certainly can produce good video that's Smooth Streaming compliant, in the end that's really&nbsp;the kind of settings used for live broadcasting. With on-demand content, we can do an analysis pass to figure out a variety of better ways to optimize the bitrate. In particular, we can dramatically reduce the incidence of frames compressed to the point where visible blocky artifacts appear.<br><br>What it does are awesome in so many ways that it makes my compression nerd soul twinkle with delight. But those details will have to wait for&nbsp;a long and Excel-chart laden blog post of its own.<br><br>In the interim, let me offer you a sample encoded in a not-quite-final version of what we're doing here. This is our favorite Big Buck Bunny content, encoded to these specs</p><ul><li>1080p24 4 Mbps video with a 5 second buffer </li><li>Smooth Streaming compatible VC-1 and WMA 10 Pro </li><li>In a WMV wrapper, so you can play it in WMP </li></ul><p>This is what the top end Smooth Streaming bitrate can look like once Silverlight 3 is released later this year. And as mentioned above, we're now doing 6 Mbps on a Core 2 Duo, we've got some further headroom for more challenging content.<br><br>Here's the file (hosted by <a shape="rect" href="http://streaming.live.com" shape="rect">Silverlight Streaming</a>):<br><a shape="rect" href="http://silverlight.services.live.com/31260/Big%20Buck%20Bunny%201080p24%204%20Mbps%20Smooth%20Streaming/video.wmv" shape="rect">http://silverlight.services.live.com/31260/Big%20Buck%20Bunny%201080p24%204%20Mbps%20Smooth%20Streaming/video.wmv</a><br><br>Remember, Windows Media Player can Save As progressive download content without DRM if you want to make a local copy.<br><br>If you're here at NAB, Inlet is showing off the new VC-1 implementation as implemented in their <a shape="rect" href="http://inlethd.com/?q=products/armada/tech_talk" shape="rect">Armada </a>product, with a bunch of other output samples. Check it out.</p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:073a71bf607c4ce1b0169e1000b1e156">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/NAB-Day-1-Smooth-Streaming-released-1080p-in-Silverlight-new-VC-1-and-more</comments>
      <itunes:summary>So, it&#39;s the end of Monday here in Las Vegas, and I&#39;ve already got Thursday voice. I wish I could explain with a great Vegas story involving cigars and bourbon, but it&#39;s actually a nasty virus from my three year old that&#39;s been hammering me for a couple of weeks. So I&#39;m skipping the Akamai shindig to rest my voice and get some blogging done.There&#39;s lots of big news&amp;nbsp;from Microsoft and our partners around Silverlight that I wanted to link to. This is just the highlights - there&#39;s tons more in the press release: &amp;quot;Microsoft Smooth Streaming Provides True High-Definition Video Delivery.&amp;quot; The Silverlight Team Blog has a more nerd-friendly take as well.So, highlights so far?Smooth Streaming is released!The release-to-world&amp;nbsp;out-of-beta&amp;nbsp;version of the IIS7 module for on-demand.&amp;nbsp;Smooth Streaming is now available for download. Live Smooth Streaming remains in beta, with release planned for later this year.Broad CDN supportAnd with the full release of the server, we have a bunch more CDNs joining Akamai with Smooth Streaming support. Today we have announcements fromAT&amp;amp;TCD NetworksInternap Level 3 LimelightNeedless to say, those five added to Akamai are a very broad swath of the CDN industry.Compression Tool Vendor supportWe&#39;ve also got a bunch more support announcements from encoding tool vendors for both live and on-demand Smooth Streaming, including:Digital RapidsEnvivio (and press release) Grab Networks (formerly Anystream) Inlet&amp;nbsp;(and press release) Rhozet Telestream&amp;nbsp;(and press release) VBrick Viewcast&amp;nbsp;(and press release) Winnov Which is a huge swath of the professional compression tools market.DRM service provider supportAnd we&#39;ve had a bunch of support for Silverlight DRM powered by PlayReady from DRM service providers. Since Silverlight encryption is applied during content creation, not during content distribution, using DRM has no real&amp;nbsp;impact on the server side; access to a DRM license server to provide licenses to th</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/NAB-Day-1-Smooth-Streaming-released-1080p-in-Silverlight-new-VC-1-and-more</link>
      <pubDate>Tue, 21 Apr 2009 02:05:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/NAB-Day-1-Smooth-Streaming-released-1080p-in-Silverlight-new-VC-1-and-more</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>9</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/NAB-Day-1-Smooth-Streaming-released-1080p-in-Silverlight-new-VC-1-and-more/RSS</wfw:commentRss>
      <category>h.264</category>
      <category>IIS</category>
      <category>NAB</category>
      <category>Silverlight</category>
      <category>Smooth Streaming</category>
      <category>vc-1</category>
      <category>Compression</category>
    </item>
  <item>
      <title>Proposed definition of HD on the web, with examples</title>
      <description><![CDATA[ <p>The essential <a shape="rect" href="http://blog.streamingmedia.com/" target="_blank" shape="rect">Dan Rayburn</a> had a <a shape="rect" href="http://blog.streamingmedia.com/the_business_of_online_vi/2009/03/we-need-a-standard-for-hd-video-quality-on-the-web.html" target="_blank" shape="rect">good blog post</a> asking we, Adobe, and the industry overall agree on a definition for HD Video on the web.</p><p>I gave a quick response in the comments that I wanted to expand into a proposed definition.</p><h1>Resolution and frame rate</h1><p>The infamous Table 3 of the ATSC specification lists 18 different resolution and frame rate combinations for digital broadcasting, But they drew a pretty clear line on what’s HD and what’s not: 1280x720 is HD, and anything less isn’t.</p><p>A more pedantic definition could be that HD should be at least 1920x1080p24 or 1280x720p60. And we’ll get there on the web before too long. But for now, I want the full 720p experience as a minimum bar. I can see two flavors of that which we can define as the ragged low end of web HD; anything below these are something else.</p><h2>1280x528p24</h2><p>For film source content, the widest aspect ratio in common use in 2.4:1. With 1280 wide, if we crop to the active image area and then round down to the next divisible-by-16 value for optimum compression, we’re left with 1280x528. For 1.85:1 movies, the equivalent is 1280x688</p><h2>960x720p30</h2><p>Lots of production codecs for HD aren’t square pixel. HDCAM is 1440x1080, and DVCPROHD is 1280x1080 or 960x720, even though both formats are always 16:9. So, I’m also inclined to allow 960x720 anamorphic for HD, but only in 30p. DVCPROHD’s 24p mode is 1280x1080p24.</p><h2></h2><h2>Thusly…</h2><p>If we calculate the pixels per second of the above, we get:</p><ul><li>1280x528x24=16,220,160 pixels/sec </li><li>960x720x30=20,736,000 pixels/sec </li></ul><p>So the anamorphic is still more pixels/sec than square pixel 2.4:1. We could arguably define “Web HD” as “at least 16M pixels/second” as well.</p><p>&nbsp;</p><h1>Quality</h1><p><a shape="rect" href="http://www.framecaster.com/management.html" target="_blank" shape="rect">Hassan Wharton-Ali</a> brought up another good point on the thread - HD should actually be HD quality. It can’t be a lousy, over-quantized encode using a suboptimally high resolution just so it can be called HD.</p><p>A good test is the video should look worse (due to less detail), not better (due to less artifacts), if encoded at a lower resolution at the same data rate. If reducing your frame size makes the video look better when scaled to the same size, then the frame size is too high!</p><h1></h1><h1>Samples!</h1><p dir="ltr">I know these are going to be too wide for my default blogging interface, but I need to stick an iframe somewhere in order to lock down the frame size exactly, due to how <a shape="rect" href="http://streaming.live.com/" target="_blank" shape="rect">Silverlight Streaming</a> works. Autoplay is turned off so your browser doesn’t automatically start two HD clips at once.<br><br><strong>NOTE, yes I know in fact they still are doing Autoplay for some reason. I'm trying to&nbsp;fix that right now. Just make sure to pause the one you aren't watching. At least I got the size locked down (although still with too much padding...).</strong></p><p>These are WMV files, but encoded with EEv2 SP1 using Smooth Streaming settings (so 1-pass CBR, 2 sec Closed GOP, and all that jazz). These are pretty basic encodes; I didn’t do anything tricky, as we WANT to see some artifacts as we’re defining these as the low bound of HD and below the low bound of HD. I do three versions of each clip</p><ul><li>True HD at 3 Mbps (64 Kbps audio, 2937 Kbps video) </li><li>“Fake” HD at 1 Mbps (32 Kbps audio, 959 Kbps video) </li><li>Good SD (640x360 for 16:9, 640x264 for 2.4:1) at 1 Mbps (48 Kbps audio, 943 Kbps video) </li></ul><p>The SD is in there as an anchor to show that a lower resolution can actually look better at lower bitrates. Clearly the SD looks better most of the time, so 1 Mbps doesn’t count as HD. And those 16 Kbps of audio make a real difference with WMA 10 Pro, taking us from 32 to 44.1 KHz.</p><p>If you mouse the player, it’ll pop up controls (but without scaling the video – one of the nice features of the Black Glass template). To pick a particular clip, click on the icon that looks like poker chips (although upon reflection I note they’re actually film reels).</p><h2>The Island: 1280x528p24</h2><p>I haven’t used this clip in ages, but it’s always great to trot out as an edge case of hard encoding. It’s a Michael Bay joint, full of whip-pans, super-fast editing, frenetic motion, and film grain. Low bitrates can look fine for 80% of the frames in a clip, but fall apart for 20%. This clip has some good sequences where there’s multiple edits a second, so you get lots of chances to see the bandwidth stress. If only we had an encoder that could dynamically adjust frame size based on content complexity…</p><p>&nbsp;</p><h2>Lady Washington: 960x720p30</h2><p>Just a short version of it this time, mainly because I’m tired of slow DSL uploads. The HD sizes are anamorphic, the SD is square pixel.</p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:85506b959d6e4a21b9e59e1000b1d55e">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Proposed-definition-of-HD-on-the-web-with-examples</comments>
      <itunes:summary> The essential Dan Rayburn had a good blog post asking we, Adobe, and the industry overall agree on a definition for HD Video on the web.I gave a quick response in the comments that I wanted to expand into a proposed definition.Resolution and frame rateThe infamous Table 3 of the ATSC specification lists 18 different resolution and frame rate combinations for digital broadcasting, But they drew a pretty clear line on what’s HD and what’s not: 1280x720 is HD, and anything less isn’t.A more pedantic definition could be that HD should be at least 1920x1080p24 or 1280x720p60. And we’ll get there on the web before too long. But for now, I want the full 720p experience as a minimum bar. I can see two flavors of that which we can define as the ragged low end of web HD; anything below these are something else.1280x528p24For film source content, the widest aspect ratio in common use in 2.4:1. With 1280 wide, if we crop to the active image area and then round down to the next divisible-by-16 value for optimum compression, we’re left with 1280x528. For 1.85:1 movies, the equivalent is 1280x688960x720p30Lots of production codecs for HD aren’t square pixel. HDCAM is 1440x1080, and DVCPROHD is 1280x1080 or 960x720, even though both formats are always 16:9. So, I’m also inclined to allow 960x720 anamorphic for HD, but only in 30p. DVCPROHD’s 24p mode is 1280x1080p24.Thusly…If we calculate the pixels per second of the above, we get:1280x528x24=16,220,160 pixels/sec 960x720x30=20,736,000 pixels/sec So the anamorphic is still more pixels/sec than square pixel 2.4:1. We could arguably define “Web HD” as “at least 16M pixels/second” as well.&amp;nbsp;QualityHassan Wharton-Ali brought up another good point on the thread - HD should actually be HD quality. It can’t be a lousy, over-quantized encode using a suboptimally high resolution just so it can be called HD.A good test is the video should look worse (due to less detail), not better (due to less artifacts), if encoded at a lower resoluti</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Proposed-definition-of-HD-on-the-web-with-examples</link>
      <pubDate>Thu, 02 Apr 2009 00:08:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Proposed-definition-of-HD-on-the-web-with-examples</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Proposed-definition-of-HD-on-the-web-with-examples/RSS</wfw:commentRss>
      <category>Expression Encoder</category>
      <category>Silverlight</category>
      <category>Silverlight Streaming</category>
      <category>vc-1</category>
      <category>HD</category>
      <category>VC-1 Encoder SDK</category>
      <category>Nerditry</category>
    </item>
  <item>
      <title>Beta Release of Smooth Streaming!</title>
      <description><![CDATA[ <p>It’s alive!</p><p>The IIS team has just released the <a href="http://blogs.iis.net/jboch/archive/2009/02/24/beta-release-of-smooth-streaming-now-available.aspx" target="_blank">first public beta</a> of the <a href="http://www.iis.net/extensions/SmoothStreaming" target="_blank">Smooth Streaming module for IIS7</a>. This means anyone with Windows Server 2008 can start experimenting with this next generation media delivery technology for Silverlight. We’re aiming for a final release in Q2 this year, which will be licensed for full commercial use. There’s lots of detailed info in the links before, but let me offer my own high-level take on what Smooth Streaming is about and why it matters.</p><h2>Smooth Streaming adapts streaming to the web instead of trying to adapt the web to streaming</h2><p>Alex Zambelli explored this concept in the links below, but I love it so much I’m going to reiterate. Smooth Streaming leverages the massive scale of the standards-based http web delivery technologies, instead of trying to define different protocols or requiring a lot of bidirectional communications. The media itself is sent as a series of small files as http requests, so it gets automatically cached by the proxy servers in CDNs, ISPs, and corporate firewalls. And of course can pass through firewalls easily.</p><h2>Smooth Streaming streams smoothly</h2><p>The core user experience we’re shooting for is quick starting, fast scrubbing, uninterrupted playback of content as good as the local machine can play at the moment. We switch between bitrates and resolutions basic on available CPU speed, network speed, and window size without any “buffering” messages as long as there’s sufficient bandwidth to deliver the lowest bitrate.</p><h2>Smooth Streaming is standards based</h2><p>Smooth Streaming uses the http protocol and the MPEG-4 file format (in its “fragmented” flavor). We’re initially using VC-1 (SMPTE standard) and WMA 10 Pro audio, and will support H.264 and AAC-LC support once <a href="http://on10.net/blogs/benwagg/H264-and-AAC-support-coming-in-Silverlight/" target="_blank">Silverlight 3 ships with those codecs</a>. The manifests use XML and SMIL.</p><h2>Smooth Streaming can be authored today</h2><p>Expression Encoder 2 (with Service Pack 1 installed) includes full support for authoring on-demand Smooth Streaming content, including all media files and manifests. The Silverlight 2 templates included with SP1, and the underlying Base Player, support Smooth Streaming. Other compression tools will be adding full Smooth Streaming support in future versions.</p><h1>All the Links</h1><p>We’ve gone blog-crazy here at Microsoft. Which means that there’s lots of great information coming out of us these days, so it can be kind of hard to find it all. Here’s my list of good Smooth Streaming references and tutorials.</p><p>&nbsp;</p><p>&nbsp;</p><h2>Official pages</h2><ul><li><a href="http://www.iis.net/extensions/SmoothStreaming" target="_blank">IIS Smooth Streaming</a></li><li><a href="http://www.iis.net/media" target="_blank">IIS Media</a> </li></ul><h2>The Demo</h2><ul><li><a href="http://www.smoothhd.com/" target="_blank">SmoothHD.com</a> (our joint demo site with Akamai) </li></ul><h2>Downloads</h2><p>Yep, it’s a free beta download for any version of Windows Server 2008. There are free 60-day trial versions of 2008, including a .vhd download.</p><ul><li><a href="http://www.iis.net/downloads/default.aspx?tabid=34&amp;g=6&amp;i=1829" target="_blank">Smooth Streaming Beta for 32-bit Windows Server 2008</a></li><li><a href="http://www.iis.net/downloads/default.aspx?tabid=34&amp;g=6&amp;i=1831" target="_blank">Smooth Streaming Beta for 64-bit Windows Server 2008</a></li><li><a href="http://www.iis.net/downloads/default.aspx?tabid=34&amp;i=1735&amp;g=6" target="_blank">Web Platform Installer</a> (<a href="http://www.iis.net/extensions/WebPI" target="_blank">single installer</a> for IIS, SQL Server Express, .NET Framework and Visual Web Developer components) </li><li><a href="http://www.microsoft.com/windowsserver2008/en/us/trial-software.aspx" target="_blank">Trial versions of Windows Server 2008</a></li><li><a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=A29BE9F9-29E1-4E70-BF67-02D87D3E556E&amp;displaylang=en" target="_blank">Expression Encoder 2 Service Pack 1</a> (the full Expression Encoder 2 with SP1 installed is needed to author Smooth Streaming content) </li></ul><h2>Learn IIS7 articles</h2><ul><li><a href="http://learn.iis.net/page.aspx/558/smooth-streaming-for-iis-70---getting-started/" target="_blank">Smooth Streaming for IIS 7.0 - Getting Started</a></li><li><a href="http://learn.iis.net/page.aspx/568/smooth-streaming-for-iis-70---exploring-bit-rate-changes/" target="_blank">Smooth Streaming for IIS 7.0 - Exploring Bit Rate Changes</a></li><li><a href="http://learn.iis.net/page.aspx/569/smooth-streaming-for-iis-70---managing-your-presentations/" target="_blank">Smooth Streaming for IIS 7.0 - Managing Your Presentations</a></li></ul><h2><a href="http://on10.net/blogs/benwagg/" target="_blank">My Blog</a></h2><ul><li><a href="http://on10.net/blogs/benwagg/Expression-Encoder-2-Service-Pack-1-ndash-Intro-and-Multibitrate-Encoding/" title="Expression Encoder 2 Service Pack 1 – Intro and Multibitrate Encoding">Expression Encoder 2 Service Pack 1 – Intro and Multibitrate Encoding</a> (my general overview of Smooth Streaming) </li><li><a href="http://on10.net/blogs/benwagg/Behind-the-Scenes-at-SmoothHDcom-Encoding-Big-Buck-Bunny/" target="_blank">Encoding Big Buck Bunny for SmoothHD.com</a> (highy nerdy hands-on example… with tables and charts!) </li></ul><h2><a href="http://citizeninsomniac.com/blog/" target="_blank">Alex Zambelli</a></h2><p>Alex has been doing a great series on multibitrate streaming, adaptive streaming, and Smooth Streaming architecture from a content authoring perspective. They’re great to go through in order</p><blockquote><ol><li><a href="http://alexzambelli.com/blog/2008/12/17/a-brief-history-of-multi-bitrate-streaming/">A Brief History of Multi-Bitrate Streaming</a></li><li><a href="http://alexzambelli.com/blog/2009/02/04/the-birth-of-smooth-streaming/">The Birth of Smooth Streaming</a></li><li><a href="http://alexzambelli.com/blog/2009/02/10/smooth-streaming-architecture/">Smooth Streaming Architecture</a></li></ol></blockquote><h2><a href="http://blogs.iis.net/jboch/default.aspx" target="_blank">John Bocharov</a></h2><p>John is an IIS Program Manager who has been intimately involved with Smooth Streaming since its inception.</p><p>&nbsp;</p><ul><li><a href="http://blogs.iis.net/jboch/archive/2009/02/24/beta-release-of-smooth-streaming-now-available.aspx" target="_blank">Beta Release of Smooth Streaming Now Available</a></li><li><a href="http://blogs.iis.net/jboch/archive/tags/Smooth&#43;Streaming/default.aspx" target="_blank">Smooth Streaming Questions? We’ve Got Answers!</a></li><li><a href="http://blogs.iis.net/jboch/archive/2009/02/19/smooth-streaming-questions-we-ve-got-answers.aspx" target="_blank">I’ve seen the future and the future is… Smooth!</a></li></ul> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:ece3330b222e4c1b9a529e1000b1b5a1">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Beta-Release-of-Smooth-Streaming</comments>
      <itunes:summary> It’s alive!The IIS team has just released the first public beta of the Smooth Streaming module for IIS7. This means anyone with Windows Server 2008 can start experimenting with this next generation media delivery technology for Silverlight. We’re aiming for a final release in Q2 this year, which will be licensed for full commercial use. There’s lots of detailed info in the links before, but let me offer my own high-level take on what Smooth Streaming is about and why it matters.Smooth Streaming adapts streaming to the web instead of trying to adapt the web to streamingAlex Zambelli explored this concept in the links below, but I love it so much I’m going to reiterate. Smooth Streaming leverages the massive scale of the standards-based http web delivery technologies, instead of trying to define different protocols or requiring a lot of bidirectional communications. The media itself is sent as a series of small files as http requests, so it gets automatically cached by the proxy servers in CDNs, ISPs, and corporate firewalls. And of course can pass through firewalls easily.Smooth Streaming streams smoothlyThe core user experience we’re shooting for is quick starting, fast scrubbing, uninterrupted playback of content as good as the local machine can play at the moment. We switch between bitrates and resolutions basic on available CPU speed, network speed, and window size without any “buffering” messages as long as there’s sufficient bandwidth to deliver the lowest bitrate.Smooth Streaming is standards basedSmooth Streaming uses the http protocol and the MPEG-4 file format (in its “fragmented” flavor). We’re initially using VC-1 (SMPTE standard) and WMA 10 Pro audio, and will support H.264 and AAC-LC support once Silverlight 3 ships with those codecs. The manifests use XML and SMIL.Smooth Streaming can be authored todayExpression Encoder 2 (with Service Pack 1 installed) includes full support for authoring on-demand Smooth Streaming content, including all media files a</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Beta-Release-of-Smooth-Streaming</link>
      <pubDate>Tue, 24 Feb 2009 22:10:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Beta-Release-of-Smooth-Streaming</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Beta-Release-of-Smooth-Streaming/RSS</wfw:commentRss>
      <category>Expression Encoder</category>
      <category>h.264</category>
      <category>IIS</category>
      <category>Silverlight</category>
      <category>Smooth Streaming</category>
      <category>vc-1</category>
      <category>Compression</category>
      <category>WMA</category>
    </item>
  <item>
      <title>Encoding Big Buck Bunny for SmoothHD.com</title>
      <description><![CDATA[ <p>So far, <a shape="rect" href="http://citizeninsomniac.com/blog/" shape="rect">Alex Zambelli</a> has had most of the <a shape="rect" href="http://on10.net/blogs/benwagg/Expression-Encoder-2-Service-Pack-1-ndash-Intro-and-Multibitrate-Encoding/" shape="rect">SmoothHD.com</a> fun while I was off on some other projects, but this time he was off on some other projects and I got to do an encode all myself.</p><p>I figured this was as good a time as go through a hands-on project for Smooth Streaming.</p><h1>The Source</h1><p>We’ve had a few years of good fun with the <a shape="rect" href="http://www.blender.org/" shape="rect">Blender Foundation’s</a> <a shape="rect" href="http://www.elephantsdream.org/" shape="rect">Elephant’s Dream</a> clip (as I used <a shape="rect" href="http://on10.net/blogs/benwagg/Elephants-Dream-720p--2-Mbps/" shape="rect">here</a>, <a shape="rect" href="http://on10.net/blogs/benwagg/Elephants-Dream-Sample/" shape="rect">here</a>, and <a shape="rect" href="http://on10.net/blogs/benwagg/Encoding-for-the-Zune/" shape="rect">here</a>). They have a new Creative Commons licensed title up called <a shape="rect" href="http://www.bigbuckbunny.org/" shape="rect">Big Buck Bunny</a>, which is a lot brighter, and with a lot of nice chewy grass for high frequency detail. Elephant’s Dream is a great test clip for handling gradients and dark detail (It’s all about differential quantization), but Big Buck Bunny is arguably a better test for general compression quality, and also has some nice sky gradients as well.</p><p>I downloaded the stereo audio as a FLAC file, and converted that to a 44.1 KHz 16-bit WAV file with Audacity. I then downloaded source as a series of PNG files, and then used After Effects to combine the PNG sequence and the WAV that into a 1920x1080 Lagarith RGB AVI file. Since PNG and Lagarith are both lossless, and I didn’t do any scaling or color space correction, I didn’t do any preprocessing, just assembling the content into a file Expression Encoder 2 can consume. I’m a big fan of the quality of EEv2’s Super Sampling scaling mode, so prefer to use that instead of other tools where I have less control over scaling quality.</p><h1>Setting up the Encode</h1><p>Since we had other encodes up at <a shape="rect" href="http://www.smoothhd.com" shape="rect">SmoothHD.com</a>, I wanted to follow the same data rate/frames size/GOP length parameters we’d already used. For the other encodes in the series. Specifically, the below, which give us seven bands from 2500 Kbps to 364 Kbps:</p><p><a shape="rect" href="http://on10.net/Link/31c4c559-eae6-4c7e-8cec-0cf35c523f8e/" shape="rect"><img width="308" height="766" width="308" height="766" title="Video-settings" alt="Video-settings" src="http://on10.net/Link/da169b67-f1fa-4800-af43-57130779c40a/" border="0"></a></p><p>&nbsp;</p><h1>Tweaking</h1><p>Smooth Streaming as a feature came in very hot for EEv2 SP1, and there wasn’t a lot of time to tune the presets.</p><p>There are a couple of safe tweaks I always recommend <a shape="rect" href="http://on10.net/blogs/benwagg/Expression-Encoder-2-Service-Pack-1-ndash-Intro-and-Multibitrate-Encoding/" shape="rect">as previously mentioned</a>:</p><ul><li>Adaptive Dead Zone=Conservative </li><li>Overlap=On </li><li>Scene Change Detection=On </li><li>Search Range=Adaptive </li></ul><p>Those help Smooth Streaming (and web-rate VC-1 in general) quality with minimal impact on encoding time.</p><p>For quality-over-speed projects, I also like to use</p><ul><li>Complexity=4 </li><li>Chroma Search=Full True Chroma </li><li>Match Method=Adaptive </li></ul><p>All together, that’ll increase encode time about 2-3x for a nice but not overwhelming quality difference.</p><p>And because this is animation content, I’ll also use</p><ul><li>B-Frame Number=2 </li></ul><p>In general, the less noise in the content and the closer the matches between frames, the more likely 2 B-Frames will be more efficient than 1. I’ve gone up to 4 B-frames for Camtasia screen recordings.</p><h1>Charts!</h1><p>One cool thing about Smooth Streaming encoding is that the independent chunks make analysis and graphing of the content a lot easier. We can analyze each chunk as an independent unit, and compare quality between bitrates and versions quite directly. Do note that there is some allowed variability in chunk size; we target for a 5 second buffer, so that any three chunks in a row should average around the same amount, but if a particular chunk is harder to encode than its neighbors, it can have a somewhat higher bitrate.</p><p>Here’s the .XLSX if you want to check out the source data:</p><div class="wlWriterEditableSmartContent" id="scid:8eb9d37f-1541-4f29-b6f4-1eea890d4876:37ac7e91-3a30-4758-b9de-7a5a06d64854"><p>&nbsp;</p><div><a shape="rect" href="http://on10.net/Link/29719783-3714-489d-8104-9d3f683f88cc/" target="_self" shape="rect">BBB_encodemodes.xlsx</a></div><p>&nbsp;</p></div><p>I’ve encoded four versions of the content</p><ul><li>Default: the stock EEv2 SP1 Adaptive Streaming settings </li><li>Fast: Adding the “safe tweaks” above </li><li>HQ: Adding the quality-over-speed settings </li><li>Insane: Taking HQ and adding &quot;Insane” modes that add a lot more in encoding time than quality <ul><li>Single-thread encoding </li><li>Complexity 5 </li><li>Hadamard Motion Match </li></ul></li></ul><p>Insane is there to show what happens when you burn as much CPU as possible.</p><p>To show the impact of these different encoding settings on the video, I used an in-house command-line tool to dump a log file of the size, type, etcetera of each frame, and then did made the Excel spreadsheet linked above to see what interesting data I could find.</p><p>First off, let’s take a look at just a bunch of frames. Specifically, the frames of Chunk 214, corresponding to the scene where the flying squirrel is flying over the forest floor right before the spikes pop up.</p><p>I’ve used contextual shading here to show the quantization parameter for each frame. In VC-1, a 1.0 is the least compressed and 31 is the most compressed. In general, QP is a decent proxy for the quality of a given frame, with values below 8 generally being pretty good and values above 8 getting increasingly blocky.</p><p>Since this is a 2-second chunk at 24 frames a second, we have exactly 48 frames. And since it’s a Closed GOP, it starts with an I-frame (keyframe).</p><p>The Insane, HQ, and Fast settings offer pretty similar results, due to using the 2 B-Frame pattern and Lookahead to detect scene and other changes. However, QP generally goes down as encode time goes up. The Default encode starts out with much higher QP since the previous scene had used more, and so needed to catch up a bit. By the end of the GOP, its QPs are going down while the “2 B” QPs are going up for a similar reason.</p><p><a shape="rect" href="http://on10.net/Link/23e942c0-5c3b-41c3-8130-d19b4509757d/" shape="rect"><img width="850" height="984" width="850" height="984" title="Chunk-214" alt="Chunk-214" src="http://on10.net/Link/b3e5950e-0e68-4e43-bc57-dff0f93bc9bf/" border="0"></a></p><p>Interesting in itself but it’s definitely a trees-over-forest view.</p><p>For 95% of the 10&#43; minute clip, all the frames look fine; as typical with a CBR encode. It’s in the hard parts where the differences show up.</p><p>For the below, I’m going to focus on chunks 209-221 (6:56 to 7:22), which includes the very challenging section where the squirrel is flying over all the spikes jumping up.</p><p>In the below, we’re looking at a few metrics here:</p><ul><li>Mean QP per chunk:&nbsp; The average QP of all frames in the chunk, as a proxy over overall quality. </li><li>Max QP per chunk:&nbsp; The highest QP in the chunk. Since it’s the ugliest parts of the video that stand out, that’s also an important flag for quality issues. </li><li>Chunk size:&nbsp; How many bytes in the chunk. Since Smooth Streaming is all about delivering video chunks, chunk size is the primary measure of data rate. </li></ul><p>Here’s the data:</p><p><a shape="rect" href="http://on10.net/Link/44815910-caca-4817-a41e-47f05edcec69/" shape="rect"><img width="849" height="271" width="849" height="271" title="Chunks-209-211" alt="Chunks-209-211" src="http://on10.net/Link/5878c034-1276-4206-bc71-3102f4bc5765/" border="0"></a></p><p>You can see there’s quite a bit of variability in chunk size; almost 3:1. That’s fine; we’d expect to see that in content that alternates between easy and hard shots. The swing between Mean and Max QP is worst for the Default settings; Lookhead is handy to help the codec know what’s coming down the pike. For Chunk 217, we see Default has a lower Mean QP but a higher Max QP compared to the others. In general, the Mean and Max QP is highest in the Default, as we can see in the below graphs:</p><p><a shape="rect" href="http://on10.net/Link/e84ec5d9-995a-43f1-921d-e47e27531701/" shape="rect"><img width="705" height="465" width="705" height="465" title="image" alt="image" src="http://on10.net/Link/cdd64779-ac5d-4530-9090-997022b9e03d/" border="0"></a>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p><a shape="rect" href="http://on10.net/Link/2525bfd0-5abb-488c-97e4-63c89a604cac/" shape="rect"><img width="705" height="465" width="705" height="465" title="image" alt="image" src="http://on10.net/Link/4f49b32f-18d3-4904-937f-00e2dc0e63f0/" border="0"></a></p><p>&nbsp;</p><p>Overall, we see that Default is the weakest, and Insane the strongest. But the gap from Default to Fast is the biggest change; in most chunks, Insane and HQ offer the same Max QP, and HQ has a better mean QP in a few cases. However, there are some chunks where Default does better than any of the other modes; since it’s a 1-pass CBR, one mode may have used more of its buffer by a given point than another, leaving fewer bits for the next part.</p><p>For reference, here’s that QP 31 frame in our four versions (click on the thumbnails to open at full resolution).</p><h2>Default:</h2><p><a shape="rect" href="http://on10.net/Link/93c45c12-eda6-4089-bc50-53756c02c58d/" target="_blank" shape="rect"><img width="640" height="360" width="640" height="360" title="Frame_0010408_default" alt="Frame_0010408_default" src="http://on10.net/Link/df215998-7055-41a4-b3e6-48e72c7c160a/" border="0"></a></p><h2>Fast:</h2><p><a shape="rect" href="http://on10.net/Link/ee04047c-aaaf-4789-8130-44b2f5e62934/" target="_blank" shape="rect"><img width="640" height="360" width="640" height="360" title="Frame_0010408_Fast" alt="Frame_0010408_Fast" src="http://on10.net/Link/fb6851c3-3c4b-4c36-bc03-ff926e9f7e07/" border="0"></a></p><h2>HQ:</h2><p><a shape="rect" href="http://on10.net/Link/b44df15f-d5c8-434f-b85e-5cd8a13c282b/" target="_blank" shape="rect"><img width="640" height="360" width="640" height="360" title="Frame_0010408_HQ" alt="Frame_0010408_HQ" src="http://on10.net/Link/8577f71a-a040-44a8-b2e5-a1ab07fb232e/" border="0"></a></p><h2>Insane:</h2><p><a shape="rect" href="http://on10.net/Link/237192cb-d866-4d1a-9468-6e7cf37f4f00/" target="_blank" shape="rect"><img width="640" height="360" width="640" height="360" title="Frame_0010408_insane" alt="Frame_0010408_insane" src="http://on10.net/Link/988772c6-3031-4b2c-bad7-2a1ba2edec6b/" border="0"></a></p><p>So, what went wrong with that particular frame? It was a rate control failure of some sort. We can see from the below that the surrounding frames got more bits and lower QP in Default; it would have been better with a more consistent compression level. It’s also interesting to note the big improvement from Fast to HQ for these sequence of frames; it’s when the content is the most challenging that the slower, higher quality encoding modes make the most significant difference.</p><p><a shape="rect" href="http://on10.net/Link/8a751d23-76fc-4796-aac0-bd574083fa57/" shape="rect"><img width="850" height="254" width="850" height="254" title="QP31-grid" alt="QP31-grid" src="http://on10.net/Link/04c14536-88ad-45e8-9d06-adba80459c7f/" border="0"></a></p><p>When you watch the video at full speed, the QP 31 frame isn’t really that noticeable as it’s right at a scene change.</p><p>Given the structure of Smooth Streaming the optimum way to allocate bits is quite a bit different than “classic” web encoding with the VC-1 Encoder SDK used in Expression Encoder was tuned for. Any compression engineer reading this has probably already thought of a dozen ways to improve encoders for chunked video. More about that later.</p><p>Lastly, here’s how long each version took to encode.</p><ul><li>Default: 59 minutes </li><li>Fast: 59 minutes (1.0x Default) </li><li>HQ: 158 minutes (2.68x Default) </li><li>Insane: 268 minutes (5.4x Default) </li></ul><p>As you can see, you rapidly get to the point of diminishing returns with slower encoding modes; the biggest improvement was from Default to Fast, which had no impact on encoding time at all.</p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:6a4943cfb40648289bf69e1000b1b07b">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Behind-the-Scenes-at-SmoothHDcom-Encoding-Big-Buck-Bunny</comments>
      <itunes:summary> So far, Alex Zambelli has had most of the SmoothHD.com fun while I was off on some other projects, but this time he was off on some other projects and I got to do an encode all myself.I figured this was as good a time as go through a hands-on project for Smooth Streaming.The SourceWe’ve had a few years of good fun with the Blender Foundation’s Elephant’s Dream clip (as I used here, here, and here). They have a new Creative Commons licensed title up called Big Buck Bunny, which is a lot brighter, and with a lot of nice chewy grass for high frequency detail. Elephant’s Dream is a great test clip for handling gradients and dark detail (It’s all about differential quantization), but Big Buck Bunny is arguably a better test for general compression quality, and also has some nice sky gradients as well.I downloaded the stereo audio as a FLAC file, and converted that to a 44.1 KHz 16-bit WAV file with Audacity. I then downloaded source as a series of PNG files, and then used After Effects to combine the PNG sequence and the WAV that into a 1920x1080 Lagarith RGB AVI file. Since PNG and Lagarith are both lossless, and I didn’t do any scaling or color space correction, I didn’t do any preprocessing, just assembling the content into a file Expression Encoder 2 can consume. I’m a big fan of the quality of EEv2’s Super Sampling scaling mode, so prefer to use that instead of other tools where I have less control over scaling quality.Setting up the EncodeSince we had other encodes up at SmoothHD.com, I wanted to follow the same data rate/frames size/GOP length parameters we’d already used. For the other encodes in the series. Specifically, the below, which give us seven bands from 2500 Kbps to 364 Kbps:&amp;nbsp;TweakingSmooth Streaming as a feature came in very hot for EEv2 SP1, and there wasn’t a lot of time to tune the presets.There are a couple of safe tweaks I always recommend as previously mentioned:Adaptive Dead Zone=Conservative Overlap=On Scene Change Detection=On Search Ran</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Behind-the-Scenes-at-SmoothHDcom-Encoding-Big-Buck-Bunny</link>
      <pubDate>Mon, 23 Feb 2009 04:11:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Behind-the-Scenes-at-SmoothHDcom-Encoding-Big-Buck-Bunny</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Behind-the-Scenes-at-SmoothHDcom-Encoding-Big-Buck-Bunny/RSS</wfw:commentRss>
      <category>Expression Encoder</category>
      <category>IIS</category>
      <category>Silverlight</category>
      <category>Smooth Streaming</category>
      <category>vc-1</category>
      <category>Compression</category>
      <category>Big Buck Bunny</category>
      <category>SmoothHD.com</category>
      <category>Nerditry</category>
    </item>
  <item>
      <title>Moonlight 1.0 is released!</title>
      <description><![CDATA[ <p>Great news – the full <a href="http://www.go-mono.com/moonlight/" target="_blank">Moonlight 1.0</a> has been released. I <a href="http://on10.net/blogs/benwagg/Moonlight-10-beta-1-is-out/" target="_blank">talked about the beta</a> back in the fall. We used the beta for the <a href="http://on10.net/blogs/benwagg/The-Obama-Inauguration-coming-to-Linux-and-PowerPC-Macs-Plus-compression-details/" target="_blank">Presidential Inauguration</a>, (further details in this <a href="http://on10.net/blogs/benwagg/On-Channel-9-with-Steven-and-Adam-talking-inauguration/" target="_blank">Channel 9 interview</a>). Moonlight is an open source implementation of Silverlight, built from the public specifications, based on the Mono project from Novell.</p><p><a href="http://tirania.org/blog/archive/2009/Feb-11.html" target="_blank">Miguel de Icaza’s blog</a> has the full details and well worth the read. A few key points:</p><ul><li>This is an implementation of Silverlight 1.0. Thus it has <ul><li>XAML for drawing the user interface </li><li>Browser JavaScript for application logic (no managed code yet) </li><li>Media Features </li></ul></li><li>The codec and file format support is distributed by Microsoft as a binary module that plugs into Moonlight. Users will be prompted to install it the first time they try to play back media. This allows for Microsoft to cover patent license fees associated with the codecs. </li><li>Since we based that module on Silverlight 2 , this includes the <a href="http://on10.net/blogs/benwagg/Demo-of-Silverlight-2-scaling-quality-improvements/" target="_blank">VC-1 decoder improvements</a> from Silverlight&nbsp; 2, and WMA 10 Pro. </li><li>Moonlight is available in both 32-bit and 64-bit versions. </li></ul><p>Now the team is moving on to Moonlight 2.0 and Silverlight 2 compatibility, which is currently in pre-alpha. The big work item there is getting the CLR/DLR fully integrated. Once we get that, we’ll have Smooth Streaming working on Linux! As an open source project, they’re <a href="http://www.mono-project.com/Moonlight2Hacking" target="_blank">welcoming help</a>.</p><p>And here’s my favorite Moonlight project I just heard about: <a href="http://abock.org/moonshine/" target="_blank">Moonshine</a>. It uses Moonlight to emulate the old Windows Media Player OCX embedding model, so that web pages targeting the old player can work in Firefox on Linux. It can also play back local WMV files. Given that VLC hasn’t be able to play back VC-1 content with B-frames, I’m very glad for this.</p><p>&nbsp;</p><p><a href="http://on10.net/Link/d4254599-ff89-4061-8f98-35f7549dda14/"><img width="559" height="480" title="moonshine-standalone" alt="moonshine-standalone" src="http://on10.net/Link/1dd467f7-4baa-496c-9e32-28d263376809/" border="0"></a></p><p>Screenshot of Moonlight (taken from their page. I still need to get the new SUSE installed; my computers have all been encoding full blast since December).</p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:72f1f981a364432c9cba9e1000b1a5ec">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Moonlight-10-is-released</comments>
      <itunes:summary> Great news – the full Moonlight 1.0 has been released. I talked about the beta back in the fall. We used the beta for the Presidential Inauguration, (further details in this Channel 9 interview). Moonlight is an open source implementation of Silverlight, built from the public specifications, based on the Mono project from Novell.Miguel de Icaza’s blog has the full details and well worth the read. A few key points:This is an implementation of Silverlight 1.0. Thus it has XAML for drawing the user interface Browser JavaScript for application logic (no managed code yet) Media Features The codec and file format support is distributed by Microsoft as a binary module that plugs into Moonlight. Users will be prompted to install it the first time they try to play back media. This allows for Microsoft to cover patent license fees associated with the codecs. Since we based that module on Silverlight 2 , this includes the VC-1 decoder improvements from Silverlight&amp;nbsp; 2, and WMA 10 Pro. Moonlight is available in both 32-bit and 64-bit versions. Now the team is moving on to Moonlight 2.0 and Silverlight 2 compatibility, which is currently in pre-alpha. The big work item there is getting the CLR/DLR fully integrated. Once we get that, we’ll have Smooth Streaming working on Linux! As an open source project, they’re welcoming help.And here’s my favorite Moonlight project I just heard about: Moonshine. It uses Moonlight to emulate the old Windows Media Player OCX embedding model, so that web pages targeting the old player can work in Firefox on Linux. It can also play back local WMV files. Given that VLC hasn’t be able to play back VC-1 content with B-frames, I’m very glad for this.&amp;nbsp;Screenshot of Moonlight (taken from their page. I still need to get the new SUSE installed; my computers have all been encoding full blast since December).</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Moonlight-10-is-released</link>
      <pubDate>Thu, 12 Feb 2009 18:29:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Moonlight-10-is-released</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Moonlight-10-is-released/RSS</wfw:commentRss>
      <category>Miguel de Icaza</category>
      <category>Mono</category>
      <category>Moonlight</category>
      <category>Silverlight</category>
      <category>vc-1</category>
      <category>Windows Media</category>
      <category>Windows Media Player</category>
      <category>Moonshine</category>
    </item>
  <item>
      <title>The Hopefully Definitive &quot;is VC-1 compatible with WMV 9?&quot; FAQ</title>
      <description><![CDATA[ <p>Once I’ve answered the same question in three different emails, I figure it’s time to blog it. By that metric, I should have blogged this about 17 times over by now!</p><h1>Is VC-1 the same as Windows Media Video 9?</h1><p>Yes, the big picture: VC-1 is the <a href="http://www.smpte.org" target="_blank">SMPTE</a> standardized version (SMPTE 421M) of Windows Media Video 9. The output of of a VC-1 encoder is bitstream compatible with a Windows Media Video 9 decoder that supports the profile, level, and features used.</p><h1>Is VC-1 the same thing as WMV?</h1><p>Note that the VC-1 spec just defines the video bitstream; it doesn’t cover the ASF (used in .wmv and .wma) file format or any WMA codec. VC-1 Advanced Profile can live in a variety of other file format wrappers, including MPEG-4 (standard or fragmented, the latter being used in Smooth Streaming) and MPEG-2 transport stream (as used on Blu-ray or IPTV). Only VC-1 Advanced Profile has this kind of format independence; VC-1 Simple and Main profiles are always found inside a WMV file.</p><h1>Can I use Expression Encoder to make files that play in Windows Media Player 9?</h1><p>Yes, absolutely. VC-1 Main Profile is identical to the old Windows Media Video 9. A Windows Media file you make using VC-1 Simple and Main will work perfectly in WMP 9 out of the box. A stock XP Service Pack 2 machine that hasn’t been updated in years would play it without issue.</p><p>&nbsp;</p><h1>Will users have to install a update if I encode with VC-1?</h1><p>No, everyone with Windows Media Player 9 or higher can play VC-1 Main Profile already. Windows Media Player 11 can play Advanced Profile as well. Users or WMP 9 or 10 will be prompted to install a VC-1 Advanced Profile decoder if they try to play a WMV file using that.</p><h1>Can I encode for Blu-ray from Windows Media Encoder?</h1><p>So, Since Windows Media Video 9 Advanced Profile is the same as VC-1 Advanced Profile, and VC-1 AP is supported on Blu-ray, can you encode a Blu-ray compatible stream in Windows Media Encoder?</p><p>Nope, sorry. There are further constraints for Blu-ray VC-1 that need to be followed, and WME and the <a href="http://msdn.microsoft.com/en-us/library/aa387410.aspx" target="_blank">Windows Media Format SDK</a> weren’t designed to support that level of constraint. The <a href="http://www.microsoft.com/resources/mediaandentertainment/vc-1encodersdk.mspx" target="_blank">VC-1 Encoder SDK</a> was designed with optical discs in mind, and can produce a Blu-ray compatible VC-1 elementary stream with products that expose it. Expression Encoder 2 doesn’t do elementary streams, but Rhozet’s <a href="http://www.rhozet.com/carbon_coder.html" target="_blank">Carbon Coder</a>&nbsp; 3.12 and higher do.</p><h1>How do Windows Media Video 9 and VC-1 Profiles relate?</h1><p>Here’s the details.</p><table cellspacing="0" cellpadding="2" width="763" border="0"><tbody><tr><td valign="top" width="126"><strong>VC-1 Profile</strong></td><td valign="top" width="232"><strong>Windows Media codec</strong></td><td valign="top" width="86"><strong>WME Decoder Complexity</strong></td><td valign="top" width="116"><strong>Four Character Code (4CC)</strong></td><td valign="top" width="110"><strong>Introduced with…</strong></td><td valign="top" width="92"><strong>Downlevel to…</strong></td></tr><tr><td valign="top" width="126">VC-1 Simple Profile</td><td valign="top" width="232">Windows Media Video 9</td><td valign="top" width="86">Simple</td><td valign="top" width="116">WMV3</td><td valign="top" width="110">WMP 9</td><td valign="top" width="92">WMP 6.4</td></tr><tr><td valign="top" width="126">VC-1 Main Profile</td><td valign="top" width="232">Windows Media Video 9</td><td valign="top" width="86">Main</td><td valign="top" width="116">WMV3</td><td valign="top" width="110">WMP 9</td><td valign="top" width="92">WMP 6.4</td></tr><tr><td valign="top" width="126">&nbsp;</td><td valign="top" width="232">Windows Media Video 9 </td><td valign="top" width="86">Complex</td><td valign="top" width="116">WMV3</td><td valign="top" width="110">WMP 9</td><td valign="top" width="92">WMP 6.4</td></tr><tr><td valign="top" width="126">&nbsp;</td><td valign="top" width="232">Windows Media Video 9 Advanced Profile</td><td valign="top" width="86">&nbsp;</td><td valign="top" width="116">WMVA</td><td valign="top" width="110">WMP 10</td><td valign="top" width="92">WMP 9</td></tr><tr><td valign="top" width="126">VC-1 Advanced Profile</td><td valign="top" width="232">Windows Media Video 9 Advanced Profile</td><td valign="top" width="86">&nbsp;</td><td valign="top" width="116">WVC1</td><td valign="top" width="110">WMP 11</td><td valign="top" width="92">WMP 9</td></tr></tbody></table><p>Following up on the above, there’s a couple of points I’d like to make clear</p><ul><li>Windows Media Video 9 originally had three profiles: Simple, Main, and Complex. Simple and Main are the same as the VC-1 Simple and Main Profiles. Complex was deprecated, and evolved into Advanced Profile. As Complex isn’t part of the VC-1 spec, it will normally only work on decoders from Microsoft, or based on Microsoft’s porting kit implementations. </li><li>There were two flavors of Windows Media Video 9 Advanced Profile. The first, with a “WMVA” 4CC, was introduced with WMP 10 and used as the basis for VC-1 but some changes were made in the final specification that kept it from being entirely compatible. An updated VC-1 compliant version of Windows Media Video 9 Advanced Profile with a “WVC1” 4CC was introduced with WMP 11, and that is what should be used. </li><li>Anyone wanting to make WMV 9 Advanced Profile needs to either have Format SDK 11 installed (the easiest way is to install WMP 11) or use a VC-1 Encoder SDK based product like Expression Encoder 2. </li></ul><p>This is where Simple/Main/Complex profiles are set in Windows Media Encoder:</p><p><a href="http://on10.net/Link/533fe324-d7ed-4c25-a7c7-012fdd08a6d2/"><img width="554" height="547" title="WME-Decdoer-Complexity" alt="WME-Decdoer-Complexity" src="http://on10.net/Link/ceca3162-9119-447b-95fc-e07ffad64936/" border="0"></a></p><h1>If it’s the same codec, why are there different Windows Media Video 9 and VC-1 Encoders?</h1><p>All that said, there is one last practical difference between WMV 9 and VC-1: Encoders that call it VC-1 are normally based on the newer, faster, higher quality, more flexible VC-1 Encoder SDK. This isn’t about a change in the codec standard, just the usual improvement of encoder implementations over time, like we saw with the Format SDK 9, 9,5, and 11 releases, and will be seeing again in future releases.</p><p>Here’s a <a href="http://on10.net/blogs/benwagg/What-a-difference-a-half-decade-makes-Live-VC-1-today-and-at-launch/" target="_blank">comparison of the gains</a> from the initial release (1st generation) to VC-1 Encoder SDK (4th generation).</p><h1>Further Reference</h1><ul><li><a href="http://alexzambelli.com/blog/wmv9-vc1-faq/" title="http://alexzambelli.com/blog/wmv9-vc1-faq/">http://alexzambelli.com/blog/wmv9-vc1-faq/</a></li><li><a href="http://alexzambelli.com/blog/vc-1-sdk-faq/" title="http://alexzambelli.com/blog/vc-1-sdk-faq/">http://alexzambelli.com/blog/vc-1-sdk-faq/</a></li><li><a href="http://www.microsoft.com/windows/windowsmedia/forpros/codecs/video.aspx#WindowsMediaVideo9AdvancedProfile" title="http://www.microsoft.com/windows/windowsmedia/forpros/codecs/video.aspx#WindowsMediaVideo9AdvancedProfile">http://www.microsoft.com/windows/windowsmedia/forpros/codecs/video.aspx#WindowsMediaVideo9AdvancedProfile</a></li></ul> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:d211b28d8c774d4ab8509e1000b1a14a">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/The-Hopefully-Definitive-ldquois-VC-1-compatible-with-WMV-9rdquo-FAQ</comments>
      <itunes:summary> Once I’ve answered the same question in three different emails, I figure it’s time to blog it. By that metric, I should have blogged this about 17 times over by now!Is VC-1 the same as Windows Media Video 9?Yes, the big picture: VC-1 is the SMPTE standardized version (SMPTE 421M) of Windows Media Video 9. The output of of a VC-1 encoder is bitstream compatible with a Windows Media Video 9 decoder that supports the profile, level, and features used.Is VC-1 the same thing as WMV?Note that the VC-1 spec just defines the video bitstream; it doesn’t cover the ASF (used in .wmv and .wma) file format or any WMA codec. VC-1 Advanced Profile can live in a variety of other file format wrappers, including MPEG-4 (standard or fragmented, the latter being used in Smooth Streaming) and MPEG-2 transport stream (as used on Blu-ray or IPTV). Only VC-1 Advanced Profile has this kind of format independence; VC-1 Simple and Main profiles are always found inside a WMV file.Can I use Expression Encoder to make files that play in Windows Media Player 9?Yes, absolutely. VC-1 Main Profile is identical to the old Windows Media Video 9. A Windows Media file you make using VC-1 Simple and Main will work perfectly in WMP 9 out of the box. A stock XP Service Pack 2 machine that hasn’t been updated in years would play it without issue.&amp;nbsp;Will users have to install a update if I encode with VC-1?No, everyone with Windows Media Player 9 or higher can play VC-1 Main Profile already. Windows Media Player 11 can play Advanced Profile as well. Users or WMP 9 or 10 will be prompted to install a VC-1 Advanced Profile decoder if they try to play a WMV file using that.Can I encode for Blu-ray from Windows Media Encoder?So, Since Windows Media Video 9 Advanced Profile is the same as VC-1 Advanced Profile, and VC-1 AP is supported on Blu-ray, can you encode a Blu-ray compatible stream in Windows Media Encoder?Nope, sorry. There are further constraints for Blu-ray VC-1 that need to be followed, and WME an</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/The-Hopefully-Definitive-ldquois-VC-1-compatible-with-WMV-9rdquo-FAQ</link>
      <pubDate>Thu, 12 Feb 2009 05:17:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/The-Hopefully-Definitive-ldquois-VC-1-compatible-with-WMV-9rdquo-FAQ</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/The-Hopefully-Definitive-ldquois-VC-1-compatible-with-WMV-9rdquo-FAQ/RSS</wfw:commentRss>
      <category>Expression Encoder</category>
      <category>vc-1</category>
      <category>Windows Media</category>
      <category>Compression</category>
      <category>VC-1 Encoder SDK</category>
      <category>Alex Zambelli</category>
      <category>Windows Media Video 9</category>
    </item>
  <item>
      <title>Obama Inauguration on Linux and PowerPC Macs! Plus codec details</title>
      <description><![CDATA[ <h1>Moonlight/Silverlight 1.0 player!</h1><p>As I <a shape="rect" href="http://on10.net/blogs/benwagg/Barak-Obamarsquos-inauguration-in-Silverlight/" target="_blank" shape="rect">mentioned on Friday</a>, the official streaming feed of <a shape="rect" href="http://www.pic2009.org/" target="_blank" shape="rect">Barak Obama’s Presidential Inauguration Committee</a> will be using Silverlight 2.</p><p>However, using managed code in the player leaves out Linux users of the <a shape="rect" href="http://on10.net/blogs/benwagg/Moonlight-10-beta-1-is-out/" target="_blank" shape="rect">Moonlight 1.0 beta</a>, as well as PowerPC Mac users. We’ve heard a lot of requests to add support for those platforms, and so we teamed up with the <a shape="rect" href="http://www.mono-project.com/Moonlight" target="_blank" shape="rect">Moonlight team</a> at <a shape="rect" href="http://www.novell.com/products/desktop/moonlight_faq.html" target="_blank" shape="rect">Novell</a> and they’ve created a Silverlight 1.0 version of the player that works great in both Moonlight and PowerPC Macs. <a shape="rect" href="http://tirania.org/blog/archive/2009/Jan-20.html" target="_blank" shape="rect">Miguel de Icaza has details</a> from his side.</p><p>We kicked the project off this afternoon before the event, so pardon us if it’s a little rough. The only significant limitation is that the SL1 player can only do the 500 Kbps stream – lacking managed code, making a manifest XML parser in JavaScript didn’t seem like something we should start testing only nine hours before the event goes live.</p><p>But anyway, thanks to Joseph, Larry, Geoff, Rusty and especially Aaron at Novell for pulling this together so quickly and so well, and Mio at iStreamPlanet for making the last minute encoder tweaks to make it Silverlight 1.0 compatible. On the Microsoft side, <a shape="rect" href="http://blogs.msdn.com/bgold/" target="_blank" shape="rect">Brian Goldfarb</a> and Eric Schmidt did a great job making the call and making it happen. Just go to <a shape="rect" href="http://www.pic2009.org" shape="rect">www.pic2009.org</a> in the morning and the updated player should be available around 6 am EST (11 am GMT).</p><p>That something like this could come together on such short notice is a testament to the chops and passion of the Moonlight team and the great platform we’re both implementing. I’m glad we got this chance to demonstrate how serious we are about this collaboration (although I wouldn’t have minded starting a day earlier…).<br><br><strong>Update: </strong>The Silverlight 1.0 compatible player is low live at:<br><br><a shape="rect" href="http://www.pic2009.org/page/content/linuxplayer" shape="rect">http://www.pic2009.org/page/content/linuxplayer</a><br><br>Note that this player is only for Silverlight 1.0 and doesn't work with Internet Explorer. The Silverlight 2.0 player for Windows or Intel Mac is at:<br><br><a shape="rect" href="http://www.pic2009.org/page/content/live" shape="rect">http://www.pic2009.org/page/content/live</a><br><br>(And yes, that would have been easy to fix, but we're rather out of time!)</p><h1></h1><h1></h1><h1>Tech Specs</h1><p>And as I promised earlier, I got the tech details on how the streams are encoded. Note there is manual stream selection in the lower right corner; </p><h2>Hardware</h2><p>There are quite a few encoders to handle the different streams, data rates, and to provide failover backups. All systems are quad-core, and use hardware preprocessing.</p><ul><li>Onsite configuration: Dell Precision workstations with Osprey 230 capture cards </li><li>Offsite configuration: Dell 2950 with Digital Rapids capture cards. </li></ul><h2>Software</h2><p>The encoders are running Windows XP and use Windows Media Encoder, with my <a shape="rect" href="http://on10.net/blogs/benwagg/Best-practices-for-Windows-Media-Encoder-in-2009/" target="_blank" shape="rect">recommended tweaks and registry key settings</a> applied.</p><h2>Codecs</h2><ul><li>Video: Window Media Video 9 Advanced Profile (aka VC-1 Advanced Profile) </li><li>Audio: Windows Media Audio 9.2 </li></ul><p>The audio was originally going to be WMA 10 Pro for improved efficiency, but we fell back to WMA 9.2 in order to have Silverlight 1.0 compatibility. Fortunately the audio feeds are either mono or might as well be, so we can win some efficiency back by encoding in mono.</p><h2>300 Kbps streams</h2><ul><li>Video: 480x360, 29.97 fps, 259 Kbps </li><li>Audio: 44.1 KHz mono, 32 Kbps </li></ul><h2>500 Kbps streams</h2><ul><li>Video: 480x360, 29.97 fps, 442 Kbps </li><li>Audio: 44.1 KHz mono, 48 Kbps </li></ul> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:3669e043b58443829a859e1000b19811">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/The-Obama-Inauguration-coming-to-Linux-and-PowerPC-Macs-Plus-compression-details</comments>
      <itunes:summary> Moonlight/Silverlight 1.0 player!As I mentioned on Friday, the official streaming feed of Barak Obama’s Presidential Inauguration Committee will be using Silverlight 2.However, using managed code in the player leaves out Linux users of the Moonlight 1.0 beta, as well as PowerPC Mac users. We’ve heard a lot of requests to add support for those platforms, and so we teamed up with the Moonlight team at Novell and they’ve created a Silverlight 1.0 version of the player that works great in both Moonlight and PowerPC Macs. Miguel de Icaza has details from his side.We kicked the project off this afternoon before the event, so pardon us if it’s a little rough. The only significant limitation is that the SL1 player can only do the 500 Kbps stream – lacking managed code, making a manifest XML parser in JavaScript didn’t seem like something we should start testing only nine hours before the event goes live.But anyway, thanks to Joseph, Larry, Geoff, Rusty and especially Aaron at Novell for pulling this together so quickly and so well, and Mio at iStreamPlanet for making the last minute encoder tweaks to make it Silverlight 1.0 compatible. On the Microsoft side, Brian Goldfarb and Eric Schmidt did a great job making the call and making it happen. Just go to www.pic2009.org in the morning and the updated player should be available around 6 am EST (11 am GMT).That something like this could come together on such short notice is a testament to the chops and passion of the Moonlight team and the great platform we’re both implementing. I’m glad we got this chance to demonstrate how serious we are about this collaboration (although I wouldn’t have minded starting a day earlier…).Update: The Silverlight 1.0 compatible player is low live at:http://www.pic2009.org/page/content/linuxplayerNote that this player is only for Silverlight 1.0 and doesn&#39;t work with Internet Explorer. The Silverlight 2.0 player for Windows or Intel Mac is at:http://www.pic2009.org/page/content/live(And yes, tha</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/The-Obama-Inauguration-coming-to-Linux-and-PowerPC-Macs-Plus-compression-details</link>
      <pubDate>Tue, 20 Jan 2009 08:17:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/The-Obama-Inauguration-coming-to-Linux-and-PowerPC-Macs-Plus-compression-details</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/The-Obama-Inauguration-coming-to-Linux-and-PowerPC-Macs-Plus-compression-details/RSS</wfw:commentRss>
      <category>Miguel de Icaza</category>
      <category>Moonlight</category>
      <category>Silverlight</category>
      <category>Silverlight 2</category>
      <category>vc-1</category>
      <category>Compression</category>
      <category>Windows Media Encoder</category>
      <category>Windows Media Audio</category>
      <category>Barak Obama</category>
    </item>
  <item>
      <title>Expression Encoder 2 Service Pack 1 &amp;ndash; Intro and Multibitrate Encoding</title>
      <description><![CDATA[ <p>Oh, I’m a bad, bad blogger. The Expression Encoder Service Pack 1 has been out for MONTHS, and and it’s cool enough that I haven’t had the time to do it full justice. Oh well, better short than nothing; I’ll just start off with the biggest new feature: multibitrate encoding, including support for <a shape="rect" href="http://www.iis.net/extensions/SmoothStreaming" shape="rect">Smooth Streaming</a>.</p><p>First, install it already! It can be <a shape="rect" href="http://www.microsoft.com/downloads/details.aspx?FamilyId=A29BE9F9-29E1-4E70-BF67-02D87D3E556E&amp;displaylang=en" shape="rect">downloaded</a> here, and probably most of you picked it up via Microsoft Update by now. <a shape="rect" href="http://www.clarkezone.net/" shape="rect">James Clarke</a> had a <a shape="rect" href="http://blogs.msdn.com/expressionencoder/archive/2008/09/23/8962401.aspx" shape="rect">great overview blog post</a> about it which I recommend.</p><p>This first post I’m going to focus on Smooth Streaming and multibitrate streaming in general.</p><h1>“Adaptive Streaming” and Smooth Streaming</h1><p>Here’s the big one: Expression Encoder can now do multibitrate encoding. <a shape="rect" href="http://alexzambelli.com/blog/" shape="rect">Alex Zambelli</a> has a <a shape="rect" href="http://alexzambelli.com/blog/2008/12/17/a-brief-history-of-multi-bitrate-streaming/" shape="rect">good history of the technology</a>.</p><p>When doing multibitrate encoding, EE does multiple simultaneous encodes from the same source file. While the big driver for that feature is Smooth Streaming (another overdue blog topic), we also support encoding a single multiplexed “Intelligent Steaming” WMV file or individual WMV files for each bitrate.</p><h2>SmoothHD.com</h2><p>And If you haven’t seen it yet, head on over to the <a shape="rect" href="http://www.smoothhd.com" shape="rect">SmoothHD.com</a> demo site we do with <a shape="rect" href="http://www.akamai.com/smoothhd" shape="rect">Akamai</a>’s&nbsp; and check out the technology in practice. And yes, all those files were encoded with SP1.</p><p><a shape="rect" href="http://on10.net/Link/feed04e5-dc12-43db-8d18-61e05f06a8ab/" shape="rect"><img width="640" height="442" width="640" height="442" title="SmoothHD.com" alt="SmoothHD.com" src="http://on10.net/Link/6b6fc11a-be9d-462f-ab22-86bdb1a12e73/" border="0"></a></p><p>SmoothHD.com in action. Those bars in the lower right show which data rate band you’re getting; mouse over for more details. Click on it to bring up a diagnostic menu and play around with scaling. And boy, that 20 Mbps DSL upgrade I’ve got on order can’t come soon enough!</p><h1>Previewing Smooth Streaming with Expression Encoder</h1><p>So, you want to play around with Smooth Streaming, but don’t want to have to upload your files to Akamai every time you want to do a quality check? Fair enough, but we don’t have media players that support the Fragmented MPEG-4 format used in .ismv files yet. Fortunately, EEv2 SP1 also includes a little localhost Smooth Streaming web server built into it. If you encode to a Silverlight 2 template and make sure that “Preview in Browser” is checked, you’ll get Smooth Streaming working, heuristics and all! It’s only on the local machine, and only when EE is running, but it’s a start.</p><p><a shape="rect" href="http://on10.net/Link/29c13ccc-dbd6-4a05-b445-570edcddb5da/" shape="rect"><img width="345" height="369" width="345" height="369" title="Job-Output" alt="Job-Output" src="http://on10.net/Link/2ea32e25-878a-434c-a667-10e82db9dafa/" border="0"></a></p><p>To preview the video quality of Smooth Streaming, you can also make individual WMV files and watch them as normal. The output bitstreams are identical no matter what the file is wrapped in.</p><p><a shape="rect" href="http://www.sliq.com/default.asp?view=wmsnoop" shape="rect">WMSnoop</a> remains a great (and free) way to check out the GOP structure of WMV files. Below (click to zoom) you can see how Smooth Streaming produces a rock-solid cadence of a keyframe (in yellow) every 60 frames, while still being able to insert extra keyframes as needed for high quality scene changes.</p><p><a shape="rect" href="http://on10.net/Link/79d2f6f2-1a79-4d21-bc86-55d2e3d601c9/" shape="rect"><img width="640" height="411" width="640" height="411" title="WMSnoop" alt="WMSnoop" src="http://on10.net/Link/3200789a-3d18-4438-bdd1-f11b9ee4699c/" border="0"></a></p><h1>&nbsp;</h1><h1>Encoding for Multibitrate</h1><p>Unlike the old FSDK-based MBR encoder, each stream is encoded in its own thread, which means a whole lot of cores can be saturated; my 8-core typically is running at nearly 100%, and if HD is involved, a 16-core would as well. The limiting factor can wind up being the speed of the source decoder past a certain point. Here’s a pretty typical load I’ll see when running from a <a shape="rect" href="http://lags.leetcode.net/codec.html" shape="rect">Lagarith</a> source file.</p><p><a shape="rect" href="http://on10.net/Link/06601b7e-bfff-438e-be2a-550956723b56/" shape="rect"><img width="605" height="147" width="605" height="147" title="8-way-CPU" alt="8-way-CPU" src="http://on10.net/Link/b253f8e9-4923-4ad4-9a6c-dc41a4182e5a/" border="0"></a></p><h2>Multibitrate Video Options</h2><p>Most of the parameters must be identical per stream; only frame size and bitrate can vary each. Other parameters like frame rate, audio, and codec settings are fixed. This is to facilitate Smooth Streaming by making sure that I-frames appear at the same point in each output stream. For technical reasons with the current VC-1 SDK, this also means only 1-pass CBR is supported for multibitrate encoding.</p><p><a shape="rect" href="http://on10.net/Link/97716a2d-c899-47b1-87b4-6580fb124a33/" shape="rect"><img width="328" height="566" width="328" height="566" title="Multibitrate---video" alt="Multibitrate---video" src="http://on10.net/Link/84b922b4-59da-4980-8899-8ae8b20c412b/" border="0"></a></p><p>&nbsp;</p><h2>Multibitrate Audio Options</h2><p>Only one audio option can be selected when doing Adaptive Streaming encoding. This isn’t the limitation it would have been in the WMA days, as WMA 10 Pro’s low bitrate audio quality is so good. We find 64 Kbps provides great quality for most content, and fits into most web delivery bitrates.</p><p><a shape="rect" href="http://on10.net/Link/863c3c0f-ae07-4e42-9389-5b2b4013effa/" shape="rect"><img width="326" height="246" width="326" height="246" title="Multibitrate---audio" alt="Multibitrate---audio" src="http://on10.net/Link/03a05848-d287-4f77-a7b6-fe17bed6aad9/" border="0"></a>&nbsp;</p><h2>Multibitrate Container Options</h2><p>There are three container choices</p><ul><li><strong>ASF Single File</strong>. This gives you one WMV file for each video data rate, each including its own copy of the audio. This is an easy way to make multiple versions of the same source file. </li><li><strong>ASF Multiple File</strong>. This gives a single WMV file containing all copies of the video and one copy of the audio, ala Intelligent Streaming. This provides bitrate switching when used on Windows Media Services. </li><li><strong>IIS Smooth Streaming</strong>. This is for use with the forthcoming IIS Media Pack version that enables Smooth Streaming. To use this today, you’ll need to be part of Akamai’s beta program. That gives one output file per stream. There’s no way at the moment to play these files easily on the desktop, as they use the Fragmented MPEG-4 file format, which isn’t broadly supported in media player software; it’s mainly used inside of set top boxes like a TiVo. </li></ul><p><a shape="rect" href="http://on10.net/Link/909fcbf6-16e5-498a-be87-cf1879a8cc00/" shape="rect"><img width="327" height="129" width="327" height="129" title="Multibitrate---container" alt="Multibitrate---container" src="http://on10.net/Link/6cda6bd8-c2e9-4aeb-9a34-86dc6ce28b9b/" border="0"></a></p><h2>Multibitrate Advanced Codec Settings</h2><p>There’s a few required settings to get optimal Smooth Streaming compatible content in EEv2SP1. Smooth Streaming requires that all bitrates start have Closed GOPs (Group of Pictures – a keyframe and all the frames that reference it) starting on the same frame every few (typically 2) seconds. This means that the decoder gets a continuous sequence of frames to decode without any overlaps or missing frames, and without having to run two simultaneous decoders. These are compatible with (but not needed for) ASF, and using them gives the option to remux to Smooth Streaming at a future date. </p><ul><li><strong>Maximum QP=31</strong>. This is a new feature in SP1, which specifies the maximum allowed Quantization Parameter that can be used. This is similar to the old WME “Smoothness” control which determines the tradeoff between preserving image quality versus frame rate. We’re trying to avoid a frame getting dropped in one data rate but not another, which could throw off GOP alignment. QP 31 is the most compressed a frame can be in VC-1, thus minimizing the chance of a skipped frame. </li><li><strong>Adaptive GOP=Off</strong>. Adaptive GOP tells the codec that it can “reset” the Key Frame Interval, making it into really “keyframe at least every.” That improves efficiency, but makes it possible that the different output bitrates might wind up starting new GOPs at different times, without any mechanism to resync them. When Adaptive GOP=Off, it’ll still insert an I-frame where appropriate to optimize quality, mainly when there’s a video cut in the middle of a GOP. </li><li><strong>Closed GOP=On</strong>. In a Closed GOP, the first frame of the GOP is always an I-frame (keyframe), and no frame in the GOP references any other GOP. That makes each GOP fully self-contained, as required for Smooth Streaming. If Closed GOP were off (Open GOP), B-frames can reference frames in other GOPs. This helps efficiency a little bit, but means you always need to have decoded most of the previous GOP to play the first frame of the current one. Even if Closed GOP=On, any additional I-frames inserted due to scene changes may be an Open GOP for improved efficiency. </li><li><strong>Output Mode: Elementary Stream Sequence Header</strong>. With an Elementary Stream Sequence Header, the VC-1 bitstream includes all the data the decoder needs to play back the chunk of video in that chunk. It’s required (and it’s a tiny bit of data; there’s no downside to using it). </li><li><strong>Insert Skipped Frames=On.</strong> With Skipped Frames, a frame doesn’t get encoded due to exceeding the Max QP or because it’s just a static frame without motion, consist of just a flag indicating “I’m the same as the frame before.” If Skipped Frames=Off, the frame before the dropped frame has its duration extended to cover the missing frame(s). The actual video playback is identical in either case; but this&nbsp; ensures dropped frames don’t cause a GOP misalignment. There’s no real downside to using this for all files, Smooth Streaming or not. </li></ul><h3><a shape="rect" href="http://on10.net/Link/c8819cd8-cc39-4c62-91dd-3b2c00c3de35/" shape="rect"><img width="330" height="111" width="330" height="111" title="Multibitrate---Advanced-Codec-Settings" alt="Multibitrate---Advanced-Codec-Settings" src="http://on10.net/Link/86bc18f3-4f56-4057-9009-e561daf4b205/" border="0"></a></h3><h1>&nbsp;</h1><h1>Tips for multibitrate encoding</h1><h2>General Codec tweaks</h2><p>These are the changes I made from the Adaptive Streaming default, implementing the typical “make it look good” settings I recommend for EE in general also apply to multibitrate compression. Just don’t mess with the settings up above!</p><p><a shape="rect" href="http://on10.net/Link/7ee14167-9252-4f74-83f5-d1db8218d4a5/" shape="rect"><img width="330" height="618" width="330" height="618" title="Multibitrate---Advanced-Codec-Settings" alt="Multibitrate---Advanced-Codec-Settings" src="http://on10.net/Link/bda15bb1-fda5-448e-a283-528a6cba8650/" border="0"></a></p><h2>Always On recommendations</h2><p>These settings won’t have much impact on encode time, but can help quality significantly, particularly with </p><ul><li><strong>Adaptive Dead Zone=Conservative</strong> . This tells the codec to bias toward softness over blockiness as a frame gets more compressed. </li><li><strong>Overlap=On</strong>. The Overlap filter softens the edges of blocks, reducing blocking and artifacts at higher compression rates. Web delivery is almost always at rates where the Overlap filter helps quality. </li><li><strong>Scene Change Detection=On</strong>. Scene Change Detection tells the codec to buffer ahead 16 frames to look for fades, flashes, and scene changes, and dynamically change the frame type based on that. This particularly helps with fades to/from black, and with flash frames (think raves and gunfights). While it can insert an I-frame, it won’t disrupt the pattern locked in by having Adaptive GOP=Off. Scene Change Detection never hurts quality, and often helps. Scene Change Detection maps to the Lookahead parameter used in the Format SDK. </li><li><strong>Search Range=Adaptive</strong>. Lets the codec dynamically adjust the search range based on the amount of motion in the content. Helps quality a lot when there’s more than 64 pixels horizontally or 32 pixels vertically of motion between two P-frames, without spending CPU cycles on frames with more sedate motion. </li></ul><h2>Quality over Speed recommendations</h2><p>These are settings I use when I’m more worried about optimum quality than the speed of encode.</p><ul><li><strong>Complexity=4</strong>. Complexity controls how hard the codec works on each frame, particularly the precision and thoroughness of looking at motion from frame to frame. Complexity 3 is a great default, since it provides most of the value of 4 and 5 at a higher speed; quality drops of quickly as you go to 2 on down. But 4 is a little better yet, particularly with complex motion like particle effects. Complexity 5 is overkill most of the time, but I wind up using it sometimes when I’m feeling more fussy than rushed, “just in case.” </li><li><strong>Chroma Search=Full True Chroma</strong>. Chroma Search looks for where the chroma (color) of the image changes differently that its luma (brightness).. This is particularly helpful with motion graphics and animation. Chroma is only a third of the data in the encode, so a full precision chroma search doesn’t add all that much to the encoding time, and with the right content can really help squeeze things down. </li><li><strong>Match Method: Adaptive</strong>. This switches between using Sum of Absolute Differences (SAD) and Hadamard motion matching on a per-macroblock basis. Don’t sweat what that means too much; just know it’s slower and a little faster than the default SAD-only. Full Hadamard is slower yet and sometimes lower quality than Adaptive. </li></ul><p>&nbsp;</p><h3>Stretch, not Letterbox</h3><p>Expression Encoder defaults to letterboxing to be used when the output frame size doesn’t match the source aspect ratio. However, even a slight variation in output aspect ratio from the source’s (typically to get the encoded height and width divisible by 16, the most efficient option) can result in a thin black line of letterboxing (top and bottom) or pillarboxing (left and right). If Resize Mode=Stretch and Mode=Profile Adaptive, Profile Adaptive will get the output frame size in the right ballpark while Stretch adjusts the video slightly to avoid those darn black lines. To make sure the output aspect ratio really is perfect, you can set the Video Aspect to that of the source, and on playback it’ll stretch the image pack to the exact original frame size and shape. Leaving it at the default of Square Pixel generally looks fine as well.</p><p>Note that you may need to reapply the Profile Adaptive setting if you apply a job preset to multiple files at once. That can reset to Mode to Custom.</p><p><a shape="rect" href="http://on10.net/Link/658a0095-3178-47d2-8e61-cc748aaddbad/" shape="rect"><img width="329" height="283" width="329" height="283" title="Multibitrate---Video-Profile" alt="Multibitrate---Video-Profile" src="http://on10.net/Link/f7f0ccce-1920-445d-bbd9-3b2e3ce288e6/" border="0"></a></p><h3>Integer Framerates</h3><p>By default, Adaptive Streaming profiles gives a keyframe every 2 seconds. However, that’s a precise 2.0000 seconds. So, if your source is a typical NTSC frame rate like 29.97 or 23.976, you’re 0.1% short of 30 and 24 frames a second, and so wind up getting a keyframe every 47 or 59 frames, not the 48 or 60 you might expect. If you set the frame rate to the whole number equivalent, the encode will actually maintain the source frame rate correctly (the value serves as an upper bound, but EE won’t insert duplicate frames when set higher than the source). But it will round up the keyframe cadence to the whole number, so you’ll get the keyframe every 48 or 60 frames like you’d expect.</p><p>Not really a big deal in practice I suppose, but I’ve long since internalized the multiples of 48 and 60, which makes it easier to me to figure out where my keyframes are.</p><h3>Determining bitrates</h3><p>Picking the optimum single frame size and data rate combination for a particular piece of content can already be a challenge. Having to determine optimal sizes for a bunch of different data rates. Fortunately, Alex Zambelli is as always ready with a handy utility for us – the <a shape="rect" href="http://citizeninsomniac.com/WMV/MBRCalc.html" shape="rect">Smooth Streaming Multi-Bitrate Calculator</a>!</p><p>All you need to know is</p><ul><li>What bitrate works for the highest frame size for your content </li><li>What minimum bitrate you want to go to </li><li>How many steps to take </li></ul><p>There’s actually some pretty deep math in there that knows how VC-1 bit-per-pixel requirements change as frame size changes, etcetera.</p><p><a shape="rect" href="http://on10.net/Link/4b875073-572f-40ab-971d-98152effb045/" shape="rect"><img width="640" height="359" width="640" height="359" title="Smooth-Calc" alt="Smooth-Calc" src="http://on10.net/Link/b0a09244-84d9-428a-8b4c-bea60cd203c8/" border="0"></a></p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:d799c96a3fed46c28fcc9e1000b190d8">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Expression-Encoder-2-Service-Pack-1-ndash-Intro-and-Multibitrate-Encoding</comments>
      <itunes:summary> Oh, I’m a bad, bad blogger. The Expression Encoder Service Pack 1 has been out for MONTHS, and and it’s cool enough that I haven’t had the time to do it full justice. Oh well, better short than nothing; I’ll just start off with the biggest new feature: multibitrate encoding, including support for Smooth Streaming.First, install it already! It can be downloaded here, and probably most of you picked it up via Microsoft Update by now. James Clarke had a great overview blog post about it which I recommend.This first post I’m going to focus on Smooth Streaming and multibitrate streaming in general.“Adaptive Streaming” and Smooth StreamingHere’s the big one: Expression Encoder can now do multibitrate encoding. Alex Zambelli has a good history of the technology.When doing multibitrate encoding, EE does multiple simultaneous encodes from the same source file. While the big driver for that feature is Smooth Streaming (another overdue blog topic), we also support encoding a single multiplexed “Intelligent Steaming” WMV file or individual WMV files for each bitrate.SmoothHD.comAnd If you haven’t seen it yet, head on over to the SmoothHD.com demo site we do with Akamai’s&amp;nbsp; and check out the technology in practice. And yes, all those files were encoded with SP1.SmoothHD.com in action. Those bars in the lower right show which data rate band you’re getting; mouse over for more details. Click on it to bring up a diagnostic menu and play around with scaling. And boy, that 20 Mbps DSL upgrade I’ve got on order can’t come soon enough!Previewing Smooth Streaming with Expression EncoderSo, you want to play around with Smooth Streaming, but don’t want to have to upload your files to Akamai every time you want to do a quality check? Fair enough, but we don’t have media players that support the Fragmented MPEG-4 format used in .ismv files yet. Fortunately, EEv2 SP1 also includes a little localhost Smooth Streaming web server built into it. If you encode to a Silverlight 2 template and</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Expression-Encoder-2-Service-Pack-1-ndash-Intro-and-Multibitrate-Encoding</link>
      <pubDate>Sat, 17 Jan 2009 09:17:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Expression-Encoder-2-Service-Pack-1-ndash-Intro-and-Multibitrate-Encoding</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>6</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Expression-Encoder-2-Service-Pack-1-ndash-Intro-and-Multibitrate-Encoding/RSS</wfw:commentRss>
      <category>Expression Encoder</category>
      <category>IIS</category>
      <category>Silverlight</category>
      <category>Smooth Streaming</category>
      <category>vc-1</category>
      <category>Compression</category>
      <category>VC-1 Encoder SDK</category>
      <category>IIS Media Pack</category>
      <category>SmoothHD.com</category>
    </item>
  <item>
      <title>8-way multithreading in Windows 7</title>
      <description><![CDATA[ <p><a shape="rect" href="http://technet.microsoft.com/en-us/evalcenter/dd353205.aspx" target="_blank" shape="rect">Windows 7 Beta</a> is out today. It’s free to participate in, so if you’re interested, please check it out and give us feedback.</p><p>To whet the appetites of my compressionist friends, one much-requested new feature in the <a shape="rect" href="http://msdn.microsoft.com/en-us/library/aa387410.aspx" target="_blank" shape="rect">Format SDK</a> .dll in Windows 7: It now can go up to 8-way threading, compared to the 4-way threading introduced with WMP 11 and Vista! This should nearly double encoding speed on 8-core machines doing HD encoding.</p><p>The number of threads the encode gets is determined by the height of the video frame. </p><ul><li>1-119 lines 1 thread </li><li>120-239 lines: 2 threads </li><li>240-479 lines: 4 threads </li><li>480&#43; lines:&nbsp; 8 threads </li></ul><p>This is because each thread gets a slice of the video frame, so more threads mean that vertical motion gets a little less efficient to encode. And as always, the number of threads used can be overrridden with <a shape="rect" href="http://alexzambelli.com/blog/" target="_blank" shape="rect">Alex Zambelli’s</a> <a shape="rect" href="http://citizeninsomniac.com/WMV/#WMV9PowerToy" target="_blank" shape="rect">WMV9 PowerToy</a>. Its looks like we’ll get one last update out of him after all to add “8” to the drop-down list.</p><p>This new mode will work with any program that uses the Format SDK .dll, including <a shape="rect" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=5691ba02-e496-465a-bba9-b2f1182cdf24&amp;displaylang=en" target="_blank" shape="rect">Windows Media Encoder</a>, the new <a shape="rect" href="http://download.live.com/moviemaker" target="_blank" shape="rect">Windows Live Movie Maker beta</a>, and <a shape="rect" href="http://www.microsoft.com/virtualearth/" target="_blank" shape="rect">Virtual Earth</a>. It won’t apply to <a shape="rect" href="http://www.microsoft.com/resources/mediaandentertainment/vc-1encodersdk.mspx" target="_blank" shape="rect">VC-1 Encoder SDK</a> based apps like <a shape="rect" href="http://www.microsoft.com/expression/products/Overview.aspx?key=encoder" target="_blank" shape="rect">Expression Encoder 2</a>, but obviously we’ll want to add this to the VC-1 Encoder SDK as well.</p><p>So, if you’ve got an 8-core processor, or a 4-core with hyperthreading, give the Win 7 beta shot. I’d love to hear from anyone who gets some comparisons for encoding time between XP/Vista and Win 7.</p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:3d31d90966e04609b2309e1000b1851b">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/8-way-multithreading-in-Windows-7</comments>
      <itunes:summary> Windows 7 Beta is out today. It’s free to participate in, so if you’re interested, please check it out and give us feedback.To whet the appetites of my compressionist friends, one much-requested new feature in the Format SDK .dll in Windows 7: It now can go up to 8-way threading, compared to the 4-way threading introduced with WMP 11 and Vista! This should nearly double encoding speed on 8-core machines doing HD encoding.The number of threads the encode gets is determined by the height of the video frame. 1-119 lines 1 thread 120-239 lines: 2 threads 240-479 lines: 4 threads 480&amp;#43; lines:&amp;nbsp; 8 threads This is because each thread gets a slice of the video frame, so more threads mean that vertical motion gets a little less efficient to encode. And as always, the number of threads used can be overrridden with Alex Zambelli’s WMV9 PowerToy. Its looks like we’ll get one last update out of him after all to add “8” to the drop-down list.This new mode will work with any program that uses the Format SDK .dll, including Windows Media Encoder, the new Windows Live Movie Maker beta, and Virtual Earth. It won’t apply to VC-1 Encoder SDK based apps like Expression Encoder 2, but obviously we’ll want to add this to the VC-1 Encoder SDK as well.So, if you’ve got an 8-core processor, or a 4-core with hyperthreading, give the Win 7 beta shot. I’d love to hear from anyone who gets some comparisons for encoding time between XP/Vista and Win 7.</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/8-way-multithreading-in-Windows-7</link>
      <pubDate>Fri, 09 Jan 2009 20:26:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/8-way-multithreading-in-Windows-7</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>1</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/8-way-multithreading-in-Windows-7/RSS</wfw:commentRss>
      <category>Expression Encoder</category>
      <category>movie maker</category>
      <category>vc-1</category>
      <category>Virtual Earth</category>
      <category>Windows 7</category>
      <category>Windows Media</category>
      <category>Compression</category>
      <category>WMV PowerToy</category>
      <category>Windows Media Encoder</category>
      <category>VC-1 Encoder SDK</category>
    </item>
  <item>
      <title>AVS2ASF &amp;ndash; Open Source VC-1 Encoder SDK application</title>
      <description><![CDATA[ <p>As you may recall, we released the <a shape="rect" href="http://on10.net/blogs/benwagg/20613/" target="_blank" shape="rect">VC-1 Encoder SDK Professional as as free download</a>. That included a very basic command-line encoder along the lines of Alex Zambelli’s <a shape="rect" href="http://citizeninsomniac.com/WMV/#WMCmdhttp://citizeninsomniac.com/WMV/#WMCmd" target="_blank" shape="rect">WMCmd.vbs</a>, but with much more limited input support and no preprocessing.</p><p>A fellow called <a shape="rect" href="http://forum.doom9.org/member.php?u=19312" target="_blank" shape="rect">Kurtnoise13</a> jumped on it on the Doom9 Forums discussion about the SDK. He quickly created a <a shape="rect" href="http://kurtnoise.free.fr/index.php?dir=&amp;search=avs2asf&amp;search_mode=f" target="_blank" shape="rect">new version</a> that supports <a shape="rect" href="http://avisynth.org/mediawiki/Main_Page" target="_blank" shape="rect">AVISynth</a> files as source as well. The syntax for a simple PAL 1.2 Mbps encode (from the ReadMe) looks like:</p><div><div><pre>AVS2ASF -i VideoWithAudio.avs -o file.asf -framerate 25 -rate 1200 -profiletype 2 -bframes 2 -maxkeydist 6 -vbv 300000 -peakrate 2000 -pr AudioEncode.prx</pre></div></div><p>Be warned that while the syntax looks a lot like WMCmd.vbs the details can be deceptively different. In particular, units can be different (Kbps instead of bps makes a big difference!). Also, since the VC-1 Encoder SDK is video only, a PRX file defining the audio setting also has to be used; the Format SDK is called to encode audio and mux to WMV.</p><p>AS2ASF also supports elementary stream output, so it’s able to generate a .vc1 file for Blu-ray authoring.</p><p>For those not familiar with it, AVISynth is an open source frameserver that dynamically processes video and lets it look like any DirectShow source to other tools. This means that intermediate files aren’t needed – an AVISynth “.avs” script can define the source and all the processing to apply to it. And there’s a huge community of AVS plugins to handle new format times and processing modes; almost any kind of file out there can be handled by AVISynth, and almost any kind of processing you’d like to apply is available. For a simple example, the below script</p><ul><li>Opens a PNG sequence at 24 fps </li><li>Associates a WAV file with it </li><li>Crops it from 640x360 to 640x352 </li><li>Outputs it in YV12 (8-bit 4:2:0) </li></ul><div><pre>a=imageSource(<span>&quot;D:\Elephant's Dream\PNG 360\%05d.png&quot;</span>,1,15691,24)b=wavsource(<span>&quot;D:\Elephant's Dream\ED-CM-St-16bit.wav&quot;</span>)audiodub(a,b)crop (0,4,0,-4) # crop height 352ConvertToYV12()</pre></div><p>Anyway, I wanted to highlight this technology. The source code is available as a Visual Studio project, and I’d love to see other members of the community continue to enhance it.</p><p>A few things that’d be cool:</p><ul><li>A simple batch automation GUI </li><li>A simple automatic AVS generator, so a .avi or .mov file could be specified as source and the right AVS to wrap it could be build on the fly. </li></ul> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:80c8420b7c764493b5f39e1000b18181">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/AVS2ASF-ndash-Open-Source-VC-1-Encoder-SDK-application</comments>
      <itunes:summary> As you may recall, we released the VC-1 Encoder SDK Professional as as free download. That included a very basic command-line encoder along the lines of Alex Zambelli’s WMCmd.vbs, but with much more limited input support and no preprocessing.A fellow called Kurtnoise13 jumped on it on the Doom9 Forums discussion about the SDK. He quickly created a new version that supports AVISynth files as source as well. The syntax for a simple PAL 1.2 Mbps encode (from the ReadMe) looks like:AVS2ASF -i VideoWithAudio.avs -o file.asf -framerate 25 -rate 1200 -profiletype 2 -bframes 2 -maxkeydist 6 -vbv 300000 -peakrate 2000 -pr AudioEncode.prxBe warned that while the syntax looks a lot like WMCmd.vbs the details can be deceptively different. In particular, units can be different (Kbps instead of bps makes a big difference!). Also, since the VC-1 Encoder SDK is video only, a PRX file defining the audio setting also has to be used; the Format SDK is called to encode audio and mux to WMV.AS2ASF also supports elementary stream output, so it’s able to generate a .vc1 file for Blu-ray authoring.For those not familiar with it, AVISynth is an open source frameserver that dynamically processes video and lets it look like any DirectShow source to other tools. This means that intermediate files aren’t needed – an AVISynth “.avs” script can define the source and all the processing to apply to it. And there’s a huge community of AVS plugins to handle new format times and processing modes; almost any kind of file out there can be handled by AVISynth, and almost any kind of processing you’d like to apply is available. For a simple example, the below scriptOpens a PNG sequence at 24 fps Associates a WAV file with it Crops it from 640x360 to 640x352 Outputs it in YV12 (8-bit 4:2:0) a=imageSource(&amp;quot;D:\Elephant&#39;s Dream\PNG 360\%05d.png&amp;quot;,1,15691,24)b=wavsource(&amp;quot;D:\Elephant&#39;s Dream\ED-CM-St-16bit.wav&amp;quot;)audiodub(a,b)crop (0,4,0,-4) # crop height 352ConvertToYV12()Anyway, I wanted</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/AVS2ASF-ndash-Open-Source-VC-1-Encoder-SDK-application</link>
      <pubDate>Wed, 07 Jan 2009 06:31:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/AVS2ASF-ndash-Open-Source-VC-1-Encoder-SDK-application</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/AVS2ASF-ndash-Open-Source-VC-1-Encoder-SDK-application/RSS</wfw:commentRss>
      <category>vc-1</category>
      <category>Compression</category>
      <category>VC-1 Encoder SDK</category>
      <category>AVISynth</category>
      <category>avs2asf</category>
    </item>
  <item>
      <title>Best practices for Windows Media Encoder in 2009</title>
      <description><![CDATA[ <p>I’ve had a bunch of emails lately from people still using Windows Media Encoder for a variety of reasons. A surprising number of people seem to be using ancient versions of actual encoder .dll files, so I figured it was time for one-last roundup post for best practices with WME and the old Format SDK. Hopefully everyone’s planning their migration to a <a href="http://www.microsoft.com/resources/mediaandentertainment/vc-1encodersdk.mspx">VC-1 Encoder SDK</a> based <a href="http://www.microsoft.com/presspass/press/2007/sep07/09-06VC1EncoderToolsPR.mspx">product</a>, but for those who can’t move yet, please follow these best practices.</p><p>Bear in mind that Windows Media Encoder is older than five years now, which is when multimedia products start moving from Mainstream Support to Extended Support in the <a href="http://support.microsoft.com/lifecycle/?LN=en-us&amp;x=6&amp;y=5">support lifecycle</a>. We don’t set support policy for unreleased products, so note that there’s been no formal guidence on whether WME will be supported on <a href="http://www.microsoft.com/windows/windows-7/">Windows 7</a>.</p><h1>Hotfixes</h1><p>WME is ancient code at this point, and all updates since the original Windows Media 9 Series launch have been done as <a href="http://blogs.technet.com/hot/archive/2007/12/27/something-about-hotfix.aspx">hotfixes</a>. You need to have these installed for security, stability, and performance.</p><h2>Vista compatibility hotfix</h2><p>If you’re on Vista, you’ll absolutely want to install this one.</p><p><a href="http://support.microsoft.com/kb/929182/en-us">FIX: You may experience issues when you use Windows Media Encoder 9 Series on a computer that is running Windows Vista</a></p><p>I covered this in my <a href="http://on10.net/blogs/benwagg/Windows-Media-Encoder-9-Hotfix-for-Vista/">first non HD DVD blog post</a> here on <a href="http://on10.net/blogs/benwagg">On10.net</a>!</p><p>It can be a bit tricky to install sometimes, so follow <a href="http://blogs.msdn.com/mediasdkstuff/archive/2008/10/17/hotfix-929182-not-updated-windows-media-encoder-9-components-as-expected-on-vista.aspx">these instructions</a> from the invaluable </p><p><a href="http://blogs.msdn.com/mediasdkstuff/default.aspx">Windows Media and DirectShow tips, gotchas and code bits</a> blog.</p><p>This hotfix address three issues:</p><h3>Issue 1</h3><p>When you run the Windows Media Encoder command-line script WMCmd.vbs, the script host Cscript.exe may crash.</p><h3>Issue 2</h3><p>The icons that appear on the encoder toolbar and in the encoder dialog boxes are displayed by using a low bit depth. Therefore, the icons appear to have a low resolution. </p><h3>Issue 3</h3><p>When you configure the encoding profile or start an encoding session, the encoder may crash.</p><h2>Multithreaded Multiple bitrate encoding hotfix</h2><p>This one fixes a pretty embarrassing bug – Format SDK 11 wouldn’t use multiple processors when encoding in multiple bitrates (aka “Intelligent Streaming”). Originally blogged <a href="http://on10.net/blogs/benwagg/20600/">here</a>.</p><p><a href="http://support.microsoft.com/kb/945170">FIX: The WMV9 encoder multi-bitrate performance on a multiprocessor system is severely impaired</a></p><h2>Critical Security Fix</h2><p>This is a security fix for a critical vulnerability that could allow remote code execution on a machine running WME. Install it before you launch WME! Note that the vulnerability requires two things that shouldn’t be happening anyway on a production encoder</p><ul><li>WME is running logged in as an administrator </li><li>The machine is being used to browse the web </li></ul><p><a href="http://www.microsoft.com/technet/security/Bulletin/MS08-053.mspx">Microsoft Security Bulletin MS08-053 – Critical. Vulnerability in Windows Media Encoder 9 Could Allow Remote Code Execution (954156)</a></p><h1>Current Format SDK version</h1><p>WME in the end is mainly a graphical front-end to the <a href="http://msdn.microsoft.com/en-us/library/aa387410.aspx">Windows Media Format SDK</a>. The actual codec version you’re running is determined by the SDK. Most people get those updates bundled with <a href="http://www.microsoft.com/windows/windowsmedia/player/">Windows Media Player</a>, so as long as you have the most recent WMP version for your platform, you’re good to go.</p><p>If there’s some reason that you don’t want to update WMP but still want the current codec .dlls, you can also install the Format SDK directly. The SDK version also includes lots of samples and all the normal SDK goodness for building apps for authoring Windows Media content.</p><p>For vendors of compression tools, it’s always a good idea to chain the redistributable installer (WMFDist11-WindowsXP-X86-ENU.exe) along with your installer, so you can ensure that users have the current version. That installer can also un manually to install .dll updates without updating .</p><p>I’ve seen way too many production encoders in the last few months that have WMP 9 and thus the 9.0 SDK. That’s a good six years old now, and will offer much lower quality and perf than the current versions deliver. Remember <a href="http://on10.net/blogs/benwagg/Demo-of-Silverlight-2-scaling-quality-improvements/">this comparison</a>?</p><h2>Windows XP, Vista, or Server 2008: Format SDK 11</h2><p>Windows XP shipped with Windows Media Player XP, which was a flavor of WMP 7. However, the almost universally installed Service Pack 2 included WMP 9. WMP 11 is also available for XP, and should absolutely be installed on any XP-based encoder (and really all XP machines in general).</p><p>Windows Vista shipped with WMP preinstalled, so no action is required there.</p><p>On Windows Server 2008, Windows Media Player, and hence the FSDK, is installed as part of the <a href="http://technet.microsoft.com/en-us/library/cc772567.aspx">Desktop Experience</a> feature. You’ll want to enable the DEP on any encoder box (and in general for any 2K8 box you’ll be using as a workstation).</p><h2>Windows Server 2003: Format SDK 9.5</h2><p>The most recent version for Server 2003 is the older <a href="http://download.microsoft.com/download/9/f/d/9fdfb288-b4bf-45fa-959c-1cc6d909aa92/wmformat95sdk.exe">Format SDK 9.5</a> (which is still better than 9.0). As service to our customers looking for a high degree of confusion, Format SDK 9.5 was released with Windows Media Player 10.</p><p>Note that running on Server 2003 means you won’t have access to the SMPTE-compliant “WVC1” flavor of Windows Media Video 9 Advanced Profile, nor the excellent WMA 10 Pro LBR audio codec, and hence the 32-96 Kbps range for WMA Pro. The codec is also only 2-way threaded instead of 4-way threaded, slower in general, and lacks support for Tarari acceleration and the advanced registry keys.</p><p>If you need to encode on a Server OS, you should use a VC-1 Encoder SDK based product or upgrade to Server 2008 (ideally both!), which will give you better video. However, WMA 10 Pro will still not be available on Server 2003.</p><p>There have been reports of people using the WMFDist11-WindowsXP-X86-ENU.exe installer from FSDK 11 set to XP compatibility mode to install the FSDK 11 .dll files onto Server 2003. While there aren’t known issues with this, I should point out that this isn’t a supported configuration for Server 2003, and so Microsoft support will not be available for any issues when running with mismatched .dll files.</p><h2>64-bit Windows: Format SDK 11 (32-bit)</h2><p>While there is a “Windows Media Encoder 64-bit edition”, don’t use it (I’m not even going to link to it). It predates FSDK 11, and offers lower quality and performance than FSDK 11 does; the performance advantage of running 64-bit native code is a lot smaller than the other improvements in FSDK 11.</p><p>So, keep using the 32-bit stuff on 64-bit as well as 32-bit versions of Windows.</p><h1>Registry keys</h1><p>Once upon a time, this blog seemed to be mainly about using special registry key options in the Format SDK. Thankfully, with Expression Encoder and the other VC-1 Encoder SDK based products mean we have GUI access to all of these now in modern products.</p><p>First off, install <a href="http://alexzambelli.com/blog/">Alex Zambelli’s</a><a href="http://alexzambelli.com/WMV/#WMV9PowerToy">WMV9 PowerToy</a>, which is a simple .NET GUI for setting the codec settings. The tooltips are a better reference than anything I’ll type here; I’ll just give some basic recommendations for different scenarios.</p><h2>“Always On” choices</h2><p><a href="http://on10.net/Link/193739b3-fe8c-468c-b896-4628ef2ad85d/"><img width="944" height="524" title="image" border="0" alt="image" src="http://on10.net/Link/ecdc8e5e-4ff9-4471-af4f-039b4278e9b3/"></a></p><p>&nbsp;</p><p>This is a good set of defaults with no significant performance downside that almost always helps quality.</p><p><strong>Perceptional Option: Adaptive Dead-Zone 1</strong>. This maps to the “Adaptive Dead Zone: Conservative” option from Expression Encoder. This lets the codec reduce detail before introducing artifacts, and generally improves quality at lower bitrates.</p><p><strong>In-Loop Filter: On</strong>. This turns on the In-Loop deblocking filter which softens the edges of block artifacts. This improves the current frame, and also future frames based on it.</p><p><strong>Overlap Filter: On</strong>. This further smoothes the edges of blocks. It can reduce detail a little at high bitrates, but is almost always helpful at typical web bitrates.</p><p><strong>B-Frame Number: 1</strong>. Turns on B-frames, and hence enables flash/fade detection when using Lookahead or 2-pass encoding, and also improves compression efficiency.</p><p><strong>Lookahead: 16</strong>. Tells the codec to buffer ahead 16 frames in 1-pass (CBR or VBR) encoding, letting the codec detect flash frames and fades and switch the frame type based on it. Maps to the “Scene Change Detection” option in Expression Encoder. It will increase end-to-end latency by that many frames in live encoding, but is generally worth it due to quality improvements.</p><h2>High Quality Live</h2><p><a href="http://on10.net/Link/07184052-f43f-4fb2-8c26-cece856260ab/"><img width="944" height="524" title="image" border="0" alt="image" src="http://on10.net/Link/d5c08e76-33fd-4a95-8f2c-5d4d2fcfc02f/"></a></p><p>Assuming you have a fast enough machine to run these settings in at least Complexity 3, they will improve the live experience.</p><p><strong>Motion Search Level: Fixed Integer Chroma</strong>. This adds basic chroma search to the encoding, which can help the quality of motion graphics significantly. It’s a pretty small boost with more typical camera-shot content, so turn it off if you have perf issues; getting to Complexity 3 is more important.</p><p><strong>Motion Search Range: Adaptive</strong>. This tells the encoder to switch to a bigger motion search range for frames with high motion, and then go back to a smaller range when motion dies down. This dramatically improves quality with higher motion at bigger frame sizes. The default range is 64 pixels left/right and 32 pixels up/down, so if any objects move more than that between any two P-frames (if you’re using B-frames, that’ll be 2 frames apart), than this feature will help.</p><h2>High Quality Offline</h2><p>These settings offer maximum quality for offline encoding, and are slower yet. Use them when you’ve got the time, and run at Complexity 4. Complexity 5 ignores the Motion Search Level and Motion Match Method settings, making it lower quality. The only time you need to use Complexity 5 is if you can’t set registry keys (in which case it’s quite a bit better) or need to use WME to scale your video, as scaling quality is much better in Complexity 5. However, you’re better off preprocessing in another tool if at all possible.</p><p><a href="http://on10.net/Link/3fd7f8c2-2ee2-414c-b459-e7add2a0eb07/"><img width="944" height="524" title="image" border="0" alt="image" src="http://on10.net/Link/0f7efbc3-412b-460e-bec1-69755f369c8a/"></a></p><p><strong>Motion Search Level: Fixed True Chroma</strong>. This is a full-precision motion search for chroma. It never hurts, and can help quality a lot with motion graphics and animation.</p><p><strong>Motion Match Method: Adaptive</strong>. This switches between the Sum of Absolute Differences (SAD) and the Hadamard method to compare motion between frames as appropriate for each macroblock. Full Hadamard can be higher quality for some very complex content, but the Adaptive mode is faster and better most of the time.</p><h1>Use hardware preprocessing</h1><p>WME’s preprocessing was designed for good live encoding performance on circa 2002 machines, which means it’s tuned far more for speed than quality. In particular, deinterlacing and scaling aren’t very good (to say the least). So if you’re using WME with a hardware capture card like an Osprey, you’ll get better results doing all the preprocessing on the card, and just passing the final scaled, cropped, deinterlaced YV12 bitmaps off to WME. This also saves some additional CPU cycles for the codec. For file-to-file encoding, you also want to do any deinterlacing and scaling before you import the file into WME. Expression Encoder has great scaling and good deinterlacing, so that’s another reason to use it over WME.</p><h1>Optimum hardware</h1><p>If WMP 9 is all you have on your encoder because that’s all there was when you configured it, you’re going to be running on some very old and very slow hardware! Bear in mind that Moore’s Law predicts you can get twice the computer for your dollar every 18 months or so. So today’s best machines will have about 16x the encoding horsepower of what you could have had when WME was released!</p><h2>Encoder Complexity</h2><p>When tuning hardware, the goal is to enable higher encoder complexity values to be used. Your target is at least complexity of 3; that’s most of the way towards optimal quality; lower values sacrifice a quite a bit of quality for improved speed, while higher values sacrifice a lot of speed for only a little additional quality improvement. Complexity 4 is optimum when time/performance isn’t a concern. As mentioned above, Complexity 5 in FSDK 11 invalidates some registry keys (not an issue with VC-1 Encoder SDK).</p><p>For live encoding, the best way to test is to run the encode using real-world sources and make sure you’re not dropping frames at your target frame size. You’ll want to set Video Smoothness to 0 for this test to make sure frames aren’t being dropped for quality reasons instead of performance reasons.</p><p><a href="http://on10.net/Link/904ed63e-eca5-4186-a74a-73ec0b90cb9c/"><img width="470" height="445" title="Complexity" border="0" alt="Complexity" src="http://on10.net/Link/8086cb7b-8ce1-4085-9aee-0a7586f5641e/"></a></p><h2>CPU</h2><p>Since the encoder is 4-way threaded, you want to be on at least a 4-core machine. These are dirt cheap these days, with affordable 4-core laptops coming soon. Generally speaking, a 4-core is a lot faster than a 2-core at a slightly faster clock speed.</p><p>Clock speed is a big factor as well, but it only matters in context to the generation of processors. For example, the new Intel i7 “Nehalem” get a whole lot more work done at 3 GHz than the original P4 “NetBurst” CPUs did at 3 GHz.</p><h2>Memory</h2><p>Memory isn’t a big factor in encoding, as long as you have enough. You never want an encoder to start swapping, as performance will fall through the floor. 2 GB should be plenty for a dedicated encoder, even doing HD encoding.</p><h2>Tarari Encoder Accelerator</h2><p>If you’re encoding to higher resolutions and just can’t hit the performance you need at a sufficient quality, check out the <a href="http://www.lsi.com/networking_home/networking_products/tarari_content_processors/digital_media/tarari_encoder_accelerator/index.html">Tarari Encoder Accelerator</a>. This offloads a number of the computationally intensive parts of compression to a PCI-X board. While it can’t produce the absolutely best quality a tweaked Complexity 4 &#43; registry key software encode can, it can certainly deliver much higher quality for live HD than pure software, particularly on older computers.</p><p>The Tarari board is also fully supported by VC-1 Encoder SDK products, so your investment isn’t tied to a FSDK workflow.</p><h1>Move to a VC-1 Encoder SDK based product!</h1><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>So, that’s how to get best results out of legacy Format SDK encoders, particularly WME. But really, it’s time to start planning a migration to a VC-1 Encoder SDK based encoder. If there’s something you need that they simply don’t provide, please let me know. Future improvements in VC-1 and Windows Media encoding are going to focus on the SDK, so the gap between Windows Media Encoder and the best encoders is going to be growing bigger over time.</p><h1>Extra – rollup of Windows Media Encoder related posts</h1><p>And just so they don’t disappear off the bottom of the blog, here are my blog posts about WME and the FSDK 11 codecs that readers may still find useful:</p><p><a href="http://on10.net/blogs/benwagg/Low-Latency-webcasting-with-Windows-Media-and-Siverlight/">Low Latency webcasting with Windows Media and Silverlight</a></p><p><a href="http://on10.net/blogs/benwagg/Compression-for-Silverlight-Webcast-posted/">Compression for Silverlight Webcast posted</a></p><p><a href="http://on10.net/blogs/benwagg/New-WMcmdvbs-with-improved-multithreading-and-new-presets/">New WMcmd.vbs with improved multithreading and new presets</a></p><p><a href="http://on10.net/blogs/benwagg/New-PowerToy-and-registry-key-documentation/" title="http://on10.net/blogs/benwagg/New-PowerToy-and-registry-key-documentation/">http://on10.net/blogs/benwagg/New-PowerToy-and-registry-key-documentation/</a></p><p><a href="http://on10.net/blogs/benwagg/Hands-on-with-the-Temporary-Insanity-trailer/">Hands-on with the Temporary Insanity trailer</a></p><p><a href="http://on10.net/blogs/benwagg/Encoding-for-the-Zune/" title="http://on10.net/blogs/benwagg/Encoding-for-the-Zune/">http://on10.net/blogs/benwagg/Encoding-for-the-Zune/</a></p><p><a href="http://on10.net/blogs/benwagg/Elephants-Dream-720p--2-Mbps/" title="http://on10.net/blogs/benwagg/Elephants-Dream-720p--2-Mbps/">http://on10.net/blogs/benwagg/Elephants-Dream-720p--2-Mbps/</a></p><p><a href="http://on10.net/blogs/benwagg/My-Live-Webcasting-with-Windows-Media-presentation-from-Streaming-Media-East/" title="http://on10.net/blogs/benwagg/My-Live-Webcasting-with-Windows-Media-presentation-from-Streaming-Media-East/">http://on10.net/blogs/benwagg/My-Live-Webcasting-with-Windows-Media-presentation-from-Streaming-Media-East/</a></p><p><a href="http://on10.net/blogs/benwagg/My-Mix-07-session-about-WMV-Encoding-and-Expression-Media-Encoder/" title="http://on10.net/blogs/benwagg/My-Mix-07-session-about-WMV-Encoding-and-Expression-Media-Encoder/">http://on10.net/blogs/benwagg/My-Mix-07-session-about-WMV-Encoding-and-Expression-Media-Encoder/</a></p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:de861068a66849fe91a99e1000b17960">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Best-practices-for-Windows-Media-Encoder-in-2009</comments>
      <itunes:summary> I’ve had a bunch of emails lately from people still using Windows Media Encoder for a variety of reasons. A surprising number of people seem to be using ancient versions of actual encoder .dll files, so I figured it was time for one-last roundup post for best practices with WME and the old Format SDK. Hopefully everyone’s planning their migration to a VC-1 Encoder SDK based product, but for those who can’t move yet, please follow these best practices.Bear in mind that Windows Media Encoder is older than five years now, which is when multimedia products start moving from Mainstream Support to Extended Support in the support lifecycle. We don’t set support policy for unreleased products, so note that there’s been no formal guidence on whether WME will be supported on Windows 7.HotfixesWME is ancient code at this point, and all updates since the original Windows Media 9 Series launch have been done as hotfixes. You need to have these installed for security, stability, and performance.Vista compatibility hotfixIf you’re on Vista, you’ll absolutely want to install this one.FIX: You may experience issues when you use Windows Media Encoder 9 Series on a computer that is running Windows VistaI covered this in my first non HD DVD blog post here on On10.net!It can be a bit tricky to install sometimes, so follow these instructions from the invaluable Windows Media and DirectShow tips, gotchas and code bits blog.This hotfix address three issues:Issue 1When you run the Windows Media Encoder command-line script WMCmd.vbs, the script host Cscript.exe may crash.Issue 2The icons that appear on the encoder toolbar and in the encoder dialog boxes are displayed by using a low bit depth. Therefore, the icons appear to have a low resolution. Issue 3When you configure the encoding profile or start an encoding session, the encoder may crash.Multithreaded Multiple bitrate encoding hotfixThis one fixes a pretty embarrassing bug – Format SDK 11 wouldn’t use multiple processors when encoding </itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Best-practices-for-Windows-Media-Encoder-in-2009</link>
      <pubDate>Tue, 06 Jan 2009 01:54:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Best-practices-for-Windows-Media-Encoder-in-2009</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>8</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Best-practices-for-Windows-Media-Encoder-in-2009/RSS</wfw:commentRss>
      <category>Expression Encoder</category>
      <category>Silverlight</category>
      <category>vc-1</category>
      <category>Compression</category>
      <category>WMcmd.vbs</category>
      <category>Windows Media Player</category>
      <category>WMV9 PowerToy</category>
      <category>Windows Media Encoder</category>
      <category>VC-1 Encoder SDK</category>
    </item>
  <item>
      <title>Netflix&amp;rsquo;s Neil Hunt shares encoding workflow info</title>
      <description><![CDATA[ <p>Now, this is a blog post! Neil Hunt, Chief Product Officer for Netflix, has just put up a <a shape="rect" href="http://blog.netflix.com/2008/11/encoding-for-streaming.html" shape="rect">great blog post</a> talking about their encoding workflow for their video streaming services.</p><p>It’s full of awesomeness, but I wanted to excerpt the section describing their 1st gen, 2nd gen, and HD encoding settings and workflow.</p><blockquote><h2>First Generation Encoding </h2><p>Our first set of encodes are based on WMV3 and WMA in ASF with WMDRM10 (Janus). We chose these standards because the Janus components have been widely adopted by our CE partners such as Roku, LG Electronics, Samsung, TiVo, and of course Microsoft Xbox. <br>We encode most content at 500, 1000, 1600, and 2200kbps VBR, but some titles whose source quality merits it have also been encoded at 3400kbps. The highest bitrate encodes are fit into 720x480 non-square pixels (the usual 1.2 PAR for widescreen content, 0.9 PAR for 4:3), but optimum encoding at lower bitrates is achieved with fewer pixels. Encoded films are normally at 24fps to match the source, while shot-to-video and mixed material is de-interlaced to 30fps (or 25fps for PAL content).</p></blockquote><p>Netflix has been using anamorphic video all along, which I think is an underused feature of Windows Media and other formats. When you’re limited to 720x480 pixels, you want to encode all the pixels you’ve got, without having to synthesize any extra.</p><blockquote><h2>Second Generation Encoding </h2><p>The new Silverlight player (that some users are helping us test as I write) uses VC1 Advanced Profile encoding with PlayReady DRM. A key property is that each GOP header includes frame size and resolution, which allows us to assemble a stream on the fly from different bitrate encodes as your broadband bandwidth fluctuates. (Another key feature is more coverage, including Intel Macs and Firefox users.) We expect to switch completely to the new player later this year. <br>The VC1 encoders are more efficient than the WMV3 encoders, so we are currently encoding VC1AP at slightly lower birates: 375, 500, 1000, and 1500kbps, all square pixel. At some point we are likely to add a couple more resolutions of non-square pixel encodes capturing the original pixel-aspect-ratio of the source. <br>We are also re-wrapping the VC1AP encodes in WMDRM10 for CE devices, which will gradually switch to the more efficient encodes in future firmware upgrades.</p></blockquote><p>This is a great example of the improved efficiency of the VC-1 Encoder SDK and tools based on it. Not all Windows Media/VC-1 encoding is equal; the latest tools can offer a very meaningful reduction in bitrate required for a give quality level, improving user experiences and the cost of delivering the content.</p><p>The new encodes are backwards compatible to older hardware and software encoders, so even older devices can take advantage of the improvements. </p><blockquote><h2>High Definition Encodes </h2><p>Today we have rights to deliver about 400 streams in HD (720p). More titles will be added over time. We experimented with first-generation WMV3 encodes at 4000kbps and 5500kbps, but settled on second-generation HD encodes with VC1AP at 2600kbps and 3800kbps, which extends their accessibility down to lower home broadband connections. As with SD, encodes of film material are at 24fps, and encodes of shot-to-video material are at 30fps (or 25fps for PAL), rather than the 60fps that would come from a Blu-ray disc - we judged the 60fps content as too expensive of bandwidth for now. In general, these encodes are definitively better than SD, but won't challenge well-executed Blu-ray encodes - that would require a bitrate out of reach for most domestic broadband today. We believe Moore's law will drive home broadband higher and higher enabling full 1080p60 encodes in a few years.</p></blockquote><p>There’s codecs for you – a good 720p experience at 3800 Kbps, which is probably a little below the average 480p bitrate used for MPEG-2 on the DVDs that fly around the nation in those Netflix envelopes.</p><p>I’m not that worried about 1080p60 encoding myself. The vast majority of fictional content is shot 24p, including 99% at least of Blu-ray discs. While Blu-ray players may output 1080p60, the encodes, and hence bitrate requirements, are still 1080p24. I find that typical film content in VC-1 wants around 6-8 Mbps for a 1080p24 experience enough better than 720p to be worth the trouble.</p><p>I just got my Xbox set up to handle the Netflix streams – now I’ve got to go check out some of those <a shape="rect" href="http://www.netflix.com/WiHD?lnkctr=hdgenre" shape="rect">400 HD titles</a>! Hmm. Pan’s Labyrinth and Heroes.</p><p>&nbsp;</p><p>Anyway, it’s great stuff. I love it when partners can share this kind of detail about what they’re doing.</p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:d2eca7acebbc4135a0549e1000b16da8">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Netflixrsquos-Neil-Hunt-shares-encoding-workflow-info</comments>
      <itunes:summary> Now, this is a blog post! Neil Hunt, Chief Product Officer for Netflix, has just put up a great blog post talking about their encoding workflow for their video streaming services.It’s full of awesomeness, but I wanted to excerpt the section describing their 1st gen, 2nd gen, and HD encoding settings and workflow.First Generation Encoding Our first set of encodes are based on WMV3 and WMA in ASF with WMDRM10 (Janus). We chose these standards because the Janus components have been widely adopted by our CE partners such as Roku, LG Electronics, Samsung, TiVo, and of course Microsoft Xbox. We encode most content at 500, 1000, 1600, and 2200kbps VBR, but some titles whose source quality merits it have also been encoded at 3400kbps. The highest bitrate encodes are fit into 720x480 non-square pixels (the usual 1.2 PAR for widescreen content, 0.9 PAR for 4:3), but optimum encoding at lower bitrates is achieved with fewer pixels. Encoded films are normally at 24fps to match the source, while shot-to-video and mixed material is de-interlaced to 30fps (or 25fps for PAL content).Netflix has been using anamorphic video all along, which I think is an underused feature of Windows Media and other formats. When you’re limited to 720x480 pixels, you want to encode all the pixels you’ve got, without having to synthesize any extra.Second Generation Encoding The new Silverlight player (that some users are helping us test as I write) uses VC1 Advanced Profile encoding with PlayReady DRM. A key property is that each GOP header includes frame size and resolution, which allows us to assemble a stream on the fly from different bitrate encodes as your broadband bandwidth fluctuates. (Another key feature is more coverage, including Intel Macs and Firefox users.) We expect to switch completely to the new player later this year. The VC1 encoders are more efficient than the WMV3 encoders, so we are currently encoding VC1AP at slightly lower birates: 375, 500, 1000, and 1500kbps, all square pixel</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Netflixrsquos-Neil-Hunt-shares-encoding-workflow-info</link>
      <pubDate>Thu, 20 Nov 2008 01:50:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Netflixrsquos-Neil-Hunt-shares-encoding-workflow-info</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>2</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Netflixrsquos-Neil-Hunt-shares-encoding-workflow-info/RSS</wfw:commentRss>
      <category>netflix</category>
      <category>Silverlight</category>
      <category>vc-1</category>
      <category>wmv</category>
      <category>HD</category>
      <category>Compression</category>
    </item>
  <item>
      <title>Silverlight 2 RC0 is out</title>
      <description><![CDATA[The first public release canditate (RCo) for Silverlight 2 is now <a href="http://silverlight.net/GetStarted/sl2rc0.aspx">available for download </a>by developers. While anyone can install it, the main goal is for developers to make sure they aren't hit by any breaking changes for Silverlight 2 RTM so they can fix any issues. No one will be auto-updated to this release. Users will be auto-updated to Silverlight 2's final release when it's posted.<br><br>All Silverlight 1.0 projects should work fine, but there may be some Silverlight 2 Beta projects that require updates.<br><br>For the media folks, there's a couple of new things I want to mention.<br><ul><li>There's a new scaling algorithm that's a lot faster and much higher quality -&nbsp;a nice compromise when you can get it! </li><li>Additional optimizations have been done for the VC-1 video decoder, so playback will be faster. The gains are biggest for content using B-frames. </li></ul><p>Since the default Expression Encoder templates have &quot;always on&quot; scaling and its presets use B-frames by default, the above will provide a nice performance boost for existing content. The above are &quot;always on&quot; features - you don't need to update anything to take advantage of them. So expect smoother frame rates on lower-end machines.<br><br>Further information:</p><ul><li><a href="http://download.microsoft.com/download/6/f/e/6fe1f43d-9d0c-4346-ad08-602df9bcb3cf/BreakingChangesBetweenBeta2andRelease.doc">Silverlight 2 breaking changes .doc file </li><li></a><a href="http://www.microsoft.com/silverlight/resources/readme.aspx?v=2.0.30923">Silverlight 2 ReadMe</a></li><li><a href="http://weblogs.asp.net/scottgu/archive/2008/09/25/silverlight-2-release-candidate-now-available.aspx">ScottGu's Blog post on RC0</a></li></ul><p>EDIT: Added ScottGu link</p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:af80e5236db04bfd8d579e1000b147d2">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Silverlight-2-RC0-is-out</comments>
      <itunes:summary>The first public release canditate (RCo) for Silverlight 2 is now available for download by developers. While anyone can install it, the main goal is for developers to make sure they aren&#39;t hit by any breaking changes for Silverlight 2 RTM so they can fix any issues. No one will be auto-updated to this release. Users will be auto-updated to Silverlight 2&#39;s final release when it&#39;s posted.All Silverlight 1.0 projects should work fine, but there may be some Silverlight 2 Beta projects that require updates.For the media folks, there&#39;s a couple of new things I want to mention.There&#39;s a new scaling algorithm that&#39;s a lot faster and much higher quality -&amp;nbsp;a nice compromise when you can get it! Additional optimizations have been done for the VC-1 video decoder, so playback will be faster. The gains are biggest for content using B-frames. Since the default Expression Encoder templates have &amp;quot;always on&amp;quot; scaling and its presets use B-frames by default, the above will provide a nice performance boost for existing content. The above are &amp;quot;always on&amp;quot; features - you don&#39;t need to update anything to take advantage of them. So expect smoother frame rates on lower-end machines.Further information:Silverlight 2 breaking changes .doc file Silverlight 2 ReadMeScottGu&#39;s Blog post on RC0EDIT: Added ScottGu link</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Silverlight-2-RC0-is-out</link>
      <pubDate>Wed, 01 Oct 2008 15:01:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Silverlight-2-RC0-is-out</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Silverlight-2-RC0-is-out/RSS</wfw:commentRss>
      <category>Developers</category>
      <category>Expression Encoder</category>
      <category>Silverlight</category>
      <category>Silverlight 2</category>
      <category>vc-1</category>
      <category>Compression</category>
    </item>
  <item>
      <title>Expression Encoder Service Pack 1 preview</title>
      <description><![CDATA[<a href="http://www.clarkezone.net/">James Clarke </a>has a <a href="http://blogs.msdn.com/expressionencoder/archive/2008/09/23/8962401.aspx">blog post up </a>describing some of the new features in the forthcoming Expression Encoder 2 Service Pack 1.<br><br>It's got some great new stuff, and we're demoing it here at <a href="http://streamingmedia.com/west/">Streaming Media West </a>this week.<br><br>Read the whole post - there's lots of good stuff in there. A couple of my favories are<br><br><ul><li>A new Silverlight 2 base player using .NET. Among other things, this will enable players that display the video at 100% scale by default, improving quality and performance. </li><li>New A/B compare modes. Awesome stuff for high-touch encoding and codec tweaking </li><li>Some even more VC-1 advanced options for High Codec Nerditry. </li><li>The first public release of Microsoft H.264 compression technology. </li></ul><p>Anyway, a lot of good stuff for a SP1. I'm looking forward to it.</p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:9fdba240e7fa45f3b5b19e1000b14006">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Expression-Encoder-Service-Pack-1-preview</comments>
      <itunes:summary>James Clarke has a blog post up describing some of the new features in the forthcoming Expression Encoder 2 Service Pack 1.It&#39;s got some great new stuff, and we&#39;re demoing it here at Streaming Media West this week.Read the whole post - there&#39;s lots of good stuff in there. A couple of my favories areA new Silverlight 2 base player using .NET. Among other things, this will enable players that display the video at 100% scale by default, improving quality and performance. New A/B compare modes. Awesome stuff for high-touch encoding and codec tweaking Some even more VC-1 advanced options for High Codec Nerditry. The first public release of Microsoft H.264 compression technology. Anyway, a lot of good stuff for a SP1. I&#39;m looking forward to it.</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Expression-Encoder-Service-Pack-1-preview</link>
      <pubDate>Wed, 24 Sep 2008 03:19:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Expression-Encoder-Service-Pack-1-preview</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>2</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Expression-Encoder-Service-Pack-1-preview/RSS</wfw:commentRss>
      <category>Expression Encoder</category>
      <category>h.264</category>
      <category>Silverlight</category>
      <category>vc-1</category>
      <category>Compression</category>
    </item>
  <item>
      <title>H.264 and AAC support coming in Silverlight</title>
      <description><![CDATA[ <p>So, our big <a shape="rect" href="http://www.microsoft.com/presspass/features/2008/sep08/09-09silverlight.mspx" shape="rect">IBC press announcement</a> went out this morning. Lots of blog-worthy stuff in there, but as a compression nerd, it's the codec stuff I'm going to talk about first.</p><p>The big news is that, yes, we're going to add support for MPEG-4 to Silverlight, in the version coming after the fast-approaching fall release of Silverlight 2. Specifically, this will be H.264 for video and AAC for audio.</p><h1>Why?</h1><p>So, why MPEG-4 support in Silverlight? It's pretty straightforward, really. We have customers with libraries of H.264 content they wanted to publish to Silverlight, but didn't want to reencode to VC-1. Silverlight's strengths go far beyond media playback, and customers wanted the choice to deploy a wide variety of existing content within Silverlight. Silverlight aspires to provide as much choice as feasible as to how Silverlight can be authored and delivered. H.264 support is something we'd considered for past versions, but there were higher priority features we needed to deliver first. Silverlight 2 provides us a very rich base for delivering web apps, so we can start spreading our wings a bit.</p><h1>What?</h1><p>We've got more technical details we'll be sharing at IBC and later, but today, I'll just quote the details from <a shape="rect" href="http://weblogs.asp.net/scottgu/" shape="rect">Scott Guthrie's</a> interview:</p><blockquote><p><b>PressPass: Will you be showing or announcing anything new at the IBC conference this week?</b></p><p>Guthrie: Yes. At IBC 2008 we will be demonstrating a technology preview of H.264 video and Advanced Audio Coding (AAC) audio playback support in Silverlight, and H.264 authoring using Microsoft Expression Encoder and Windows Server 2008 for delivery. Until now, Silverlight has supported the SMPTE VC-1 and Windows Media formats, as well as MP3 for audio, enabling customers to take advantage of broad support across the Windows Media ecosystem, including third-party tools, service providers and content delivery networks.</p><p>We’ve always wanted Silverlight to support a variety of formats, so today we’re announcing that H.264 and AAC support will be available in a future version of Silverlight, which will offer content owners greater flexibility and choice to deliver video and audio.</p><p><b>PressPass: Historically, people have associated Microsoft with VC-1. Does this signal a change in direction?</b></p><p><b>Guthrie: </b>No. Although we have been working with VC-1 for some time, it’s not widely recognized that Microsoft has also been an active participant in the standardization of H.264/MPEG AVC for many years, and we’ve included H.264 support in several Microsoft products. Microsoft’s Gary Sullivan was the chairman of the Joint Video Team (JVT), which developed the H.264 standard, and he recently accepted an Emmy Award on behalf of the JVT.</p><p><b>PressPass: Does this mean that Silverlight is moving away from Windows Media?</b></p><p><b>Guthrie:</b> Not at all. This is about offering our customers more choice. Media producers and distributors around the world have enjoyed the high quality, flexibility and affordability of Windows Media formats for over a decade. As a testament to its pervasiveness, Windows Media can be found in almost every conceivable media scenario from desktop home video to feature films and TV broadcasts.</p></blockquote><p>Again, don't read this as as a big change around our strategy for media formats. We've long-supported WMV and MPEG-4 side-by-side in products like Xbox and Zune. As I <a shape="rect" href="http://on10.net/blogs/benwagg/Technical-Emmy-for-H264MPEG-4-AVC/" shape="rect">posted last week</a>, Microsoft has been contributing to H.264 since its inception.</p><p>This doesn't represent any change in our support for Windows Media. Windows Media continues to work well for today's Silverlight customers. I expect (not a goal, just a prediction) that the majority of Silverlight content will remain in WMV well after we release MPEG-4 support.</p><p>In particular, VC-1 will likely remain the codec of choice for HD for some time. Comparing VC-1 Advanced Profile to H.264 High Profile with all the bells and whistles turned on, VC-1 only needs about half as many MIPS per pixel for playback. This won't matter as much for lower resolution content, or podcasting stuff that's in the simpler Baseline profile, but makes for a big reduction in system requirements for 720p and higher.</p><h1>Where/When can I learn more?</h1><p>If you're at IBC, <a shape="rect" href="http://www.microsoft.com/resources/mediaandentertainment/ibc2008/default.mspx" shape="rect">swing by</a>! If you want a head start on using MPEG-4 in Silverlight, feel free contact me directly. And we'll have plenty of more technical info to share down the road a bit.</p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:8750469448834397b1af9e1000b137f7">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/H264-and-AAC-support-coming-in-Silverlight</comments>
      <itunes:summary> So, our big IBC press announcement went out this morning. Lots of blog-worthy stuff in there, but as a compression nerd, it&#39;s the codec stuff I&#39;m going to talk about first.The big news is that, yes, we&#39;re going to add support for MPEG-4 to Silverlight, in the version coming after the fast-approaching fall release of Silverlight 2. Specifically, this will be H.264 for video and AAC for audio.Why?So, why MPEG-4 support in Silverlight? It&#39;s pretty straightforward, really. We have customers with libraries of H.264 content they wanted to publish to Silverlight, but didn&#39;t want to reencode to VC-1. Silverlight&#39;s strengths go far beyond media playback, and customers wanted the choice to deploy a wide variety of existing content within Silverlight. Silverlight aspires to provide as much choice as feasible as to how Silverlight can be authored and delivered. H.264 support is something we&#39;d considered for past versions, but there were higher priority features we needed to deliver first. Silverlight 2 provides us a very rich base for delivering web apps, so we can start spreading our wings a bit.What?We&#39;ve got more technical details we&#39;ll be sharing at IBC and later, but today, I&#39;ll just quote the details from Scott Guthrie&#39;s interview:PressPass: Will you be showing or announcing anything new at the IBC conference this week?Guthrie: Yes. At IBC 2008 we will be demonstrating a technology preview of H.264 video and Advanced Audio Coding (AAC) audio playback support in Silverlight, and H.264 authoring using Microsoft Expression Encoder and Windows Server 2008 for delivery. Until now, Silverlight has supported the SMPTE VC-1 and Windows Media formats, as well as MP3 for audio, enabling customers to take advantage of broad support across the Windows Media ecosystem, including third-party tools, service providers and content delivery networks.We’ve always wanted Silverlight to support a variety of formats, so today we’re announcing that H.264 and AAC support will be available in a </itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/H264-and-AAC-support-coming-in-Silverlight</link>
      <pubDate>Tue, 09 Sep 2008 19:09:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/H264-and-AAC-support-coming-in-Silverlight</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>3</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/H264-and-AAC-support-coming-in-Silverlight/RSS</wfw:commentRss>
      <category>h.264</category>
      <category>Silverlight</category>
      <category>vc-1</category>
      <category>Windows Media</category>
      <category>Compression</category>
      <category>IBC</category>
    </item>
  <item>
      <title>Technical Emmy for H.264/MPEG-4 AVC</title>
      <description><![CDATA[ <p>I have many ways of reminding my wife I'm an hopeless video nerd. Among them is that I only pay attention to the Emmy Awards she's watching when the recap of the <a shape="rect" href="http://cdn.emmys.tv/media/releases/2008/rel-pte60-eng.php" shape="rect">technical awards</a> comes on.</p><p>So, I was really excited that our own Dr. Gary Sullivan, chairman of the Joint Video Team, was on hand last week to receive a 2008 Primetime Emmy<sup>®</sup> Engineering Award for developing H.264/MPEG-4 AVC High Profile. In the words of the <a shape="rect" href="http://cdn.emmys.tv/atemmys/index.php" shape="rect">Academy</a>:</p><blockquote><p><b>Joint Video Team Standards Committee (JVT)</b> for the development of the High Profile for H.264 / MPEG-4 AVC. The High Profile enables high definition images in the H.264 video coding system used today to deliver HD video over satellite and cable TV as well as Blu-ray Disc. The JVT is a standardization team comprised of members from the International Standardization Organization (ISO), the International Electrotechnical Commission (IEC), and the International Telecommunication Union (ITU).</p></blockquote><p>The award recognized Broadcom, NTT DoCoMo, Dolby Laboratories, Fraunhofer Heinrich Hertz Institute, Microsoft, Motorola, Panasonic, Sony, and Thomson as contributing companies, as well as standards organizations ISO, IEC, and ITU.</p><p>Gary has long represented Microsoft as as chair and co-chair of the Joint Video Team that coordinated the H.264/MPEG-4 AVC effort between ITU-T VCEG and ISO/IEC MPEG, amongst his many other efforts like DXVA; his <a shape="rect" href="http://en.wikipedia.org/wiki/Gary_Sullivan_%28engineer%29" shape="rect">page on Wikipedia</a> has more details.</p><p>I suppose some people might be surprised at Microsoft's inclusion here, but they shouldn't be. While Microsoft has a long heritage of making our own ground-up codecs like <a shape="rect" href="http://www.microsoft.com/resources/mediaandentertainment/vc-1.mspx" shape="rect">VC-1</a>, we've also long been involved in standards-based codecs, including the original MPEG-4 Part 2 as well as MPEG-4 Part 10/H.264. And we've got a number of products that incorporate H.264 today, including <a shape="rect" href="http://www.microsoftmediaroom.com/#" shape="rect">Mediaroom</a>, the <a shape="rect" href="http://www.zune.net/en-us/products/compare.htm" shape="rect">Zune 4/8 and 80</a>, and <a shape="rect" href="http://www.xbox.com/en-US/support/systemuse/xbox360/digitalmedia/videoplaybackfaq.htm#h264" shape="rect">Xbox 360</a>. H.264 are and VC-1 are both great codecs, with somewhat different sweet spots, and we use either or both as appropriate in our products, platforms, and services.<br><br>The picture above has, left to right: Malcolm Johnson (director of the ITU standardization bureau), Ajay Luthra (JVT vice-chair from Motorola), Gary Sullivan (JVT chair from Microsoft), Thomas Wiegand (JVT vice-chair from Fraunhofer HHI), and Scott Jameson (chair of ISO/IEC JTC 1)</p><p dir="ltr"><a shape="rect" href="file:///C:/Users/Ben%20Waggoner/AppData/Roaming/Windows%20Live%20Writer/PostSupportingFiles/6063ae46-18d1-4564-99fb-81cf52c9cd1b/DSC_5902_final_1280x636[5].jpg" shape="rect"></a>&nbsp;</p><p>And a few other articles/posts about the award:</p><p><a shape="rect" href="http://news.thomasnet.com/companystory/548059" shape="rect">ANSI</a></p><p><a shape="rect" href="http://www.eetimes.com/news/latest/showArticle.jhtml?articleID=210200755" shape="rect">EE Times</a></p><p><a shape="rect" href="http://www.reuters.com/article/pressRelease/idUS126897&#43;21-Aug-2008&#43;BW20080821" shape="rect">Dolby</a></p><p><a shape="rect" href="http://micketoh.blogspot.com/2008/08/primetime-emmy-engineering-award-on.html" shape="rect">Minoru &quot;Mick&quot; Etoh's blog</a> (who represented DoCoMo at the ceremony)</p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:751ade3549b243d8955c9e1000b132b4">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Technical-Emmy-for-H264MPEG-4-AVC</comments>
      <itunes:summary> I have many ways of reminding my wife I&#39;m an hopeless video nerd. Among them is that I only pay attention to the Emmy Awards she&#39;s watching when the recap of the technical awards comes on.So, I was really excited that our own Dr. Gary Sullivan, chairman of the Joint Video Team, was on hand last week to receive a 2008 Primetime Emmy&#174; Engineering Award for developing H.264/MPEG-4 AVC High Profile. In the words of the Academy:Joint Video Team Standards Committee (JVT) for the development of the High Profile for H.264 / MPEG-4 AVC. The High Profile enables high definition images in the H.264 video coding system used today to deliver HD video over satellite and cable TV as well as Blu-ray Disc. The JVT is a standardization team comprised of members from the International Standardization Organization (ISO), the International Electrotechnical Commission (IEC), and the International Telecommunication Union (ITU).The award recognized Broadcom, NTT DoCoMo, Dolby Laboratories, Fraunhofer Heinrich Hertz Institute, Microsoft, Motorola, Panasonic, Sony, and Thomson as contributing companies, as well as standards organizations ISO, IEC, and ITU.Gary has long represented Microsoft as as chair and co-chair of the Joint Video Team that coordinated the H.264/MPEG-4 AVC effort between ITU-T VCEG and ISO/IEC MPEG, amongst his many other efforts like DXVA; his page on Wikipedia has more details.I suppose some people might be surprised at Microsoft&#39;s inclusion here, but they shouldn&#39;t be. While Microsoft has a long heritage of making our own ground-up codecs like VC-1, we&#39;ve also long been involved in standards-based codecs, including the original MPEG-4 Part 2 as well as MPEG-4 Part 10/H.264. And we&#39;ve got a number of products that incorporate H.264 today, including Mediaroom, the Zune 4/8 and 80, and Xbox 360. H.264 are and VC-1 are both great codecs, with somewhat different sweet spots, and we use either or both as appropriate in our products, platforms, and services.The picture above</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Technical-Emmy-for-H264MPEG-4-AVC</link>
      <pubDate>Thu, 28 Aug 2008 19:05:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Technical-Emmy-for-H264MPEG-4-AVC</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/320/on10_9b20ca89-b6d7-4ef6-88e9-5105e9981884.jpg" height="0" width="0"/>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/85/on10_0ccb69d3-7bc6-4f27-8922-6a61c3bad979.jpg" height="64" width="85"/>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Technical-Emmy-for-H264MPEG-4-AVC/RSS</wfw:commentRss>
      <category>h.264</category>
      <category>vc-1</category>
      <category>Compression</category>
      <category>codecs</category>
      <category>AVC</category>
      <category>Gary Sullivan</category>
      <category>Emmy</category>
    </item>
  <item>
      <title>Silverlight Skinning in Flip4Mac</title>
      <description><![CDATA[ <p>Much has been made of our making the Mac a first-class citizen of Silverlight. We build the Mac and Windows versions together, and release them simultaneously. We've intentionally structured Silverlight to minimize dependencies on the underlying hardware and OS, and carry around all our codecs inside the runtime.</p><p>What I haven't talked a whole lot about in too long is our support for authoring Silverlight video experiences on the Mac. While our own <a href="http://www.microsoft.com/expression/products/Overview.aspx?key=encoder">Expression Encoder 2</a> is Windows-only, we work with partners to provide WMV and VC-1 encoding on other platform. <a href="http://www.telestream.net/">Telestream</a> has been a great partner here, with their <a href="http://flip4mac.com/wmv.htm">Flip4Mac</a> QuickTime component and their <a href="http://flip4mac.com/episode.htm">Episode</a> stand-alone compression tool (originally known as Compression Master, and which came along with their acquisition of Popwire).</p><p>Flip4Mac is a testament to both the portability of the Windows Media technologies and the flexibility of Apple's QuickTime architecture. It works as a QuickTime component, enabling QuickTime to play Windows Media content like any other supported format, with full access to all of QuickTime's features like hardware accelerated full-screen playback (all supported in the free version). For example, in the QuickTime Pro Properties window:</p><p><a href="http://on10.net/Link/dff98a55-ac91-45bc-a633-5d8c21791cb3/"><img width="754" height="438" alt="WMV-Properties" src="http://on10.net/Link/cd669cba-38d1-43e3-8357-5d53d40e2321/" border="0"></a></p><p>Looks just like any other QuickTime file. Even the ASF metadata shows up.</p><p>Flip4Mac also supports content authoring in the paid version, as well as import into content creation apps like Final Cut Pro. It's got pretty deep control, even exposing features like B-Frames that'd take a registry key with Windows Media Encoder.</p><p>&nbsp;</p><p>So, how about a quick walkthrough through the Flip4Mac encoding settings?</p><p>&nbsp;</p><p>Flip4Mac is accessed like any other exportable format from QuickTime (like MPEG-4). It also comes with a bunch of presets for typical scenarios.</p><p><a href="http://on10.net/Link/aeafd1d9-f16c-4ad1-ab9f-52f1380d0bde/"><img width="560" height="226" alt="Export-to-Windows-Media" src="http://on10.net/Link/b89df424-5e3d-4bea-84b8-c919d8ca6e76/" border="0"></a></p><p>&nbsp;</p><p>It has the normal set of basic video export features you'd expect, nicely Macified. I appreciate the &quot;Size: Current&quot; so I don't have to always type in the frame size of the source when I'm not scaling.</p><p><a href="http://on10.net/Link/74335ee2-1559-4da6-9bd7-4cf3dfa80aaf/"><img width="424" height="595" alt="Export-Video" src="http://on10.net/Link/69e33ea7-bc4e-4fc8-82d3-3c0c60b77fae/" border="0"></a></p><p>&nbsp;</p><p>The Advanced button reveals some deeper options, including a complexity control for speed/quality tradeoffs and B-Frame distance. You can also set Flip4Mac to deinterlace interlaced sources, or pass interlacing on through to the final encode. Since it can both encode and decode interlaced VC-1, Flip4Mac can be a great way to transfer editable 480i video sources over slow connections. It can match DV quality in 20% the data rate.</p><p><a href="http://on10.net/Link/bd494fd2-d828-4341-9f4d-925bbee6b6ed/"><img width="384" height="374" alt="Export-Video-Advanced" src="http://on10.net/Link/8c3958eb-3f8f-475e-881b-89324ecd0bea/" border="0"></a></p><p>&nbsp;</p><p>For Silverlight audio, Flip4Mac supports both WMA 9 Standard and 9 Professional. It doesn't encode the 32-96 Kbps WMA 10 Pro low bitrate modes that Silverlight 2 will be able to decode, but does have the full variety of WMA encoding modes.</p><p><a href="http://on10.net/Link/7670c265-1f0a-416b-bfd5-e6434481dcfc/"><img width="424" height="595" alt="Export-Audio" src="http://on10.net/Link/aaaf96f3-faa0-4736-9b4d-eb514c42581a/" border="0"></a></p><p>&nbsp;</p><p>And the coolest new feature of Flip4Mac: built-in Silverlight templates! This lets you build a complete Silverlight player (using Expression Encoder templates we provided) directly from any app that support QuickTime export.</p><p><a href="http://on10.net/Link/17463da8-321b-4e81-a56d-b94275e8a05f/"><img width="424" height="595" alt="Export-Silverlight" src="http://on10.net/Link/40821dbc-df63-4491-913a-daeede47a74e/" border="0"></a></p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:9ea0097a7d5c4c2598859e1000b12957">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Silverlight-Skinning-in-Flip4Mac</comments>
      <itunes:summary> Much has been made of our making the Mac a first-class citizen of Silverlight. We build the Mac and Windows versions together, and release them simultaneously. We&#39;ve intentionally structured Silverlight to minimize dependencies on the underlying hardware and OS, and carry around all our codecs inside the runtime.What I haven&#39;t talked a whole lot about in too long is our support for authoring Silverlight video experiences on the Mac. While our own Expression Encoder 2 is Windows-only, we work with partners to provide WMV and VC-1 encoding on other platform. Telestream has been a great partner here, with their Flip4Mac QuickTime component and their Episode stand-alone compression tool (originally known as Compression Master, and which came along with their acquisition of Popwire).Flip4Mac is a testament to both the portability of the Windows Media technologies and the flexibility of Apple&#39;s QuickTime architecture. It works as a QuickTime component, enabling QuickTime to play Windows Media content like any other supported format, with full access to all of QuickTime&#39;s features like hardware accelerated full-screen playback (all supported in the free version). For example, in the QuickTime Pro Properties window:Looks just like any other QuickTime file. Even the ASF metadata shows up.Flip4Mac also supports content authoring in the paid version, as well as import into content creation apps like Final Cut Pro. It&#39;s got pretty deep control, even exposing features like B-Frames that&#39;d take a registry key with Windows Media Encoder.&amp;nbsp;So, how about a quick walkthrough through the Flip4Mac encoding settings?&amp;nbsp;Flip4Mac is accessed like any other exportable format from QuickTime (like MPEG-4). It also comes with a bunch of presets for typical scenarios.&amp;nbsp;It has the normal set of basic video export features you&#39;d expect, nicely Macified. I appreciate the &amp;quot;Size: Current&amp;quot; so I don&#39;t have to always type in the frame size of the source when I&#39;m not scaling.&amp;nbsp</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Silverlight-Skinning-in-Flip4Mac</link>
      <pubDate>Thu, 03 Jul 2008 22:54:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Silverlight-Skinning-in-Flip4Mac</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>2</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Silverlight-Skinning-in-Flip4Mac/RSS</wfw:commentRss>
      <category>Silverlight</category>
      <category>vc-1</category>
      <category>Compression</category>
      <category>Flip4Mac</category>
    </item>
  <item>
      <title>Low Latency webcasting with Windows Media and Siverlight</title>
      <description><![CDATA[ <p>So, <a href="http://www.streamingmedia.com">Streaming Media</a> is doing a special &quot;<a>Europe edition</a>&quot; of Streaming Media, and I'm doing an article about webcasting for it. I've getting a bunch of questions about how to deliver low-latency live streaming to Silverlight, and so with their permission, I'm excerpting this section on that topic.</p><p>EDIT: A correction was made; turning off Fast Cache in Windows Media Services does not have any effect on webcasting latency.</p><p>So, <a href="http://www.streamingmedia.com">Streaming Media</a> is doing a special &quot;<a>Europe edition</a>&quot; of Streaming Media, and I'm doing an article about webcasting for it. I've getting a bunch of questions about how to deliver low-latency live streaming to Silverlight, and so with their permission, I'm excerpting this section on that topic.</p><p>While by default, Windows Media can offer 15-20 second end-to-end delay, it's possible to drive it down to 2-3 seconds with best practices on a good network, and we're looking at what we can do to push it to below even that. The critical thing is to tune the encoder, server, and player latency together.</p><p>There's an older but more detailed &quot;<a href="http://www.microsoft.com/windows/windowsmedia/howto/articles/BroadcastDelay.aspx">Reducing Broadcast Delay</a>&quot; document on this topic over at the <a href="http://www.microsoft.com/windows/windowsmedia/default.mspx">Windows Media portal</a> that may be worth perusing.</p><p>&nbsp;</p><blockquote><h1>Low Latency Webcasting</h1><p>Latency is the measure of how much time goes between when video enters the encoder and leave the user display. Latency is something that doesn’t matter at all in some markets, and matters a lot in others.</p><p>The reason we have latency is buffering, and the reason we have buffering is for quality and reliability. By having the server wait several seconds after a video stream is received before sending it out, it’s able to support more peaks and valleys in the data rate, and makes it possible for a dropped packet to be detected and resent before its needed. In the same way, buffering in the player lets it average out data rates and recover dropped packets as well.</p><p>Large buffers were extremely important in the modem era, and are still useful in many kinds of networks today. The defaults are good for delivering high quality content over a variety of networks. But when minimizing the latency is important, and reliable networks are available, the end to end delay can be reduced substantially.</p><p>Since total end-to-end latency is the sum of the encoder latency, server latency, and player latency, plus how long it takes the packets to travel between each of those, improving latency requires tweaks to the encoder, server, and player in parallel.</p><h2>&nbsp;</h2><h2>Encoder</h2><p>On the encoder side, reducing buffer size reduces startup latency. WME and Expression Encoder both enable you to go down to one second.. Using Lookahead or Lookahead Rate Control will increase latency beyond the buffer value (typically about another half a second for LRC).</p><p><a href="http://on10.net/Link/a89f60fd-9d03-4740-a09a-914ced42a40e/"><img width="554" height="547" alt="WME Low Delay setup" src="http://on10.net/Link/f8b746c7-b7d6-4986-bf62-91a226b4b95c/" border="0"></a></p><p>For audio, Windows Media includes the “WMA Low Delay” audio codecs from 192-64 Kbps which provide lower latency than the normal WMA modes. If you’re targeting Silverlight 1.0 or WMP 10 or earlier, you’ll want to use that for low latency. If you can require WMP 11 or Silverlight 2, you can use the lower delay yet WMA 10 Pro codec at 32-96 Kbps.</p><h4><a href="http://on10.net/Link/80714ec3-e884-4b66-8f39-ac52dbb0ec9f/"><img width="554" height="547" alt="WMA Low Delay" src="http://on10.net/Link/14f46809-639e-44b5-98dd-47dabde3a0ed/" border="0"></a></h4><h2>&nbsp;</h2><h2>Server</h2><p>WMS features like <a href="http://technet2.microsoft.com/windowsserver2008/en/library/c4e6684a-9b15-44ea-989f-0c74e6c5a9491033.mspx?mfr=true">Advanced Fast Start</a> can dramatically reduce latency for on-demand content, but don’t apply to live webcasting as the server has to wait for content to arrive from the encoder it in real time, and so can only play out at real time.</p><p>Server buffering can be turned off entirely in WMS for Windows Server 2003 and 2008, yielding a significant drop in latency.</p><p><a href="http://on10.net/Link/506c0fcf-dfc8-4ff8-84ca-53d58ad8ce06/"><img width="418" height="462" alt="Disable_buffering" src="http://on10.net/Link/cd2f01b6-f3a1-468c-85ad-59c8e4c5aded/" border="0"></a></p><h3><strong>EDIT:</strong></h3><p>The previous version of this post suggested that turning off Fast Cache would help webcasting latency. On further research, this turns out not to be the case. Disabling Fast Cache will slow down on-demand startup time, but will have no effect one way or the other for live content. </p><h2>Player</h2><p>Normally the player isn’t under control of the streamer. By default WMP dynamically picks an optimum buffer size based on its measurements of network and stream performance. However, it’s possible to lower the buffer size in the player’s options. This can help reduce latency when watching streams with a good connection, but could produce pauses in the video when watching video from the general Internet.</p><p>Silverlight makes the player buffer size a controllable parameter, so an optimal setting can be applied for the content, and even adjusted on the fly. This is controlled by the <a href="http://msdn.microsoft.com/en-us/library/bb979808(VS.95).aspx">BufferingTime</a> parameter in a Silverlight <a href="http://msdn.microsoft.com/en-us/library/bb980132(VS.95).aspx">MediaElement</a>.</p><p><a href="http://on10.net/Link/eb9e403b-e712-41be-8675-e8a6367e6aee/"><img width="835" height="317" alt="MediaElement-in-Blend" src="http://on10.net/Link/d51f67a4-d787-43e9-a674-344c7385051c/" border="0"></a></p></blockquote> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:068f7b03cfa6443f93899e1000b122d4">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Low-Latency-webcasting-with-Windows-Media-and-Siverlight</comments>
      <itunes:summary> So, Streaming Media is doing a special &amp;quot;Europe edition&amp;quot; of Streaming Media, and I&#39;m doing an article about webcasting for it. I&#39;ve getting a bunch of questions about how to deliver low-latency live streaming to Silverlight, and so with their permission, I&#39;m excerpting this section on that topic.EDIT: A correction was made; turning off Fast Cache in Windows Media Services does not have any effect on webcasting latency.So, Streaming Media is doing a special &amp;quot;Europe edition&amp;quot; of Streaming Media, and I&#39;m doing an article about webcasting for it. I&#39;ve getting a bunch of questions about how to deliver low-latency live streaming to Silverlight, and so with their permission, I&#39;m excerpting this section on that topic.While by default, Windows Media can offer 15-20 second end-to-end delay, it&#39;s possible to drive it down to 2-3 seconds with best practices on a good network, and we&#39;re looking at what we can do to push it to below even that. The critical thing is to tune the encoder, server, and player latency together.There&#39;s an older but more detailed &amp;quot;Reducing Broadcast Delay&amp;quot; document on this topic over at the Windows Media portal that may be worth perusing.&amp;nbsp;Low Latency WebcastingLatency is the measure of how much time goes between when video enters the encoder and leave the user display. Latency is something that doesn’t matter at all in some markets, and matters a lot in others.The reason we have latency is buffering, and the reason we have buffering is for quality and reliability. By having the server wait several seconds after a video stream is received before sending it out, it’s able to support more peaks and valleys in the data rate, and makes it possible for a dropped packet to be detected and resent before its needed. In the same way, buffering in the player lets it average out data rates and recover dropped packets as well.Large buffers were extremely important in the modem era, and are still useful in many kinds of networks today</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Low-Latency-webcasting-with-Windows-Media-and-Siverlight</link>
      <pubDate>Sun, 22 Jun 2008 05:25:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Low-Latency-webcasting-with-Windows-Media-and-Siverlight</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>4</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Low-Latency-webcasting-with-Windows-Media-and-Siverlight/RSS</wfw:commentRss>
      <category>Expression Encoder</category>
      <category>Live</category>
      <category>vc-1</category>
      <category>Compression</category>
      <category>Webcasting</category>
      <category>Windows Media Encoder</category>
      <category>Streaming Media</category>
      <category>Windows Media Audio</category>
    </item>
  <item>
      <title>Good article about the Olympics in Silverlight</title>
      <description><![CDATA[ <p>Max Bloom has written a <a href="http://www.streamingmedia.com/article.asp?id=10405&amp;page=1&amp;c=31">good article about NBC Universal''s upcoming Olympics broadcasts in Silverlight</a>.</p><p>&nbsp;</p><p>Read the article yourself, but here's a few choice quotes from it:</p><ul><li>&quot;NBCU plans to offer 3,600 hours of live programming from Beijing. That’s 212 live hours for each of the 17 days of the Olympics... In addition to the sheer volume of live content to be delivered—three times what was offered in 2004— what’s notable is that most of NBCU’s live programming—2,200 hours—will be delivered online at <a href="http://www.nbcolympics.com/">NBCOlympics.com</a>.&quot; </li><li>&quot;The 2008 Summer Games in Beijing will mark the arrival of streaming as a viable alternative to the Olympics’ television broadcast. This summer, NBCOlympics.com will offer 4,400 hours of on-demand streaming in addition to its 2,200 hours of live programming, making the Beijing Olympics the most ambitious streaming media project in history.&quot; </li><li>&quot;To help meet that challenge, the NBCOlympics.com player offers a “metadata overlay” feature, which allows the player to display transparent data and navigation tools over the video window. This enables users to access statistics and other data without covering up, pausing, or leaving the primary video display. For example, play-by-play announcers’ dialogue can be keyed into an XML data stream, then rendered as a timecoded, scrolling text caption that transparently overlays the bottom of the video display. The player also enables the TiVo-like experience of pausing, rewinding, and replaying content, and these two features together allow viewers to use either the timecode or the play-by-play captioning to rewind to a specific point in the on-screen action and replay it.&quot; </li><li>&quot;A slew of DRC-Stream software and encoder boards from Canada-based Digital Rapids are being deployed in Beijing to populate NBCOlympics.com’s encoding farm, but other than committing to VC-1, NBCOlympics.com has yet to confirm encoding bitrates, frame rates, or frame sizes. (Without offering more specifics, Miller says NBCOlympics.com will be streaming through a managed bitrate solution to optimize the user’s connection, with a target maximum bitrate of 650KB/sec.) Digital Rapids is also supplying software to enable transcoding from other digital media formats into VC-1.Miller promises hundreds of hours of online HD video...&quot; </li></ul><p>Note that there's already a bunch of content up at <a href="http://www.nbcolympics.com/">NBCOlympics.com</a> if you want to get an early taste of what's in store on 8/8/08.</p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:333e0e0b443344efa7069e1000b11c2b">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Good-article-about-the-Olympics-in-Silverlight</comments>
      <itunes:summary> Max Bloom has written a good article about NBC Universal&#39;&#39;s upcoming Olympics broadcasts in Silverlight.&amp;nbsp;Read the article yourself, but here&#39;s a few choice quotes from it:&amp;quot;NBCU plans to offer 3,600 hours of live programming from Beijing. That’s 212 live hours for each of the 17 days of the Olympics... In addition to the sheer volume of live content to be delivered—three times what was offered in 2004— what’s notable is that most of NBCU’s live programming—2,200 hours—will be delivered online at NBCOlympics.com.&amp;quot; &amp;quot;The 2008 Summer Games in Beijing will mark the arrival of streaming as a viable alternative to the Olympics’ television broadcast. This summer, NBCOlympics.com will offer 4,400 hours of on-demand streaming in addition to its 2,200 hours of live programming, making the Beijing Olympics the most ambitious streaming media project in history.&amp;quot; &amp;quot;To help meet that challenge, the NBCOlympics.com player offers a “metadata overlay” feature, which allows the player to display transparent data and navigation tools over the video window. This enables users to access statistics and other data without covering up, pausing, or leaving the primary video display. For example, play-by-play announcers’ dialogue can be keyed into an XML data stream, then rendered as a timecoded, scrolling text caption that transparently overlays the bottom of the video display. The player also enables the TiVo-like experience of pausing, rewinding, and replaying content, and these two features together allow viewers to use either the timecode or the play-by-play captioning to rewind to a specific point in the on-screen action and replay it.&amp;quot; &amp;quot;A slew of DRC-Stream software and encoder boards from Canada-based Digital Rapids are being deployed in Beijing to populate NBCOlympics.com’s encoding farm, but other than committing to VC-1, NBCOlympics.com has yet to confirm encoding bitrates, frame rates, or frame sizes. (Without offering more specifics, Miller </itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Good-article-about-the-Olympics-in-Silverlight</link>
      <pubDate>Mon, 16 Jun 2008 23:31:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Good-article-about-the-Olympics-in-Silverlight</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Good-article-about-the-Olympics-in-Silverlight/RSS</wfw:commentRss>
      <category>Olympics</category>
      <category>Silverlight</category>
      <category>vc-1</category>
      <category>Compression</category>
      <category>New York City</category>
      <category>NBC Universal</category>
    </item>
  <item>
      <title>What a difference a half-decade makes! Live VC-1 today and at launch</title>
      <description><![CDATA[ <p>A recent conversation over at the <a href="http://streamingmedia.com/discussion.asp">Streaming Media Advanced</a> list sparked a rant from me about the importance of comparing implementations of codecs, not just codecs.</p><p>To that end, I thought I'd do a demo to show how much improvement there's been in Windows Media since the launch of Windows Media 9 Series back in 2003.</p><p>A recent conversation over at the Streaming Media Advanced list sparked a rant from me about the importance of comparing implementations of codecs, not just codecs.</p><p>To that end, I thought I'd do a demo to show how much improvement there's been in Windows Media since the launch of Windows Media 9 Series back in 2003.</p><p>Below, you'll find two streams, encoded with the same settings but with tools from different eras. The streams are both</p><ul><li>Live encoding from a preprocessed file (so that preprocessing differences don't matter) </li><li>And yes, it's the &quot;<a href="http://on10.net/blogs/benwagg/Sample-Encoder-Test-Clips/">Lady Washington</a>&quot; footage again. </li><li>640x360 </li><li>29.97 fps </li><li>600 Kbps video </li><li>64 Kbps 44.1 stereo WMA audio </li><li>5 second buffer </li><li>Keyframe every 5 seconds </li></ul><p>The difference is that the first is encoded with the original Windows Media Video 9 codec (ala just Windows Media Player 9 installed, like a stock Windows XP SP2 machine), and the second with the <a href="http://www.microsoft.com/resources/mediaandentertainment/vc-1encodersdk.mspx">VC-1 Encoder SDK</a> implementation in <a href="http://www.microsoft.com/expression/products/Overview.aspx?key=encoder">Expression Encoder 2</a>. Pretty dramatic differences, I hope!</p><table cellspacing="1" cellpadding="5"><tbody><tr><td>&nbsp;</td><td><strong>Live Windows Media 2003</strong></td><td><strong>Live Windows Media 2008</strong></td></tr><tr><td><strong>Silverlight embedded page</strong></td><td><a href="http://silverlight.services.live.com/invoke/31260/WM9LiveWME9/iframe.html" target="_blank">2003 in Silverlight</a></td><td><a href="http://silverlight.services.live.com/invoke/31260/WM9LiveEEv2/iframe.html" target="_blank">2008 in Silverlight</a></td></tr><tr><td><strong>Direct link to WMV <br>(right-click to download)</strong></td><td><a href="http://silverlight.services.live.com/31260/WM9LiveWME9/video.wmv">2003 direct WMV link</a></td><td><a href="http://silverlight.services.live.com/31260/WM9LiveEEv2/video.wmv">2008 direct WMV link</a></td></tr></tbody></table><p>...reminding me that I really need to blog how to make a Silverlight dual media player that can play two versions of the same clip in sync.</p><p>So, what makes this big difference? There's been a huge amount of work and three major releases (Format SDK 9.5 and 11, and VC-1 Encoder SDK) since then, so I won't give a <a href="http://on10.net/blogs/benwagg/20613/">complete list</a>, but a few of the highlights.</p><ul><li>4-way threading instead of 2-way threading, doubling performance on modern machines. </li><li>Lots of SSE2 and SSE3 optimizations to improve performance. </li><li>&quot;Adaptive Complexity&quot; that dynamically adjusts the complexity of the encoder, to make sure it's always using all available CPU power, without ever dropping frames. This compares to the old default live complexity of 1 (out of a 0-4 range). </li><li>Using B-frames (supported in the old decoder, but not used in the original encoder) which improve compression efficiency and enable efficient encoding of flash frames. </li><li>Lookahead Rate Control, where the codec buffers a few frames into the future, so it knows when it needs to start saving some bits for an upcoming keyframe, or when it's save to use a lot of bits on a few challenging frames. </li></ul><p>A lot of the above are about performance. With offline encoding, better performance just makes for faster encoding. But for live encoding, it helps quality, because it allows the codec to do more math per pixel to find the optimum way to encode that file.</p><p>So, how big a difference is this? Below is a graph showing the Quantization Parameter (QP) for the two encodes. QP is a measure of how encoded each frame is, with higher values more highly compressed. In VC-1, the range is 0-31. A good rule of thumb is that QP of much below 8 looks pretty good, and QP of 8 or above...won't. Now, a live SD encode at 600 Kbps is pretty darn aggressive, so there's plenty of spots where both encodes certainly show artifacts. And quality varies a lot throughout the file as the the complexity of the video goes up and down, as this is a Constant Bitrate (CBR) encode. Note the relatively low QPs near the end of the file, where the easy credits scroll comes in.</p><p>But still, the modern VC-1 implementation (in red) with all of the above is dramatically better. While the old encoder (in blue) spikes all the way up to the maximum QP of 31, the new one is typically several QP lower, and maxes out at a QP of 20 instead.</p><p><a href="http://on10.net/Link/0fb41c00-566e-40d8-a5a1-bf822c8005fc/"><img width="804" height="533" alt="QP-chart" src="http://on10.net/Link/e7064f37-103f-48c0-a181-005762e12cf6/" border="0"></a></p><p>That said, man, my Excel-fu sure has declined over the years. Hard to believe I used to teach classes on making good-looking Excel charts back in the early 90's. Anyway, just remember that lower is better, and red is our current stuff.</p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:3d0dc150edc8438492f09e1000b10e05">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/What-a-difference-a-half-decade-makes-Live-VC-1-today-and-at-launch</comments>
      <itunes:summary> A recent conversation over at the Streaming Media Advanced list sparked a rant from me about the importance of comparing implementations of codecs, not just codecs.To that end, I thought I&#39;d do a demo to show how much improvement there&#39;s been in Windows Media since the launch of Windows Media 9 Series back in 2003.A recent conversation over at the Streaming Media Advanced list sparked a rant from me about the importance of comparing implementations of codecs, not just codecs.To that end, I thought I&#39;d do a demo to show how much improvement there&#39;s been in Windows Media since the launch of Windows Media 9 Series back in 2003.Below, you&#39;ll find two streams, encoded with the same settings but with tools from different eras. The streams are bothLive encoding from a preprocessed file (so that preprocessing differences don&#39;t matter) And yes, it&#39;s the &amp;quot;Lady Washington&amp;quot; footage again. 640x360 29.97 fps 600 Kbps video 64 Kbps 44.1 stereo WMA audio 5 second buffer Keyframe every 5 seconds The difference is that the first is encoded with the original Windows Media Video 9 codec (ala just Windows Media Player 9 installed, like a stock Windows XP SP2 machine), and the second with the VC-1 Encoder SDK implementation in Expression Encoder 2. Pretty dramatic differences, I hope!&amp;nbsp;Live Windows Media 2003Live Windows Media 2008Silverlight embedded page2003 in Silverlight2008 in SilverlightDirect link to WMV (right-click to download)2003 direct WMV link2008 direct WMV link...reminding me that I really need to blog how to make a Silverlight dual media player that can play two versions of the same clip in sync.So, what makes this big difference? There&#39;s been a huge amount of work and three major releases (Format SDK 9.5 and 11, and VC-1 Encoder SDK) since then, so I won&#39;t give a complete list, but a few of the highlights.4-way threading instead of 2-way threading, doubling performance on modern machines. Lots of SSE2 and SSE3 optimizations to improve performance. &amp;quot;Ad</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/What-a-difference-a-half-decade-makes-Live-VC-1-today-and-at-launch</link>
      <pubDate>Thu, 05 Jun 2008 02:11:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/What-a-difference-a-half-decade-makes-Live-VC-1-today-and-at-launch</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/320/on10_5ed7e244-d807-461a-b408-fa4c84a73f37.jpg" height="0" width="0"/>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/85/on10_e8e19881-80f0-4f79-8e24-199075f582a1.jpg" height="64" width="85"/>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/What-a-difference-a-half-decade-makes-Live-VC-1-today-and-at-launch/RSS</wfw:commentRss>
      <category>Expression Encoder</category>
      <category>Live</category>
      <category>Silverlight</category>
      <category>vc-1</category>
      <category>Windows Media</category>
    </item>
  <item>
      <title>Videos from the &quot;Secret Compressionist&#39;s Ball&quot;</title>
      <description><![CDATA[I've always called my <a href="http://on10.net/blogs/benwagg/21944/">annual compressionists party </a>something like the &quot;Ben Waggoner Compressionist's Party&quot; but <a href="http://blogs.msdn.com/david_sayed/default.aspx">David Sayed </a>from the Expression Encoder team suggests the much better name of the &quot;Secret Compressionist's Ball&quot;<br><br>Better yet, he's got a <a href="http://blogs.msdn.com/david_sayed/archive/2008/05/22/the-secret-compressionist-s-ball.aspx">couple of video interviews </a>from the party! You'll see me in the background in my mildly famous purple shirt in a few shots.<br><br>First,&nbsp;Tony Houghton from <a href="http://promoscape.com.au/" target="_blank">Promoscape</a>, talking about Silverlight.<br><br>Second,&nbsp;Bruce Lidl from <a href="http://www.mainconcept.com/" target="_blank">MainConcept</a>&nbsp;talking about their VC-1 codec implementation they're now licensing out, including support on Mac and Linux.<br><br>The clips are embedded at smaller than they're encoded; double-click to see them in their full glory. <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:b83a581c09a24b09ac109e1000b10248">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Videos-from-the-Secret-Compressionists-Ball</comments>
      <itunes:summary>I&#39;ve always called my annual compressionists party something like the &amp;quot;Ben Waggoner Compressionist&#39;s Party&amp;quot; but David Sayed from the Expression Encoder team suggests the much better name of the &amp;quot;Secret Compressionist&#39;s Ball&amp;quot;Better yet, he&#39;s got a couple of video interviews from the party! You&#39;ll see me in the background in my mildly famous purple shirt in a few shots.First,&amp;nbsp;Tony Houghton from Promoscape, talking about Silverlight.Second,&amp;nbsp;Bruce Lidl from MainConcept&amp;nbsp;talking about their VC-1 codec implementation they&#39;re now licensing out, including support on Mac and Linux.The clips are embedded at smaller than they&#39;re encoded; double-click to see them in their full glory.</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Videos-from-the-Secret-Compressionists-Ball</link>
      <pubDate>Thu, 29 May 2008 03:39:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Videos-from-the-Secret-Compressionists-Ball</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>2</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Videos-from-the-Secret-Compressionists-Ball/RSS</wfw:commentRss>
      <category>Expression Encoder</category>
      <category>NAB</category>
      <category>vc-1</category>
      <category>party</category>
      <category>Compression</category>
    </item>
  <item>
      <title>Expression Suite 2 and Expression Encoder 2 now shipping!</title>
      <description><![CDATA[ <p>May 1st is a happy day for me! I went over to <a href="http://www.microsoft.com/expression">www.microsoft.com/expression</a>, and was delighted to find that the <a href="http://www.microsoft.com/expression/products/Overview.aspx?key=studio" target="_blank">Expression Studio 2</a> is now shipping, including the final version of <a href="http://www.microsoft.com/expression/products/Overview.aspx?key=encoder" target="_blank">Expression Encoder 2</a>. There's a <a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=A04DCC8C-9DB7-41CB-A27C-08CBEB0A01BA&amp;displaylang=en" target="_blank">30-day trial</a> available for download. Boxed copies of Studio are available today at <a href="http://www.compusa.com/applications/SearchTools/item-details.asp?EdpNo=3045975&amp;CatId=993" target="_blank">CompUSA</a> and <a href="http://www.officemax.com/omax/catalog/sku.jsp?skuId=21260653&amp;searchString=Expression%20Studio&amp;category_Id=null" target="_blank">Office Max</a>, with other retailers coming. There will also be the <a href="http://www.microsoft.com/expression/products/ProfessionalSubscription.aspx" target="_blank">Microsoft Expression Professional Subscription</a> for $999/year (academic and volume pricing coming soon), which includes Expression Studio along with Visual Studio, Office, Visio, XP, Vista, Virtual PC, and Parallels Desktop (to run all of the above on Mac).</p><p>As I've said before, I feel that Expression Encoder 2 is the best compression tool at fulfilling the needs of its market since Terran Interactive's Media Cleaner Pro 3.1 (so long ago I can't even find anything on the web about it!). Here are some of my favorite things about it from my obsessive compression nerd's perspective.</p><ul><li>First desktop priced <a href="http://www.microsoft.com/resources/mediaandentertainment/vc-1encodersdk.mspx" target="_blank">VC-1 Encoder SDK</a> based product ($199). </li><li>And the VC-1 implementation gives you great quality by default, and gives you an advanced mode that accesses the useful features, while handling the more esoteric ones behind the scenes. For example, the rule for WMV PowerToy was use Static Motion Vector Cost if using P-frame DQuant, otherwise use Dynamic. So Expression Encoder 2 just has a DQuant setting, and uses the right Motion Vector Cost based on that. </li><li>High quality scaling and deinterlacing modes </li><li>WMA Pro support, targeting Silverlight 2's support for that. So danceable music at 48 Kbps. </li><li>&quot;Smart by default&quot; - you can use the same preset and feed it a PAL 16:9 interlaced file and a NTSC 4:3 progressive file, and it'll do the right thing without having to do a single click: you'd get a 640x360 deinterlaced 25p file and a 640x480 29.97 file. </li><li>Which means you don't have a huge combination of settings to deal with all the video formats. Instead, the presets are scenario based; you just need one &quot;1 Mbps streaming&quot; option that'll handle all the video file variants. </li><li>Great multi-clip templates, so you can make a video gallery, with each clip having its own optional thumbnail-based chapter navigation (hmm, that deserves a nice demo). </li><li>Easy creation of thumbnail-based chapter navigation! </li><li>Captioning and metadata support, including <a href="http://www.isan.org" target="_blank">ISAN</a>. </li><li>Available soon, an integrated publishing module to go straight to <a href="http://streaming.live.com/" target="_blank">Silverlight Streaming</a>. </li><li>Support for a wide variety of source formats, including QuickTime, AVI, Windows Media, VOB (DVD), many other flavors of MPEG-2, MPEG-4, and <a href="http://avisynth.org" target="_blank">AVISynth</a>. </li><li>Automation available via both command-line and a .NET object model. </li><li>Simple editing features, like in/out points, preroll/postroll videos, and image and animated overlays. </li><li>GPU acceleration for previews </li><li>A great A/B compare feature, enabling short sections of the file to be encoded with a variety of compression settings, and then compared (playing in real time! zoomed in!, with an A/B split screen slider!) to both the source and each other. </li><li>An unbelievably cool live encoding module, which supports multiple cameras with live switching, streaming from files, including looping, live metadata insertion, and big quality improvements from lookahead rate control and dynamic complexity. I owe you a blog post describing that as well. </li></ul><p>So, in summary, I guess I'd say I like it.</p><p>I've had a some blog posts highlighting different projects done with Expression Encoder 2 which you can follow along with.</p><p>&nbsp;</p><p><a href="http://on10.net/blogs/benwagg/Hands-on-with-high-touch-encoding-Streaming-Media-All-Stars-Redo/">Hands on with high-touch encoding: Streaming Media All-Stars Redo</a></p><p><a href="http://on10.net/blogs/benwagg/21750/">Encoding screen recordings for Silverlight in VC-1 with Expression Encoder 2</a></p><p><a href="http://on10.net/blogs/benwagg/21587/">&quot;What Happens in Vegas&quot; - 720p Movie trailer at 2 Mbps via Silverlight Streaming</a></p><p>&nbsp;</p><p>I've got other information about Expression Encoder and how it fits into Silverlight at</p><p><a href="http://on10.net/blogs/benwagg/22040/">My NAB Presentations</a></p><p><a href="http://on10.net/blogs/benwagg/Silverlight-Media-technologies-overview-in-Expression-newsletter/">Silverlight Media technologies overview in Expression newsletter</a></p><p>&nbsp;</p><p>And, of course I'll be covering Expression Encoder 2 as one of the products we cover in my</p><p><a href="http://on10.net/blogs/benwagg/21622/">My June 23-27th class at Stanford</a></p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/vc-1/RSS&WT.dl=0&WT.entryid=Entry:RSSView:699b4d171eae4cbdb98b9e1000b0fb91">]]></description>
      <comments>http://channel9.msdn.com/Blogs/benwagg/Expression-Suite-2-and-Expression-Encoder-2-now-shipping</comments>
      <itunes:summary> May 1st is a happy day for me! I went over to www.microsoft.com/expression, and was delighted to find that the Expression Studio 2 is now shipping, including the final version of Expression Encoder 2. There&#39;s a 30-day trial available for download. Boxed copies of Studio are available today at CompUSA and Office Max, with other retailers coming. There will also be the Microsoft Expression Professional Subscription for $999/year (academic and volume pricing coming soon), which includes Expression Studio along with Visual Studio, Office, Visio, XP, Vista, Virtual PC, and Parallels Desktop (to run all of the above on Mac).As I&#39;ve said before, I feel that Expression Encoder 2 is the best compression tool at fulfilling the needs of its market since Terran Interactive&#39;s Media Cleaner Pro 3.1 (so long ago I can&#39;t even find anything on the web about it!). Here are some of my favorite things about it from my obsessive compression nerd&#39;s perspective.First desktop priced VC-1 Encoder SDK based product ($199). And the VC-1 implementation gives you great quality by default, and gives you an advanced mode that accesses the useful features, while handling the more esoteric ones behind the scenes. For example, the rule for WMV PowerToy was use Static Motion Vector Cost if using P-frame DQuant, otherwise use Dynamic. So Expression Encoder 2 just has a DQuant setting, and uses the right Motion Vector Cost based on that. High quality scaling and deinterlacing modes WMA Pro support, targeting Silverlight 2&#39;s support for that. So danceable music at 48 Kbps. &amp;quot;Smart by default&amp;quot; - you can use the same preset and feed it a PAL 16:9 interlaced file and a NTSC 4:3 progressive file, and it&#39;ll do the right thing without having to do a single click: you&#39;d get a 640x360 deinterlaced 25p file and a 640x480 29.97 file. Which means you don&#39;t have a huge combination of settings to deal with all the video formats. Instead, the presets are scenario based; you just need one &amp;quot;1 Mbps stream</itunes:summary>
      <link>http://channel9.msdn.com/Blogs/benwagg/Expression-Suite-2-and-Expression-Encoder-2-now-shipping</link>
      <pubDate>Thu, 01 May 2008 22:43:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/benwagg/Expression-Suite-2-and-Expression-Encoder-2-now-shipping</guid>      
      <dc:creator>Ben Waggoner</dc:creator>
      <itunes:author>Ben Waggoner</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/benwagg/Expression-Suite-2-and-Expression-Encoder-2-now-shipping/RSS</wfw:commentRss>
      <category>Expression Encoder</category>
      <category>Silverlight</category>
      <category>vc-1</category>
      <category>Compression</category>
      <category>Expression Studio</category>
    </item>    
</channel>
</rss>
