2015-06-27 140 views
3

我想开发一个系统,其中有两个客户端可以通过服务器从他们的浏览器彼此视频聊天。第一个客户端将其视频流发送给服务器,服务器将其发送给第二个客户端。另外,服务器将客户端的流保存为视频文件。发送视频和音频流到服务器

我用这个的WebRTC例如:https://github.com/webrtc/samples/blob/master/src/content/getusermedia/source/js/main.js

服务器侧;

var express = require('express'); 
var app = express(); 
var http = require('http').Server(app); 
var io = require('socket.io')(http); 

app.use(express.static('C:/source/')); 
app.get('/', function(req, res) { 
    res.sendFile('C:/source/index.html'); 
}); 

io.on('connection', function(socket) { 
    console.log('user connected.'); 

    socket.on('disconnect', function() { 
     console.log('user disconnected.'); 
    }); 

    socket.on('chat message', function(msg) { 
     ? 
    }); 
}); 

http.listen(3000, function(){ 
    console.log('listening on *:3000'); 
}); 

客户端;

var socket = io(); 

while(streaming) { 
    socket.emit(?); 
} 

我不明白,我应该从哪个来源发送客户端的视频+音频流到服务器。如果我成功上传了流,我将能够在服务器端处理它。

回答

6

您将需要一个能够处理WebRTC媒体的服务器。

我建议寻找到KurentoJanusJitsi VideobridgeFreeSWITCHAsterisk作为替代品。

这将需要更多的努力从您的结束,因为所有将需要更多地了解他们,和的WebRTC实时媒体处理。

如果您需要这方面的工作昨天并希望把你的努力和转向别处,你应该检查出一些在这个report about WebRTC PaaS列出的供应商。

+0

您是否建议我不要自己做,并使用已经完成的项目? – Cem

+1

如果你需要的是昨天的工作,我相信你想使用的东西,已经是done.If你有时间,想做到这一点,我可以说,这是一个美妙的长途跋涉,学到了许多协议和实施他们。 – nakib

+0

绝对使用已经存在的东西 - 除非你正在尝试做的是有学习经验,或者使其成为核心区别(你可能不会) –