views:

315

answers:

5

I don't know much about multimedia development and am having some trouble comparing Silverlight and Flash in terms of capability.

In other words, is there anything that can be accomplished in Flash that cannot be accomplished in Silverlight (and vice-versa)? I'm talking more in terms of graphical ability, layout, etc.

For example, could you develop a game in Flash with some Flash-only functionality that could not be also be developed using Silverlight?

+4  A: 

One of the difference is the list of available video codecs in each platform. I know some customers that are forced to use Silverlight because they had a huge number of videos already in WMA format. Some other customers had their library in H264 and in this case the choice is Flash Platform.

Silverlight supported codecs

Flash supported codecs

wezzy
Silverlight 3 added support for H.264 and AAC (http://www.microsoft.com/silverlight/overview/top-features/all-features.aspx#Support)
Adam Kinney
my bad i wasn't aware of that. Thanks for the info
wezzy
actually, Silverlight has built-in support for the codecs mentioned, but it can also support just about any codec because of it's extensible media support (Raw AV Pipeline) - you can read a quick summary on Miguel De Icaza's blog: http://tirania.org/blog/archive/2009/Mar-23-1.html
free-dom
+2  A: 

Silverlight is probably more of a competitor to Flex in nature since they are the tools of choice for developing RIA. Of course anything you can do in flex you can do in flash as well. My knowlege of silverlight is limited but there is nothing that you can create in flash that you can't create in silverlight and vice versa.

The main differences I see is that with silverlight you program in C#.net which offers things that AS3 doesn't. For example generics, operator overloading and threading (not sure if threading is included with silverlight framework, and there is psuedothreading for flash but its not like an inbuilt thing).

That being said I think you would be better off developing games in Flash (yes I am a little biased to). The games community in flash is more mature and proven with a great showcase of games. I am yet to see a game in silverlight that looks any good (and if there is it's in the minority).

Allan
Well, as far as games go, there's a port of Quake to Silverlight (http://www.innoveware.com/quakelight.html). Not feature complete, but they've ported the entire software 3D renderer of the original game - which is impressive if you ask me.
Pavel Minaev
I have also seen Quake running in Flash. Not sure if it was just running the front end in flash with a C++ backend though - this was at MAX a couple of years ago.
Allan
You aren't limited to programming in C# (although that is the most popular choice). It's possible to use C#, Visual Basic, Ruby, Python, JScript (the most similar to ActionScript), and even some others.
free-dom
@free-dom thanks I did not know that :)
Allan
A: 

You could argue from an uneducated point of view that they are identical. You could achieve the same results in whatever it is you are trying to do.

But on the side of the developer there are going to be differences. However nobody cares about the developer, the job just needs to be done.

But what I've said is useless to you. Here is a very good article which compares the two

Video support seems to be the main difference between the two.

Ben Shelock
That article is years out of date and is no longer valid.
DaRKoN_
+1  A: 

Silverlight doesn't have webcam / microphone support (yet). Also not sure if Flash supports printing as Silverlight does not (again... yet).

Edit: Note the comments below. This info was valid at Silverlight 3, Silverlight 4 has addressed plenty of these.

DaRKoN_
flash supports printing
Allan
The current version of Silverlight supports Webcam, Microphone, and Printing.
free-dom
+1  A: 

I suggest you look at a quite recent article at Smash magazine: Flash vs Silverlight: what suits you best?

In short, the things you can't do in Silverlight:

  • sound control
  • no webcam support
  • built-in accessibility features
  • for Linux there is only Moonlight which does not have all Silverlight features
  • less image formats are supported as in Flash

Also see the comparison table on the bottom of the article.

Update: webcam support is added in Silverlight 4.

Gergely Orosz
that is a pretty good comparison although I would say animation is also better on Flash.
Allan
The article has a clear bias. You can't be too confident in the quality of reporting when it claims Silverlight files are large uncompressed XAML files.
AnthonyWJones
There are free open source libraries to handle just about every file format in Sliveright, including PNG, TIFF, JPG, BMP, GIF... http://imagetools.codeplex.com/
Dave Swersky
@Allan - Why would you say animation is better in Flash? Can you achieve more in Flash? Or is it perhaps faster?
Andrew
@Allan-Having experience in both Flash and Silverlight, I'd have to disagree with you. Silverlight's animation performance is easily on par with Flash's and gives me some extremely fine grained control over how I define my animations. I can use the designers in Expression (which is similar to the experience in Flash), I can use the declarative XAML syntax, (MXML has some of this but not nearly as much, and requires the additional Flex framework), or I can use the programmatic model (Flash has this too, however without Flex Builder writing ActionScript can be a bit painful).
free-dom