• How to use Livu video broadcasting iOS app with Wowza Media Server

    This article describes how to use the Livu iPhone/iPod touch app for live streaming to Wowza Media Server®.

    Note: For use with Wowza Media Server 3 and greater.

    Configure Wowza Media Server


    1. Create application folder [install-dir]/applications/live.

    2. Create configuration folder [install-dir]/conf/live and copy [install-dir]/conf/Application.xml to this new folder.

    3. Edit the newly copied Application.xml file and make the following changes (some of these settings may already be present):

      Note: Right-click HERE to download a pre-configured version of Application.xml.

      1. Set the Streams/StreamType property to:
        Code:
        <StreamType>live</StreamType>
      2. Set the HTTPStreamers property to:
        Code:
        <HTTPStreamers>cupertinostreaming,smoothstreaming,sanjosestreaming</HTTPStreamers>
      3. Set the Streams/LiveStreamPacketizers property to:
        Code:
        <LiveStreamPacketizers>cupertinostreamingpacketizer,smoothstreamingpacketizer,sanjosestreamingpacketizer</LiveStreamPacketizers>
      4. Set the RTP/Authentication/PlayMethod property to:
        Code:
        <PlayMethod>none</PlayMethod>
    4. Specify a username and password in the [install-dir]/conf/publish.password file to control publishing access. Open this file in a text editor and enter a new line with a username and password. For example, to add the username myuser and the password mypassword:
      Code:
      # Publish password file (format [username][space][password])
      # username password
      myuser mypassword
    5. Start Wowza Media Server.

    Configure Livu App


    1. Configure the Livu app with the appropriate Broadcast Settings:

      • In Host, enter the Wowza Media Server IP address.

      • In Port, enter the port used for streaming. By default, Wowza Media Server binds to TCP port 1935 for all forms of streaming.

      • In App, enter the Wowza Media Server application name and the stream name. The following example shows what you should enter in this field if your application name is live and your stream name is myStream.
        Code:
        /live/myStream
      • Enter the username and password from the [install-dir]/conf/publish.password file into the User Name and Password fields.

      • Specify encoding settings for the remaining fields, such as the Stream Type, Video Size, Frame Rate, and so on. When you're done, click Save.


    2. To broadcast to Wowza Media Server, click the Broadcast icon in the upper-left corner of the Livu app.

      If everything is configured correctly, you'll see the following messages displayed in the Livu app:
      Code:
      Stream Started
      If you see the following message, make sure that the contents of your [install-dir]/conf/publish.password file match what you entered in the Livu Broadcast Settings.
      Code:
      Connection Error
      If you see the following message, review the troubleshooting help at http://stevemcfarlin.com/livu/help.html.
      Code:
      Stream Error
    3. To stop the broadcast to Wowza Media Server, click the Broadcast icon in the upper-left corner of the Livu app again.

    Playback


    Note: In the following examples, [wowza-ip-address] is the IP address or domain name of the server running Wowza Media Server.

    Adobe Flash Player (RTMP)


    In Wowza Media Server 3.5, double-click [install-dir]/examples/LiveVideoStreaming/FlashRTMPPlayer/player.html, enter the information below, and then click the Connect button.

    Server: rtmp://[wowza-ip-address]/live
    Stream: myStream

    To play the stream from a remote computer, copy the FlashRTMPPlayer folder to a web server, and then connect to: http://<webserver>/FlashRTMPPlayer/player.html.

    Note: In Wowza Media Server 3.1.2 and earlier, double-click [install-dir]/examples/LiveVideoStreaming/client/live.html, enter the information below, and then click the Play button.

    Server: rtmp://[wowza-ip-address]/live
    Stream: myStream

    To play the stream from a remote computer, copy the client folder to a web server, and then connect to: http://<webserver>/client/live.html.

    Adobe Flash Player (San Jose/Adobe HDS)


    In Wowza Media Server 3.5, double-click [install-dir]/examples/LiveVideoStreaming/FlashHTTPPlayer/player.html, enter the information below, and then click the Connect button.

    Stream: http://[wowza-ip-address]:1935/live/myStream/manifest.f4m

    To play the stream from a remote computer, copy the FlashHTTPPlayer folder to a web server, and then connect to: http://<webserver>/FlashHTTPPlayer/player.html.

    Note: In Wowza Media Server 3.1.2 and earlier, double-click [install-dir]/examples/LiveVideoStreaming/clientOSMF/bin-release/LiveOSMFPlayer.html, enter the information below, and then click the Play button.

    Stream: http://[wowza-ip-address]:1935/live/myStream/manifest.f4m

    To play the stream from a remote computer, copy the clientOSMF/bin-release folder to a web server, and then connect to: http://<webserver>/bin-release/LiveOSMFPlayer.html.

    Note: The stream can only be played from an OSMF-based Flash player that's embedded in a webpage.

    Apple iOS device (Cupertino/Apple HLS)


    Enter the following URL into the Safari® web browser on the device:

    URL: http://[wowza-ip-address]:1935/live/myStream/playlist.m3u8

    Note: The Apple® iPhone® 3GS (and older) and iPod touch® devices require that video be encoded using H.264 format (Baseline profile level 3 or lower) and AAC or MP3 stereo audio.

    Note: This stream can also be played using the Safari web browser or QuickTime 10.x on a computer running Mac OS® X Snow Leopard version 10.6 or later.

    Microsoft Silverlight (Smooth Streaming)


    In Wowza Media Server 3.5, double-click [install-dir]/examples/LiveVideoStreaming/SilverlightPlayer/player.html, enter the information below, and then click the Connect button.

    Stream: http://[wowza-ip-address]:1935/live/myStream/Manifest

    To play the stream from a remote computer, copy the SilverlightPlayer folder to a web server, and then connect to: http://<webserver>/SilverlightPlayer/player.html.

    Note: In Wowza Media Server 3.1.2 and earlier, double-click [install-dir]/examples/LiveVideoStreaming/clientSilverlight/Default.html, enter the information below, and then click the Play button.

    Stream: http://[wowza-ip-address]:1935/live/myStream/Manifest

    To play the stream from a remote computer, copy the clientSilverlight folder to a web server, and then connect to: http://<webserver>/clientSilverlight/Default.html

    Note: The Microsoft® Silverlight® player requires that both audio and video be present for playback. For live streaming only, the key frame frequency (which can be set directly in some encoders or is gop/fps) must be between 1 and 4 seconds (2 seconds is recommended). Anything greater than 4 seconds may cause playback to freeze.

    RTSP/RTP player


    Enter the following URL into the RTSP/RTP player:

    URL: rtsp://[wowza-ip-address]:1935/live/myStream

    Note: Be sure to carefully follow the instructions provided in How to troubleshoot RTSP/RTP playback to properly configure Wowza Media Server for RTSP/RTP streaming.

    Additional Resources





    Updated: For Wowza Media Server 3.5.0 on 08-11-2014

    Comments 10 Comments
    1. ergomatic -
      This worked for me, using an Ipod touch connected to internet through a Verizon Android phone running Open Garden Wifi Tether, to Wowza 2.2.4 on Amazon EC2. I viewed the video streaming from the Ipod with VLC running on a desktop computer. Audio sounded good, but video was very choppy. I'll try same with a 4g hotspot later.....

      -Steiny
      [removed]
    1. Roy8086 -
      hi,
      I could't get u.. can u tel me clear
    1. Roy8086 -
      Hi Steiny,
      I am also trying video streaming from android mobile to wowza server. But i couldn't captured video streaming to server(Wowza).am using video streaming protocol RTSP/RTP ,HTTP,and TCP (for testing purpose) separately using this protocol.And above all the steps done .Please give ur ideas.I can't streaming video to server.

      Thanks
      -
    1. SteveMc -
      Quote Originally Posted by ergomatic View Post
      This worked for me, using an Ipod touch connected to internet through a Verizon Android phone running Open Garden Wifi Tether, to Wowza 2.2.4 on Amazon EC2. I viewed the video streaming from the Ipod with VLC running on a desktop computer. Audio sounded good, but video was very choppy. I'll try same with a 4g hotspot later.....

      -Steiny
      [removed]
      Generally speaking when video is choppy this indicates there is not enough bandwidth to stream at the current bitrate. If you are using TCP as the transport protocol then you will see video 'freezing'. With UDP you will see corrupt video frames. In most cases you will not notice audio issues with voice, but with music you may notice issues.
    1. broaska -
      I have a question on this. I can get this to work fine with TCP transport. However, when I try to use the UDP transport I get connection error. I am guessing this has something to do with a port configuration on the Wowza Server. I am using the default 554 and I have that port open on my server. Can anyone suggest what I may need to change on the Wowza side to be able to send from Livu to Wowza using UDP transport. I am looking for lower latency and this seems to be the way to do it.
    1. rrlanham -
      You have to open all UDP ports at the server level and map them to your server in the network, e.g., router port forwarding. Take a look at this article:

      http://www.wowza.com/forums/content....P-RTP-playback

      Richard
    1. broaska -
      Richard,

      Thanks for the information. I have seen that post before. Is it best to just open all UDP port or is there a slightly more conservative range that could be used? Such as the 6970-9999 mentioned in the article.

      Thanks,

      Jason
    1. rrlanham -
      Jason,

      You can try, will probably work, but the full range is what is recommended for rtsp playback (outgoing streams)

      Richard
    1. fredlunau -
      Hi - I'm using the Livu iOS app to record streams directly to our Wowza 2 instance - no problem there. Any advice on how to LIMIT the record time at the Wowza end? E.g. cut off the recording at the 3 minute mark? Thanks in advance.

      Fred.
    1. rrlanham -
      Fred,

      You would have to use the LiveStreamRecord API to start the stream in IMediaStreamActionNotify3.onPublish, start a timer to stop it in 3 minutes.

      This is the LiveStreamRecord article, see the API section:
      http://www.wowza.com/forums/content....eStreamRecord)

      This is how to setup the IMediaStreamActionNotify3 interface:
      http://www.wowza.com/forums/content....es-codec-info)

      This example use IMediaStreamActionNotify3 and a Timer, so this is much of what you would need:
      http://www.wowza.com/forums/content....ics-on-a-timer

      Richard