这篇文章介绍了如何通过RTSP将一个直播流采用推送(Push)的方式推给Wowza Stream Engine 4,并由Wowza Stream Engine 4对外提供直播流服务。
由于大多数RTSP推流的场景都是由一台硬件编码器作为直播源的,因此下面的介绍以支持rtsp push技术的编码器为例子。
配置
你可以用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的现代浏览器。
1.在Wowza Streaming Engine Manager 的Welcome 页面,点击顶部的Applications菜单。
2.配置live应用:
a.在左侧的Applications导航面板,点击live
b.在live下的导航菜单中,点击Source Security,然后在右侧主界面点击Edit。
c.在RTSP Sources下,选择Open (no authentication required).
3.重启live应用
注意:
Wowza在安装后默认是要对RTSP推流进行用户名/密码验证,以上步骤中取消认证,只是为了简化您的测试,先保障用RTSP能够推送到Wowza服务器。在这一步成功后,基于安全的考虑,你再将RTSP认证功能开启,继续测试。 由于RTSP协议有公开的RFC文档,是一个标准协议,因此大部分RTSP客户端或支持RTSP技术的编码器基本都会支持RTSP用户认证。
二、使用XML文件来配置
这个部分描述了建立一个直播应用的过程以及Application.xml文件中的相关配置。
1.创建一个应用文件夹[install-dir]/applications/live。
2.创建一个配置文件夹[install-dir]/conf/live,并将[install-dir]/conf/Application.xml拷贝到这个新的文件夹下。
3.打开并编辑这个新拷贝的Application.xml文件,按下面的描述修改配置(可能有些配置已经是配置好的):
注意: 点击这里可以下载一个已经有默认配置的Application.xml。
a.将Streams/StreamType属性设置为:
Code:
live
b.将HTTPStreamers属性设置为:
Code:
cupertinostreaming,smoothstreaming,sanjosestreaming
c.将Streams/LiveStreamPacketizers属性设置为:
Code:
cupertinostreamingpacketizer,smoothstreamingpacketizer,sanjosestreamingpacketizer
d.将RTP/Authentication/PlayMethod属性设置为:
Code:
none
4.打开并编辑[install-dir]/conf/publish.password文件,添加一个username和password,用来控制RTSP/RTP推送时对wowza的访问(下面是一个username为myuser,password为mypassword的文件例子):
Code:
# Publish password file (format [username][space][password])
# username password
myuser mypassword
5.启动Wowza Stream Engine 4
推送
在你的编码器上输入下面的信息,然后再点击Publish或Start按钮(具体是什么按钮,请参见你的编码器的使用手册,这里只是举个例子):
Host Address: [wowza-ip-address]:1935
Stream Name: live/myStream
注意: 关于在编码器上向Wowza Streaming 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
如果要从远程电脑上播放这个直播流,你只要将FlashRTMPPlayer文件夹拷贝到一个web server上,然后用浏览器访问: http:///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:///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:///SilverlightPlayer/player.html。
注意: The Microsoft® Silverlight® 播放器需要音频和视频同时存在。针对直播流,关键帧的频率(可以在编码器上设置或者叫做gop/fps)必须在1到4秒之间(推荐采用2秒)。只要超过4秒播放就会停止。
RTSP/RTP player
在RTSP/RTP播放器中输入下面的URL:
URL: rtsp://[wowza-ip-address]:1935/live/myStream
Wowza Streaming Engine 4是目前业界功能全面、API接口丰富的流媒体Server产品,采用它作为流媒体服务器产品的案例很多,直播、在线教育、IPTV都有它的用武之地。