RIA Development Center
FeaturesTipsEventsVideosSilverlight GallerySilverlight Hosting Resources
Brad Abrams gives a brief overview of what Microsoft .NET RIA Services is and how it's going to make your life simpler. Read more
See more tips
Which platform do you use most often?
(Check one)
AIR
AJAX
Flash
JavaFX
Silverlight
Other

View Results
Get regular email alerts when we publish new features!
DevX RIA Development Update

More Newsletters
Silverlight Streaming: Free Video Hosting for All (cont'd)

Publishing Plugin for Expression Encoder 2
In June, Microsoft released a Publishing Plugin for Expression Encoder 2 to facilitate uploading videos to the Silverlight Streaming web site. This plugin is highly recommended because it almost fully automates the uploading process. Simply enter your Account ID, Account Key and a name for your video / application and the plugin takes care of everything else. One very useful feature is that the plugin allows for partial updates, thus uploading only those files which are different from the ones already stored on the Silverlight Streaming web site.

The Publishing Plugin must be downloaded from the Microsoft web site and its installation must target a folder named Plugins which is located in the root of the Encoder 2 application folder. (If you don't always accept default locations for your applications this tip can help explain why the plugin may not immediately show up in your working copy of Expression Encoder.)

Again using Camtasia, I created a screencast which walks through the steps for using the Expression Encoder Publishing Plugin. After creating this video using Camtasia I encoded it in Expression Encoder for use with Silverlight and then uploaded it to the Silverlight Streaming web site using the Publishing Plugin. You can watch this screencast here.

Figure 3. Hosting a Non-Screencast Video on the Silverlight Streaming Web site (click to play)

If you already have a video which you would like to include in your Silverlight web application, the process of encoding and deploying it is very simple. The first step is to import your video into Expression Encoder. Then choose the appropriate settings, configure the Publishing Plugin and press the Encode button. That's it.

Of course, the reason why that explanation sounds so unreasonably over simplified is that it assumes that you will accept all—or at least most—of the default settings and that you do not wish to edit your video, add any overlays or callouts, fade-ins or fade-outs, etc. Naturally, if you wish to fine tune your video, the process becomes considerably more complicated. But if your video is ready to use in an "as is" condition, the entire process is simple if you use Expression Encoder.

More surprisingly, it is just as easy to upload a video to Silverlight Streaming without Expression Encoder, merely by using the Silverlight Streaming web-based UI. In that case, the Silverlight Streaming web site performs some onsite encoding to reduce the bandwidth requirements of your video (a before and after comparison of the video quality clearly shows that the video delivered from Silverlight Streaming has been modified). Moreover when users access your video, a generic player is provided as shown in the following screenshot.

Figure 4. Generic video player included in Silverlight Streaming (click to play)

As you can see from a comparison of all of the Expression Encoder templates, this generic player turns out to be identical to Corporate Silver. So even without Expression Encoder, Silverlight Streaming can provide you with two essential benefits: on-the-fly video compression and a built in player.

You can see a screencast showing how to upload a video using just the Silverlight Streaming UI here.

Figure 5. Screencast to show how to upload a video using the Silverlight Streaming UI (click to play)

Conclusion
Including video content in a Silverlight web application can be an almost painless task, thanks to the free (or at least low cost) content hosting provided by Silverlight Streaming. Expression Encoder, while technically not required to either process or upload video files, gives you full editing and preparation control over any video.

While Silverlight Streaming permits the hosting of both applications and videos, its real benefits are clearly associated with videos. While most XAML-based application content will likely continue to be hosted on general purpose web hosts, there are some major advantages to using Silverlight Streaming for your video content. If you have been considering adding some video to your web site, there is no longer any reason to hesitate.

Useful Links

Previous Page: Using Expression Encoder 2  
Cal Schrotenboer is a C# developer with experience in building Windows Forms application front ends for SQL Server databases. He also teaches programming classes at Foothill College in Los Altos Hills, California and Microsoft Network Administration (MCSE) classes at Mission College in Santa Clara. Cal maintains a WPF blog at www.WPFLearningExperience.com. His outside interests include travel and photography (www.travelswithcal.com).
Page 1: Silverlight Application for Deployment Page 3: Publishing Plugin for Expression Encoder 2
Page 2: Using Expression Encoder 2 
Rate This Content:
Low     High
5 after 7 ratings