小编sus*_*097的帖子

如何以 blob 数组的形式接收连续的视频块并在 Websocket 中动态设置为视频标签

我正在尝试制作自己的广播架构。在这个系统中,我使用 Websocket 来传输数据,因为我知道适合连续数据传输。


在我的系统中有一个主持人发起网络摄像头直播视频。我使用MediaStreamRecorder.js记录每 5 秒的视频块,并通过 websocket 作为 blob 数组发送到服务器。

服务器只需接收并发送给该会话中连接的所有客户端。

当客户端连接时,它通过 Websocket 接收连续 5 秒的视频块作为 blob 数组。

我的主要问题是在客户端如何将视频 blob 数组设置html video为每 5 秒动态源一次,以便它可以播放每 5 秒的视频数据块。

我在主机和客户端使用 Glassfish 4.0 作为服务器和 Javscript。浏览器:Chrome 源代码:

服务器广播.java

    package websocket1;

import java.io.IOException;
import java.nio.ByteBuffer;
import java.util.Collections;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

import javax.websocket.OnClose;
import javax.websocket.OnMessage;
import javax.websocket.OnOpen;
import javax.websocket.Session;
import javax.websocket.server.ServerEndpoint;

@ServerEndpoint(value = "/liveStreamMulticast")
public class LiveStreamMultiCast {
    private static final Set<Session> sessions = Collections.synchronizedSet(new HashSet<Session>()); …
Run Code Online (Sandbox Code Playgroud)

javascript java video broadcast websocket

4
推荐指数
1
解决办法
7980
查看次数

标签 统计

broadcast ×1

java ×1

javascript ×1

video ×1

websocket ×1