Michael S. Scherotter Microsoft Corporation
What is Silverlight? Cross Browser: Safari, FireFox, Internet Explorer Cross Platform: Mac, Windows 2000, Windows XP, Windows Vista, and now Suse Linux (Moonlight) Building High-Quality Media Experiences Building Rich Interactive Applications
Silverlight 1 & 2 Silverlight 1 – for Media Scenarios Released September 2007 Vector graphics, images, video, animation, gradients Uses browser’s JavaScript programming model Silverlight 2 – for Media + RIA Scenarios Now in Public Beta – Will be released later in 2008 Adds Deep Zoom, DRM, Adaptive Streaming, full control set (skinable/ styles), Data Binding Subset of.Net Framework (C#, VB.Net) Dynamic Language Runtime (Ruby, Python, Jscript.net)
Demo
What do Web Hosting Companies Need to Know? 1. Media Formats 2. Streaming vs. Progressive Download 3. MIME Types 4. Integrating with Web Analytics 5. Integrating with Content Delivery Networks (CDNs) 6. Additional Services around RIA Construction
Media Formats: Video WMV1: Windows Media Video 7 WMV2: Windows Media Video 8 WMV3: Windows Media Video 9 WMVA: Windows Media Video Advanced Profile, non-VC-1 WMVC1: Windows Media Video Advanced Profile, VC-1 + Multiple Bit Rate (MBR)
Media Formats: Audio WMA 7: Windows Media Audio 7 WMA 8: Windows Media Audio 8 WMA 9: Windows Media Audio 9 MP3: ISO/MPEG Layer-3 – see Silverlight SDK for additional detail
Media Formats: Encoding Use Expression Encoder Has command-line interface so it can be scripted as part of a media workflow Encode from.3g2.mod.3gp.mov.asf.mp4.avi.mpeg.dv.mpg.dvr-ms.ts.m2v.vob.m4v.wmv.aiff.m4A m4B bwf mp3 wav wma Use Windows Media Encoder Use any other encoder that creates supported formats
Streaming vs. Progressive Download Progressive Download Put a media file on any server – vanilla hosting Can only view content that’s been download so far Cannot monitor consumption from server Streaming On demand/live media Can monitor consumption from server Windows Media Server – IIS Add-on Random-access: Can fast forward/move around content immediately
MIME Types You must at the MIME type for XAML to the website configuration to support Silverlight . XAML = application/xaml+xml .XAP = application/x- silverlight-app
Integrating with Web Analytics Measuring the performance of your website with respect to business goals. Most web analytics services use JavaScript page tags JavaScript page tags can be triggered by Silverlight events Scenarios: Track Silverlight installation rate Track user interaction behavior Track media drop-off with progressive download Track media buffering
Web Analytics: User Interaction Track version number of Silverlight Analytics can be introduced at any stage of the web development process With compiled RIA formats, analytics must be introduced before design is created. Add Event handlers that then call page tags
Web Analytics: Media Drop-Off Use invisible media markers every 5 seconds inserted in media when it is initially loaded. Media markers trigger JavaScript events JavaScript events call page tags Buffering events call page tags
Web Analytics: A/B Testing Design in XAML is separated from the code in JavaScript Very easy to try different XAML in controlled tests Panel Discussion on Silverlight + Web Analytics at Mix Conference Omniture, WebTrends, Microsoft AdCenter
Integrating with CDNs What should be on CDNs? Images Video Audio Use Silverlight.Live.com as your own CDN (10GB free space for SL apps + media) Cross-Domain Data Access SL 1 cannot access services across domains XAML Web Services SL 2 can use a CrossDomain.xml policy file
Additional Services around Silverlight RIA Design & Development using Expression Blend Media Encoding using Expression Encoder Media Storage
Resources Silverlight Community: My Blog: Thank You! Michael S. Scherotter