将摄像头视频从浏览器发送到服务器

发布于 2025-01-03 20:11:50 字数 972 浏览 0 评论 0 原文

我正在尝试 chrome canary 19 令人兴奋的新功能。

我基本上可以从网络摄像头抓取视频并将其设置为视频标签的源元素。

<!DOCTYPE html>
<html>
    <head>
    <title>Camera capture</title>
    <script>
        var localStream;
        var localStreamObjUrl;
        window.onload = function() {
            navigator.webkitGetUserMedia("audio, video", gotStream);
        }
        function gotStream(stream) {
            localStream = stream;
            localStreamObjUrl = webkitURL.createObjectURL(localStream);
            var video = document.getElementById("selfView");
            video.src = localStreamObjUrl;
        }
    </script>
</head>
<body>
    <video id="selfView" autoplay audio=muted></video>
</body>
</html>

https://apprtc.appspot.com 的示例中,我们可以抓取视频并将其流式传输给对等点...

我的问题是,我可以避免进行所有遍历来获取 p2p 连接并直接将视频上传到服务器吗?我希望能够中继视频流而不是 p2p 发送它。

Im trying out the new and exciting features of chrome canary 19.

I can basically grab the video from the web-cam and set it to a source element for a video tag.

<!DOCTYPE html>
<html>
    <head>
    <title>Camera capture</title>
    <script>
        var localStream;
        var localStreamObjUrl;
        window.onload = function() {
            navigator.webkitGetUserMedia("audio, video", gotStream);
        }
        function gotStream(stream) {
            localStream = stream;
            localStreamObjUrl = webkitURL.createObjectURL(localStream);
            var video = document.getElementById("selfView");
            video.src = localStreamObjUrl;
        }
    </script>
</head>
<body>
    <video id="selfView" autoplay audio=muted></video>
</body>
</html>

From the example at https://apprtc.appspot.com, we can grab the video and stream it to a peer...

My question is, can I avoid doing all the traversal to get a p2p connection and directly upload the video to a server? Id like to be able to relay the video stream instead of sending it p2p.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

甜味超标? 2025-01-10 20:11:50

您需要在后面安装某种流媒体服务器。

该过程将是:

  1. 捕获提要
  2. 将其发送到服务器
  3. 转码为各种客户端格式
  4. 管理出站流

有许多免费和付费品种可用:

有关转码的更多信息:xuggler
媒体的“瑞士军刀”:ffmpeg

等等。

You need some kind of streaming media server on the back.

The process would be:

  1. capture the feed
  2. send it to the server
  3. transcode to various client formats
  4. manage the outbound streams

There are numerous free and paid varieties available:

More about transcoding: xuggler
The 'swiss army knife' of media: ffmpeg

and so on.

菩提树下叶撕阳。 2025-01-10 20:11:50

在过去 5 年的大部分时间里,我开发了视频录制解决方案,并为修复 Red5 中的视频录制错误做出了很多贡献。

在桌面上,您可以使用 Flash 客户端 + 媒体服务器(Red5、Wowza、Adobe Media Server),在移动设备上,您可以使用 HTML Media Capture。

我在 上对类似问题进行了详细回答在浏览器上录制视频并上传到LAMP服务器

I have developed video recording solutions for the better part of the last 5 years and contributed a lot to fixing video recording bugs in Red5.

On the desktop you can use a Flash client + a media server (Red5, Wowza, Adobe Media Server) and on the mobile you can use HTML Media Capture.

I gave a detailed answer on a similar question at Record video on browser and upload to LAMP server

婴鹅 2025-01-10 20:11:50

您可以尝试 nimbb,其中它们具有基于 Flash 和 HTML5 的捕获功能。之后,您可以将视频推送到 Brightcove 将其转码为各种客户端格式。

他们有 API 集成。唯一的问题是成本。

You can try nimbb, in which they have Flash-based and HTML5 capturing. After that, you can push the video to Brightcove to transcode it to various clients format.

They have API integration. The only issue is the cost.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文