RTPS live stream on android partially working

Hello Guys!

I’m setting up some wowza streams to be played on iOS Devices(http) and Android(RTSP). So far i got the playlist scheduled videos playable on all devices, but when it comes to live video streamed from Telestream Wirecast and XSplit it just doesn’t play. I’m using H264 and AAC in every video, even the live stream.

I Also tried to create a stream on the StreamManager app but it doesn’t make it work at all. Here is the Log i got:

INFO rtsp connect 730394879 -

INFO stream create - -

INFO server comment - RTPStream.lockRepeaterStreams: repeaterLock: aovivo_1

INFO rtsp describe 730394879 -

vivo_1]: Add chunk: id:9 a/v/k:188/180/2 duration:12000

INFO rtsp connect 1824767376 -

INFO stream create - -

INFO server comment - RTPStream.lockRepeaterStreams: repeaterLock: aovivo_1

INFO rtsp describe 1824767376 -

INFO stream play aovivo_1 -

INFO server comment - RTPUDPTransport.bind[live/definst]: 0.0.0.0/0.0.0.0:6974

INFO server comment - RTPUDPTransport.bind[live/definst]: 0.0.0.0/0.0.0.0:6975

INFO server comment - RTPUDPTransport.bind[live/definst]: 0.0.0.0/0.0.0.0:6976

INFO server comment - RTPUDPTransport.bind[live/definst]: 0.0.0.0/0.0.0.0:6977

INFO rtsp play 1824767376 -

INFO stream play aovivo_1 -

INFO rtsp play 730394879 -

INFO server comment - RTPMediaCaster.shutdown[10279131:live/definst:aovivo_1]: aovivo_1

INFO server comment - RTPMediaCaster.disconnect[10279131:live/definst:aovivo_1]

INFO server comment - RTPMediaCaster.closeRTPSession[10279131:live/definst:aovivo_1]

INFO server comment - RTPMediaCaster.Reconnector[10279131:live/definst:aovivo_1]: done: 1

P.S:I’m using Wowza Media 2

Thanks for your time!

Hi there,

Have you had a look at this guide on how to troubleshoot RTSP/RTP playback:

How to troubleshoot RTSP/RTP playback

Salvadore

Hi there,

Have you had a look at this guide on how to troubleshoot RTSP/RTP playback:

How to troubleshoot RTSP/RTP playback

Salvadore

Yes Salvadore,I did read this. but didnt work either. The strange thing is that i can play the live stream on VLC perfectly. It may be a misconfiguration or a bug.

I’m wondering if i’m doing correctly.

Thank you!

Actually I do have:

<LiveStreamPacketizers>cupertinostreamingpacketizer, smoothstreamingpacketizer, sanjosestreamingpacketizer</LiveStreamPacketizers>

I believe it’s ok here.

Ok, I got rid of those packetizers you mentioned above, restarted the server and here is the log i got (I had to take out other streams logs)

It’s not working yet!

