2015-06-27 169 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

絕對使用已經存在的東西 - 除非你正在嘗試做的是有學習經驗,或者使其成爲核心區別(你可能不會) –