Re-stream audio from SHOUTcast/Icecast in Wowza Streaming Engine

Use Wowza Streaming Engine™ media server software to re-stream SHOUTcast or Icecast audio streams with the MediaCaster feature for playback on all supported player technologies. Wowza Streaming Engine administrators can configure live streaming applications in Wowza Streaming Engine Manager or by setting properties in Application.xml. Both methods have the same result. 

Configure a live application in Wowza Streaming Engine Manager


First, set up a live streaming application in Wowza Streaming Engine Manager. Users play the live stream to listen to the event as it happens. The example uses an application named live, which is included in default Wowza Streaming Engine installations. If you want to create a new live streaming application, you can use this same procedure.
 
  1. Make sure Wowza Streaming Engine Manager is running. See Start and stop Wowza Streaming Engine.
     
  2. Click the Applications tab at the top of the page.
     
  3. Configure the live application:
     
    1. In the Applications contents panel, click live, and then click Edit. This example uses the installed live application. If you want to create a new live streaming application, click Add Application in the contents panel, and then click Live.
    2. On the live page, select all of the Playback Types and then click Save.
    3. The following alert appears after every configuration change. You can wait until all changes are completed before you restart.

  4. Configure playback authentication:
     
    1. In the contents panel, click Playback Security, and then click Edit.

    2. On the Playback Security page, select No client restrictions, and then click Save.

  5. Restart the application.

The application runs whenever Wowza Streaming Engine is running.

Configure XML for a live application


 
Note: If you created your application by following the previous section, skip this section. If you make changes to Application.xml, any changed settings will be reflected in Wowza Streaming Engine Manager the next time it's started.
  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):
     
    1. In the <Streams> container element, set the StreamType property to live:
      <StreamType>live</StreamType>
    2. Specify the HTTPStreamers property to:
      <HTTPStreamers>cupertinostreaming, mpegdashstreaming</HTTPStreamers>
    3. Specify the LiveStreamPacketizers property to:
      <LiveStreamPacketizers>cupertinostreamingpacketizer, mpegdashstreamingpacketizer</LiveStreamPacketizers>
    4. Set the RTP/Authentication/PlayMethod to none:
      <PlayMethod>none</PlayMethod>
  4. Restart Wowza Streaming Engine.
  5. Next, publish the stream using a .stream file in Wowza Streaming Engine Manager.

Publish the stream using a .stream file in Wowza Streaming Engine Manager


Next, create a .stream file to publish your stream to Wowza Streaming Engine using the MediaCaster (re-streaming) feature.
 
  1. Create the .stream file:
     
    1. In the Server contents panel, click Stream Files, and then click Add Stream File.


       
      Note: You can also start the procedure to create a .stream file in the Applications contents panel for the live application.
    2. In the Add Stream File dialog box, enter a name for the new stream file, enter Stream URI, and then click Add.



      The URL that you use to connect to a SHOUTcast or Icecast server is one of the URLs that's contained in a SHOUTcast playlist (.pls) file or Icecast (.m3u) playlist file. Most websites that publish SHOUTcast or Icecast streams have links that reference these files. To re-stream a SHOUTcast or Icecast stream, you must first download one of the playlist files to your local computer and then use one of the links found inside to connect to the published stream. Enter this link value in Stream URI.
  2. Start the stream:
     
    1. In the Server contents panel, click Stream Files, and then click the Connect icon for the stream file you created in step 1.


       
    2. In the Connect a Stream File dialog box, select live in Application Name and shoutcast in MediaCaster Type, and then click OK.


       
      Note: Use the shoutcast-record MediaCaster type for re-streaming while simultaneously recording the stream to a single file in the application's streaming file directory. For more information, see About recording MediaCaster streams.
    3. The Connection successful notification is displayed.

Test playback


Playback URLs

