views:

43

answers:

2

With silverlight 4.0, it is possible to show a live video of the user on the screen: Here is the code

    VideoBrush videoBrush = new VideoBrush(); 
    CaptureSource captureSource = new CaptureSource
                                      {
                                          VideoCaptureDevice =
                                              CaptureDeviceConfiguration.GetAvailableVideoCaptureDevices().First()
                                      };
    bool b = CaptureDeviceConfiguration.RequestDeviceAccess();

    videoBrush.SetSource(captureSource);
    captureSource.Start();
    myrect.Fill = videoBrush;

However, I am looking at a way to show the video to someone else - seeing oneself on screen is not that interesting.

Is it possible?

Do I need my own server? Can I use clowd services to do the communication?

Are there performance issues?

A: 

Silverlight 4.0 supports webcams and with the video brush you can present a video. It does not, however, provide the network/streaming plumbing to capture a stream from a webcam and send it to a peer for real-time display.

I would imagine those middle bits are being worked on by Microsoft and third party vendors.

Dave Swersky
This is somewhat surprising as seeing oneself is not that valuable.
tom greene
One could argue that the webcam support had to be figured out first, and that video compression/streaming is outside the scope Silverlight. Microsoft is clearly planning to support videoconferencing capability, but they will probably leave the plumbing to third party providers.
Dave Swersky
+3  A: 

There will be no built in functionality for that in SL4.

This is the latest information I know (and I keep an eye on this since the SL4 beta): http://forums.silverlight.net/forums/p/145729/324400.aspx

http://www.codeproject.com/KB/IP/SilverlightVoiceVideoChat.aspx

And Jeremiah Morrill made an open source project for SL encoding / decoding: http://silverlightencoder.codeplex.com

Rene Schulte