Real Time Video Chatting + Recording solution in ASP.Net MVC
Solution 1
I would have a look at WebRTC. On the web site it reads:
WebRTC is a free, open project that enables web browsers with Real-Time Communications (RTC) capabilities via simple Javascript APIs. The WebRTC components have been optimized to best serve this purpose.
I never used this but maybe you can adapt the project for your needs.
Solution 2
Your latency will be dependant on what resolution you want to encode to (1080p or whatever) and the hardware of the machine doing the encoding.
FFMpeg is a great tool and best of all Free as far as I know which is unbelievable considering the amount of functionality, a bit tricky to develop with though.
You may want to take a look at this, the Core of your app could hang over this tutorial:
https://www.virag.si/2012/11/streaming-live-webm-video-with-ffmpeg/
Also did you know skype has an API
http://dev.skype.com/desktop-api-reference#Reference
http://dev.skype.com/skype-uri
Solution 3
Have a look at OpenTok. Since you are using .Net might I recommend my library which is available on NuGet.
http://www.tokbox.com/opentok/api
https://github.com/khalidabuhakmeh/OpenTokApi
Hope this helps.
Rahul Patil
Full stack dude at RapidCircle. I write at WrapCode. Reach out to me on my Twitter.
Updated on July 26, 2022Comments
-
Rahul Patil almost 2 years
I want to develop an application in ASP.NET MVC. Here's the detailed scenario -
- App should provide facility if "REAL TIME" video chatting. There should not be any lag (Latency below 4s in accepted but since it will be an interview, mroe than 4s is not acceptable at all.
- Application should record both the videos and upload the stream to Azure Blobs simultaneously so that it can be reviewed later on.
The problems I am facing
- I tried using Silverlight but it captures Video but does not save video + audio in mp4 or wmv format. (I tried using SocketCoder's code but it grabs sequence of jpegs and this won't help when I need an audio as well
- Expression encoder is good to have but the encoding takes a lot of time which causes a latency which is unacceptable..
Please help me with it. Is there any other technology that can be used to achieve this? How is Flex and how FLEXIBLE it is with ASP.NET MVC (.Net framework).
-
dicemaster about 11 yearsI had a look at OpenTok earlier, but due to financial constraints, I was looking to develop it in house. Any help in that regards, will be of any help.
-
dicemaster about 11 yearsFrom what I understood about FFMpeg, it is only for encoding and streaming Videos. What I need is, either real time video chat or recording from the web cam. Also skype APIs are for desktop apps, not for web applications. Please correct me if I am wrong.
-
SimonGates about 11 yearsI was thinking you could use silverlight to capture the video and FFMpeg to encode it to what you need. Take a look at this skype api dev.skype.com/skype-uri
-
dicemaster about 11 yearsLet me look at Silverlight, If it works on Linux as well as Macs then I don't need to use FFMpeg, I can use Azure media services. Regarding Skype api, the client needs to have skype agent installed (which is not guaranteed), so that is out of question.