To test playback, you need the playback URLs for your stream and the playback types, or streaming protocols, you want to test. You can get playback URLs from the Test Playback window in Wowza Streaming Engine Manager or by entering information about the stream on the Video Test Players webpage. For more information about playback URLs, see About playing Wowza Streaming Engine streams.

The Test Playback window generates playback URLs for each protocol based on the page you're on when you click Test Playback. You can also edit the Server (IP address or domain name), Stream or Media File Name, and Application fields to update the playback URLs for all protocols as needed.

Test players

To play your stream, enter the playback URL into your player or a mobile browser, depending on the playback type. To learn more about stream playback, see the Players and Playback articles.

You can also test playback using the Video Test Players webpage. Select the tab for the protocol you want to test and enter the playback URL above the player. Entering the server (IP address or domain name), stream name, application name, and application type (VOD or live) will also generate the playback URLs for each protocol. Click Start to play your stream, and then click Stop when you're ready to end your test.

In playback URLs for stream files, the stream name includes the .stream file extension. For example, to use the HLS protocol to play a stream file named radiostation.stream, use the following playback URL:

http://[address]:1935/live/radiostation.stream/playlist.m3u8

Troubleshooting


URL to connect to SHOUTcast or Icecast

The URL that you use to connect to a SHOUTcast or Icecast server is one of the URLs that's contained in a SHOUTcast playlist (.pls) file or Icecast playlist (.m3u) file. Most websites that publish SHOUTcast or Icecast streams have links that reference these files. To re-stream a SHOUTcast or Icecast stream, you must first download one of the playlist files to your local computer and then use one of the links found inside to connect to the published stream.

RTSP/RTP

RTSP/RTP streaming is used to stream to Android and BlackBerry mobile devices. Newer Android devices now support Apple HLS. HLS works best on Android 4.0 devices and above.

To stream to RTSP/RTP, be sure that UDP ports 0-65535 are open and properly mapped to the Wowza Streaming Engine server. For more information, see Troubleshoot RTSP/RTP playback from Wowza Streaming Engine.

Common problems with .stream files

Many text editors will append a .txt file name extension to the radiostation.stream file name. This will result in an error message similar to the following:
 
SDP file missing: c:/program files/wowza media systems/wowza streaming engine [version]/content/radiostation.stream

To fix this, go to the [install-dir]/content folder and remove the .txt file name extension from the file.

Property to change AAC packetization method

Wowza Streaming Engine can use the mpeg4-generic and mp4a-latm (3gpp) packetization methods to output AAC audio. The default packetization method is mpeg4-generic.

Wowza Streaming Engine Manager configuration

To switch to mp4a-latm (3gpp), do the following:
 
  1. Click the Applications tab and then click the name of your live application (such as live) in the contents panel.
     
  2. On the live application page Properties tab, click Custom in the Quick Links bar or scroll to the bottom of the page.
     
    Note: Access to the Properties tab is limited to administrators with advanced permissions. For more information, see Manage credentials.
  3. In the Custom area, click Edit.
     
  4. Click Add Custom Property, specify the following settings in the Add Custom Property dialog box, and then click Add:
     
    • Path – Select /Root/Application/RTP.
       
    • Name – Enter audioPacketizerAAC.
       
    • Type – Select String.
       
    • Value – Enter com.wowza.wms.rtp.packetizer.RTPPacketizerMPEG4LATM.
  5. Click Save, and then restart the live application to apply the changes.

XML configuration

To switch to mp4a-latm (3gpp):
 
  1. Use a text editor to open the [install-dir]/conf/[application]/Application.xml file for your live application and add the following property to the RTP/Properties container. Be sure to add the property to the correct <Properties> container in Application.xml as there are several such containers in the file.
    <Property>
        <Name>audioPacketizerAAC</Name>
        <Value>com.wowza.wms.rtp.packetizer.RTPPacketizerMPEG4LATM</Value>
    </Property>
  2. Restart Wowza Streaming Engine to apply the changes.

More resources