Thanks Tim for the post. Really very nice.
I made corrections based on the above link.
| |
Silverlight |
Flash |
| Platform Compatibility |
Silverlight supports only Windows Vista/XP/2000, Windows Server 2003/2008, Windows Mobile 6, Mac OS 10.1/10.5 (PowerPC) and Mac OS 10.1/10.5 (Intel). |
Flash supports Windows Vista/XP/2000, Windows Server 2003/2008, Mac OS 10.1/10.5 (PowerPC), Mac OS 10.1/10.5 (Intel), Linux 5, openSUSE 11, Ubuntu 7.10 or later and Solaris 10. |
| Linux OS Support |
Yes. using Moonlight ,we can achieve but not extensively |
Yes,flash Supports Linux 5, openSUSE 11, Ubuntu 7.10 or later and Solaris 10. |
| Cross Platform support(As a RIA Tool) |
Additional Support for mobile devices with desktop and desktop browsers. Silverlight is supported by Windows mobile device as part of a new service that the NBL have built. Silverlight applications and media streaming can be run on a mobile phone - so Silverlight even at this stage is about more than just the desktop browser and desktop market. Silverlight may be seen soon on the Symbian OS too. |
Flash is spreaded as across the vast majority of both desktops and mobiles platforms, as compared to Silverlight. Flash requires Flash Lite preinstalled on mobile devices. |
| Mobile Application Support |
silverlight Support only for Windows mobiles |
Flash light will support all types of mobiles |
| Licensing |
Media server licensing is cheaper than flash. |
Media server licensing is costlier than Silverlight. |
| Audio/Vedio formats |
WMV, WMA and MP3 media content across all supported browsers without requiring Windows Media Player |
FLV |
| Animation |
Silverlight is based on the WPF animation model, which is both Frame based animations and non-frame based animations, so you define the start and end conditions, and it figures out how to do it. No need to deal with matrices like with Flash. Also, no need to calculate the positions of objects in various frames. |
Flash uses the frame-based animation model. In frame-by-frame animation, we create an object for each frame to produce an animation sequence |
| File Size |
Silverlight uses XAML for its description language, and it is non-compressed, so the size of a Silverlight component is usually larger. |
Flash uses a compressed format, and text and images are embedded in the movie, hence the file size of a Flash component is relatively small. |
| Sound Processing |
Silverlight doesn’t have the low-level audio APIs you would need to write an audio application in the browser. It doesn’t even support playback of WAV files because .NET has very little audio playback support. |
ActionScript offers a set of sound classes that can be used to generate and control sound in a movie. You can add sounds from the library while the movie clip is playing and control those sounds. If you do not specify a target when you create a new sound object, there are methods to control sound for the whole movie. |
| Accessibility |
Silverlight 3 is the first browser plug-in to provide access to all system colors, allowing people with partial vision to use familiar operating system controls to make changes, such as switching to high-contrast color schemes for ease of readability. These features are far fewer than those provided by Flash. |
Flash provides rich accessibility features for those who have hearing and vision problems or who rely on keyboard shortcuts |
| Supported Image Formats |
Silverlight supports only PNG,Gif and JPEG file formats. Some other file formats are supported by Silverlight but in a limited way |
Flash supports almost all image formats. |
| Socket Programming |
Silverlight supports sockets programming through the System.Net.Sockets namespace as well as System.Threading. Silverlight supports asynchronously sending data back and forth across a socket over ports ranging from 4502 to 4534. Silverlight supports cross-domain socket communications between a Silverlight application and any server, provided that a special security policy file is in place on the server. |
flash supports XMLSocket object implements client sockets that allow computers running the Flash player to communicate with a server computer identified by an IP address or domain name. |
| Debugging |
The debugging with Silverlight is simpler than with flash. |
The debugging with flash is harder than Silverlight. |
| Fonts |
Silverlight lets you embed true type font information directly into your projects, and download that information with the Webclient object. |
Dealing with fonts is fairly complex with flash. |
| The development IDE |
The development IDE for Silverlight 2 is Visual Studio 2008 |
Adobe Flex Builder 3 |
| Development languages |
Rich set of development languages are available for Silverlight. Developer can use JavaScript as well as managed code VB.Net, C# for Silverlight development. The dynamic languages (IronPython, IronRuby, and Managed JScript) are supported too |
Only Action Script can be used as programming tool in Flash. |
| Scripting |
For Silverlight scripting, you can choose from among a number of programming languages such as Visual C#.Net and Visual Basic.Net, including client-side scripting with JavaScript. C# and VB.NET can be used to write managed code that runs on and uses all of the enhancements and capabilities of Microsoft’s .NET framework.
|
ActionScript is used to program Flash objects. ActionScript is an object-oriented language with a full range of controls for designing user interfaces. And it can be integrated with back-end technologies that use other languages and frameworks, such as PHP, ASP and Ruby On Rails. It comes with a huge, powerful class library for developing online browser-hosted applications and stand-alone desktop applications. |
| Intergration with Enterprise based technologies |
WCF. The ability to use: WCF basicHttpBinding, duplex binding and WCF REST services is huge. WCF allows architects to create a first class Service Oriented Architecture and it can be consumed by Silverlight clients. Adobe has nothing of the sort. Flash and Flex obviously can consume web services/REST services etc. However, the entire WCF framework gives Silverlight a big advantage LINQ. Silverlight just like Flash/Flex are client side technologies. In the Web 2.0-3.0 days a good design is to minimize calls to the server and try to manipulate some of the data on the client. LINQ works inside Silverlight. It is a VERY powerful architecture option to be able to manipulate data structures fast and efficiently on the client rather than having to rely on the server. This gives Silverlight simply a huge advantage in productivity and architectual capabilities.
|
flash is lacking this area. Flash can read data source in terms of XML or text from some URL and can use it. |
| Webserivce Support |
Web Services support for Silverlight Streaming:The services provided by Microsoft, called Silverlight Streaming, it allows users and developers to host their Silverlight content and apps with Microsoft, taking advantage of their extensive global network of datacenters and their content delivery network. Best of all, this service is free, and while currently it is only in alpha it allows users to upload up to 4GB of content, and to stream up to 1 million minutes of online video delivery at 700kbps, around DVD quality. Starting right now, you can build a total video content site using Silverlight at no cost. The future for this service looks good as they will incorporate Silverlight Streaming with the MSN Video ad network to allow you to easily monetize your video streams and participate in a revenue sharing opportunity with Microsoft while removing your distribution costs. There will also be a premium level of content delivery where you will be able to pay for higher levels of usage - the cost for this service is as yet unknown but expect it to be very low. |
There is not any such service provided by Flash to host the content and application with them. Because of the absence of any such service, building a video site based on Flash is not as cost effective as building a video content site using Silverlight. Moreover, because of the Silverlight Streaming service, the existing Video Content sites might be moving to Silverlight site. |
| Codec support |
Silverlight does not require video codec to run industry standard videos like .WMV |
Flash does not support WMV at all. It only supports FLV (Sorenson Spark or On2 VP6 codecs) and MPEG4 (H.264 codec). |
| Indexed by search engines |
Silverlight based website will be indexed by search engines |
flash based website are not able to index by search engines. |
| Text Representation/SEO |
In Silverlight applications, user interfaces are declared in XAML and programmed using a subset of the .NET Framework. XAML can be used for marking up the vector graphics and animations. Text is deployed on web server as separate entity and can be read and accessed separately. Textual content created with Silverlight is searchable and indexable by search engines as it is not compiled, but represented as text (XAML). |
Flash stores fonts using shape definitions and the player doesn’t understand TTF, hence we cannot separate the text layer from the movie. Typically the text written on a flash component was not SEO friendly however Adobe has made the modifications to Flash so that it will be indexable, and the search engines have begun to index Flash. |
| Deployment |
Silverlight solution deploys to a single XAP file which is directly equivalent to the SWF file created for Flash. In fact, the XAP file is simpler and offers more flexibility than Flash. The XAP file is simply a Zip file containing a highly compressed compiled DLL and potentially an XML file. Therefore, unlike a SWF file, the developer can create and extract an XAP file using standard Zip software and manually optimise the file size before deployment |
The Flash deployment package contains only a single Shockwave (SWF) file, and all images, text and animations are incorporated in this file. Because of the compressed nature of a Flash component, its images and text are not indexed by search engines, and thus not searchable.
|
| Windows Application |
Silverlight is a type of .NET project for building rich client applications for the web. Developers can use the same .NET framework and the same development tools to create equivalent desktop applications, but the type of project is called WPF which has the same features as Silverlight plus much more since it’s a full-blown desktop application |
A Flash movie can be compiled into a Windows application and run as a standalone EXE file. It can also be played on a desktop that has an appropriate Flash player. |
| Media Streaming |
Microsoft Silverlight Streaming by Windows Live is a companion service for Silverlight that makes it easy for developers and designers to deliver rich media as part of their Silverlight applications. The service allows Web designers and developers to host and stream cross-browser media and interactive applications that run on both Windows and Mac. This service can be combined with Microsoft Expression Studio and other third-party tools to create and develop interactive contents. |
Flash provides no such service to host the content and application with them. Thus, building a video website with Flash is not as cost-effective as building one with Silverlight. |
| scalable video formats |
Silverlight supports scalable video formats from HD to mobile. |
Flash does not support scalable video formats from HD to mobile |
| Hardware-assisted editing and encoding solutions |
Silverlight supports Hardware-assisted editing and encoding solutions. |
Flash does not support Hardware-assisted editing and encoding solutions. |
| End-to-end server and application platform |
Silverlight provides End-to-end server and application platform. |
Flash does not provide End-to-end server and application platform. |
| Full screen video |
Silverlight supports Scalable full screen video. |
Flash does not support Scalable full screen video. |
| Webcam and Microphone |
Silverlight 3 will include H.264 support, webcam support. |
Flash supports it. |
| Performace |
Business rules Process much faster than Flash |
Business rules Process is slower than silverlight |
Please suggest me if any thing is need to be corrected.