Recording audio to server with EasyRTC

973 views
Skip to first unread message

maxjs

unread,
Mar 12, 2014, 6:03:03 PM3/12/14
to eas...@googlegroups.com
Hi everyone - I've been keeping an eye on EasyRTC as we look for a pure JS alternative to flash / Wowza streaming.

The use-case is pretty simple: stream audio from the browser to a server, save the audio to disk (in whatever format) on the server. Is this possible with EasyRTC? If not, would it be a significant undertaking for me to add this?

Thanks!
-Max

Eric Davies

unread,
Mar 12, 2014, 6:35:01 PM3/12/14
to eas...@googlegroups.com
Nothing is as easy as it sounds :-).

To stream the audio to the server, your server will need to look like a WebRTC peer, so you'll need to build google's webrtc library on your server, and add some control logic to it. If you check the webrtc discussion group, you'll find that it's a somewhat painful procedure just to build webrtc native code libraries. You may want to see if you can use node-rtc project so you can skip over that step.

The other approach is making use of a media server that already can look like a webrtc peer. That's more complicated than it should be because such servers were actually built to work with SIP and were extended to support webrtc as an afterthought. 

If you succeed, please let everybody know.

maxjs

unread,
Mar 12, 2014, 8:15:49 PM3/12/14
to eas...@googlegroups.com
Thanks Eric - seems like there's a promising conversation going on over here, but no solutions yet:


Heh..I was wondering why all the media servers that mentioned webrtc seemed to have something to do with SIP.

-Max

Ataul Mukit

unread,
Apr 18, 2015, 2:34:24 PM4/18/15
to eas...@googlegroups.com

Eric Davies

unread,
Apr 18, 2015, 9:23:50 PM4/18/15
to eas...@googlegroups.com
The potential problems I see with using recordOpus on the fly are:
  1) the amount of CPU that is going to be needed, particularly on smaller machines.
  2) the network usage isn't going to be sensitive to the peer connection needs.
For it to be viable, you need to be able to say " you can only this if you have at least an X fast processor and no more than Y conversations".

And of course, it will be obsolete as soon as the long awaited chrome recording API comes out because that should be able to take advantage of the audio compression already done for the peer connection (much less added cpu cost). Until then, it could certainly be useful in transforming a recorded conversation for upload, after the conversation was over, just to reduce upload time.

But if you've got the time and inclination, give it a try and let everybody know how it worked for you.

To amuse: initially, we all think that doing everything on the client is the optimum because it means less work on the server so better scaling. Over time, however, we get tired of trying to jump on that horse and falling down the other side :-).

Eric.

ROWLAND MWALE

unread,
Apr 20, 2015, 6:01:39 AM4/20/15
to eas...@googlegroups.com
Hello maxjs,

you can also check out Muaz Khan's WebRTC Experiments, namely RecordRTC which demonstrates different recording scenarios.

Ataul Mukit

unread,
Apr 21, 2015, 12:53:17 AM4/21/15
to eas...@googlegroups.com
If I am not wrong, Muaz Khan himself said that experiment cannot be deployed in a production scenario.

I think the most feasible way to do it would be having a webrtc based server which can accept webrtc stream from a client and then record it in the server.

I am still searching for a plausible solution to this, and hope to share it if I find any. 

It would be great if some one could give a solution for a practical scenario.

Eric Davies

unread,
Apr 21, 2015, 1:48:44 AM4/21/15
to eas...@googlegroups.com
Dialogic has a media server that can record. Costs money but sets up easily.

Licode can also do recording. I believe Licode was the basis of a free Media server offered by Intel. If you search this group for "Intel", you'll probably find a link to it.

Kurento is a cool open source project that can probably do recording by now.

Eric.
Reply all
Reply to author
Forward
0 new messages