javascript - 如何将视频流发送到 node.js 服务器

标签 javascript node.js video

我的目标:通过 node.js 服务器将一些视频流从一个客户端发送到另一个客户端。但我什至无法将视频从第一个客户端发送到服务器。

客户

var socket = io(":9966");

    socket.on('message', function (data) {
        console.log(data)
    })

    function onVideoFail(e) {
        console.log('webcam fail!', e);
    };


    window.URL = window.URL || window.webkitURL;
    navigator.getUserMedia  = navigator.getUserMedia ||
        navigator.webkitGetUserMedia ||
        navigator.mozGetUserMedia ||
        navigator.msGetUserMedia;

    var video = document.querySelector('video');


        navigator.getUserMedia({video: true}, function(stream) {
            console.log(stream);
            video.src = window.URL.createObjectURL(stream);

            var arrayOfStreams = [stream];
            var medias = new MediaStreamRecorder(stream);
            medias.ondataavailable = function(blob) {
                socket.emit("streaming", blob);
            };
            medias.start();
            socket.emit("streaming", stream);
            socket.emit('test', 'mess from 1');
        }, onVideoFail);

服务器

io.on('connection', function (socket) {
log.info('new con!', socket.id);

socket.send("you connected to server");

socket.on('test', function (data) {
    console.log(data);
    socket.broadcast.send(data);
});

socket.on('streaming', function (stream) {
    log.info("i`m in stream", socket.id);
    log.info(stream);

    socket.broadcast.emit('streaming', stream);
});
});

我可以发送文本和一切很棒的东西,但是当我向服务器发送流时,我得到的是空值。

What I see on server side

我查找了一些提示并找到了,但仍然无法正常工作。也许我错过了什么。

谁能帮帮我?

PS 我从视频标签获取视频

最佳答案

将您的媒体转换为 base64,这样服务器可以将其作为文本字符串读取并返回

关于javascript - 如何将视频流发送到 node.js 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52984568/

相关文章:

javascript - $emit Vue 方法在父级上不起作用,但在子级上有效

javascript - 尝试在 AlanJuden.MvcReportViewer - asp.net.core 中使用查找(突出显示)

javascript - Mongoose 中递归、返回问题中的 Promise

android - 删除时未删除的文件仍显示在 ListView 中

javascript - Cordova播放html5视频

ios - 视频轨道后面的 AVFoundation UIImage

javascript - 获得焦点时选择文本框的所有内容(Vanilla JS 或 jQuery)

javascript - 在定义构造函数后,实例属性可以添加到 JavaScript 原型(prototype)吗?

Node.js SFTP 服务器

javascript - '类型错误 : undefined is not a function' when jumping 'tween modules