1 / 37

Microsoft Silverlight Moving at 60fps MIX10-CL25

Microsoft Silverlight Moving at 60fps MIX10-CL25. Eric Schmidt Sr. Director Microsoft Corporation March 2010. Key Messages for Today. The media stack in and for Silverlight rocks We are building frameworks to help you reduce cost, complexity and caffeine

emilie
Download Presentation

Microsoft Silverlight Moving at 60fps MIX10-CL25

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Microsoft SilverlightMoving at 60fpsMIX10-CL25 Eric Schmidt Sr. Director Microsoft Corporation March 2010

  2. Key Messages for Today • The media stack in and for Silverlight rocks • We are building frameworks to help you reduce cost, complexity and caffeine • The media stack in and for Silverlight rocks

  3. Mindmap of Session • Point of reference • Fast, cheap, robust • Please install my app • Protecting your investment • Beyond the browser • I’m OK are you OK? • A few more things…

  4. Delivering Video and Audio to Silverlight • Progressive download • Windows Media live streaming • Windows Media on-demand streaming • Smooth Streaming live streaming • Smooth Streaming on-demand streaming • MediaStreamSource 00:00 00:02 00:04 00:06 00:08 2.4M … 300K

  5. Efficient Player Development

  6. Microsoft Silverlight Media Framework • http://www.codeplex.com/smf • Open source media framework for Silverlight • Efficient and robust “out of the box” player creation • Optimized for Smooth Streaming • Iterative real-world engineering

  7. Microsoft Silverlight Media Framework • 1.0 (PDC) • Silverlight 3 • Smooth Streaming only • DVR • Inline and full screen • 1.1 (1/2010) • Silverlight 3 • Added progressive download • Slo-mo • Bit-rate meter • Off live detection • Logging • Chapter markers • Themeing • 2.0 (4/2010) • Silverlight 4 • Blend 4 design time integration • Improved API • Documentation (API and guidance) • Advertising scheduling • Plug in model • Closed captioning • Auto and raw development model • …

  8. Microsoft Silverlight Media Framework DEMO • A simple Progressive, WMS w/multi-cast, Smooth Streaming VC-1 and h.264 player • Playlist support • Styling • Retry agent • Chapter marker support • Closed-captioning support • Ad scheduling • Reference players • http://livesmooth.istreamplanet.com/mix10ces/player.htm • http://player.smooth.vertigo.com/

  9. Instrumenting Effective Install Flow

  10. Microsoft Silverlight Install Logging Framework • http://mediaevangelism.com/silf/silf.html • Drop-in replacement for standard Silverlight.js • Uses simple JavaScript variables to automatically control Install and Upgrade experience • Optional integration with logging frameworks to track installs/upgrades • Exposes Silverlight version via JavaScript • Supports Windows (including Chrome), OSX and Linux (Moonlight)

  11. Microsoft Silverlight Install Logging Framework • Integrate the call to action

  12. Microsoft Silverlight Install Logging Framework • Notify progress

  13. Microsoft Silverlight Install Logging Framework • Inline refresh

  14. Microsoft Silverlight Install Logging Framework • Discreet, session based tracking for • install screen shown to user • upgrade screen show to user • unsupported platform shown to user • "restart required" after upgrade shown to user • user chose to install • user chose to upgrade • user selected a "no thanks" option • user abandoned (navigate away / close browser) • successful installation • Async HTTP logging • parms?u=0f741eb9-b36e-429d-bf77-40b9768e333b&a=1&i=0&t=1268451113857&an=YourApp&av=10.0

  15. Microsoft Silverlight Install Logging Framework DEMO • Instrumentation for live site • Entry flow • Slate flow

  16. Content Access and Protection

  17. Content Access and Proctection • Important background framing • Smooth Streaming Transport Protocol • Protected Interoperable File Format • PlayReady enables encrypted content • PlayReady enables Silverlight to provide the following scenarios • Purchase, subscription, pay per view, rental • PlayReady enabled Silverlight 4 capabilities • On and offline support • Persistent Licenses (multi use based on time) • Non-persistent licenses (single use) • Output protection • Domain support • Chained licenses

  18. Content Access and Proctection • PlayReady with Silverlight 101 • Implement PlayReady server • Build or “lease” • Encrypt content • Windows Media • Smooth Streaming (VC-1 and H.264) • Implement license issuing handler on PlayReady server • Configure Silverlight license request

  19. Content Access and Proctection DEMO • Smooth Streaming manifest with PIFF encrypted header • LicenseAquirer with CustomData (non-persistent license) • Output protection

  20. Extending to the Phone

  21. Extending to the Phone • Facts • Fragmented mp4 and H.264 is the future • IIS Media Services and Smooth Streaming provide a seamless mechanism for targeting multiple playback devices • Silverlight provides a cross platform application development environment • Windows Phone 7 supports • Live and on-demand Smooth Streaming playback for VC-1 and H.264 • Silverlight 3 feature including PlayReady • *No dynamic scaling • Nokia supports • Silverlight 2 feature set

  22. Extending to the Phone - DEMO • Smooth Streaming on Windows Phone 7 • Smooth Streaming and PlayReady on Windows Phone 7

  23. Monitoring Quality and Telemetry

  24. Monitoring Quality and Telemetry • Facts • Humans do not like poor quality • Advertising impressions require human targets • Publishers lose money when humans abandon media experiences • HD delivery requires a consistent set of factors (encoding, delivery, playback) • HD is the new baseline for online media • Silverlight and Smooth Streaming provide a turn key solution to deliver the highest quality video on the web

  25. Monitoring Quality and Telemetry • Anatomy of Quality • Encoder • Quality of encode • Latency and reliability of encode to origin server • Origin Server • Efficient stream “packing” • Availability • CDN • Efficiency of cache filling • Efficiency of edge distribution • Client • Heuristics monitoring • “I/O” monitoring

  26. Monitoring Quality and Telemetry • What’s important? • Stream start up time • Time spent in buffering • Consistent bit rate switching • Dropped to targeted frames per second • HTTP errors • Transient media failures • Catastrophic media failures • CPU utilization • Five ways to get the data you need • Smooth Streaming Advanced Logging • Low level traces from Smooth Streaming • 3rd Party providers • Microsoft Silverlight Media Framework (Diagnostics) • Microsoft Silverlight Analytics Framework

  27. Monitoring Quality & Analytics Your Application Silverlight Analytics Framework Silverlight Media Framework Silverlight Media Framework (Diagnostics) Smooth Streaming Media Element Silverlight Media Framework (Diagnostics)

  28. Monitoring Quality and Telemetry - DEMO • Self service • Smooth Streaming config & Tracing • Silverlight Media Framework Diagnostics • http://mediaevangelism.com/ssmonitor/ • Filter, collect, remote, filter, persist, report • 3rd Party • Conviva • …

  29. A Few More Things

  30. Webcam and Microphone Support • Building a Webcam application • Check if user has “AllowedDeviceAccess” • If not “RequestDeviceAccess” (this must been done on user initiated action) • Start the CaptureSource • CaptureImage or set source of VideoBrush

  31. Demo • Steal the egg…

  32. 3D Made Easy • Pixel shaders + math = Fun • Implementing stereoscopic 3D with Silverlight • Create a stereoscopic video source (side by side of over/under) • Use Pixel Shaders to transform your stereoscopic image into an anaglyph • Wear funny glasses Red Cyan

  33. Converting to Anaglyph Start with stereoscopic source encoded side-by-side or over-under Take the left half of the image and keep only the green and blue channels Start with stereoscopic source encoded side-by-side or over-under Take the left half of the image and keep only the green and blue channels Resize the composited half to its native full size Resize the composited half to its native full size Composite the two halves together into a single image Take the right half of the image and keep only the red channel Take the right half of the image and keep only the red channel

  34. 3D Made Easy • Set media element to no stretch • Set media element size to native video source size • Apply effect to media element • Turn bitmap on media element’s parent (e.g. canvas) • Apply transform to media element’s parent • Effect order matters (set on media element) • _Rendering element • CacheMode (use bitmap cache) • OpacityMask • Opacity • Effect • Clip • Perspective • Transform • _Parent element

  35. Demo • Put on glasses

  36. Wrap Up • The media stack in and for Silverlight rocks • VC-1, H.264, … • Live, on-demand • Multi-cam, Webcam • Play Ready • IIS Media Services 3.0 • Smooth Streaming Client SDK • Expression Encoder • Windows Phone 7 • We are building frameworks to help you reduce cost, complexity and caffeine • Microsoft Silverlight Media Framework • Microsoft Silverlight Analytics Framework • Microsoft Silverlight Install Framework

  37. Thank You • eschmidt@microsoft.com © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

More Related