小编hun*_*rus的帖子

JS从websocket播放音频块(〜stream)

我在玩Websocket,媒体API,浏览器和Node.js。我的目标是使两个成员能够实时对话。

所需逻辑

client-1_mic -> client-1_browser --> nodejs server -> client-2_browser -> client-2_speaker
Run Code Online (Sandbox Code Playgroud)

我知道,WebRTC有一种方法,但是我想通过websockets实现。

注意:我使用以下工具:Firefox v56 / 57浏览器,NodeJS(v8),NPM,Ubuntu服务器。

我目前的解决方案现在可以通过网络套接字(也存在通道)进行通信,因此可以进行基本的聊天。

我用于通信的服务器端(server.js)部分:

socket.on('audio', function (data) {
    if (socket.username in userTargets && userTargets[socket.username] in usersInRoom) {
        io.sockets.connected[usersInRoom[userTargets[socket.username]].socket].emit('updatechat', socket.username, 'New audio arrived');
        // send to itself
        io.sockets.connected[socket.id].emit('updatechat', socket.username, 'To ' + userTargets[socket.username] + '> here is some new audio');
        // Audio passing
        io.sockets.connected[usersInRoom[userTargets[socket.username]].socket].emit('audio', socket.username, data);
    } else {
        io.sockets.in(socket.room).emit('updatechat', socket.username, 'Some audio arrived');

        // Audio global spam @todo later add restrict agains the sender …
Run Code Online (Sandbox Code Playgroud)

javascript audio html5 websocket node.js

5
推荐指数
0
解决办法
523
查看次数

标签 统计

audio ×1

html5 ×1

javascript ×1

node.js ×1

websocket ×1