After three public preview releases, I'm proud to announce the final version of Video.Show, a ready-to-run solution for hosting video content on the web!
You might be interested in Video.Show if:
- Your company or school wants to distribute e-learning or educational content over the web for internal or external access;
- You're creating the next YouTube-style site and you want somewhere to start;
- You want to share home movies with your family and friends via your own personal site, rather than uploading them to somewhere public like YouTube or MSN Soapbox;
- You're running a conference or event and you want to make the materials available for anyone else to watch;
- You're a hosting provider and you want to offer your customers a way to store and share videos;
- You simply want to learn how to build a great AJAX web site experience with Microsoft technologies.
We built Video.Show to enable all the above scenarios and many more!
Getting started with Video.Show is easy: all you need is a machine with Visual Studio 2008, SQL Server 2005 Express and Expression Encoder; the software is built to guide you through a few simple configuration steps (setting an admin password and obtaining a Silverlight Streaming key), and then you're up and running. The application is broadly licensed for commercial or non-commercial purposes and full source code is available for review or modification.
For an end-user, we've designed Video.Show to be straightforward to use, both for uploading new videos and for browsing existing videos. The very first thing you'll see when you visit a Video.Show-based site is the "video wall", which is designed to let you browse through video thumbnails without having to navigate from page to page. You can hover over any thumbnail to see a short preview of the video, or click on it to play the video in a full-size view. One nice touch is the way that the rest of the interface fades down when you play a video - this was designed to subtly imitate the way that movie theaters fade the lights when the show starts. As you're watching a video, you can add comments; but unlike typical sites where the comments stand alone, with Video.Show they are triggered by marker points during the video so you can connect the comment to a specific scene.
From a developer perspective, Video.Show was designed to be a showcase of our full web technology platform. It's said from time to time that beautiful code has more to do with art than science: it's easy to see what the code does without reference to documentation or comments because it's clearly laid out and makes good use of the underlying platform to minimize unnecessary cruft. When I look at the way Video.Show uses LINQ to SQL to manage the various different data sources, I see some of that elegance in play - it's genuinely a pleasure to browse through the source code and see how things are done. Video.Show uses Silverlight for the player experience, of course; the videos themselves are uploaded to the Silverlight Streaming content distribution network, so the server bandwidth hosting requirements are pretty lightweight.
Since we published the first release of Video.Show, we've seen many thousands of downloads, along with a number of real-world practical implementations. One of my favorites is filmsforlearning.org, a UK-based education site for students and teachers. There are already over a hundred videos on the site covering everything from chemistry to politics, and they've done a nice job of customizing the default Video.Show interface to add their own unique style along with new features like Windows Live ID integration.
While you're having a look at Video.Show, also check out its sister project, Slide.Show, a straightforward control for publishing highly-customizable slide shows on the web, with picture data coming from a local store or from Flickr. It's very well implemented and extensible for many other back-end image sources. Well worth investigating!