When to use Flash - If your streaming content to older browsers (IE6 etc) or if your pulling content from elsewhere like youtube or vimeo. Don't use it if your target audience is iphones (or most mobile platforms right now). Otherwise this is your safest bet with the highest possibility of views.
When to use HTML5 - when your targeting users with cutting edge browsers, possibly even nightly builds of webkit. If you have all the video streaming tools and source files to make sure of codec compatibility. If your target audience is on a powerful mobile platform.
When to use Silverlight - I'm not a MS hater, but really I don't see the point of using this. Chances are your going to be asking your users to download a plugin that they know nothing about which just adds to the complexity of being able to view the content. Also there are lots of flash video players easily available however there's a good chance you'll have to build something custom for silverlight and then hope that something more than 5% of the population is willing to install silverlight to watch your content.
It seems like the best idea right now is to use Flash for most things. Down the road HTML5 with a Flash fallback is probably going to be the way to go.
If at first you don't succeed F1... If that doesn't work try Google!
//// Designer, Developer & Teacher - Interactive, Motion and 3D \\\\
Portfolio at WhenImNotSleeping.com