【问题标题】:Streaming video from browser over socket.io?通过socket.io从浏览器流式传输视频?
【发布时间】:2023-04-04 10:28:01
【问题描述】:

我需要能够通过 socket.io 将网络摄像头视频(和音频)从浏览器流式传输到 node.js 服务器。我知道可以将单个帧作为图像发送,但需要正确编码,最好是 H.264。

我看过像 OpenTok 这样的 API,但它需要订阅并通过云。是否可以在 JavaScript 中通过 socket.io 发送编码视频,也许使用 WebRTC?

【问题讨论】:

  • socket.io 并不是为此而构建的。它是消息传递协议,而不是流协议。为什么必须使用 socket.io。您可以使用 socket.io 将 URL 推送到客户端并让客户端请求该 URL,然后使用浏览器中的一种内置视频流机制来播放该 URL。
  • 问题是关于从客户端到服务器的流式传输,而不是相反。
  • 相关问题:Stream recorded audio from browser to serverSending camera video from browser to server。如您所知,在这里寻求图书馆解决问题的方法被认为是题外话。
  • 谢谢@jfriend00,第二个问题看起来正是我所需要的。如果有人觉得这很有用,我将把问题改写为要求 JavaScript 解决方案而不是库解决方案。

标签: javascript node.js html video socket.io


【解决方案1】:

你可以做什么你可以在你的节点包上安装opencv4nodejs,并且可以从网络摄像头和单个图像功能上抓取一个图像,通过这个设置一个每秒144帧的Settimeout方法你可以发送一个图像通过套接字 io,当您应用 144 的刷新率时,它会看起来像一个视频

【讨论】:

  • 欢迎来到 Stack Overflow!虽然您的答案在技术上可能是正确的,但请编辑以包含相关的代码示例,而不是纯粹描述它们应该实现的代码。使用相关的代码块,使答案结构清晰且易于理解。如果您在添加答案时注意这一点,则您的答案更有可能被投票和接受。感谢您帮助我们的开发人员!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-20
  • 2012-02-17
  • 2019-08-18
  • 1970-01-01
相关资源
最近更新 更多