• How to troubleshoot RTSP/RTP playback

    This mobile streaming troubleshooting guide covers RTSP/RTP out to devices such as Blackberry, Android and other mobile phones. It does not cover Apple HTTP streaming to iPhone, iPad or iPod Touch.

    Tutorial

    Troubleshooting

    Test Stream

    Related Articles


    Tutorial




    Device Capabilities



    This is a brief guide to which devices support which protocols and capabilities.

    • Android: Most Android devices support RTSP/RTP streaming. Newer Android devices that are running version 2.2 or greater (Froyo) also support Flash player 10.1 and can play RTMP and Flash HTTP streams. Android devices cannot play MP3 streams over RTSP/RTP in any combination (audio/video or audio only). Android devices that support Flash player 10.1 can play MP3 using RTMP or Flash HTTP. When streaming to an Android device using RTSP/RTP, the RTP portion must flow over UDP. Android does not support RTSP/RTP interleaved (RTP over TCP). This means if UDP is unavailable for RTP playback, RTP over TCP will not work as a failover and your stream will not play.

      Customers have reported issues with RTSP/RTP playback on the DroidX and Droid2. It seems that only a few frame sizes will play properly on these devices:
      • 800x480
      • 480x320
      • 240x160

    • Sony Ericsson:A customer has reported that some Sony Ericsson phones requires Baseline level 1.2 or lower video for playback.
    • Blackberry: Most Blackberry devices support RTSP/RTP streaming. Many Blackberry devices support RTSP/RTP interleaved (RTP over TCP) if RTP over UDP is not available.
    • iOS: iPhone, iPad and iPod touch devices support Apple HTTP Live Streaming only. RTSP/RTP streaming is not possible to an iOS device.
    • Windows Phone 7: Windows Phone 7 devices support Microsoft Smooth Streaming through an application. An application is available on the Microsoft Media Platform Player Framework page.
    • Other Devices: Most other mobile devices such as Nokia, Samsung, Sony Ericsson... that support video/audio streaming support RTSP/RTP. Support for MP3 over RTSP/RTP is not common as AAC-LC.



    Configuration


    Follow one of the tutorials to set up an application configured for video on demand or live streaming.

    Video On Demand
    Follow the How to setup video on demand streaming tutorial to set up an application to stream video on demand (VOD).
    Note: The Wowza Media Server 3 installation provides a preconfigured application named vod.

    Live
    Follow one of the live tutorials to set up an application for live streaming.



    Troubleshooting




    Encoding



    It is best to encode the video using a low bitrate, frame rate and low encoding complexity. For mobile streaming a total bitrate of between 64Kbps to 250Kbps is probably best. Many mobile devices may not be able to handle a full 30 frames per second (fps). A frame rate of 15 - 24 fps may be best for mobile. It is best to encode to a lower H.264 complexity. Most mobile devices only support H.264 Baseline. Encoder complexity and level is discussed here.


    Networking (UDP and TCP setup)



    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.

    We have a test stream running on Amazon EC2 which is properly setup and seems to work on most mobile networks/devices. Amazon EC2 is a great place to experiment with RTSP/RTP streaming. The test RTSP/RTP stream is here:

    http://www.wowzamedia.com/mobile.html

    More information on Wowza Media Server for EC2 is here.

    Some carriers just do not allow RTP or UDP over the carrier network. Many mobile devices will rollover to RTSP/RTP interleaved (RTP over TCP). These devices will work when the carrier does not support UDP. Some devices do not support RTSP/RTP interleaved and will simply not work if RTP or UDP is blocked by the carrier. It is best to test our test stream below to see if it works first to determine if a properly setup stream is going to work.

    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:

    Code:
    <Port>1935,554,80</Port>
    Be sure you do not have Darwin Streaming Server or any other RTSP/RTP streaming server running. It may also use TCP port 554 which will lead to a port conflict. With TCP port 554 enable you can use RTSP URLs without having to specify the port number. For example, in the tutorials we suggest the following video on demand RTSP URL:
    Code:
    rtsp://[wowza-ip-address]:1935/vod/mp4:sample.mp4
    With port 554 enable this can be changed to:
    Code:
    rtsp://[wowza-ip-address]/vod/mp4:sample.mp4

    Apple HTTP Live Streaming on non-Apple based players


    To play using Android 4.0 or higher with (Cupertino/Apple HTTP Live Streaming)
    Code:
    http://[wowza-ip-address]:1935/vod/mystream/playlist.m3u8
    With port 80 enable this can be changed to:
    Code:
    http://[wowza-ip-address]/vod/mystream/playlist.m3u8
    For problems with non-Apple based players that support Apple HTTP Live Streaming (HLS) streams, see How to turn off data event processing for Apple HTTP Live Streaming streams.


    Test Stream URL



    There is a properly setup test stream here:

    http://www.wowzamedia.com/mobile.html

    The direct RTSP URL is:

    rtsp://184.72.239.149/vod/mp4:BigBuckBunny_175k.mov

    The test H.264 video on demand file is here:

    http://www.wowzamedia.com/_h264/BigBuckBunny_175k.mov