java - Wowza - onHTTPCupertinoStreamingSessionCreate 被多次调用

标签 java wowza http-live-streaming

我试图限制每个用户的流,我的想法是将用户是否流视频的信息存储到数据库中。然后,当创建 session 时,我将检查数据库并批准/拒绝流。

我的问题是 onHTTPCupertinoStreamingSessionCreate 被多次触发。我不知道为什么或如何可能。简而言之,这就是我的逻辑:

public void onHTTPCupertinoStreamingSessionCreate(HTTPStreamerSessionCupertino httpSession) {   
    if( alreadyStreaming( userID ) ){
        httpSession.rejectSession();
        return;
    }
    else{
        setStreamActiveInDB( userID, true);
    }
}

public void onHTTPCupertinoStreamingSessionDestroy(HTTPStreamerSessionCupertino httpSession) {  
    setStreamActiveInDB( userID, false );
}

关于如何检查为什么此事件多次触发的任何想法,或者关于如何限制每个用户的流数量的其他想法?

最佳答案

我也遇到过这个问题,一个特殊的场景是 HTTP 流链接位于移动浏览器中。用户单击链接,浏览器不知道内容类型,因此它会进行连接,这会导致新的 HTTP session ,从而调用 onHTTPCupertinoStreamingSessionCreate。然后浏览器收到响应并知道这是一个视频,因此它启动了一个播放器。播放器请求 list ,即第二个 HTTP session 。我已经看到当播放器开始加载视频 block 时启动第三个 session 。然后前两个 session 最终死亡,第三个 session 存活。我必须使用各种技巧来连接这些 session 并将它们视为一个 session 。我希望这能让您了解为什么会发生这种情况。 因此,一般而言,新的 HTTP session 并不等于新连接的播放器。

关于java - Wowza - onHTTPCupertinoStreamingSessionCreate 被多次调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32309442/

相关文章:

ios - RTP iPhone 相机 - 如何在写入时读取 AVAssetWriter 文件?

iOS上传直播

java - 添加之前检查 Controller 方法中是否存在模态属性

java - 是否可以在 Android 上为 Android 开发?

java - 更改 JTable 特定单元格中的字体颜色?

logging - Wowza统计处理

c# - JSch 和 sharpSSH 的主要文件格式是什么?

ios - Wowza GoCoder 直播无法与其他 RTMP 配合使用

ios - 直播Azure框架,是url问题吗?

iphone - 如何修复 "Error: (-12646:0) Illegal MIME type: text/plain"