Streaming to QuickTime and/or other RTSP Players

Hello Everyone:

I downloaded Media Server v2.0.0 build 22912 to begin the process of testing some of our latest codec developments for streaming applications. (Note: I apologize, but I am fairly new to the low-level details around streaming protocols, architectures, embedding media in browsers, etc… (I come from the audio coding & signal processing (DSP) world :))

I can stream to iPhone without any issues (as per the Wowza MS2 Quick Start via HTTP using port 1935). To do this, I have created an Wiki page and then populate the page with media links that point to the Wowza install directory/conf/myApp… when I select the link the streaming server begins streaming to the iPhone and plays fine.

However, I am having trouble with streaming to a QuickTime player on another machine on the subnet. (via RTSP port 554 or via HTTP via port 1935). When I open the following URL on QT (http://192.168.1.108:1935/myApp/mp4:Extremists.m4v/playlist.m3u8) The Wowza Streaming Engine responds with:

INFO cupertino connect 1090978552 -

INFO stream create Extremists.m4v -

But, QT responds with “Alert The URL is no valid” (I configured QT for port 1935 via HTTP and have tried other URL variants w/o the .m3u8 tag/file, etc… without luck)

Also tried, RTSP via port 554 included the playlist.m3u8… without any luck. QT launches fine but indicates the connection failed and the live b’cast is paused. However, I noticed the following in the Wowza console:

INFO vhost comment defaultVHost Bind attempt ([any]:554)

WARN vhost comment defaultVHost Bind failed: ([any]:554): java.net.SocketException: Permission denied

I am not sure why the bind failed with port 554(?) (I don’t have any (known) port restrictions and have admin rights to the source server). Port 1935 binding was successful.

Note: my application.xml stream type is: rtp-live for the RTSP trial and default for the HTTP trials. These settings have not impacted my ability to play the media on the iPhone. (?)

I looked through the forums to try and resolve my issues but have not come across any threads that seem related.

I deeply appreciate any insight experts may have.

Also, are there better methods to simultaneously allow streaming to both mobile devices (iPhones, etc) and local PC machines (using a browser with QT, etc)?

Thank you.

Jeffrey

Im stuck with mov VOD streaming over quicktime palyer too. The mov files plays well over flash player but not over quicktime player.

Some other application is binding to port 554. It could be Windows Media Server or Darwin. They need to be shutdown so that Wowza can bind to that port.

Also, be sure UDP ports 6970-9999 are fully open on your router/firewall.

Also, see this post:

https://www.wowza.com/forums/showthread.php?t=7870

you might also try VideoLAN VLC as an RTSP player:

https://www.wowza.com/docs/how-to-configure-vlc-media-player-for-rtsp-rtp-playback-rtsp-rtp-interleaved-and-tuning

Charlie

Did you see the links I posted? Have you opened the UDP ports? Have you tried VLC? Have you tried VLC with RTSP/RTP over TCP? Post the section from the logs where you are trying to connect. That will most likely give us a clue. Also, post the RTSP URL you are using.

Charlie

The problem is that video on demand over RTSP is not supported yet.

Richard

UPDATE: Video On Demand over RTSP/RTP is now available in the latest version

Not that I know of.

Richard

I presume there is no way of getting quicktime player to accept a http stream? like http://wowza-ip:1935?

I am finding that Quicktime Player is just sitting at “Connecting”.

Following the userguide I’ve changed the Port settings in the Vhost.XML and added 554.

I’m running the server locally on my Mac.

Getting the following bind error:

INFO vhost comment defaultVHost Bind attempt ([any]:554)

WARN vhost comment defaultVHost Bind failed: ([any]:554): java.net.SocketException: Permission denied

Any ideas?

Ta

Pip

Found something that said about root only binding to ports below 1000.

I was starting the server from the startup link in the mac applications folder. Your notes say the default user for OS X is root - but it wasn’t. Started it from terminal with a sudo before the ./startup.sh

Thats got rid of the 554 bind error.

Still having no luck what so ever getting Quicktime player to play the rtsp stream? Any ideas where to start finding where the problem is.

If I try to connect to a deliberately bad address the player tells me. So I’m guessing the lack of an error but a continuous “Connecting” means it is trying to connect to something it knows exists?

Thanks

Pip

I checked the links. On a mac with QT Player 10… so don’t seem to have any preferences for QT anymore!

UDP ports? - Player/Broadcaster/ Machine are all localhost - no firewall installed?

Have tried VLC - don’t understand it most of the time - but it’s not working either.

Url I am using is rtsp://localhost:1935/live/mystream.sdp

Access log looks like this:

2010-02-19 19:33:38 GMT connect rtsp INFO 200 1230424904 - defaultVHost live definst 963.519 0:0:0:0:0:0:0:1%0 554 rtsp://localhost:1935/live/mystream.sdp 0:0:0:0:0:0:0:1%0 rtsp - QuickTime/7.6.3 (qtver=7.6.3;cpu=IA32;os=Mac 10.6.2) 1230424904 0 0 - - - - - - - - - - - - - rtsp://localhost:1935/live/mystream.sdp -

2010-02-19 19:33:38 GMT announce rtsp INFO 200 1230424904 - defaultVHost live definst 963.521 0:0:0:0:0:0:0:1%0 554 rtsp://localhost:1935/live/mystream.sdp 0:0:0:0:0:0:0:1%0 rtsp - QuickTime/7.6.3 (qtver=7.6.3;cpu=IA32;os=Mac 10.6.2) 1230424904 0 0 - - - - - - - - - - - - - rtsp://localhost:1935/live/mystream.sdp -

2010-02-19 19:33:38 GMT create stream INFO 200 - - defaultVHost live definst 0.0 - - - - - - - - - - 4 0 0 0 - - - - - - - - - - -

2010-02-19 19:33:38 GMT stop stream INFO 200 mystream.sdp - - - - 937.612 - - - - - - - - - - 1 54755 0 18873716 mystream.sdp - - - - - rtmp://localhost/live/mystream.sdp rtmp://localhost/live/mystream.sdp - - -

2010-02-19 19:33:38 GMT publish stream INFO 200 mystream.sdp - defaultVHost live definst 0.049 - - - - - - - - - - 4 0 0 0 mystream.sdp - - - - - /mystream.sdp /mystream.sdp - - -

2010-02-19 19:33:38 GMT publish rtsp INFO 200 1230424904 - defaultVHost live definst 963.623 0:0:0:0:0:0:0:1%0 554 rtsp://localhost:1935/live/mystream.sdp 0:0:0:0:0:0:0:1%0 rtsp - QuickTime/7.6.3 (qtver=7.6.3;cpu=IA32;os=Mac 10.6.2) 1230424904 0 0 - - - - - - - - - - - - - rtsp://localhost:1935/live/mystream.sdp -

2010-02-19 19:33:43 GMT play stream INFO 200 mystream.sdp - defaultVHost live definst 942.717 [any] 1935 rtmp://localhost/live 0:0:0:0:0:0:0:1%0 rtmp unknown MAC 10,0,32,18 1744975334 3819 18905511 1 0 0 18873716 mystream.sdp - - - - - rtmp://localhost/live/mystream.sdp rtmp://localhost/live/mystream.sdp - rtmp://localhost/live -

2010-02-19 19:34:55 GMT stop stream INFO 200 mystream.sdp - defaultVHost live definst 1015.257 [any] 1935 rtmp://localhost/live 0:0:0:0:0:0:0:1%0 rtmp unknown MAC 10,0,32,18 1744975334 3876 32397486 1 75510 0 32348258 mystream.sdp - - - - - rtmp://localhost/live/mystream.sdp rtmp://localhost/live/mystream.sdp - rtmp://localhost/live -

2010-02-19 19:34:55 GMT destroy stream INFO 200 mystream.sdp - defaultVHost live definst 1015.257 [any] 1935 rtmp://localhost/live 0:0:0:0:0:0:0:1%0 rtmp unknown MAC 10,0,32,18 1744975334 3876 32397486 1 - 0 32348258 mystream.sdp - - - - - rtmp://localhost/live/mystream.sdp rtmp://localhost/live/mystream.sdp - rtmp://localhost/live -

2010-02-19 19:34:55 GMT disconnect session INFO 200 1744975334 - defaultVHost live definst 1015.297 [any] 1935 rtmp://localhost/live 0:0:0:0:0:0:0:1%0 rtmp unknown MAC 10,0,32,18 1744975334 3876 32397486 - - - - - - - - - - - - - rtmp://localhost/live -

Ta

Pip

Hi,

It looks like Wowza couldn’t bind to ports 554 and 80, most probably because you have other services running that are using those ports.

Did you try adding the Wowza port to the streaming URL during your test?

It should work if you use an URL of this type: rtsp://wowza_ip:1935/appName/definst/streamName

Regards,

Zoran

Hi,

Did you follow the instructions from this article? https://www.wowza.com/docs/how-to-re-stream-video-from-an-ip-camera-rtsp-rtp-re-streaming

What is your application StreamType? Are you using the StreamManager to publish the IP camera stream or you are using the rtp-live StreamType?

Using VLC or QuickTime, can you connect to your IP camera RTSP stream directly?

Regards.

Assuming that you have followed all the configuration instructions from the article you have mentioned, after placing your camera.stream file in the [install-dir]/content folder, you should connect to the StreamManager page and follow these steps (also described in the article you followed )

  • Enter the following URL in a web browser:

URL: http://[wowza-ip-address]:8086/streammanager

  • In the Security dialog box, enter your admin username and password.

  • In the Stream Manager webpage, click the [start-receiving-stream] link just below the live application folder.

  • In the Start Receiving Stream dialog box, select the following MediaCaster Type option: rtp

  • In the Stream Name field, enter camera.stream.

  • Click OK.

After the IP camera stream is successfully published, in the RTMP player you mentioned you will need to use this:

Server: rtmp://WowzaIP/live

Stream: camera.stream

To play the stream in VLC or QuickTime, you should use: rtsp://WowzaIP:1935/live/definst/camera.stream

Zoran

I thought you are trying to connect to an IP camera.

Are you using your iPhone to publish a stream to Wowza? or are you using Wowza to pull the stream from your iPhone?

Can you paste in the contents of your camera.stream file?

Regards,

Zoran

You are right to use the camera.stream file. SO, if you follow earlier instructions, it should work.

Place the camera.stream file in the content folder.

Start publishing the stream with Stream Manager.

Play back the stream from the Wowza server using the RTMP flash player or directly with VLC player.

Zoran

Hi,

I followed the steps mentioned by you and I selected ‘Media caster Type’ as ‘rtp’ and Stream Name as camera.stream and as soon as I press ok, the terminal shows that the stream is received but is also timed out and when I try to play the video in the Flash player as suggested by you I get these messages in the terminal through the whole process. I have highlighted the message in bold that appear when I click ‘Connect’ in the Flash PLayer.

INFO server comment - RTPMediaCaster.Reconnector[1198409461:live/definst:camera.stream]: done: 1

INFO server comment - RTPMediaCaster.streamTimeout[1198409461:live/definst:camera.stream]: timeout:12000 diff:12023 reason:101

INFO server comment - RTPMediaCaster.resetConnection[1198409461:live/definst:camera.stream]:

INFO server comment - RTPMediaCaster.closeRTPSession[1198409461:live/definst:camera.stream]

INFO server comment - RTPSessionDescriptionDataProviderBasicRTSPWorker.close closeSession

INFO server comment - RTPSessionDescriptionDataProviderBasicRTSPWorker.onClose

INFO stream unpublish camera.stream -

INFO server comment - RTPSessionTracker.remove[rtsp://144.1.1.137]: 0:true

INFO stream destroy camera.stream -

INFO server comment - RTPMediaCaster.Reconnector[1198409461:live/definst:camera.stream]: start: 2

INFO server comment - RTPSessionTracker.add[rtsp://144.1.1.137]: 1

INFO server comment - RTPSessionDescriptionDataProviderBasicRTSPWorker.buildSDPData: sessionId:1026413173 sessionTimeout:0

INFO server comment - RTPSessionDescriptionDataProviderBasic.getStreamInfo[live/definst]: RTSP/RTP re-streaming. Success, received SDP data.

INFO stream create - -

INFO stream publish camera.stream -

INFO server comment - RTPMediaCaster.Reconnector[1198409461:live/definst:camera.stream]: done: 2

INFO stream destroy camera.stream -

INFO session disconnect 152822890 -

INFO session connect-pending 0:0:0:0:0:0:0:1%0 -

INFO session connect 0:0:0:0:0:0:0:1%0 -

INFO stream create - -

INFO server comment - RTPMediaCaster.streamTimeout[1198409461:live/definst:camera.stream]: timeout:12000 diff:12022 reason:101

INFO server comment - RTPMediaCaster.resetConnection[1198409461:live/definst:camera.stream]:

INFO server comment - RTPMediaCaster.closeRTPSession[1198409461:live/definst:camera.stream]

INFO server comment - RTPSessionDescriptionDataProviderBasicRTSPWorker.close closeSession

INFO server comment - RTPSessionDescriptionDataProviderBasicRTSPWorker.onClose

INFO stream unpublish camera.stream -

INFO server comment - RTPSessionTracker.remove[rtsp://144.1.1.137]: 0:true

INFO stream destroy camera.stream -

INFO server comment - RTPMediaCaster.Reconnector[1198409461:live/definst:camera.stream]: start: 3

INFO server comment - RTPSessionTracker.add[rtsp://144.1.1.137]: 1

INFO server comment - RTPSessionDescriptionDataProviderBasicRTSPWorker.buildSDPData: sessionId:452456682 sessionTimeout:0

INFO server comment - RTPSessionDescriptionDataProviderBasic.getStreamInfo[live/definst]: RTSP/RTP re-streaming. Success, received SDP data.

INFO stream create - -

INFO stream publish camera.stream -

INFO server comment - RTPMediaCaster.Reconnector[1198409461:live/definst:camera.stream]: done: 3

INFO server comment - RTPMediaCaster.streamTimeout[1198409461:live/definst:camera.stream]: timeout:12000 diff:12024 reason:101

INFO server comment - RTPMediaCaster.resetConnection[1198409461:live/definst:camera.stream]:

INFO server comment - RTPMediaCaster.closeRTPSession[1198409461:live/definst:camera.stream]

INFO server comment - RTPSessionDescriptionDataProviderBasicRTSPWorker.close closeSession

INFO server comment - RTPSessionDescriptionDataProviderBasicRTSPWorker.onClose

INFO stream unpublish camera.stream -

INFO server comment - RTPSessionTracker.remove[rtsp://144.1.1.137]: 0:true

INFO stream destroy camera.stream -

Please let me know what is going wrong.

Thanks,

Manas

It looks like Wowza is not able to connect to the RTSP source coming from your iPhone.

Can you try adding this property to your Application.xml configuration file for your “live” application in order to get some more debugging information? https://www.wowza.com/docs/how-to-re-stream-video-from-an-ip-camera-rtsp-rtp-re-streaming#extraLog

Did you try publishing the stream to Wowza using the GoCoder iPhone App? You can get it from here: https://www.wowza.com/addons/gocoder

Zoran

Hi,

I’m sorry for the late reply.

Can you try forcing Wowza to connect over UDP to your RTSP server running on your iPhone? You can do that by editing your Application.xml file and changing the RTPTransportMode parameter from “interleave” to “udp”.

You can find the parameter in // section.

Regards.

Great.

Thank you for the feedback.

Zoran

Hi Manas,

Does it work if you put the camera.stream file in your content folder?

[install-dir]/content

Salvadore

Hi,

Can you also guide me that how can I save the live RTSP video while it is being streamed live?

Thanks,

Manas

Manas,

The easiest way to do this is to start the stream with MediaCaster type “rtp-record”

Salvadore