I have a question on the Stream Manager configuration on an edge server to repeat a live stream from the origin server to the iPhone.
I followed the instructions listed in the ‘Live Stream Repeater’ section of the userguide pdf. After setting it up, I was able to successfully connect to an edge server via the flash player and view the live stream off of the origin server. But I’m not able to get the iPhone stream to work.
I’m running the application ‘liverepeater’ and the stream ‘myStream.sdp’ on both the origin and edge server. I’ve confirmed that wowza is able to bind successfully to port 554 on the origin server.
What would the entries be on the Stream Manager for the edge server? As per the instructions, I clicked on the ‘start receiving stream’ under the ‘liverepeater/definst’ and entered the following:
Application: liverepeater/_definst_
MediaCaster Type: rtp
Stream Name: rtsp://<originhost>:554/myStream.sdp
On doing so, the origin server’s wowza instance returns the warning:
WARN server comment - Application folder ([install-location]/applications/_defapp_) is missing
I then tried changing the ‘Stream Name’ entry to ‘rtsp://:554/liverepeater/definst/myStream.sdp’. That resulted in the following error on the edge server:
INFO server comment - RTPSessionTracker.add[rtsp://xxx.xxx.xxx.xxx:554/liverepeater/_definst_/myStream.sdp]: 1
WARN server comment - RTPSessionDescriptionDataProviderBasicRTSPWorker.processResponse: Authentication required[401]: Username password not available
WARN server comment - RTPSessionDescriptionDataProviderBasic.getStreamInfo: RTSP/RTP re-streaming timeout.
INFO server comment - RTPSessionDescriptionDataProviderBasicRTSPWorker.close closeSession
INFO server comment - RTPSessionDescriptionDataProviderBasicRTSPWorker.onClose
INFO server comment - RTPSessionTracker.remove[rtsp://xxx.xxx.xxx.xxx:554/liverepeater/_definst_/myStream.sdp]: 0:true
Any idea what I’m doing wrong?
UPDATE:
I managed to get rid of the ‘Authentication required’ error msg by setting the ‘RTP/Authentication/PublishMethod’ and ‘RTP/Authentication/PublishMethod’ (in the ‘liverepeater’ application’s Application.xml file) on the edge server to ‘none’. The ‘Stream Manager’ settings on the edge server are as follows:
Application: liverepeater/_definst_
MediaCaster Type: rtp
Stream Name: rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp
The wowza log in the edge server now displays the following:
INFO application app-start _definst_ liverepeater/_definst_
INFO server comment - RTPMediaCaster.create
INFO server comment - RTPMediaCaster.init
INFO server comment - RTPMediaCaster.Reconnector: start
INFO server comment - HTTPStreamManager.onHTTPRequest: Publish stream successfully started [liverepeater/_definst_]: rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp
INFO server comment - RTPSessionTracker.add[rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp]: 1
INFO server comment - RTPSessionDescriptionDataProviderBasicRTSPWorker.buildSDPData: sessionId:827345958 sessionTimeout:60000
INFO server comment - RTPSessionDescriptionDataProviderBasic.getStreamInfo: RTSP/RTP re-streaming. Success, received SDP data.
INFO stream create - -
INFO stream publish rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp -
INFO server comment - RTPUDPTransport.bind: 0.0.0.0/0.0.0.0:6972
INFO server comment - RTPUDPTransport.bind: 0.0.0.0/0.0.0.0:6973
INFO server comment - RTPUDPTransport.bind: 0.0.0.0/0.0.0.0:6970
INFO server comment - RTPUDPTransport.bind: 0.0.0.0/0.0.0.0:6971
INFO server comment - RTPSessionDescriptionDataProviderBasicRTSPWorker.sessionStart: PLAY: rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp
INFO server comment - RTPMediaCaster.Reconnector: stop
INFO server comment - RTCPHandler.sendFirstRTCPRR[567360897,6973,/<originhost>:6977]
INFO server comment - UDPTransport.firstPacket: 0.0.0.0/0.0.0.0:6973
INFO server comment - RTCPHandler.sendFirstRTCPRR[1141292616,6971,/<originhost>:6975]
INFO server comment - UDPTransport.firstPacket: 0.0.0.0/0.0.0.0:6971
INFO server comment - UDPTransport.firstPacket: 0.0.0.0/0.0.0.0:6970
INFO server comment - MediaStreamMap.getLiveStreamPacketizer: Create live stream packetizer: smoothstreamingrepeater:rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp
INFO server comment - LiveStreamPacketizerSmoothStreaming.startStream[liverepeater/_definst_/rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp]
INFO server comment - LiveStreamPacketizerCupertino.init[liverepeater/_definst_/rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp]: chunkDurationTarget: 10000
INFO server comment - LiveStreamPacketizerCupertino.init[liverepeater/_definst_/rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp]: chunkDurationTolerance: 500
INFO server comment - LiveStreamPacketizerCupertino.init[liverepeater/_definst_/rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp]: audioGroupCount: 3
INFO server comment - LiveStreamPacketizerCupertino.init[liverepeater/_definst_/rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp]: playlistChunkCount:3
INFO server comment - MediaStreamMap.getLiveStreamPacketizer: Create live stream packetizer: cupertinostreamingrepeater:rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp
INFO server comment - CupertinoPacketHandler.startStream[liverepeater/_definst_/rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp]
INFO server comment - LiveStreamPacketizerCupertino.handlePacket: Audio codec: AAC
INFO server comment - LiveStreamPacketizerCupertino.handlePacket: Audio info[liverepeater/_definst_/rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp]: {AACFrame: size: 0, rate:32000, channels:2, samples:1024, errorBitsAbsent:true, profileObjectType:2}
INFO server comment - UDPTransport.firstPacket: 0.0.0.0/0.0.0.0:6972
INFO server comment - LiveStreamPacketizerCupertino.handlePacket: Video codec: H264
INFO server comment - LiveStreamPacketizerCupertino.handlePacket: Video info[liverepeater/_definst_/rtsp://<originhost>0:554/liverepeater/_definst_/myStream.sdp]: {H264CodecConfigInfo: profile: "Baseline", level: 1.2, frameSize: 320x240, aspect: 0/1, }
INFO server comment - LiveStreamPacketizerSmoothStreaming.flushPendingAudio: Bitrate[liverepeater/_definst_/rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp]: 64000
INFO server comment - LiveStreamPacketizerCupertino.endChunkTS[liverepeater/_definst_/rtsp://<originhost>:554/liverepeater/_definst_/myStream.sdp]: Add chunk: id:1 a/v/k:212/0/0 duration:20272
But when I try to access the stream from my iPhone by connecting to:
http://:1935/liverepeater/myStream.sdp/playlist.m3u8
safari just times out with the message ‘Safari could not open the page because the server stopped responding’. And there is no indication of the iphone’s connection attempt in the wowza log.