Microsoft has announced details of Silverlight 5, a major new release of its browser plug-in and desktop runtime for Windows and Mac. Silverlight is also the primary application runtime for Windows Phone 7, though this update does not apply to the phone yet. Silverlight 5 will go into beta in the first half of 2011, and release is planned for the second half of 2011 – no more than a year or so away.
So what’s in Silverlight 5?
On the media side, there is hardware decoding of H.264 video (an overdue feature) plus enhancements including TrickPlay which enables fast-forward and rewind. There is also remote control support of some kind. According to VP Scott Guthrie, you will be able to stream HD video to a netbook.
The bigger area of change is in Silverlight as an application runtime. Here are the highlights:
- Text rendering is much improved, with multi-columns, OpenType support, and control of tracking and leading.
- Postscript vector printing greatly improves printing support, and you can now create a dedicated print view different from what is on screen.
- A new hardware-accelerated 3D graphics API, as well as immediate mode graphics which lets you render directly to the GPU.
- There is a 64-bit version of Silverlight 5.
- WS-Trust support for secure messaging in tandem with Windows Communication Foundation.
- Databinding enhancements, and support for debugging a binding by setting a breakpoint on it.
Alongside these, trusted Silverlight applications have new capabilities. But what is a trusted application? In the past, Silverlight applications become trusted if they run out of the browser and the user gives permission via a dialog. In Silverlight 5 this changes. A Silverlight application can be trusted within the browser as well, though Microsoft says this only works “when enabled via a group policy registry key and an application certificate”. This implies that the feature is aimed at corporate environments rather than for applets with a broad reach.
Once trusted, an in-browser Silverlight applet has the following additional features:
- A new web browser control lets you host HTML content within a Silverlight application.
- Read and write access to My Documents
- Ability to launch Microsoft Office applications – examples include creating an email message or opening a report in Word
- Access to COM components – Microsoft gives the example of accessing a USB security key or a bar-code scanner
- Ability to call native code vith PInvoke (Platform Invoke)
In addition, out of browser applications support multiple windows including child windows, so they can be made to behave even more like normal desktop Windows applications.
You can see the theme here: making trusted Silverlight applications more powerful so that a larger proportion of custom business applications can be implemented in the browser or as Silverlight out-of-browser applications, rather than as traditional Windows applications that require desktop deployment. Put this together with Office 365 and Windows Azure, and you can see how well Silverlight works as a component in Microsoft’s cloud stack – provided users do not have anything inconvenient like an Apple iPad.
But what about the Mac? All these “trusted” features appear to be Windows-only. I asked about Mac support and was told:
We’re evaluating mechanisms for enabling similar trusted applications on the mac.
Fair enough; but the way this is put does suggest that having retreated from any ambitions for broad device reach in statements at the recent PDC conference, it now seems that Microsoft is further retreating from Mac and Windows parity, and moving Silverlight more towards being an application runtime for Windows – though note that there will still be a Silverlight 5 for the Mac and which will have the features that do not require COM or PInvoke.
It is disappointing that there is still no built-in local database support, though there are third-party offerings.
There are a couple of ways to look at Silverlight. Microsoft’s lack of commitment to cross-platform parity and its unwillingness to address broad device support means it does not look good as a broad-reach browser plugin, despite its great features on systems that do support it.
On the other hand, as an alternative to desktop Windows applications Silverlight looks increasingly attractive as its capabilities increase.
More information on the new features here – though note it neglects to mention what will and will not work on a Mac.