【问题标题】:Live Stream With OpenTok?使用 OpenTok 直播?
【发布时间】:2023-03-20 21:35:01
【问题描述】:

我正在使用 OpenTok api 进行一对一视频会议。有什么方法可以将它用于实时流。所以在我的情况下,只有一个用户会在会话中发布流,其他所有用户都会连接到那个。
但是它需要为每个流添加发布者元素,所以如何在不发布流的情况下连接到单个用户。
如果解决方案有一个例子,我将不胜感激。

【问题讨论】:

    标签: javascript playframework-2.4 opentok


    【解决方案1】:

    您只需要为“发布用户”和所有其他用户提供 2 个不同的脚本(在 2 个不同的页面上)。

    “发布用户”将拥有连接到会话然后发布流的代码。示例:

    var session = OT.initSession(apiKey, sessionId);
    var publisher = OT.initPublisher('publisher', function(error) {
      if (error) return alert('please reload and allow permission for your camera and mic');
    
      session.connect(token, function(error) {
        if (error) return alert('session connection error: ' + error.message);
    
        session.publish(publisher);
      });
    );
    

    所有其他用户将拥有连接到会话并订阅流的代码。示例:

    var session = OT.initSession(apiKey, sessionId);
    session.on('streamCreated', function(event) {
      session.subscribe(event.stream, 'subscriber', function(error) {
        if (error) return alert('stream subscriber error:' + error.message);
      });
    });
    session.connect(token, function(error) {
      if (error) return alert('session connection error: ' + error.message);
    });
    

    另外,请注意,与许多用户的会话应该是 mediaMode="routed" 以帮助提高质量。即使使用路由会话,拥有太多具有广泛连接性(带宽、延迟、解码能力)的订阅者也会对流的质量产生负面影响。如果您有超过 30 个订阅者的会话,您应该联系 TokBox 支持,以帮助您调整设置以扩展您的会话。

    【讨论】:

    • 成功了!!!谢谢@Ankur .. 我们还可以像在一对一会话中一样处理所有事件..
    猜你喜欢
    • 2018-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-02
    • 2022-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多