这篇文章介绍了如何通过RTMP将一个直播流采用推送(Push)的方式推给Wowza Stream Engine 4并由Wowza Stream Engine 4对外提供直播流服务。
由于大多数RTMP推流的场景都是由一台硬件编码器作为直播源的,因此下面的介绍以支持rtmp push技术的编码器为例子。
配置
推送一个流到Wowza
播放
配置
你可以用Wowza Streaming Engine Manager管理界面来配置,也可以用Application.xml文件来配置,两种配置的结果是一样的。
一、使用Wowza Streaming Engine Manager 管理界面来配置
这个部分向您介绍了如何使用Wowza Streaming Engine Manager管理界面来配置。在安装Wowza Streaming Engine软件时,已经默认创建了一个叫做live 的直播应用,你可以直接这个应用上配置,也可以创建一个新的直播应用。
下面的例子使用live这个应用,直播流从一个硬件编码器推送到Wowza。
在使用Wowza Streaming Engine Manager软件时,建议使用Firefox或Google Chrome这类支持HTML5和CSS3的现代浏览器。
- 在Wowza Streaming Engine Manager 的Welcome 页面,点击顶部的Applications菜单。
- 配置live应用:
- 在左侧的Applications导航面板,点击live
-
在live下的导航菜单中,点击Source Security,然后在右侧主界面点击Edit。
- 在RTMP Sources下,选择Open (no authentication required).

注意:
Wowza在安装后默认是要对RTMP推流进行用户名/密码验证,但是由于国内大部分编码器(或其它推流客户端)都不支持Adobe的RTMP用户验证功能,所以我们需要在以上步骤中将RTMP认证关闭掉。首先保障用RTMP能够推送到Wowza服务器。我们在其它文章中继续介绍了如何用URL携带用户名密码参数来进行RTMP推流验证。
二、使用XML文件来配置
这个部分描述了用Application.xml文件进行RTMP推流的配置。
- 用文本编辑器打开应用的Application.xml文件,按下面的描述修改配置(可能有些配置已经是配置好的):
-
将Streams/StreamType属性设置为:
Code:<StreamType>live</StreamType>
-
将HTTPStreamers属性设置为:
Code:<HTTPStreamers>cupertinostreaming,smoothstreaming,sanjosestreaming</HTTPStreamers>
-
将Streams/LiveStreamPacketizers属性设置为:
Code:<LiveStreamPacketizers>cupertinostreamingpacketizer,smoothstreamingpacketizer,sanjosestreamingpacketizer</LiveStreamPacketizers>
-
将RTP/Authentication/PlayMethod属性设置为:
Code:<PlayMethod>none</PlayMethod>
-
将Streams/StreamType属性设置为:
- 启动Wowza Stream Engine 4
推送
在你的编码器上输入下面的信息,然后再点击Publish或Start按钮(具体是什么按钮,请参见你的编码器的使用手册,这里只是举个例子):
Server Url: rtmp://[wowza-ip-address]:1935/live
Stream Name: myStream
Stream Name: myStream
注意: 关于在编码器上向Wowza Stream Engine 4推送直播流的具体操作依据编码器的不同而不同。要了解更多如何在编码器上推送直播流,请联系你的编码器厂家。
播放
注意:在下面的例子中,[wowza-ip-address] 是运行Wowza Stream Engine 4的IP地址或域名。
Adobe Flash Player (RTMP)
针对Wowza Media Server 3.5.0及更高版本,用浏览器打开[install-dir]/examples/LiveVideoStreaming/FlashRTMPPlayer/player.html,输入下面的信息,再点击Connect按钮。
Server: rtmp://[wowza-ip-address]/live
Stream: myStream
Stream: myStream
如果要从远程电脑上播放这个直播流,你只要将FlashRTMPPlayer文件夹拷贝到一个web server上,然后用浏览器访问: http://<webserver>/FlashRTMPPlayer/player.html即可。
Adobe Flash Player (San Jose/Adobe HDS)
针对Wowza Media Server 3.5.0及更高版本,用浏览器打开[install-dir]/examples/LiveVideoStreaming/FlashHTTPPlayer/player.html,输入下面的信息,再点击Connect按钮。
Stream: http://[wowza-ip-address]:1935/live/myStream/manifest.f4m
如果要从远程电脑上播放这个直播流,你只要将FlashHTTPPlayer文件夹拷贝到一个web server上,然后用浏览器访问: http://<webserver>/FlashHTTPPlayer/player.html即可。
注意: 要使用HDS播放这个直播流,你必须采用一个基于OSMF的Flash播放器。
Apple iOS device (Cupertino/Apple HLS)
在苹果设备上的Safari®web浏览器上打开下面的URL:
URL: http://[wowza-ip-address]:1935/live/myStream/playlist.m3u8
注意: The Apple®iPhone®3GS (及更早的设备) 以及iPod touch®终端需要视频的编码格式为H.264 format (Baseline profile level 3 或更低) 以及音频编码格式为AAC或MP3立体声。
注意:你也可以在一台Mac OS® X Snow Leopard 10.6 或更高版本的电脑上用Safari web 浏览器或QuickTime 10.x播放这个直播流。
Microsoft Silverlight (Smooth Streaming)
针对Wowza Media Server 3.5.0及更高版本,用浏览器打开[install-dir]/examples/LiveVideoStreaming/SilverlightPlayer/player.html,输入下面的信息,再点击Connect按钮。
Stream: http://[wowza-ip-address]:1935/live/myStream/Manifest
如果要从远程电脑上播放这个直播流,你只要将SilverlightPlayer文件夹拷贝到一个web server上,再访问: http://<webserver>/SilverlightPlayer/player.html。
注意: The Microsoft® Silverlight® 播放器需要音频和视频同时存在。针对直播流,关键帧的频率(可以在编码器上设置或者叫做gop/fps)必须在1到4秒之间(推荐采用2秒)。只要超过4秒播放就会停止。
RTSP/RTP player
www.ttstream.com 在RTSP/RTP播放器中输入下面的URL:
URL: rtsp://[wowza-ip-address]:1935/live/myStream