Wednesday, October 22, 2008

Silverlight “Live” Streaming

My friend Mayur Tendulkar called me yesterday and we decided to utilize some of our diwali vacation time spending on some Silverlight R&D. We both are frequent speakers in Community and always we deliver some sessions monthly. We decided to deliver some of those by means of Video,so Silverlight Streaming is what we conclude to be the good option.

So, I am now doing that and this post will explain you how simple video/xap can be uploaded and stream over internet, Thanks to Microsoft and Silverlight.live.com team for making life easy !!

Step 1 : Open http://silverlight.live.com/

Welcome

It is free and you will get around 10 GB of Hosting space as they claim. You just need to sign in with your Live/Hotmail/MSN id and rest will be taken care of.Once you sign in, you will get one Account ID and a complex long Account Key. You will also then able to see 3 options on left panel as Manage Account,Manage Application and Manage Videos as shown below.

ManageStream

Step 2 : Click on Manage Applications 

Once you click on Manage Applications,it will then ask you to enter application name, here I am giving sample name for test purpose,my code ahead will be on pre-created application.

It will also show you current/already created application with their size and one option as Upload an application to upload your xap.

ManageApplication

CreateNewApplication

Step 3 : Configure Application

Once you Create an application,by default it will show you three options as Upload Updated Application – This is in case if you had made any changes in application and re-builded it. Second option is Launch Application Test Page-This will launch application on Test page,this is just to cross-check whether application is working or not,and last option is Delete Application.

The application has a well formated Manifest,you will see this option with [Edit] link, click on that to configure it ahead.You will see following screen which will take all necessary information like Silverlight version and other few parameters like Frame Rate,Windowless mode etc.

ConfigAppV2

Once you click on Update, it will give you the previous screen where you will find several options with some code in <iframe> and javascript format which you can embed in your silverlight application and start doing streaming.

IFrame

ScriptnNamespace

Method 2 will help you to invoke a full fledge Server control inside your application. Some code will look like this :

1. With <iframe> in HTML Sample Page [ This is just sample Code might be different when you develop this because of change in URL]

<body>

<iframe src=http://silverlight.services.live.com/invoke/75985/WEDV/iframe.html scrolling="no" frameborder="0" style="width:500px; height:400px"></iframe>

</body> 

2. With xmlns and <script>

<head>

<script type="text/javascript" src="https://controls.services.live.com/scripts/base/v0.3/live.js"></script>
<script type="text/javascript" src="https://controls.services.live.com/scripts/base/v0.3/controls.js"></script>

<head>

<body>

<devlive:slscontrol silverlightVersion="2.0" src="/75985/TestApp/"></devlive:slscontrol>

</body>

So, that’s the end of it, just save application and Run, Your first Silverlight “Live” Streaming application is ready !! For more information on Silverlight “Live” Streaming visit at :

http://silverlight.live.com

Hope, this will be useful for you for your media centric applications,let me know your feedback.Thanks.

Vikram.

No comments: