使用 Wowza IDE 开发第一个 Wowza 服务器扩展应用 -- 监控直播频道
跟 Red5 类似,Wowza 支持服务扩展,用户可以进行自定义应用程序开发,然后将其作为一个模块部署在 Wowza 服务器。Red5 提供了一个 Eclipse 插件进行应用扩展开发(参见《eclipse 的 Red5 插件安装简介》),Wowza 则提供了一个 IDE。本文简要介绍如何使用 Wowza IDE 开发第一个 Wowza 服务器扩展应用。《安装并使用 Wowza 发布你的 RTMP 直播流》一文介绍了如何安装 Wowza 服务器并提供直播服务,本文将继续以此为例,介绍如何使用 Wowza IDE 开发应用对每个流频道进行监控。
I. 下载 Wowza IDE
官方下载地址 http://wowza.cn/mediaserver/developers,选择适合你自己的平台的版本进行下载。
作者上传了一个 Windows 版本的到 CSDN 资源以做备份,如果看官嫌从官网下载速度太慢,可以点击下载:
WowzaIDE-2.0.0.exe
II. 安装
Windows 下直接运行步骤 I 下载的 WowzaIDE-2.0.0.exe。
安装好以后,开始 -> 程序 -> Wowza IDE 2 -> Wowza IDE 2 启动 IDE,选择一个目录作为你的工作台,进入后的界面跟 Eclipse 一般无二:
III. 新建项目
File -> New -> Wowza Media Server Project,打开新建项目向导,输入项目名 defonds-live-module:
点击 Next > 按钮,进入新建 WMS 模块类对话框:
这样子我们就把 ModuleServerSide.java 给导入进来了,Package Explorer 视图中双击导入的类名,发现有编译错误:
将 package com.mycompany.wms.module; 换成我们自定义的包名 package com.defonds.wms.module; 即可。
V. 配置 Application.xml
现在我们已经使用 Wowza IDE 构建好了我们自己定义的 defonds-live-module.jar,我们还需要指示 Wowza 服务器加载这个新模块。
编辑 %Wowza%/conf/live/Application.xml 文件,将以下模块定义添加进 <Modules> 部分的结尾:这时 Wowza 服务器启动起来了,在 Wowza IDE 的下部的控制台标签里可以看到所有的控制台 log 输出。如同 Eclipse 中的 Tomcat,你可以在控制台窗口中点击关闭图标来停止服务器运行。
VII. 模块调试
现在我们来测试一下新模块的运行情况。使用你的 RTMP Client 发送 RTMP 流到 Wowza,比如 Server URL 为 rtmp://172.21.30.104/live,流名为 xxxxS_2059a0734ccfqvga,成功连接 Wowza 服务器。
Wowza IDE 控制台有 onPublish[live/_definst_/xxxxS_2059a0734ccfqvga]: streamName:xxxxS_2059a0734ccfqvga isRecord:false isAppend:false 输出,这个正是我们 DefondsLiveModule 类里的 StreamListener.onPublish 里定义的,测试成功。
参考资料
Wowza IDE User’s Guidehttp://www.wowza.com/forums/content.php?472-How-to-start-and-stop-live-stream-recordings-programmatically-(IMediaStreamActionNotify3)