Silverlight_Firestarter-0742Silverlight 5, announced at the Silverlight Firestarter this past Thursday, introduces many new features including several that focus on premium media experiences and business application development.

You can watch Scott Guthrie’s keynote here if you missed it, or if you want to see it again. 

In addition to this quick list of features we disclosed for Silverlight 5, I’m working on some posts to elaborate on the Silverlight 5 demos that you saw in the keynote, some behind the scenes looks, and some great photos from the event. We spent much of the past 5 months working up to this event from what started as a (very messy) diagram on my whiteboard … most of which is still up there. We built a team from many parts of the company to handle the aspects of the event and on Dec 2 we delivered what became the Silverlight Firestarter 2010. I had the honor of playing many roles in the event and I am blown away by the overwhelming support we received inside and outside of Microsoft.

But this post is all about the features, so let’s first start with the features we announced:

Premium Media Experiences

Silverlight 5 offers improved media support and rich UI capabilities:

  • Hardware Decode and presentation of H.264 improve performance for lower-power devices to render high-definition video using GPU support.
  • TrickPlay allows video to be played at different speeds and supports fast-forward and rewind. At up to twice the speed, audio pitch correction allows users to watch videos while preserving a normal audio pitch.
  • Improved power awareness prevents the screen saver from being shown while watching video and allows the computer to sleep when video is not active.
  • Remote-control support allows users to control media playback.
  • Digital rights management advancements allow seamless switching between DRM media sources.

Business Application Development

  • Fluid user interface enables smoother animation within the UI. Inter-Layout Transitions allow developers to specify animations to apply when elements are added, removed or re-ordered within a layout. This provides smoother user experiences when, for example, items are inserted into a list.
  • Text improvements make it possible to build rich magazine-style text layouts:
    • Multicolumn text and linked text container allow text to flow around other elements.
    • Tracking/leading set precisely how far apart each character is for full creative control.
    • Text clarity is improved with Pixel Snapping.
    • Text layout performance is significantly improved.
    • OpenType support has been enhanced.
  • Support for Postscript vector printing enables users to create reports and documents, including the ability to create a virtual print view different from what is shown on the screen.
  • Applications can now work the way users expect with added support for double-click and Combobox type ahead.
  • Model View ViewModel (MVVM) and Databinding enhancements allow more work to be done more easily via XAML:
    • Debugging support now allows breakpoints to be set on a binding, so you can step through binding failures.
    • Implicit DataTemplates allow templates to be created across an application to support a particular type by default.
    • Ancestor RelativeSource allows, for example, a DataTemplate to bind to a property on the control that contains it.
    • Binding in style setters allows bindings to be used within styles to reference other properties.
    • The DataContextChanged event is being introduced. Markup extensions allow code to be run at XAML parse time for both properties and event handlers, enabling cutting-edge MVVM support.
  • Networking and Windows Communication Foundation enhancements:
    • Reduced network latency by using a background thread for networking.
    • WS-Trust support: message security — encrypted at the Windows Communication Foundation level; Security Assertion Markup Language authentication token.
  • Silverlight 5 performance improvements include these:
    • Reduced network latency by using a background thread for networking.
    • XAML parser improvements that speed up startup and runtime performance.
    • Support for 64-bit operating systems.
  • Graphics improvements
    • Graphics Processing Unit (GPU) accelerated 3-D application programming interface (API) provides rich graphics on the Web for building advanced data visualizations and rich user experience (UI).
    • Immediate mode graphics API allows direct rendering to the GPU.
    • Hardware acceleration is enabled in windowless mode with Internet Explorer 9.
  • Silverlight offers a new class of trusted applications that brings desktop capabilities to the browser for the first time. These features, when enabled via a group policy registry key and an application certificate, mean users won’t need to leave the browser to perform complex tasks:
    • Host HTML content as a Web browser control within the Silverlight application. HTML pages, such as help content or e-mail, can be integrated within the application.
    • Read and write files to the user’s My Documents folder, making it easier to find media files or create local copies of reports.
    • Launch Microsoft Office and other desktop programs. Users can open Microsoft Outlook and create an e-mail message, or send a report to Word utilizing the power of Office.
    • Access devices and other system capabilities by calling into application COM components. Users can access a USB security card reader or a bar-code scanner.
    • Enjoy full keyboard support in full screen, which enables richer kiosk and media viewing applications.
    • Call existing unmanaged code directly from within Silverlight with PInvoke.
  • Out-of-browser trusted applications are further enhanced:
    • Existing unmanaged code can be called directly from within Silverlight with PInvoke.
    • Child Window support allows multiple windows to be launched from the application.
  • Tools improvements include these:
    • Microsoft Visual Studio profiling support including CPU, memory, thread contention.
    • Visual Studio Team Test support.