INFO server comment - RTPUDPTransport.unbind[live/_definst_]: 0.0.0.0/0.0.0.0:6975
INFO stream stop aovivo_1 -
INFO stream destroy aovivo_1 -
INFO rtsp disconnect 223598593 -
INFO session disconnect 268428408 -
INFO server comment - Stream.switch[live/_definst_/tv_rc]: index: 0 name:mp4:tvrc/comerciais.mp4 start:0 length:-1
INFO server comment - RTPMediaCaster.shutdown[3316214:live/_definst_:aovivo_1]: aovivo_1
INFO server comment - RTPMediaCaster.disconnect[3316214:live/_definst_:aovivo_1]
INFO server comment - RTPMediaCaster.closeRTPSession[3316214:live/_definst_:aovivo_1]
INFO server comment - RTPMediaCaster.Reconnector[3316214:live/_definst_:aovivo_1]: done: 1
INFO rtsp connect 430655735 -
INFO stream create - -
INFO server comment - RTPMediaCaster.create[19196213]
INFO server comment - RTPMediaCaster.init[19196213]
INFO server comment - RTPMediaCaster.Reconnector[19196213:live/_definst_:aovivo_1]: start: 1
INFO server comment - RTPStream.lockRepeaterStreams: repeaterLock: aovivo_1
INFO rtsp describe 430655735 -
INFO server comment - RTPSessionDescriptionDataProviderBasic.getStreamInfo[live/_definst_]: /var/www/sites/applications/retvbrazil/streams/aovivo_1
WARN server comment - RTPSessionDescriptionDataProviderBasic.getStreamInfo: SDP file missing: /var/www/sites/applications/retvbrazil/streams/aovivo_1
INFO stream play aovivo_1 -
WARN server comment - RTPUDPTransport.bind[live/_definst_]: Failure to bind to address[0.0.0.0/0.0.0.0:6978]: java.lang.NullPointerException: address
WARN server comment - RTPUDPTransport.bind[live/_definst_]: Failure to bind to address[0.0.0.0/0.0.0.0:6979]: java.lang.NullPointerException: address
INFO server comment - RTPUDPTransport.bind[live/_definst_]: 0.0.0.0/0.0.0.0:6976
INFO server comment - RTPUDPTransport.bind[live/_definst_]: 0.0.0.0/0.0.0.0:6977
INFO rtsp play 430655735 -
INFO server comment - UDPTransport.firstPacket: 0.0.0.0/0.0.0.0:6976
INFO server comment - UDPTransport.firstPacket: 0.0.0.0/0.0.0.0:6977
INFO server comment - RTPStream.unlockRepeaterStreams: repeaterUnLock: aovivo_1
INFO server comment - RTPUDPTransport.unbind[live/_definst_]: 0.0.0.0/0.0.0.0:6978
INFO server comment - RTPUDPTransport.unbind[live/_definst_]: 0.0.0.0/0.0.0.0:6979
INFO server comment - RTPUDPTransport.unbind[live/_definst_]: 0.0.0.0/0.0.0.0:6976
INFO server comment - RTPUDPTransport.unbind[live/_definst_]: 0.0.0.0/0.0.0.0:6977
INFO stream stop aovivo_1 -
INFO stream destroy aovivo_1 -
INFO rtsp disconnect 430655735 -
INFO server comment - RTPMediaCaster.shutdown[19196213:live/_definst_:aovivo_1]: aovivo_1
INFO server comment - RTPMediaCaster.disconnect[19196213:live/_definst_:aovivo_1]
INFO server comment - RTPMediaCaster.closeRTPSession[19196213:live/_definst_:aovivo_1]
INFO server comment - RTPMediaCaster.Reconnector[19196213:live/_definst_:aovivo_1]: done: 1
INFO server comment - RTPUDPTransport.bind[live/_definst_]: 0.0.0.0/0.0.0.0:6971
INFO rtsp play 382765670 -
INFO server comment - Stream.switch[live/_definst_/tv_turmadamonica]: index: 2 name:mp4:tvturmadamonica/abertura.mp4 start:0 length:-1
INFO server comment - RTPStream.unlockRepeaterStreams: repeaterUnLock: aovivo_1
INFO server comment - RTPUDPTransport.unbind[live/_definst_]: 0.0.0.0/0.0.0.0:6972
INFO server comment - RTPUDPTransport.unbind[live/_definst_]: 0.0.0.0/0.0.0.0:6973
INFO server comment - RTPUDPTransport.unbind[live/_definst_]: 0.0.0.0/0.0.0.0:6970
INFO server comment - RTPUDPTransport.unbind[live/_definst_]: 0.0.0.0/0.0.0.0:6971
INFO stream stop aovivo_1 -
INFO stream destroy aovivo_1 -
INFO rtsp disconnect 382765670 -
INFO rtsp connect 223598593 -
INFO stream create - -
INFO server comment - RTPStream.lockRepeaterStreams: repeaterLock: aovivo_1
INFO rtsp describe 223598593 -
INFO stream play aovivo_1 -
WARN server comment - RTPUDPTransport.bind[live/_definst_]: Failure to bind to address[0.0.0.0/0.0.0.0:6974]: java.lang.NullPointerException: address
WARN server comment - RTPUDPTransport.bind[live/_definst_]: Failure to bind to address[0.0.0.0/0.0.0.0:6975]: java.lang.NullPointerException: address
INFO rtsp play 223598593 -
INFO server comment - LiveStreamPacketizerCupertino.endChunkTS[live/_definst_/aovivo_1]: Add chunk: id:8 a/v/k:0/500/1 duration:20000
INFO session connect-pending 177.40.207.181 -
INFO session connect 177.40.207.181 -

I’m using XSplit in order to publish the video. My video settings are:

video:

-codec: x264, VBR

-Max bitrate: 220kpbs

-Keyframe Interval: 20 secs

-Size:240x160

audio:

  • codec: SPEEX

  • bitrate: 23,8

  • Format: 16 KHz

Even though i believe the SPEEX codec may be unsuported, but i am using the following lines in the Application.xml file, that I believe transform it to AAC:

<Property>
    <Name>audioPacketizerAAC</Name>
    <Value>com.wowza.wms.rtp.packetizer.RTPPacketizerMPEG4LATM</Value>
</Property>

Another question!

Taking sanjose and smoothing packetizers will not allow iOS devices and Silverlight to stream right?

Thank you Salvadore

Also, make sure you are using a profile of “baseline” and not “main” or “high” in your encoder.

BINGOOO!!!

It’s now working my friend!

I have no words to express how happy i am! All I can do is to thank you for your time and dedication trying to help me.

I would never know about the “profiles” thing.

THANK YOU!!!

I don’t see any packetizing happening in the logs.

Are you sure you have /Streams /LiveStreamPacketizers Property in you’re Application.xml file set to:

<LiveStreamPacketizers>cupertinostreamingpacketizer</LiveStreamPacketizers>

?

Salvadore

Can you take out smoothstreamingpacketizer, sanjosestreamingpacketizer and restart Wowza.

Post the packetizing log messages and codec details so we can take a look?

Salvadore

I think this may be a port blockage issue.

These are from the Wowza documentation:

“UDP: It is best to open all UDP (0-65535) ports for RTSP/RTP streaming. On the incoming side, Wowza tends to try to use ports between the range of 6970-9999. Outgoing the port choice is made by the receiving device. So it is best to open all ports to outgoing UDP traffic. Getting the UDP setup correctly is sometimes difficult and dependent on your router and firewall setup. If behind NAT (network address translation) it is important that all UDP ports are mapped to the server running Wowza.”

“TCP: The default port for RTSP streaming is TCP port 554. Some players will only use this port for streaming. So even even if you include the default Wowza Media Server streaming port to the URL (1935) playback may not work properly. To enable Wowza to use this port, edit [install-dir]/conf/VHost.xml and add 554 and 80 to the list of HostPort/Ports:”

<Port>1935,554,80</Port>

Also, make sure you are using a profile of “baseline” and not “main” or “high” in your encoder.

If you can set the audio codec in the encoder to AAC.

Also, read through this article to make sure you have this all set up correctly:

How to troubleshoot RTSP/RTP playback

Salvadore

That’s great news Hacebe! Thanks for the update.

Salvadore