Encoding and streaming to Media Server / IIS
To make some use for the webcam/mic support announced for Silverlight 4, some video/audio encoders should be built in (for example Windows Media or h264/AAC). Also there should be built in support for streaming audio/video to either a Windows Media server or to IIS using live smooth streaming.
forget H264 encoding on the client - patent issues / royalties needed I think
Henrik Erlandsson commented
As separated modules: http://silverlightvideochat.codeplex.com/
1- Client/Server Voice Chat module, one-multi and Full Duplex one-one
2- Client/Server Video Chat module, one-multi and Full Duplex one-one
3- Client/Server Desktop Presenter/Desktop Sharing module, one-multi
As full project: http://webvideoconferencing.codeplex.com/
- Full Silverlight InBrowser Client application
- Multi Conferencing Rooms
- Up to 6 Video/Voice Talkers on each room to unlimited listeners
- Online Presenter System
- Text Chatting System
- Supports Working on Windows and MAC OS
- Suitable to Work on WAN/LAN Networks
Yibeltal Beyabel commented
Siliverlight's ability to capture video/audio will be really great only if it is possible to stream the captured media up to servers. This is highly required for video/audio chat and other great applications
Oleksandr Bilyk commented
What about official microsoft position? Did anyone ask microsoft when thay are going to make this or not? I see only lamentation but no one microsoft answer. Microsoft has many silverlight MVP's and no one answers whether this feature is under construction.
Hopefully this will change soon - had to switch over to Flash on our new project (after two years of Silverlight development) because to this missing piece. Hope to return soon!
Check out this blog http://www.solicall.com/blog/?p=27 - a discussion on echo cancellation for browser-based applications.
Selim Al Hasan commented
It is badly needed as early as posible.Plzzzzzzzzzzzzz..
Burkay OZTURK commented
we really need it.
Hima Vejella commented
Yes.I would love to have this feature
Must have to develop video conferencing systems or create frontends for user generated content.
Essential feature for Silverlight to compete against flash. Beside access to webcam and audio It would be great that:
1) encoding for video and audio - preferably new codecs, preferably with Hardware Acceleration
2) A kind of media server that does the multiplexing
3) decoding of video and audio, preferably with hardware acceleration.
Okey, so the encoding/decoding doesn't exist and this kinda sucks....but what do you mean by built-in support for streaming audio/video to Windows Media server/IIS(smooth streaming)? Isn't this feature already built in Silverlight?
Mukesh Kumar commented
Encoding audio/video streaming is a must for SilverLight team, otherwise this will never come to be an impeccable solution.
There are three critical parts for this:
(1) A realtime encoding/decoding solution for audio and video Flash has this; Silverlight needs it.
(2) A realtime streaming solution(both client-side and server-side, upstream and downstream). Flash has this; Silverlight needs it.
(3) Acoustic echo cancellation. Flash doesn't offer this, and its audio sucks as a result. Silverlight needs it.
Best of all would be if SL made all of these pluggable, so that we could implement our own custom solutions if, for some reason, we needed to work with a different codec format or protocol or thought we could improve on the echo cancellation algorithm.
Richard Lee commented
Devon, the comment is really about encoding, not just decoding - i.e. something like a video conference app using Smooth Stream without a 2 minute latency - there are no in-built encoder codecs in SL and other than MJpeg work arouds, it puts SL behind FDlash which does (albeit somewhat dated encoder).
I think that everyone commenting about non support for multimedia are a bit off base. 1st MS provides 2 types of streaming solutions that integrate with silverlight real well. We have been streaming to media servers and utilizing SL for playback from SL 2 to today.
Shilin Dai commented
Yeah. I've to say that it's a pain in the ass to have webcan and mic support without efficient ways to encode the captured images and voice. I'm desperate to want to arm me with this ability in Silverlight.
Some kind of encoding is must. Without it video and audio capturing is useless. There is no way to use unmanaged code 3thd party libraries (mostly c/c++) in silverlight/c# environment and there isn't any well known managed code libraries.
Martin Kirk commented
How about using the GPU to Encode the H264/(AAC or MP3) stream ??? would be freaking awesome if you didn't need the CPU to Encode the H264 :-)
GPU power = HD Quality + Speed + Low Power
Computing Mastery commented
Yes, we need this for any real video conferencing type applications, P2P and MultiCast of encoded video streams should also be supported.