android - 如何检查 Wowza 上的 LiveStream(仅限音频)是否已启动?

标签 android live-streaming wowza vitamio

我正在从 Wowza 流式传输到移动设备 (Android)。我正在使用 Vitamio 流媒体库。实际流程是这样的,当我的应用程序点击 Wowza 时,Wowza 没有直播,但过了一会儿 Wowza 就开始直播了。现在又想敲Wowza看看直播有没有。

我想要的是,我的应用程序应该每 5 秒点击一次 Wowza 来检查是否有流。

最佳答案

听起来您只需要查询 Wowza 服务器即可查看您的流是否处于 Activity 状态。如果是这样,那么您可以使用 Wowza REST API 命令来查询传入流(您至少需要版本 4.2+)。

例如,要查询应用程序“实时”的所有传入流,您可以通过 HTTP 发送以下命令:

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":"<hidden>","isPTZEnabled":false,"applicationInstance":"_definst_","name":"wowzademo.stream","isRecordingSet":false,"isStreamManagerStream":true,"isPublishedToVOD":false,"isConnected":true,"ptzPollingInterval":2000}],"outgoingStreams":[],"recorders":[],"streamGroups":[],"name":"_definst_"}

这表明我有一个名为“wowzademo.stream”的传入流(除其他外)。如果您愿意,还可以将响应更改为 xml 而不是 json。

更新

为了回应您的评论,我将添加:

  1. 确保您使用的版本至少为 4.2+;我实际上建议使用版本 4.3,因为最新版本上有一些 REST API 修复;

  2. 如果您使用的是 4.3 版本,请通过设置 <AuthenticationMethod> 禁用身份验证进行测试。和<DocumentationServerAuthenticationMethod> conf/Server.xml 文件的 Root/Server/RESTInterface 容器下为 none;

  3. 确保添加restUserHTTPHeaders属性,使其值为“Access-Control-Allow-Origin:*|Access-Control-Allow-Methods:‌​OPTIONS,GET,PUT,DELE‌​TE,POST |Access-Control‌​ol-Allow-Headers:Content-Type”。

如果上述方法仍然不适合您,请尝试通过设置 <DiagnosticURLEnable> 来启用调试属性。为 true,并添加 <debugEnable> (设置为 true/Boolean 类型)RESTInterface 容器中的属性。您可以通过查看logs/目录下的访问日志来查看生成的日志。

关于android - 如何检查 Wowza 上的 LiveStream(仅限音频)是否已启动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34273477/

相关文章:

javascript - 画中画与 WebRTC 到 Wowza

安卓工作室 3.4.1, Kotlin "unresolved reference: mutableListOf"

android - 华为 map 和位置套件 - 在 LocationCallback 中调用 getMapAsync() 时出现错误

java - 针对不需要的字符和编辑文本的字符长度太短的 else if 语句

通过Root获取Android系统权限

c++ - 跨平台声音API

ffmpeg - 如何在 MAC OS 上使用带有 Jack Audio Connection Kit 的 Wowza 媒体服务器作为输入?

windows-phone-8 - Wowza + 直播 + Windows 手机?

ffmpeg - 如何将 ASIO 设备的输出输出到 IceCast2 或 FFMpeg?

ssl - SSL 上的 RTSP (RTSPS)