【问题标题】:How to get all active streams from wowza server?如何从 wowza 服务器获取所有活动流?
【发布时间】:2016-11-30 14:44:03
【问题描述】:

我一直在尝试设置多个实时流(最多 30 个)并制作某种小型视频聊天网站,用户可以将流推送到服务器,其他用户可以观看这些流。我使用了一个 wowza 实例和一个名为 live 的创建应用程序。在阅读了https://streamtoolbox.com 上的所有教程后,我知道用户身份验证、令牌等,但我仍然不知道:

  1. 成功登录的用户如何从 wowza 服务器收集所有活动流?我希望他返回带有各种视频列表的 HTML 页面。登录用户是否应该向 wowza 服务器查询活动流?
  2. wowza 如何区分和存储一个应用程序中的所有活动流?

提前感谢您对这个主题的一些了解。

【问题讨论】:

  • 您在寻找程序化解决方案,例如自定义模块吗?
  • @jabal ,我安装了带有 wowza 插件的 Eclipse,但我仍然是初学者(虽然我知道 Java)。像自定义模块这样的编程解决方案应该可以解决我的问题吗?但是是的,它可能是自定义模块,问题是如何开始,很难找到一些涵盖我问题的教程。

标签: video-streaming wowza


【解决方案1】:

如果您更熟悉 Web 编程,您还可以研究使用 Wowza REST API 查询活动的传入流。您的 REST API 请求可以包装在 HTTP 请求中,返回的结果 JSON 数据可用于使用服务器端脚本填充 HTML 页面。

以下是用于获取名为“live”的应用程序的传入流的 REST API 调用:

curl -X GET --header 'Accept:application/json; charset=utf-8' http://localhost:8087/v2/servers/_defaultServer_/vhosts/_defaultVHost_/applications/live/instances/_definst_

结果类似于:

{
    "serverName": "_defaultServer_",
    "incomingStreams": [{
        "sourceIp": "rtmp://127.0.0.1:28402",
        "isPTZEnabled": false,
        "applicationInstance": "_definst_",
        "name": "myStream",
        "isRecordingSet": false,
        "isStreamManagerStream": false,
        "isPublishedToVOD": false,
        "isConnected": true,
        "ptzPollingInterval": 2000
    }],
    "outgoingStreams": [],
    "recorders": [],
    "streamGroups": [],
    "name": "_definst_"
}

【讨论】:

  • 对我来说查询 REST api 是最好的方法,但是如果这些调用太多,由于服务器性能,我不确定让用户直接查询 wowza api,我认为 api 是为了管理 wowza 而不是为用户提供服务,也许使用中间的应用程序来缓存查询更安全。
【解决方案2】:

您可以构建自己的模块,该模块使用 Wowza API 来迭代应用程序中的所有活动流,甚至是在 VHost 中运行的所有应用程序中。这个模块可能是一个你注册的 HTTPProvider,这样你就可以让它监听一个特定的 URL 并返回你 Wowza 服务器中流的 JSON/XML/HTML 表示。您的网站可能会向该模块发出请求并动态加载数据以将内容呈现给用户。这将是我的一般方法,API 文档和教程可以让您了解如何实际启动自己的模块。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-10
    • 1970-01-01
    • 2016-01-18
    • 2021-07-09
    • 2013-11-23
    相关资源
    最近更新 更多