我正在尝试制作自己的广播架构。在这个系统中,我使用 Websocket 来传输数据,因为我知道它适合连续数据传输。
服务器只需接收并发送给该会话中连接的所有客户端。
当客户端连接时,它通过 Websocket 接收连续 5 秒的视频块作为 blob 数组。
我的主要问题是在客户端如何将视频 blob 数组设置html video为每 5 秒动态源一次,以便它可以播放每 5 秒的视频数据块。
我在主机和客户端使用 Glassfish 4.0 作为服务器和 Javscript。浏览器:Chrome 源代码:
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)