<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Alex Zambelli&#039;s Microsoft Media Blog &#187; Olympics</title>
	<atom:link href="http://alexzambelli.com/blog/category/olympics/feed/" rel="self" type="application/rss+xml" />
	<link>http://alexzambelli.com/blog</link>
	<description>Microsoft Media Platform, streaming video, Silverlight, VC-1, H.264, Smooth Streaming, Windows Media</description>
	<lastBuildDate>Mon, 23 Apr 2012 20:16:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>Now available: Expression Encoder 4, IIS Media Services 4.0 Beta, SSME 1.0, SMF 2.0 RC1, Olympics case studies</title>
		<link>http://alexzambelli.com/blog/2010/06/25/now-available-expression-encoder-4-iis-media-services-4-0-beta-ssme-1-0-smf-2-0-rc1-olympics-case-studies/</link>
		<comments>http://alexzambelli.com/blog/2010/06/25/now-available-expression-encoder-4-iis-media-services-4-0-beta-ssme-1-0-smf-2-0-rc1-olympics-case-studies/#comments</comments>
		<pubDate>Fri, 25 Jun 2010 09:30:53 +0000</pubDate>
		<dc:creator>Alex Zambelli</dc:creator>
				<category><![CDATA[Expression Encoder]]></category>
		<category><![CDATA[Internet Information Services]]></category>
		<category><![CDATA[Olympics]]></category>
		<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[Smooth Streaming]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[media]]></category>

		<guid isPermaLink="false">http://alexzambelli.com/blog/?p=143</guid>
		<description><![CDATA[While most of the world is on a collective vacation watching the World Cup, media teams at Microsoft have been busy at work. And watching the World Cup. :) Released this month: Expression Studio 4, which of course includes Expression &#8230; <a class="more-link" href="http://alexzambelli.com/blog/2010/06/25/now-available-expression-encoder-4-iis-media-services-4-0-beta-ssme-1-0-smf-2-0-rc1-olympics-case-studies/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>While most of the world is on a collective vacation watching the World Cup, media teams at Microsoft have been busy at work. And watching the World Cup. :)</p>
<p>Released this month:</p>
<ul>
<li><a href="http://www.microsoft.com/expression/products/StudioUltimate_Overview.aspx">Expression Studio 4</a>, which of course includes <a href="http://www.microsoft.com/expression/products/EncoderPro_Overview.aspx">Expression Encoder 4</a>.</li>
<li><a href="http://www.iis.net/download/SmoothStreaming">IIS Media Services 4.0 Beta</a></li>
<li><a href="http://www.iis.net/download/SmoothFormatSDK">Smooth Streaming Format SDK 1.0 Beta 2</a></li>
<li><a href="http://www.iis.net/download/SmoothClient">IIS Smooth Streaming Client 1.0</a>, also known as Smooth Streaming Media Element (SSME), formerly known as IIS Smooth Streaming Player Development Kit</li>
<li><a href="http://smf.codeplex.com/">Silverlight Media Framework 2.0 RC1</a></li>
</ul>
<p>Before I dive into more details about those products, I&#8217;d also like to highlight a few case studies we recently published, all of them focused on the Silverlight-based 2010 Winter Olympics experiences built for NBC, CTV, NRK and France TV:</p>
<ul>
<li><a href="http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?casestudyid=4000007258">NBC Universal (United States)</a></li>
<li><a href="http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?casestudyid=4000007347">CTV (Canada)</a></li>
<li><a href="http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?casestudyid=4000007275">NRK (Norway)</a></li>
<li><a href="http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?casestudyid=4000007271">France TV (France)</a></li>
</ul>
<p>Some of the statistics are quite impressive, such as the number of peak concurrent users (181 thousand Americans, 134 thousand Canadians), total amount of video consumed (7.2 million hours in Canada), or the average minutes viewed over the 2 weeks of Olympics (nearly 2 hours per unique user in Canada). If you&#8217;re interested in the business side of video streaming, the value proposition of Silverlight and Smooth Streaming, and monetization data &#8211; I recommend you check out these case studies.</p>
<p><span style="text-decoration: underline;"><strong>Expression Encoder 4</strong></span></p>
<p>First change you might notice is that the pay version of the product is now called Expression Encoder 4 <strong>Pro,</strong> to differentiate it from the free version available for <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=b686399e-db71-4c4c-a457-c5b69b60e4d5&amp;displaylang=en">download</a>. The good news is that the basic free version now includes Smooth Streaming (VOD) encoding, but you&#8217;ll still need to shell out $49.95 to get:</p>
<ul>
<li>H.264/AAC encoding (now courtesy of MainConcept H.264 SDK)</li>
<li>Additional decoders for input types (MPEG2, MPEG/TS Splitter, Dolby Digital AC3, MP4 and H.264/AAC)</li>
<li>Live IIS Smooth Streaming support</li>
<li>Unlimited screen capture</li>
<li>Digital Rights Management (PlayReady) integration</li>
</ul>
<p>In case you missed it hidden there in the middle of the list, let me repeat: Expression Encoder 4 Pro supports LIVE Smooth Streaming! That was by far the feature most frequently requested by users, and the Encoder team listened and delivered. Live encoding in EE4 works and scales remarkably well, but I wouldn&#8217;t recommend trying to run it on any computer with less than 8 CPU cores. Video encoding is a CPU intensive process and when you have to encode multiple bitrates in realtime there&#8217;s no such thing as too much CPU. With 2 cores you can probably manage to churn out 1 bitrate up to SD resolution; with 4 cores about 2 bitrates up to SD; with 8 cores about 3-4 bitrates up to SD or 720p; with 16 cores about 7-8 bitrates up to 720p, etc.</p>
<p>The question I expect I&#8217;ll get asked most frequently about EE4 is: &#8220;<em>OK, now that EE4 can encode Live Smooth Streaming for $49.95 on any PC hardware, why would I pay thousands of dollars for professional products like Digital Rapids Stream, Inlet Spinnaker or Envivio 4Caster?&#8221; </em>My answer would go something like this: EE4, while fully capable of encoding Live Smooth Streaming, is an entry-level encoding product. It&#8217;s to professional encoding products what Windows Movie Maker is to Adobe Premiere Pro. Is it good enough for encoding a high school basketball game once a week? Absolutely. But would I use Expression Encoder to deliver 2 weeks of Olympics live video to hundreds of thousands of viewers around the world? Probably not. To use yet another analogy: Anybody can buy a stock PC, install Windows Server 2008 on it and call it a server. But does that make industry standard HP ProLiant servers obsolete? Hardly. Companies like Inlet, DR and Envivio have invested years and millions in building reliable professional encoding products which are designed and tested to run 24/7 in broadcast-type environments. So when you pay top dollar for their products, you&#8217;re not so much paying for raw codecs as you&#8217;re paying for guaranteed uptime and professional support. They cost a lot of money because they do what they do very well.</p>
<p><strong><span style="text-decoration: underline;">IIS Media Services 4.0 Beta</span></strong></p>
<p>Though only a beta, this new release of <a href="http://www.iis.net/download/SmoothStreaming">IIS MS 4.0</a> delivers one particularly awesome feature: it can deliver Smooth Streaming H.264/AAC content to Apple &#8220;iDevices&#8221; such as the iPhone and iPad. How does it do that? Both formats support H.264 video and AAC audio; Smooth Streaming is based on MP4 (ISO Base Media) file format, while Apple Live HTTP Streaming is based on MPEG-2 TS file format. Smooth Streaming tends to use short GOP chunks (2 seconds), while Apple HTTP streaming uses long GOP (10 second) chunks. Therefore, converting between the 2 formats merely requires transmuxing A/V streams from one format to another, and this is exactly what IISMS 4.0 does: it dynamically transmuxes Smooth Streaming format into Apple&#8217;s Live HTTP Streaming format. No re-encoding.</p>
<p>Associated with this release are also 2 other IIS media releases:</p>
<ul>
<li><a href="http://www.iis.net/download/SmoothFormatSDK">Smooth Streaming Format SDK 1.0 Beta 2</a> &#8211; provides documentation, tools, and samples you can use to multiplex video and audio bitstreams into on-demand and live Smooth Streaming output. In addition, the SDK supports the encryption of content using Microsoft PlayReady DRM. Note that this SDK doesn&#8217;t include video/audio codecs &#8211; it expects already compressed A/V samples.</li>
<li><a href="http://www.iis.net/download/TransformManager">Transform Manager 1.0 Alpha</a> &#8211; provides simple integrated video encoding and batch conversion of video files to the IIS Smooth Streaming format and the MPEG-2 TS streaming format supported by Apple devices.</li>
</ul>
<p>For more information check out the following blog posts:<br />
<a href="http://blogs.iis.net/chriskno/archive/2010/06/10/iis-media-services-4-0-beta-is-now-available.aspx">http://blogs.iis.net/chriskno/archive/2010/06/10/iis-media-services-4-0-beta-is-now-available.aspx</a><br />
<a href="http://blogs.iis.net/chriskno/archive/2009/12/01/faqs-on-using-iis-smooth-streaming-with-the-apple-iphone.aspx">http://blogs.iis.net/chriskno/archive/2009/12/01/faqs-on-using-iis-smooth-streaming-with-the-apple-iphone.aspx</a><br />
<a href="http://learn.iis.net/page.aspx/854/live-smooth-streaming-for-iis-7---apple-http-live-streaming/">http://learn.iis.net/page.aspx/854/live-smooth-streaming-for-iis-7&#8212;apple-http-live-streaming/</a></p>
<p><span style="text-decoration: underline;"><strong>Smooth Streaming Client 1.0 and Silverlight Media Framework 2.0 RC1</strong></span></p>
<p><a href="http://smf.codeplex.com/">SMF</a> (popularly called &#8220;Smurf&#8221;) 2.0 introduces a whole new, more modular architecture with an extensive plug-in API for 3rd-party developers and partners. It also enables developers to selectively exclude libraries that aren&#8217;t needed in their projects in order to avoid unnecessary file size increases. The v2 framework will include plug-ins for <a href="http://www.w3.org/TR/ttaf1-dfxp">Timed Text</a> (DFXP), URL frame linking, a metadata framework, support for the <a href="http://msaf.codeplex.com/">Microsoft Silverlight Analytics Framework</a>, support for multiple audio tracks, improved bitrate monitoring, support for Silverlight 4 global styling, a JavaScript API, a logging plug-in, and a host of other new features. It also takes advantage of the new <a href="http://codebetter.com/blogs/glenn.block/archive/2009/11/29/mef-has-landed-in-silverlight-4-we-come-in-the-name-of-extensibility.aspx">Managed Extensibility Framework (MEF)</a> in Silverlight 4.</p>
<p>The Smooth Streaming component of SMF is known as the Smooth Streaming Media Element (pronounced &#8220;Smee&#8221;, like that pirate from Peter Pan). SSME previously shipped as beta under the name &#8220;Smooth Streaming Player Development Kit&#8221; but has since been renamed to just <a href="http://www.iis.net/download/SmoothClient">Smooth Streaming Client</a>. The 1.0 release (compatible with SMF 2.0) comes with rich <a href="http://msdn.microsoft.com/en-us/library/ee958035(VS.90).aspx">online documentation</a> and <a href="http://code.msdn.microsoft.com/SmoothStreaming">code samples</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://alexzambelli.com/blog/2010/06/25/now-available-expression-encoder-4-iis-media-services-4-0-beta-ssme-1-0-smf-2-0-rc1-olympics-case-studies/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Streaming the Olympics: How We Got Here</title>
		<link>http://alexzambelli.com/blog/2010/02/16/streaming-the-olympics-how-we-got-here/</link>
		<comments>http://alexzambelli.com/blog/2010/02/16/streaming-the-olympics-how-we-got-here/#comments</comments>
		<pubDate>Tue, 16 Feb 2010 16:53:51 +0000</pubDate>
		<dc:creator>Alex Zambelli</dc:creator>
				<category><![CDATA[Internet Information Services]]></category>
		<category><![CDATA[Olympics]]></category>
		<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[Smooth Streaming]]></category>
		<category><![CDATA[media]]></category>

		<guid isPermaLink="false">http://alexzambelli.com/blog/?p=128</guid>
		<description><![CDATA[Though it may seem like it was just yesterday, it&#8217;s now been 18 months since we delivered for NBC the Beijing 2008 Summer Olympics using Windows Media Services, Windows Media Player and Silverlight. Whereas in Beijing we experimented with HTTP adaptive streaming for on-demand &#8230; <a class="more-link" href="http://alexzambelli.com/blog/2010/02/16/streaming-the-olympics-how-we-got-here/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Though it may seem like it was just yesterday, it&#8217;s now been 18 months since we delivered for NBC the <a href="http://alexzambelli.com/blog/2008/08/09/nbc-olympics-247/">Beijing 2008 Summer Olympics</a> using Windows Media Services, Windows Media Player and Silverlight. Whereas in Beijing we experimented with HTTP adaptive streaming for on-demand SD delivery only, the one thing we all knew for sure as soon as the Beijing closing ceremony was over was that for Vancouver 2010 we wanted to deliver all video in HD, both  live and on-demand, using HTTP adaptive streaming. By November 2008 the first glimpses of IIS Smooth Streaming definitely put on-demand HD delivery within reach, and by May 2009 live Smooth Streaming was a reality too.</p>
<p>A year ago we began working with <a href="http://www.nbc.com/">NBC</a> and <a href="http://www.ctv.ca/">CTV</a> on putting together the 2010 Vancouver Winter Olympics video site, later adding Norway&#8217;s <a href="http://www.nrk.no">NRK</a> as another customer. We teamed up with a number of partners to get the job done:</p>
<ul>
<li><a href="http://www.istreamplanet.com/">iStreamPlanet</a> &#8211; video encoding services and hosting operations</li>
<li><a href="http://www.akamai.com/">Akamai</a> &#8211; edge content delivery</li>
<li><a href="http://www.vertigo.com/">Vertigo</a> &#8211; Silverlight player design and development</li>
<li><a href="http://deltatre.com/">Delta Tre</a> &#8211; content management systems, ad insertion, realtime data integration, player development, site integration</li>
<li><a href="http://www.inlethd.com/">Inlet</a> &#8211; live video encoders</li>
<li><a href="http://www.rhozet.com/">Rhozet</a>, <a href="http://www.anystream.com/">Anystream (Grab Networks)</a> - offline video (VOD) encoders</li>
<li><a href="http://www.switchnap.com/">Switch Communications</a> &#8211; datacenter hosting</li>
<li><a href="http://www.southworks.net/">SouthWorks.net</a> &#8211; Rough Cut Editor design and development</li>
<li><a href="http://www.doubleclick.com/">DoubleClick</a> &#8211; ad serving</li>
<li><a href="http://www.signiant.com/">Signiant</a> &#8211; content distribution software</li>
<li><a href="http://www.conviva.com/">Conviva</a> &#8211; usage tracking and analytics</li>
<li><a href="http://www.wintellect.com/">Wintellect</a> &#8211; origin health monitoring and maintenance</li>
<li><a href="http://www.intel.com/">Intel</a>, <a href="http://www.dell.com/">Dell</a> &#8211; server hardware</li>
</ul>
<p>As you can tell just from the list of partners, this was a hugely complex project. Despite the Winter Olympics being smaller in scale than Summer Olympics, I&#8217;d estimate that this project was about 2-3 times more complex than the Beijing 2008 Olympics project due to the additional technical challenges we decided to take on in order to raise the bar in online video streaming.</p>
<p>In order to reduce some of the complexity we also made an early decision to deliver everything exclusively in Smooth Streaming and Silverlight, without a WMS/WMP fallback option. Though I&#8217;m sure some critics will be quick to assert such a decision was meant to force greater Silverlight adoption, the truth is less political and more practical: Trying to encode all videos for both Windows Media and Smooth Streaming (let alone additional formats such as MP4/H.264) would&#8217;ve probably doubled or tripled the cost and severely impacted the amount of functionality we were able to add to the client.</p>
<p>If you follow Smooth Streaming developments, you&#8217;ve probably heard of the <a href="http://www.iis.net/expand/SmoothPlayer">Smooth Streaming Player Development Kit</a> and the <a href="http://www.codeplex.com/smf">Silverlight Media Framework</a>. Both of these frameworks and their underlying Smooth Streaming Media Element (SSME) were in fact designed for the Olympics project and first put to test on <a href="http://alexzambelli.com/blog/2009/09/10/nbc-sunday-night-football-powered-by-silverlight-and-smooth-streaming/">NBC Sunday Night Football</a> 6 months ago. And while on the client side the Olympics player is actually quite similar to the SNF player (aside from the much improved rew/ffwd/slo-mo features and the lack of multi-camera angles), the chief difference between the Olympics and SNF is actually on the backend. One word: automation.</p>
<p>From a video operations standpoint, SNF was very much a manual operation. We created publishing points and started encoders by hand &#8211; and then stopped them 4 hours later. When you&#8217;re doing only one game a week, you can afford to do that with just a few people. But when you have to run 20-30 events per day, as many as dozen of those simultaneously, for 2 weeks straight &#8211; it&#8217;s absolutely unthinkable to try to run everything by hand. You&#8217;d need an army of engineers just to keep things running smoothly.</p>
<p>Enter iStreamPlanet. Our encoding service partner took it upon themselves to build a fully automated live video encoding service for the Olympics. This involved: turning on H.264 multicast decoders (our source streams arrive from Vancouver as H.264 multicast streams over dedicated OC-12) and tuning them to the right channels; routing the decoded video to the available <a href="http://www.inlethd.com/?q=products/spinnaker/hd">Inlet Spinnaker HD</a> encoders; creating multiple publishing points on IIS origin servers; starting publishing points and encoders; stopping encoders and publishing points; moving VOD archives to expected locations. Having such a service allowed Delta Tre, our CMS provider, to remotely schedule events without any human involvement required. For a young technology such as Smooth Streaming this is a big deal because it proves it&#8217;s possible to scale Smooth Streaming to large professional broadcast environments.</p>
<p>Another huge development and step forward for this project was the creation of the Rough Cut Editor, a soon to be publicly available &#8220;light touch&#8221; editor for Smooth Streams. The RCE allows editing of Smooth Streaming sources, both on-demand and live (!), without any re-encoding whatsoever. The concept is remarkably simple: if a Smooth Streaming manifest is like a playlist of video/audio fragments which live in the cloud, then editing, merging and appending multiple Smooth Streaming sources should be as simple as re-arranging entries in a manifest. Since Smooth Streaming video is just a series of fragments and each 2-sec fragment must be downloaded separately, it&#8217;s completely irrelevant whether fragments are downloaded/played in a sequential or non-sequential order &#8211; the end result plays equally smooth either way. This is something that hasn&#8217;t been possible with Windows Media or any other streaming media technology until now. It&#8217;s a total game-changer.</p>
]]></content:encoded>
			<wfw:commentRss>http://alexzambelli.com/blog/2010/02/16/streaming-the-olympics-how-we-got-here/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>NBC, CTV and NRK Stream Winter Olympics in Silverlight</title>
		<link>http://alexzambelli.com/blog/2010/02/16/nbc-ctv-and-nrk-stream-winter-olympics-in-silverlight/</link>
		<comments>http://alexzambelli.com/blog/2010/02/16/nbc-ctv-and-nrk-stream-winter-olympics-in-silverlight/#comments</comments>
		<pubDate>Tue, 16 Feb 2010 16:40:23 +0000</pubDate>
		<dc:creator>Alex Zambelli</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Olympics]]></category>
		<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[Smooth Streaming]]></category>
		<category><![CDATA[media]]></category>

		<guid isPermaLink="false">http://alexzambelli.com/blog/?p=121</guid>
		<description><![CDATA[As you&#8217;re probably well aware, the 2010 Vancouver Winter Olympics are upon us. Just as we did 2 years ago for 2008 Beijing Summer Olympics, Microsoft has once again teamed up with NBC to bring online video coverage of the 2010 Winter Olympics &#8230; <a class="more-link" href="http://alexzambelli.com/blog/2010/02/16/nbc-ctv-and-nrk-stream-winter-olympics-in-silverlight/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>As you&#8217;re probably well aware, the 2010 Vancouver Winter Olympics are upon us. Just as we did 2 years ago for 2008 Beijing Summer Olympics, Microsoft has once again teamed up with <a href="http://www.nbc.com">NBC</a> to bring online video coverage of the 2010 Winter Olympics to U.S. viewers. This time around we also expanded our project to include Canada&#8217;s <a href="http://www.ctv.ca">CTV</a> and Norway&#8217;s <a href="http://www.nrk.no">NRK</a>.</p>
<p>Remember, even though the Olympics Games are an international event, the <a href="http://www.olympic.org/en/content/The-IOC/">International Olympics Committe</a> (IOC) sells Olympic broadcast rights exclusively to 1 broadcaster per country &#8211; and <strong>only</strong> for that country. While that practice obviously originated for television broadcasts, the IOC still hasn&#8217;t gotten around to changing the rules for online streaming, which unfortunately means that access to Olympic video content on NBC, CTV and NRK sites is restricted to American, Canadian and Norwegian users only, respectively. No, they won&#8217;t check your passport, but they will check your IP address. :)</p>
<p>So if you&#8217;re lucky enough to live in the United States, Canada or Norway, you can check out the Silverlight and Smooth Streaming powered video coverage of the 2010 Vancouver Winter Olympics by visiting the following sites:</p>
<ul>
<li><strong>United States:  </strong><a href="http://www.nbcolympics.com/video/"><strong>http://www.nbcolympics.com/video/</strong></a></li>
<li><strong>Canada:  </strong><a href="http://www.ctvolympics.ca/video/index.html"><strong>http://www.ctvolympics.ca/video/index.html</strong></a></li>
<li><strong>Norway:  </strong><a href="http://www.nrkol.no/video/index.html"><strong>http://www.nrkol.no/video/index.html</strong></a></li>
</ul>
<p>You will, of course, need Silverlight 3 installed to view any of the video content. If in doubt whether you have the latest version of Silverlight, visit <a href="http://www.microsoft.com/silverlight/get-started/install/default.aspx">http://www.microsoft.com/silverlight/get-started/install/default.aspx</a>. Silverlight 3 works on Windows and Mac OS (Intel only); and with Internet Explorer, Firefox, Safari and (still unofficially) Chrome browsers. If you&#8217;re a Linux user, you might be pleased to know that the Novell Moonlight team has been working frantically to get Moonlight 3.0 ready in time for the Winter Olympics. It&#8217;s still just a preview release so your mileage may vary, but please give it a shot &#8211; you can download Moonlight 3.0 Preview 2 <a href="http://www.go-mono.com/moonlight/prerelease.aspx">here</a>. I recommend reading the <a href="http://www.mono-project.com/Moonlight/OlympicsPlayerIssues">prerelease notes</a> for Moonlight team&#8217;s recommendations on browser builds.</p>
<p>Everyone should also be aware than not all broadcasters have chosen to make the same amount of Olympics content available to their viewers. While CTV&#8217;s and NRK&#8217;s coverage is pretty much unlimited and requires no special sign-up process, NBC has chosen to restrict access to &#8220;premium&#8221; content only to cable/satellite/IPTV customers. First time you try to access such content you will be asked to sign in with your Comcast/DirectTV/Cox/DISH/TimeWarner/etc account. Many more providers are supported, but be prepared to possibly jump through some hoops to prove that you&#8217;re an NBC affiliate customer. In addition to the sign-up procedure, NBC is also withholding much of the live online coverage, preferring to show the popular events on primetime television first. Don&#8217;t shoot the messenger.</p>
<p>If you experience any issues with Silverlight or content access, there&#8217;s a good FAQ over on the NBC website: <a href="http://www.nbcolympics.com/faq/index.html">http://www.nbcolympics.com/faq/index.html</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://alexzambelli.com/blog/2010/02/16/nbc-ctv-and-nrk-stream-winter-olympics-in-silverlight/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Silverlight 3, IIS Media Services 3.0, Olympics 2010 &#8211; Wow, It Truly Is March Madness!</title>
		<link>http://alexzambelli.com/blog/2009/03/19/silverlight-3-iis-media-services-30-olympics-2010-wow-it-truly-is-march-madness/</link>
		<comments>http://alexzambelli.com/blog/2009/03/19/silverlight-3-iis-media-services-30-olympics-2010-wow-it-truly-is-march-madness/#comments</comments>
		<pubDate>Fri, 20 Mar 2009 00:40:26 +0000</pubDate>
		<dc:creator>Alex Zambelli</dc:creator>
				<category><![CDATA[H.264]]></category>
		<category><![CDATA[Internet Information Services]]></category>
		<category><![CDATA[Olympics]]></category>
		<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[Smooth Streaming]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[media]]></category>
		<category><![CDATA[Media Services]]></category>
		<category><![CDATA[MIX09]]></category>
		<category><![CDATA[SL3]]></category>

		<guid isPermaLink="false">http://alexzambelli.com/blog/?p=81</guid>
		<description><![CDATA[Though blogging in Las Vegas might sound like a party foul, this has been an amazing week for Silverlight media &#8211; so much that I feel a sudden urge to report on it right now, right here. Silverlight 3 Beta &#8230; <a class="more-link" href="http://alexzambelli.com/blog/2009/03/19/silverlight-3-iis-media-services-30-olympics-2010-wow-it-truly-is-march-madness/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Though blogging in Las Vegas might sound like a party foul, this has been an amazing week for Silverlight media &#8211; so much that I feel a sudden urge to report on it right now, right here.</p>
<h4><span style="text-decoration: underline;">Silverlight 3 Beta</span></h4>
<p>A mere 5 months after releasing Silverlight 2 RTW, we have now made <a href="http://silverlight.net/getstarted/silverlight3/default.aspx">Silverlight 3 Beta</a> available to the public. Check out <a href="http://silverlight.net/getstarted/silverlight3/default.aspx">http://silverlight.net/getstarted/silverlight3/default.aspx</a> for the full list of new features and download links. As usual, Scott Guthrie offers some great insight on Silverlight 3 in his <a href="http://live.visitmix.com/">MIX Keynote</a> and <a href="http://channel9.msdn.com/posts/Charles/Scott-Guthrie-Inside-Silverlight-3/">Channel 9 video</a>.</p>
<p>The most interesting new media features in Silverlight 3 are:</p>
<ul>
<li>Native H.264 video, AAC audio, and MP4 file playback support
<ul>
<li>Take your MP4-contained H.264/AAC encoded files, put them on a Web server and play them directly in Siverlight using progressive download!</li>
</ul>
</li>
<li>Extensible media format support
<ul>
<li>Support for raw A/V bitstream playback allows codec and media developers to write custom decoders and format parsers using C#, VB or any other .NET language. Will you be the first to write an Ogg Vorbis or FLAC decoder for Silverlight?</li>
</ul>
</li>
<li>GPU accelerated video scaling
<ul>
<li>Stretching the video to full screen can now be offloaded entirely to the video card, freeing up the CPU and enabling smooth video playback.</li>
</ul>
</li>
<li>Advanced media logging
<ul>
<li>Log playback usage to Windows Media Services and IIS7 Media Services, like with the good old Windows Media Player.</li>
</ul>
</li>
<li>Custom effects / Pixel shaders
<ul>
<li>Apply post-processing effects to your video by writing custom effects using the same HLSL pixel shader code that works in Direct3D and WPF today.</li>
</ul>
</li>
<li>Perspective 3D transforms
<ul>
<li>Spin and rotate your video around all 3 axis &#8211; X, Y and Z. Video collage? How about a video cube?</li>
</ul>
</li>
</ul>
<p>I&#8217;ll be blogging in the near future in more depth about the details of our H.264/AAC/MP4 support in particular.</p>
<p> </p>
<h4><span style="text-decoration: underline;">IIS Media Services 3.0 / Live Smooth Streaming</span></h4>
<p>Just a short month after announcing the availability of Smooth Streaming for On-Demand Video beta, the IIS Media team announced the availability of <a href="http://www.iis.net/media">IIS Media Services 3.0 beta</a> &#8211; featuring Live Smooth Streaming. That&#8217;s right, with IIS7 you will soon be able to deliver Smooth Streaming video for both on-demand and live! <a href="http://inlethd.com"></a></p>
<p><a href="http://inlethd.com">Inlet Technologies</a> has simultaneously <a href="http://www.inlethd.com/download.php?mode=getFile&amp;type=99&amp;fileID=525">announced</a> they will be the first to add Smooth Streaming support to their line of live and VoD encoding products. Besides Inlet, we are currently working with a number of encoding ISVs on enabling them to add Smooth Streaming support to their products.</p>
<p><a href="http://www.akamai.com/html/about/press/releases/2009/press_031709.html">Akamai Technologies announced</a> the wide commercial availability of their <a href="http://www.akamai.com/smoothhd">AdaptiveEdge Streaming</a> service based on IIS Smooth Streaming. Besides Akamai, we are currently working with all the major CDNs on enabling Smooth Streaming support in their networks. As with the encoding ISVs, our goal is to build a rich Smooth Streaming ecosystem to be available to customers by the time Silverlight 3 ships.</p>
<p>Besides the newly redesigned home page, the IIS Media team has also put up a great <a href="http://www.iis.net/media/experiencesmoothstreaming">working example</a> of how Smooth Streaming works.</p>
<p> </p>
<h4><span style="text-decoration: underline;">NBC Winter Olympics 2010 &#8211; Vancouver</span></h4>
<p>During the MIX 2009 Keynote, Perkins Miller, Senior VP of Digital Media for NBC Universal, <a href="http://www.reuters.com/article/televisionNews/idUSTRE52I80A20090319">announced </a>that NBC Universal has chosen to deliver the NBC Winter Olympics 2010 using Microsoft Silverlight. <a href="http://live.visitmix.com/">Watch</a> the MIX Keynote to see his announcement.</p>
<p>Here are the details I can share at this point:</p>
<ul>
<li>All video content, both live and on-demand, will be delivered using Smooth Streaming</li>
<li>The live video player will feature DVR-like capabilities (pause, rewind, seek and slo-mo of live video)</li>
<li>Video quality will go up to true 720p HD</li>
</ul>
<h3></h3>
<h4><span style="text-decoration: underline;">March Madness</span></h4>
<p>CBS Sports has launched a Silverlight-based March Madness video player that lets you watch all NCAA Basketball Tournament games live. Visit <a href="http://mmod.ncaa.com/video/?player=hq">http://mmod.ncaa.com/video</a> to launch the March Madness video player. If you are using Internet Explorer on Windows, the default player will actually be an old-school WMP player, so you&#8217;ll need to click on the <strong>HQ Player </strong>button to launch the new Silverlight player.</p>
<p>The live video for the tournament is being streamed using Windows Media Services. Obviously, we couldn&#8217;t use Smooth Streaming because the server technology is still in beta and the encoders aren&#8217;t yet commercially available. But CBS did the next best thing! All live streams are available in 4 video quality levels:</p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="128" valign="top">
<p align="center"><strong>Total Bitrate</strong><br />
(kbps)</td>
<td width="128" valign="top">
<p align="center"><strong>Video Bitrate</strong><br />
(kbps)</td>
<td width="128" valign="top">
<p align="center"><strong>Audio Bitrate</strong><br />
(kbps)</td>
<td width="128" valign="top">
<p align="center"><strong>Video Width</strong></p>
</td>
<td width="128" valign="top">
<p align="center"><strong>Video Height</strong></p>
</td>
<td width="128" valign="top">
<p align="center"><strong>Pixel Aspect Ratio</strong></p>
</td>
</tr>
<tr>
<td width="128" valign="top">
<p align="center"><strong>1500</strong></p>
</td>
<td width="128" valign="top">
<p align="center">1450</p>
</td>
<td width="128" valign="top">
<p align="center">48</p>
</td>
<td width="128" valign="top">
<p align="center">784</p>
</td>
<td width="128" valign="top">
<p align="center">432</p>
</td>
<td width="128" valign="top">
<p align="center">1:1</p>
</td>
</tr>
<tr>
<td width="128" valign="top">
<p align="center"><strong>1000</strong></p>
</td>
<td width="128" valign="top">
<p align="center">950</p>
</td>
<td width="128" valign="top">
<p align="center">48</p>
</td>
<td width="128" valign="top">
<p align="center">512</p>
</td>
<td width="128" valign="top">
<p align="center">384</p>
</td>
<td width="128" valign="top">
<p align="center">4:3</p>
</td>
</tr>
<tr>
<td width="128" valign="top">
<p align="center"><strong>650</strong></p>
</td>
<td width="128" valign="top">
<p align="center">615</p>
</td>
<td width="128" valign="top">
<p align="center">32</p>
</td>
<td width="128" valign="top">
<p align="center">368</p>
</td>
<td width="128" valign="top">
<p align="center">272</p>
</td>
<td width="128" valign="top">
<p align="center">4:3</p>
</td>
</tr>
<tr>
<td width="128" valign="top">
<p align="center"><strong>350</strong></p>
</td>
<td width="128" valign="top">
<p align="center">315</p>
</td>
<td width="128" valign="top">
<p align="center">32</p>
</td>
<td width="128" valign="top">
<p align="center">240</p>
</td>
<td width="128" valign="top">
<p align="center">176</p>
</td>
<td width="128" valign="top">
<p align="center">4:3</p>
</td>
</tr>
</tbody>
</table>
<p>Video codec used is VC-1 Advanced Profile. Audio codec used is WMA Professional at 44.1 kHz 16-bit stereo.</p>
<p>All March Madness games are being encoded by MLB.com&#8217;s encoding facilities using <a href="http://www.inlethd.com/encoding/72/6/Spinnaker-7000/">Inlet Spinnaker 7000</a> encoders. The Spinnakers were configured based on my own recommendations in order to provide maximum quality at all bitrates.</p>
<p>The March Madness Silverlight player uses preroll ad download statistics to estimate available client bandwidth and tries to make an appropriate first choice of bitrate level. Of course none of this would be necessary with Smooth Streaming, but we really tried to make the best of the Windows Media Streaming experience anyway. The player also has built-in heuristics to detect quality-of-service issues, such as frequent rebuffering or low frame rate rendering, at which point it can suggest to the user to choose a lower bitrate. Users can manually switch between available bitrates using the &#8220;<strong>-</strong>&#8221; and &#8220;<strong>+</strong>&#8221; buttons in the button of the player UI.</p>
]]></content:encoded>
			<wfw:commentRss>http://alexzambelli.com/blog/2009/03/19/silverlight-3-iis-media-services-30-olympics-2010-wow-it-truly-is-march-madness/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>The Birth of Smooth Streaming</title>
		<link>http://alexzambelli.com/blog/2009/02/04/the-birth-of-smooth-streaming/</link>
		<comments>http://alexzambelli.com/blog/2009/02/04/the-birth-of-smooth-streaming/#comments</comments>
		<pubDate>Wed, 04 Feb 2009 12:09:09 +0000</pubDate>
		<dc:creator>Alex Zambelli</dc:creator>
				<category><![CDATA[Expression Encoder]]></category>
		<category><![CDATA[Internet Information Services]]></category>
		<category><![CDATA[Olympics]]></category>
		<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[Smooth Streaming]]></category>
		<category><![CDATA[adaptive streaming]]></category>
		<category><![CDATA[HTTP]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[Windows Media]]></category>

		<guid isPermaLink="false">http://alexzambelli.com/blog/?p=21</guid>
		<description><![CDATA[In my last post I talked about the history of multi-bitrate streaming and how we got from RTSP and HTTP streaming back to HTTP download as the primary media web distribution mechanism. In this post we&#8217;ll take a closer look &#8230; <a class="more-link" href="http://alexzambelli.com/blog/2009/02/04/the-birth-of-smooth-streaming/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>In my last post I talked about the history of multi-bitrate streaming and how we got from RTSP and HTTP <span style="text-decoration: underline;">streaming</span> back to HTTP download as the primary media web distribution mechanism. In this post we&#8217;ll take a closer look at how adaptive streaming differs from traditional streaming (i.e. RTSP) and plain progressive download.</p>
<p> </p>
<p><span style="text-decoration: underline;"><strong>Traditional Streaming</strong></span></p>
<p>Let&#8217;s start by first taking a look at <a href="http://tools.ietf.org/html/rfc2326">RTSP</a> as an example of a traditional streaming protocol. RTSP is defined as a stateful protocol. This means that from the first time a client connects to the streaming server until the time it disconnects from the streaming server, the server keeps track of a client&#8217;s state. The client communicates its state to the server by issuing it commands such as PLAY, PAUSE or TEARDOWN (the first two are obvious; the last one is used to disconnect from the server and close the streaming session).</p>
<p>Once a session between the client and the server has been established, the server begins sending down the media as a steady stream of small packets (the format of these packets is known as <a href="http://tools.ietf.org/html/rfc3550">RTP</a>). The size of a typical RTP packet is 1452 bytes, which means that in a video stream encoded at 1 Mbps each packet only carries roughly about 11 msec of video. In RTSP the packets can be trasmitted either over UDP or TCP transports &#8211; the latter is preferred in cases where firewalls or proxies block UDP packets, but can also lead to increased latency (TCP packets get re-sent until received).</p>
<div class="wp-caption aligncenter" style="width: 511px"><img class=" " title="Traditional Streaming" src="http://citizeninsomniac.com/blog/wp-content/uploads/Smooth_Slide06.png" alt="RTSP is an example of a traditional streaming protocol" width="501" height="362" /><p class="wp-caption-text">RTSP is an example of a traditional streaming protocol</p></div>
<p> </p>
<p>An HTTP protocol, on the other hand, is known as a stateless protocol. If an HTTP client requests some data, the server will respond by sending down the data, but it won&#8217;t remember the client or its state. Every HTTP request is handled as a completely standalone one-time session.</p>
<p>Windows Media Services supports streaming over both RTSP and HTTP. Now, you may ask yourself, &#8220;But if HTTP is a stateless protocol, how can it be used for streaming?&#8221; WMS uses a modified version of HTTP known as <a href="http://msdn.microsoft.com/en-us/library/cc251059(PROT.10).aspx">MS-WMSP</a>, which uses standard HTTP for transfer of data and messages but also maintains session states, thus effectively turning it into a streaming protocol like RTSP/TCP. Windows Media Services has also supported RTSP streaming since 2003 (9 Series), over both UDP and TCP. Its implementation of the protocol is publicly documented as <a href="http://msdn.microsoft.com/en-us/library/cc245238(PROT.10).aspx">MS-RTSP</a>.</p>
<p>The important things to remember about traditional streaming protocols like RTSP and WMS-HTTP is that:</p>
<ol>
<li>The server sends the data packets to the client at a real-time rate only - that is the bit rate at which the media is encoded (i.e. a 500 kbps encoded video is streamed to the client at approx. 500 kbps)</li>
<li>The server only sends ahead enough data packets to fill the client buffer. The client buffer is typically between 1 and 10 seconds (WMP and Silverlight default buffer length is 5 seconds). This means that if you pause a streamed video and wait 10 minutes &#8211; still only ~5 seconds of video will have downloaded to your client in that time.</li>
</ol>
<p><span style="text-decoration: underline;"><strong>Progressive Download</strong></span></p>
<p>The other most common form of media delivery on the Web today is progressive download. Progressive download is nothing more than just a plain, ordinary file download from an HTTP web server like IIS or Apache. It is supported by Silverlight, Flash, WMP, and nearly every other media player and platform under the sun. The term &#8220;progressive&#8221; likely stems from the fact that most player clients allow the media file to be played back while the download is still in progress - before the entire file has been fully written to disk (typically to the browser cache). Clients that support the HTTP 1.1 specification can also seek to positions in the media file that haven&#8217;t been downloaded yet by performing byte range requests to the web server (assuming it also supports HTTP 1.1).</p>
<p>The most popular video sharing websites on the Web today almost exclusively use progressive download:  YouTube, Vimeo, MySpace, MSN Soapbox &#8211; and even the rather misnamed <a href="http://silverlight.live.com/">Silverlight <em>Streaming</em> Service</a>. (See my previous blog posts for a list of reasons why HTTP download is becoming increasingly popular in the online delivery of media.)</p>
<p>Unlike streaming servers which rarely send more than 10 seconds of media data to the client at a time, HTTP web servers keep the data flowing until the download is complete. This leads to the user experience that we have by now grown very accustomed to thanks to YouTube &#8211; if you pause a YouTube video at the beginning of playback and wait, eventually the entire video will have downloaded to your browser cache, allowing you to smoothly play the whole video without any hiccups. There is a downside to this behavior as well &#8211; if 30 seconds into a fully downloaded 10 minute video you decide you don&#8217;t like it and quit the video, both you and your content provider have just wasted 9:30 minutes worth of bandwidth. In an effort to mitigate this problem, <a href="http://www.iis.net/media">IIS7 Media Pack 1.0</a> provides a cool feature called <a href="http://www.iis.net/extensions/BitRateThrottling">Bit Rate Throttling</a> which allows content providers to throttle the download bitrate in order to reduce costs. But that&#8217;s another story&#8230;</p>
<p> </p>
<p><span style="text-decoration: underline;"><strong>Adaptive Streaming</strong></span></p>
<p>Speaking of misnomers&#8230; Here&#8217;s another one: Adaptive Streaming. Guess what? It&#8217;s not really streaming in the classic sense at all.</p>
<p>Adaptive streaming is really a hybrid delivery method. It acts like streaming but is in fact based on HTTP progressive download. A more technically accurate name for adaptive streaming might be &#8220;A Series of Progressive Downloads of Variable Sized Video Fragments,&#8221; but even the most determined marketing experts would have a hard time selling that one. :)</p>
<p>A very important thing to remember about adaptive streaming is that there doesn&#8217;t really exist a standard implementation for it today because it&#8217;s just an advanced download concept, rather than a new protocol. This is why we talk about both Microsoft Smooth Streaming and <a href="http://www.movenetworks.com/move-media-services/move-adaptive-streaming">Move Networks Adaptive Stream</a> as examples of adaptive streaming, even though they use mutually incompatible codecs, formats and encryption schemes. They both rely on HTTP as the transport protocol and perform the media download as a long series of very small progressive downloads, rather than one big progressive download.</p>
<p>In a prototypical adaptive streaming implementation, the video/audio source is cut up into many short segments (&#8220;chunks&#8221;) and encoded to the desired delivery format. Chunks are typically 2-4 seconds in length. On the video codec level this typically means that each chunk is cut along video GOP boundaries (each chunk starts with a key frame) and has no dependencies on past or future chunks/GOPs. This allows every chunk to later be decoded completely independently from other chunks.</p>
<p>The encoded chunks are then hosted on a regular HTTP web server. A client requests the chunks from the web server in a linear fashion and downloads them using plain HTTP progressive download. As the chunks are downloaded to the client, the client plays back the sequence of chunks in linear order. Because the chunks were carefully encoded without any gaps or overlaps between them, the chunks play back as a seamless video.</p>
<p>The &#8220;adaptive&#8221; part of the solution comes into play when the video/audio source is encoded at multiple bitrates, generating multiple chunks of various sizes for each 2-4 seconds of video. The client now has the option to choose between chunks of different sizes. Because web servers usually deliver data as fast as network bandwidth allows them, the client can easily estimate user bandwidth and decide to download bigger or smaller chunks ahead of time. The size of the playback/download buffer is fully customizable.</p>
<div class="wp-caption aligncenter" style="width: 509px"><img class="    " title="Adaptive Streaming" src="http://citizeninsomniac.com/blog/wp-content/uploads/Smooth_Slide08.png" alt="Adaptive streaming is a hybrid media delivery method" width="499" height="328" /><p class="wp-caption-text">Adaptive streaming is a hybrid media delivery method</p></div>
<p> </p>
<p>Adaptive streaming, like other forms of HTTP delivery, offers the following advantages to the content provider:</p>
<ul>
<li>It&#8217;s cheaper to deploy because adaptive streaming can utilize any generic HTTP caches/proxies and doesn&#8217;t require specialized servers at every node</li>
<li>It offers better scalability and reach, reducing &#8220;last mile&#8221; issues because it can dynamically adapt to inferior network conditions as it gets closer to the user&#8217;s home</li>
<li>It lets the audience adapt to the content, rather than requiring the content providers to guess which bitrates are most likely to be accessible to their audience</li>
</ul>
<p>It also offers the following benefits for the end user:</p>
<ul>
<li>Fast start-up and seek times because start-up/seeking can be initiated on the lowest bitrate before moving up to a higher bitrate</li>
<li>No buffering, no disconnects, no playback stutter (as long as the user meets the minimum bitrate requirement)</li>
<li>Seamless bitrate switching based on network conditions and CPU capabilities</li>
<li>A generally consistent, <strong>smooth</strong> playback experience</li>
</ul>
<p> </p>
<p><span style="text-decoration: underline;"><strong>Microsoft Adaptive Streaming Prototype: NBC Olympics 2008</strong></span></p>
<p>We first prototyped an implementation of HTTP-based adaptive streaming as part of the <a href="http://alexzambelli.com/blog/2008/08/21/an-inside-look-at-nbc-olympics-video-player/">NBC Olympics 2008</a> project. In order to deliver the desired level of quality in a short period of time, we took the most basic adaptive streaming implementation approach. We had NBC&#8217;s Digital Rapids and Anystream encoders produce multiple WMV files of different bitrates/resolutions for each source. The encoders didn&#8217;t employ any new encoding tricks but merely followed strict encoding guidelines (closed GOP, fixed length GOP, VC-1 entry point headers) which ensured exact frame alignment across the various bitrates of the same video. Then we ran the WMV files through a post-processing tool which physically split each WMV file into thousands of 2-second chunks (files). The rest of the solution consisted of simply uploading the chunks to Limelight&#8217;s origin web servers (running Apache) and then building a Silverlight player that would download the chunks and play them in sequence. Simple!</p>
<p><span style="text-decoration: underline;">The good news</span>: Our implementation worked great for the end users. We were able to offer a better-than-WMS streaming experience while using just simple HTTP download!</p>
<p><span style="text-decoration: underline;">The bad news</span>: CDN operators lost many hours (days?) managing millions of tiny files in their systems. Imagine: if every 2-seconds of video is split into a separate file and this is repeated for 5 available bitrates, you end up with 150 files for every minute of video. That&#8217;s 13,500 files for a 90-minute soccer game!</p>
<p>So despite NBC Olympics being a huge success for Silverlight and HTTP-based adaptive streaming, it quickly became apparent we had to go back to the drawing board on this one.</p>
<p> </p>
<p><span style="text-decoration: underline;"><strong>At Last! Smooth Streaming!</strong></span></p>
<p>The IIS Media team soon took charge of turning the NBC Olympics adaptive streaming solution into a real server product. Its official name &#8211; <a href="http://www.iis.net/extensions/SmoothStreaming">IIS7 Smooth Streaming</a>, an extension for Internet Information Services 7.0.</p>
<p>The IIS Media team redesigned the content creation and delivery aspect of the prototype solution in order to fix the file management issues while still keeping all the advantages of the original solution. The new design eschewed the one-file-per-chunk approach in favor of a single contiguous file for each encoded bitrate. The file format of choice: MPEG-4.</p>
<p>Smooth Streaming server uses the <a href="http://en.wikipedia.org/wiki/MPEG-4_Part_14">MPEG-4 Part 14</a> (ISO/IEC 14496-12) file format as its disk (storage) and wire (transport) format. Specifically, the Smooth Streaming specification defines each chunk/GOP as an MPEG-4 Movie Fragment (<em>moof)</em> and stores it within a contiguous MP4 file for easy random access. One MP4 file is expected per each bitrate. When the client requests a specific source time segment from the IIS server, the server dynamically finds the appropriate Movie Fragment box within the contiguous MP4 file and sends it over the wire as a standalone file, thus ensuring full cacheability downstream.</p>
<p>In other words, with Smooth Streaming file chunks are created virtually upon client request, but the actual video is stored on disk as a single full-length file per encoded bitrate.</p>
<p> </p>
<p><span style="text-decoration: underline;"><strong>Smooth Streaming Availability</strong></span></p>
<p>Smooth Streaming server support will ship as part of the next edition of IIS7 Media Pack, a free download for Windows Server 2008. A technology preview of IIS7 Smooth Streaming Server is already available now through Akamai. They are calling this service <a href="http://www.akamai.com/smoothhd">Akamai AdaptiveEdge Streaming for Microsoft Silverlight</a>. A demo of the service is available at <a href="http://www.smoothhd.com">http://www.smoothhd.com</a>.</p>
<p>On the content creation end, creation of on-demand Smooth Streaming-compatible video is already possible with the latest <a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=A29BE9F9-29E1-4E70-BF67-02D87D3E556E&amp;displaylang=en">Expression Encoder 2 SP1</a>. Note that you&#8217;ll need to purchase the full version of Expression Encoder 2 in order to get Smooth Streaming encoding support &#8211; it&#8217;s not included in the &#8220;Express&#8221; trial version. As a helper tool for encoding to multiple-bitrate formats such as Smooth Streaming, I recommend my <a href="http://alexzambelli.com/WMV/MBRCalc.html">Smooth Streaming Calculator</a>. (More about Smooth Streaming encoding with Expression Encoder to come soon.)</p>
<p>In addition, we are already working with a number of encoding ISVs on enabling support for the Smooth Streaming format in their professional encoding products.</p>
<p> </p>
<p><span style="text-decoration: underline;"><strong>Smooth Streaming Playback:</strong></span></p>
<p>You probably already know that Silverlight 2 supports playback of Smooth Streaming sources (if you don&#8217;t, go to <a href="http://www.smoothhd.com">http://www.smoothhd.com</a>). But how does it do it?</p>
<p>Despite popular belief, Silverlight doesn&#8217;t actually feature native support for any particular adaptive streaming technology &#8211; Microsoft&#8217;s, Netflix&#8217;s or Move Networks&#8217; for example. Smooth Streaming support in Silverlight is implemented via the <a href="http://msdn.microsoft.com/en-us/library/system.windows.media.mediastreamsource(VS.95).aspx">MediaStreamSource</a> API. This API allows developers to implement their own media transport methods (instead of relying on <a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.mediaelement(VS.95).aspx">MediaElement</a>&#8216;s native transport methods) while still leveraging Silverlight&#8217;s native decoders and renderers. In other words, Silverlight support for Smooth Streaming is provided entirely in .NET code: the parsing of the MPEG-4 file format, the HTTP download, the bitrate switching heuristics, etc. This allows developers to modify and fine-tune the client adaptive streaming code as needed, instead of waiting for the next Silverlight release and hoping it magically fixes every customer scenario.</p>
<p>The most challenging part of Smooth Streaming Silverlight client development is the heuristics module which determines when and how to switch bitrates. Elementary stream switching functionality requires the ability to swiftly adapt to changing network conditions while never falling too far behind, but that&#8217;s often not enough to deliver a great experience. One must also consider: What if the user has enough bandwidth but doesn&#8217;t have enough CPU power to consume the high bitrates/resolutions? What happens when the video is paused or hidden in the background (i.e. minimized browser window)? What if the resolution of the best available video stream is actually larger than the screen resolution, thus wasting bandwidth? How large should the download buffer window be? How does one ensure seamless rollover to new media assets such as ads? As any web application developer will tell, you there&#8217;s much more to building a good player than just setting a source URL for the media element.</p>
<p>Fortunately for those who prefer not to write such code from scratch, there are already two options available for adding Smooth Streaming support to your Silverlight application:</p>
<ol>
<li><strong>Expression Encoder 2 SP1 templates</strong><br />
Every Silverlight 2 player template included with Expression Encoder 2 SP1 includes a ready Smooth Streaming module as well as complete source code (which can be modified and used freely). The Smooth Streaming object (named AdaptiveStreaming.dll) can be easily integrated into any Silverlight project. See <a href="http://www.clarkezone.net/">James Clarke&#8217;s blog</a> for additional Expression Encoder tips &amp; tricks.</li>
<li><strong>Open Video Player (OVP)</strong><br />
The Akamai-led <a href="http://www.openvideoplayer.com/">Open Video Player Initiative</a> is an open-source community project that strives to provide a best-of-breed video player platform for Silverlight and Flash. The Silverlight version of the Open Video Player provides integrated support for Smooth Streaming playback, and is in fact the video player used by Akamai on <a href="http://www.smoothhd.com">SmoothHD.com</a> and many of their customer sites.</li>
</ol>
<p>  These templates provide great out-of-the-box Smooth Streaming experiences while also allowing developers to continue innovating and fine-tuning the client code.</p>
<p> </p>
<p><strong>In my next blog post</strong>:  The Smooth Streaming Format</p>
]]></content:encoded>
			<wfw:commentRss>http://alexzambelli.com/blog/2009/02/04/the-birth-of-smooth-streaming/feed/</wfw:commentRss>
		<slash:comments>31</slash:comments>
		</item>
		<item>
		<title>An inside look at NBC Olympics video player</title>
		<link>http://alexzambelli.com/blog/2008/08/21/an-inside-look-at-nbc-olympics-video-player/</link>
		<comments>http://alexzambelli.com/blog/2008/08/21/an-inside-look-at-nbc-olympics-video-player/#comments</comments>
		<pubDate>Fri, 22 Aug 2008 03:06:49 +0000</pubDate>
		<dc:creator>Alex Zambelli</dc:creator>
				<category><![CDATA[Olympics]]></category>
		<category><![CDATA[Silverlight]]></category>

		<guid isPermaLink="false">http://alexzambelli.com/blog/2008/08/21/an-inside-look-at-nbc-olympics-video-player/</guid>
		<description><![CDATA[It&#8217;s the second week of the Beijing 2008 Olympics and though the press coverage of the NBC Olympics website has been more than thorough, one thing that hasn&#8217;t been fully explained is &#8211; what exactly are you watching when exploring &#8230; <a class="more-link" href="http://alexzambelli.com/blog/2008/08/21/an-inside-look-at-nbc-olympics-video-player/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s the second week of the Beijing 2008 Olympics and though the press coverage of the NBC Olympics website has been more than thorough, one thing that hasn&#8217;t been fully explained is &#8211; what exactly are you watching when exploring the different parts of the NBCO video player &#8211; and what kind of quality should you expect anyway?</p>
<p>Let&#8217;s begin by explaining the 2 video player user interfaces and the plugins that power each.</p>
<p><u><strong>User Interface</strong></u></p>
<p>The NBC Olympics video player is available in 2 flavors: Standard and Enhanced. The Standard player UI is what you get when you first launch the video player. The Enhanced player UI is what you get when you click on the &#8220;Enhanced&#8221; button in the lower right corner of the Standard player.</p>
<p>The <strong>Standard </strong>player has a video rectangle of size 592&#215;336 (roughly a 16:9 aspect ratio) and can be experienced with either WMP or Silverlight plugins. As explained in earlier posts, if you are running Windows OS + Internet Explorer or Firefox browser + WMP9 or better (ideally WMP11), you can choose to use the WMP plugin instead of the Silverlight plugin to view video by choosing &#8220;Watch without Plugin&#8221; when prompted to install Silverlight. The video streams available in the Standard player are identical regardless of whether you&#8217;re using WMP or Silverlight. The bitrate of those streams never exceeds 650 kbps in the Standard player.</p>
<p>The <strong>Enhanced </strong>player is only available to those who have installed the Silverlight plugin. It provides a more interactive experience and features a larger video window, as well as higher resolution and higher bitrate video streams (for some content). The video rectangle is 848&#215;480 (also roughly 16:9 aspect ratio).</p>
<p><u><strong>Video and Audio Codecs</strong></u></p>
<p>All video on the NBC Olympics website is encoded as VC-1 Advanced Profile in CBR mode at various bitrates (described below).</p>
<p>All audio is encoded as WMA 10 Professional audio at 48 kbps, 44.1 kHz, stereo. The special Low Bitrate (LBR) mode of the WMA Professional codec offers improved fidelity over the more commonly used WMA Standard codec and is <a href="http://en.wikipedia.org/wiki/Windows_Media_Audio#Sound_quality">comparable</a> with HE-AAC quality.</p>
<p><u><strong>Content Categories</strong></u></p>
<p>The content is generally divided into 2 categories: Live/Rewind and Highlights/Encore.</p>
<p><strong>Live </strong>video (and its archived counterpart <strong>Rewind</strong>) is encoded on site in Beijing, then beamed back to New York and distributed to homes via CDNs. It comes in 2 bitrates and sizes:</p>
<ul>
<li>592&#215;336 at 600 kbps</li>
<li>320&#215;176 at 300 kbps</li>
</ul>
<p>The reason why higher bitrates aren&#8217;t offered for Live streams is because NBC&#8217;s link from Beijing to New York has a fixed bandwidth and needs to be able to sustain many simultaneous live streams (1 Mbps per event, and there can be as many as 30 events happening at the same time). In addition, delivering more than 1 Mbps of video around the world without losing packets all over the place or running into last-mile bottlenecks &#8211; is still incredibly difficult even in 2008.</p>
<p><strong>Highlights/Encore</strong> video is content produced and encoded by NBC in New York. It typically features highlights, previews, recaps, interviews &#8211; so generally anything that&#8217;s not a full rewind of an event. It comes in 4 bitrates:</p>
<ul>
<li>320&#215;176 at 350 kbps</li>
<li>424&#215;240 at 600 kbps</li>
<li>592&#215;336 at 1050 kbps</li>
<li>848&#215;480 at 1450 kbps</li>
</ul>
<p>As mentioned above, the higher bitrates are only available in the Silverlight-exclusive Enhanced player interface. The Standard player is only able to consume the first 2 lower-bitrate streams.</p>
<p>In addition to all the bitrates and resolutions mentioned above, all content is available for thumbnail-sized <strong>Picture-In-Picture </strong>viewing. PiP video is always encoded as 128&#215;96 at 50 kbps and half the source framerate.</p>
<p>This means that the minimum bandwidth needed to view the highest quality video + PiP is 1550 kbps (1450 video + 48 audio + 50 PiP) in perfect conditions. In reality, you probably need at least 100 kbps overhead on top of that in order to compensate for Internet unreliability.</p>
<p>Much of the press coverage of the NBC Olympics website has referred to the video content as being &#8221;HD quality.&#8221; The definition of &#8220;HD&#8221; for television has always been pretty clear: you need at least 1280&#215;720 to call something &#8220;HD.&#8221; Unfortunately, the definition of HD video on the web has been far more ambiguous. It&#8217;s the YouTube effect. Once you get used to watching 320&#215;240 poorly compressed video for so long, anything above that suddenly starts looking like Digital Cinema. :) Whether or not you choose to think of 848&#215;480 video as HD is up to you. I personally wouldn&#8217;t, but then again &#8211; it&#8217;s my job to be nitpicky about video quality.</p>
<p><u>Streaming Methods</u></p>
<p>Finally, there&#8217;s the actual delivery of the content. Two basic methods of streaming are used on the NBC Olympics website.</p>
<p>All <strong>Live </strong>video &#8211; regardless of which plugin is consuming it &#8211; is streamed via WMS HTTP streaming protocol from Windows Server 2008 servers running Windows Media Services. The same streaming method is also used for all delivery to the WMP plugin. If you&#8217;re using the WMP plugin, you always get the WMS stream, regardless of content type.</p>
<p>As mentioned before, the Silverlight-powered Enhanced player has several features that make it a superior experience to the Standard player and WMP plugin. One of them is its ability to seamlessly switch between streams of different bitrates and resolutions during playback to dynamically match the user&#8217;s bandwidth and CPU power. This feature, often referred to generically as <strong>Adaptive Streaming</strong>, is something that Microsoft developed for NBC based on Silverlight 2&#8242;s <a href="http://msdn.microsoft.com/en-us/library/system.windows.media.mediastreamsource(VS.95).aspx">MediaStreamSource</a> interface. NBC&#8217;s website does not utilize the <a href="http://www.movenetworks.com">Move Networks</a> adaptive streaming technology, as has been widely rumored. Silverlight 2 supports hooks to multiple adaptive streaming approaches, including Move&#8217;s - but in this particular case Microsoft provided the solution.</p>
<p>The easiest way to recognize that you&#8217;re watching an adaptively streamed video while in the Enhanced player is by seeking to another point in the video. If the player is using adaptive streaming, you will see the video start up very quickly without a buffering notification and the resolution will briefly drop. After a few seconds the blurry video will get sharper, and then sharper again&#8230; and then sharper again, your bandwidth allowing, of course.</p>
<p><u><strong>Summary &#8211; Setting expectations</strong></u></p>
<p>Here&#8217;s the best quality you can expect for NBC Olympics video, as well as minimum requirements:</p>
<ul>
<li>Live/Rewind content:
<ul>
<li>Either plugin: 592&#215;336 at 650 kbps</li>
</ul>
</li>
<li>Highlights/Encore content:
<ul>
<li>WMP plugin:  424&#215;240 at 650 kbps</li>
<li>Silverlight plugin and Enhanced player:  848&#215;480 at 1500 kbps</li>
</ul>
</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://alexzambelli.com/blog/2008/08/21/an-inside-look-at-nbc-olympics-video-player/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Why no full screen mode in the NBC Olympics player?</title>
		<link>http://alexzambelli.com/blog/2008/08/14/why-no-full-screen-mode-in-the-nbc-olympics-player/</link>
		<comments>http://alexzambelli.com/blog/2008/08/14/why-no-full-screen-mode-in-the-nbc-olympics-player/#comments</comments>
		<pubDate>Thu, 14 Aug 2008 14:59:57 +0000</pubDate>
		<dc:creator>Alex Zambelli</dc:creator>
				<category><![CDATA[Olympics]]></category>
		<category><![CDATA[Silverlight]]></category>

		<guid isPermaLink="false">http://citizeninsomniac.com/blog/2008/08/14/why-no-full-screen-mode-in-the-nbc-olympics-player/</guid>
		<description><![CDATA[A very spirited discussion of the pros and cons of the NBCO player&#8217;s (lack of) full screen mode is taking place over on the Silverlight forums: http://silverlight.net/forums/p/22318/80644.aspx Microsoft&#8217;s Tom Taylor has provided some context and explanation for the controversial design decision.]]></description>
			<content:encoded><![CDATA[<p>A very spirited discussion of the pros and cons of the NBCO player&#8217;s (lack of) full screen mode is taking place over on the Silverlight forums:</p>
<p><a href="http://silverlight.net/forums/p/22318/80644.aspx">http://silverlight.net/forums/p/22318/80644.aspx</a></p>
<p>Microsoft&#8217;s Tom Taylor has provided some context and explanation for the controversial design decision.</p>
]]></content:encoded>
			<wfw:commentRss>http://alexzambelli.com/blog/2008/08/14/why-no-full-screen-mode-in-the-nbc-olympics-player/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NBC Olympics video without Silverlight?</title>
		<link>http://alexzambelli.com/blog/2008/08/13/nbc-olympics-video-without-silverlight/</link>
		<comments>http://alexzambelli.com/blog/2008/08/13/nbc-olympics-video-without-silverlight/#comments</comments>
		<pubDate>Wed, 13 Aug 2008 09:05:17 +0000</pubDate>
		<dc:creator>Alex Zambelli</dc:creator>
				<category><![CDATA[Olympics]]></category>
		<category><![CDATA[Silverlight]]></category>

		<guid isPermaLink="false">http://citizeninsomniac.com/blog/2008/08/13/nbc-olympics-video-without-silverlight/</guid>
		<description><![CDATA[There&#8217;s been a lot of rumor on the Internet regarding the NBC Olympics website&#8217;s plug-in requirements and OS/browser support, so I thought I&#8217;d shed some more light on exactly what is and isn&#8217;t supported. The NBCO website specifically lists the &#8230; <a class="more-link" href="http://alexzambelli.com/blog/2008/08/13/nbc-olympics-video-without-silverlight/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s been a lot of rumor on the Internet regarding the NBC Olympics website&#8217;s plug-in requirements and OS/browser support, so I thought I&#8217;d shed some more light on exactly what is and isn&#8217;t supported.</p>
<p>The NBCO website specifically lists the plug-ins required for experiencing all sections of the website: <a href="http://www.nbcolympics.com/pluginsneeded.html">http://www.nbcolympics.com/pluginsneeded.html</a></p>
<p>As you can see, only Flash is a requirement for access to the main (non-video) site. To access the video content on the website, Silverlight 2 Beta 2 plug-in or Windows Media Player are required. The various Silverlight supported platforms were outlined in my previous post, but what about WMP support?</p>
<p>WMP &#8220;fallback&#8221; mode was a key part of the NBC Olympics player design from the very start. Because the Silverlight 1 and 2 media pipeline is  built on top of the Windows Media format (ASF) and codecs (VC-1, WMV8, WMV7, WMA9 Standard &amp; Pro, MP3), any media content produced for Silverlight is also backwards compatible with WMP &#8211; so it only made sense to re-use the same streams for WMP as a &#8220;fallback&#8221; option in case certain users didn&#8217;t wish to install Silverlight 2 (after all, it is a beta) or simply couldn&#8217;t install it due to non-admin restrictions or due to being on an unsupported Windows OS.</p>
<p>Now, I know some may immediately ask, &#8220;Well, if you wanted to provide a fallback option, why not just use Flash as an alternative?&#8221; All business politics aside, it&#8217;s important to understand that creating all the content in duplicate (and trust me, there&#8217;s A LOT of content being produced for these Olympic games) would&#8217;ve been extremely inefficient with regards to both time and cost. Not only would all content need to be encoded twice, but the bandwidth of NBC&#8217;s direct link from Beijing to New York would need to be doubled, and NBC would need to deploy twice the number of encoders and servers, etc, etc, etc. Supporting Flash would&#8217;ve also doubled the engineering cost of designing, implementing and testing the video player application. Speaking from a purely engineering perspective, I can say that getting this project off the ground and to this final stage was an incredibly ambitious undertaking with just Windows Media alone. Supporting a whole additional set of formats, codecs and RIA technology would&#8217;ve been nothing short of impossible.</p>
<p>But back to WMP support&#8230;</p>
<p>At the moment WMP support is limited to Windows OS only, and Internet Explorer and Firefox browsers only. The good news is that any Windows OS running WMP9 or later ought to work &#8211; and that includes even ancient Windows 98SE, Millennium and 2000 systems. However, if using the WMP fallback mode, it is definitely recommended that you use WMP11 (XP, Vista and WS2008) for optimal video and audio playback quality. If you are using WMP9 and WMP10, upon visiting the NBC Olympics video player page for the first time you may be prompted with an ActiveX security dialog asking you to install &#8220;wvc1dmo.cab&#8221; or &#8220;Windows Media Audio Codec.&#8221; It is safe to install these updates &#8211; and actually required to make the NBCO video player work with WMP9/WMP10. If you don&#8217;t get any security dialog prompt, but can&#8217;t see any video either &#8211; your browser&#8217;s security settings might be blocking the ActiveX install prompts. In that case you can install the necessary video codec update manually from <a href="http://support.microsoft.com/kb/942423">http://support.microsoft.com/kb/942423</a>.</p>
<p>It has also been suggested that Mac PPC users might be able to get the WMP fallback solution working for them by installing <a href="http://www.microsoft.com/windows/windowsmedia/player/wmcomponents.mspx">Flip4Mac WMV</a>. Unfortunately, at the time of this writing that solution is not working, partially due to an apparent incompatibility between the NBCO player Javascript code and Flip4Mac/Safari/Firefox. If this changes at any point, I&#8217;ll make sure to post about it immediately.</p>
<p>Finally, for those who <em>do </em>have a choice of installing Silverlight instead of using WMP, what advantage does Silverlight bring to the table? For starters, all WMP-targeted video streams are limited to 650 kbps, whereas the Silverlight plug-in can take advantage of higher-bitrate and higher-resolution video streams, all the way up to 1500 kbps. Furthermore, all WMP playback is single-bitrate only with no dynamic/adaptive stream-switching capability. The Silverlight-based player, on the other hand, can use adaptive streaming (dynamic bitrate switching) for most NBCO content that&#8217;s not Live or Rewind. So the short answer to the question of what advantage Silverlight has over WMP is: better video quality and more reliable streaming methods.</p>
]]></content:encoded>
			<wfw:commentRss>http://alexzambelli.com/blog/2008/08/13/nbc-olympics-video-without-silverlight/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>NBC Olympics 24/7</title>
		<link>http://alexzambelli.com/blog/2008/08/09/nbc-olympics-247/</link>
		<comments>http://alexzambelli.com/blog/2008/08/09/nbc-olympics-247/#comments</comments>
		<pubDate>Sun, 10 Aug 2008 02:52:36 +0000</pubDate>
		<dc:creator>Alex Zambelli</dc:creator>
				<category><![CDATA[Olympics]]></category>
		<category><![CDATA[Silverlight]]></category>

		<guid isPermaLink="false">http://citizeninsomniac.com/blog/2008/08/09/nbc-olympics-247/</guid>
		<description><![CDATA[After more than 8 months of planning and development, full NBC Olympics online video coverage is underway! Anyone living in the U.S. can watch live and archived streaming video of nearly every Olympic event for free by visiting: http://www.nbcolympics.com/video/index.html The reason &#8230; <a class="more-link" href="http://alexzambelli.com/blog/2008/08/09/nbc-olympics-247/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>After more than 8 months of planning and development, full NBC Olympics online video coverage is underway!</p>
<p>Anyone living in the U.S. can watch live and archived streaming video of nearly every Olympic event <u>for free</u> by visiting:</p>
<p><a href="http://www.nbcolympics.com/video/index.html">http://www.nbcolympics.com/video/index.html</a></p>
<p>The reason that only United States residents have access to NBC&#8217;s video streams is because NBC owns the rights to broadcasts of the 2008 Summer Olympics <strong>only</strong> for the United States. The <a href="http://www.olympic.org/uk/organisation/facts/broadcasting/index_uk.asp">International Olympic Committee</a> sells broadcasts rights to only one broadcaster per country, so if you&#8217;re in Canada &#8211; you have to watch CBC; if you&#8217;re in the UK &#8211; you have to watch the BBC, and so on. I&#8217;m sure NBC wouldn&#8217;t have minded selling ads globally if the IOC had let them. ;)</p>
<p>The NBC Olympics website doesn&#8217;t require (as some news reports and blogs have stated) Microsoft Silverlight to run, but is <strong>optimized</strong> for it. This is even stated on the NBC Olympics <a href="http://www.nbcolympics.com/pluginsneeded.html">website</a>. The Silverlight 2 Beta 2 plugin needed for the optimal (and intended) rich web experience is a minimal download and a very light-weight install. And despite being dubbed a &#8220;Beta 2,&#8221; it&#8217;s actually easily one of the most stable Microsoft products I&#8217;ve seen in years. Here&#8217;s the <a href="http://www.nbcolympics.com/newscenter/silverlight/index.html">list</a> of Silverlight 2 supported operating systems and browsers:</p>
<ul>
<li>Windows Vista: Internet Explorer 7 or better, Firefox 1.5 or better</li>
<li>Windows XP SP2 or SP3: Internet Explorer 6 or better, Firefox 1.5 or better</li>
<li>Mac OS X 10.4.8+ (Intel only): Firefox 1.5 or better, Safari 2 or better</li>
</ul>
<p>Microsoft&#8217;s <a href="http://www.microsoft.com/silverlight/resources/install.aspx?v=2.0#sysreq">Silverlight website</a> also mentions the following platforms as being supported by Silverlight 2, but I guess NBC isn&#8217;t explicitly supporting them, so proceed at your own risk: Windows 2000 w/ IE6, Windows Server 2003 w/ IE6+ or Firefox 1.5+. And if Silverlight 2 works on Vista, one would also assume it works on Windows Server 2008 too.</p>
<p>A list of <a href="http://www.nbcolympics.com/video/faq.html">Frequently Asked Questions</a> is also available on the NBC Olympics Video website.</p>
<p>Finally, here&#8217;s a few articles that describe the project and showcase its highlights:</p>
<p><a href="http://news.cnet.com/8301-13860_3-10002909-56.html">http://news.cnet.com/8301-13860_3-10002909-56.html</a><br />
<a href="http://seattlepi.nwsource.com/business/373888_msftoly07.html?source=mypi">http://seattlepi.nwsource.com/business/373888_msftoly07.html?source=mypi</a></p>
<p>MSDN&#8217;s Channel 9 also has a 20-minute interview with fellow Silverlight evangelist Eric Schmidt who talks about the various features of the NBCO video player and what it took to pull off this massive effort:</p>
<p><a href="http://channel9.msdn.com/shows/Continuum/Building-NBCOlympicscom-with-Silverlight/">http://channel9.msdn.com/shows/Continuum/Building-NBCOlympicscom-with-Silverlight/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://alexzambelli.com/blog/2008/08/09/nbc-olympics-247/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

