Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Session 2 - Silverlight Streaming, and Windows Live Search


Published on

Developing on the Windows Live Platform

Windows Live defines a set of services and components that can be used in your web applications, whether or not you use Microsoft's server platform. In this event we'll show how to use some of those services in your own applications.

1. The Platform for the Web
In this session we look at a selection of Windows Live services and build them into an application. We'll look at the Windows Live Contacts API - really useful for social networking functionality but also a great example of what's possible using the Windows Live Data service. We'll build maps into an application using the Virtual Earth map control. We'll let our users browse their photos using the Windows Live Spaces Photos control, and we'll enable authentication in our app using Windows Live ID.

2. Silverlight Streaming, and Windows Live Search
Silverlight Streaming by Windows Live is an innovative service that allows you to host your Silverlight applications, including rich media content, for delivery to various client platforms. In this session we'll show you how to build a simple Silverlight application, encode some media content, and host it all with Windows Live. We'll extend the sample application to show you how you can leverage the Windows Live Search functionality too.

For more details and the original slidedeck, visit

  • Be the first to comment

  • Be the first to like this

Session 2 - Silverlight Streaming, and Windows Live Search

  1. 1. Developing on the Windows Live Platform Mike Ormond Developer & Platform Group Microsoft Ltd [email_address]
  2. 2. Agenda Live Search Microsoft Silverlight Streaming by Windows Live
  3. 3. Microsoft Silverlight is a cross-browser, cross-platform implementation of .NET for building and delivering the next generation of media experiences & rich interactive applications for the Web.
  4. 4. Timeline & Packaging <ul><li>Timeline </li></ul><ul><ul><li>V1.0 Released September 2007, </li></ul></ul><ul><ul><li>V1.1 in Alpha (timing and some functionality TBD) </li></ul></ul><ul><ul><li>Moonlight – timing TBD (Novell) </li></ul></ul><ul><li>Packaging </li></ul><ul><ul><li>Browser plug-in, little dependency on other s/w </li></ul></ul>
  5. 5. Silverlight V1.0 and V1.1 <ul><li>V1.1 will add .NET to V1.0 </li></ul><ul><ul><li>CoreCLR </li></ul></ul><ul><ul><li>Independent subset of the .NET Framework </li></ul></ul>Silverlight V1.1 Silverlight V1.0
  6. 6. A richer web with Silverlight
  7. 7. Silverlight Streaming <ul><li>Free, 4GB hosting and streaming </li></ul><ul><li>You build the application, we deliver the scale </li></ul><ul><li>High quality, differentiated, controllable user experience </li></ul><ul><li>Complete API Programmability </li></ul>Provides developers a free, scalability-on-demand solution for Silverlight
  8. 8. Using Silverlight Streaming <ul><li>What can it host? </li></ul><ul><ul><li>Silverlight applications </li></ul></ul><ul><ul><li>Content (video) for use in Silverlight apps </li></ul></ul><ul><li>Invoking </li></ul><ul><ul><li>Default (requires JavaScript) </li></ul></ul><ul><ul><ul><li>Special version of Silverlight.js </li></ul></ul></ul><ul><ul><ul><li>Parameters move to manifest </li></ul></ul></ul><ul><ul><li>Iframe (no JavaScript) </li></ul></ul><ul><ul><ul><li>URL syntax </li></ul></ul></ul>
  9. 9. Packaging Content for SLS <ul><li>Single zip file archive </li></ul><ul><ul><li>(Video files restricted to 22MB) </li></ul></ul><ul><li>Add application manifest (manifest.xml) </li></ul><ul><ul><li>List of JavaScript files to load in order </li></ul></ul><ul><ul><li>Set parameters (like Silverlight.createObject()) </li></ul></ul><ul><li>Add startup code to local page </li></ul>
  10. 10. Packaging Content for Silverlight Streaming
  11. 11. Expression Encoder <ul><li>Generates VC-1 (WMV) content </li></ul><ul><ul><li>Optimised for Silverlight </li></ul></ul><ul><ul><li>Add leaders / trailers / watermarks / chapters / captions etc </li></ul></ul><ul><li>Output </li></ul><ul><ul><li>*.wmv file </li></ul></ul><ul><ul><li>Complete Silverlight media player app </li></ul></ul><ul><ul><li>Publish to Silverlight Streaming (plugin preview) </li></ul></ul><ul><li>Command line interface </li></ul>
  12. 12. Video & Expression Encoder
  13. 13. Silverlight Streaming API <ul><li>URL </li></ul><ul><ul><li> </li></ul></ul><ul><li>Credentials </li></ul><ul><ul><li>HTTP basic authentication (HTTPS required) </li></ul></ul><ul><ul><ul><li>Username = Account ID </li></ul></ul></ul><ul><ul><ul><li>Password = Account Key </li></ul></ul></ul><ul><li>File Set </li></ul><ul><ul><li>Group of files representing a Silverlight application </li></ul></ul><ul><ul><li>Contained in a single zip archive </li></ul></ul><ul><ul><li>Include a manifest (manifest.xml) </li></ul></ul>
  14. 14. Silverlight Streaming API Operations <ul><li>PUT / POST </li></ul><ul><ul><li>Adds a file set </li></ul></ul><ul><ul><li>Request body must be a file set (zip file) </li></ul></ul><ul><li>DELETE </li></ul><ul><ul><li>Deletes a file set </li></ul></ul><ul><li>GET </li></ul><ul><ul><li>Retrieves information specified by the URL </li></ul></ul><ul><ul><li>Eg list of file sets, list of files in file set etc </li></ul></ul>
  15. 15. Silverlight Streaming API
  16. 16. Windows Live Quick Apps (Beta) <ul><li> </li></ul><ul><ul><li>Free source code to build social networking sites </li></ul></ul><ul><li>Contoso Bicycle Club </li></ul><ul><ul><li>Virtual Earth </li></ul></ul><ul><ul><li>Spaces </li></ul></ul><ul><ul><li>Silverlight Streaming (geo-sync'd) </li></ul></ul><ul><ul><li>Expo </li></ul></ul><ul><li>Adventure Works Resorts </li></ul><ul><ul><li>Live ID associated with ASP.NET Profiles </li></ul></ul><ul><ul><li>User Generated Video Content </li></ul></ul><ul><ul><ul><li>Accepting file uploads (via a form post) </li></ul></ul></ul><ul><ul><ul><li>Dropping uploads into MSMQ Queue </li></ul></ul></ul><ul><ul><ul><li>Encoding using Expression Encoder </li></ul></ul></ul><ul><ul><ul><li>Uploading to Silverlight Streaming </li></ul></ul></ul><ul><ul><ul><li>Playing videos from Silverlight Streaming </li></ul></ul></ul><ul><ul><li>Map Point Web Service </li></ul></ul><ul><ul><li>Contacts Control </li></ul></ul><ul><ul><li>Spaces Photo Control </li></ul></ul><ul><ul><li>Windows Live Alerts </li></ul></ul><ul><ul><li>Virtual Earth </li></ul></ul><ul><li>Contoso University </li></ul><ul><ul><li>Contacts API (Windows Live Data) </li></ul></ul><ul><ul><li>Virtual Earth </li></ul></ul><ul><ul><li>Spaces </li></ul></ul><ul><ul><li>Silverlight Streaming </li></ul></ul><ul><ul><li>Expo </li></ul></ul>
  17. 17. Considerations <ul><li>Cross domain issues </li></ul><ul><ul><li>Different domains = restricted access </li></ul></ul><ul><ul><li>Use initialisation parameters (initParams) </li></ul></ul><ul><li><iframe> Hosting </li></ul><ul><ul><li>HTML hosted / non-hosted structure differs </li></ul></ul><ul><ul><li>Access to HTML DOM </li></ul></ul>
  18. 18. initParams
  19. 19. Live Search
  20. 20. Adding Search On Your Site <ul><li>Live Search Box </li></ul><ul><ul><li>Fast </li></ul></ul><ul><ul><li>Simple </li></ul></ul><ul><ul><li>No code </li></ul></ul><ul><li>Live Search Web Service </li></ul><ul><ul><li>Flexible </li></ul></ul><ul><ul><li>Powerful </li></ul></ul><ul><ul><li>Unlocks Capabilities </li></ul></ul>
  21. 21. Live Search Box <ul><li>Basic </li></ul><ul><ul><li>Search either web or specific site </li></ul></ul><ul><li>Advanced </li></ul><ul><ul><li>Web search plus optional </li></ul></ul><ul><ul><ul><li>Site Search (multiple sites) </li></ul></ul></ul><ul><ul><ul><li>Search Macro </li></ul></ul></ul><ul><ul><li>Customisation Options </li></ul></ul>
  22. 22. Live Search Box
  23. 23. Live Search Web Service <ul><li>SOAP API </li></ul><ul><ul><li> </li></ul></ul><ul><li>Get application ID </li></ul><ul><ul><li> </li></ul></ul><ul><li>Add Web Reference </li></ul><ul><li>… and play </li></ul>
  24. 24. The Live Search API Offset Total Source Result []Results SourceResponse[] Responses ... ResultFields Source String CultureInfo String AppID SourceRequest[] Requests String Query SearchRequest MSNSearchService.Search(SearchRequest) SearchResponse
  25. 25. The Live Search API
  26. 26. Additional Resources <ul><li>Main Hub </li></ul><ul><ul><li> </li></ul></ul><ul><li>Silverlight </li></ul><ul><ul><li>Main Silverlight Site </li></ul></ul><ul><ul><ul><li> </li></ul></ul></ul><ul><ul><li>Silverlight Streaming Site </li></ul></ul><ul><ul><ul><li> </li></ul></ul></ul><ul><ul><li>Silverlight Streaming SDK </li></ul></ul><ul><ul><ul><li> </li></ul></ul></ul><ul><li>Live Search </li></ul><ul><ul><li>Live Search Service Home </li></ul></ul><ul><ul><ul><li> </li></ul></ul></ul><ul><ul><li>Live Search Interactive SDK </li></ul></ul><ul><ul><ul><li> </li></ul></ul></ul>
  27. 27. MSDN in the UK <ul><li>Visit </li></ul><ul><ul><li>Newsletter </li></ul></ul><ul><ul><li>Events </li></ul></ul><ul><ul><li>Nugget Videos </li></ul></ul><ul><ul><li>Blogs </li></ul></ul>