Publish and play a live stream from an MPEG-TS encoder in Wowza Streaming Engine

Configure Wowza Streaming Engine™ media server software to receive an encoded live stream from an MPEG-TS-based source and play the live stream over all supported streaming protocols.

Note: With Wowza Streaming Engine 4.7.5.01 and later, you can ingest an MPEG-TS stream with low overhead audio stream (LOAS) audio lossless coding (MPEG-4 ALS) audio and deliver it using MPEG-DASH.

Configure the live streaming application


Live streams are configured and managed in live applications in Wowza Streaming Engine. You can configure a live application in Wowza Streaming Engine Manager or by setting properties in the application's XML configuration file. Both methods produce the same result; editing Application.xml is the only option if you use Wowza Media Server™ software.

This article explains how to set up a live application that ingests content from an encoder using the MPEG-2 Transport Stream (MPEG-TS) container format.

Configure the live application in Wowza Streaming Engine Manager

This example uses the default live application that installs with Wowza Streaming Engine.

You can use Wowza Streaming Engine Manager with the latest version of most web browsers that support HTML5 and Cascading Style Sheets level 3 (CSS 3). We recommend Google Chrome.

  1. In Wowza Streaming Engine Manager, click the Applications tab at the top of the page and then select the live application in the contents panel.

Start by enabling playback over all supported protocols: Adobe HDS, Adobe RTMP, Apple HLS, Microsoft Smooth Streaming, MPEG-DASH, and RTSP/RTP.

  1. On the Setup tab of the live application page, make sure all Playback Types are selected. If necessary, click Edit, select them all, and then click Save.

Note: Every time you edit an application's configuration, Wowza Streaming Engine prompts you to restart the application. However, you can wait until all changes are completed before you restart.

Next, disable playback authentication.

  1. In the contents panel, click Playback Security, and then click Edit.

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

  2. Restart the application.

The application runs whenever Wowza Streaming Engine is running.

Configure the live application in XML

This section shows you how to configure the live application by editing the Application.xml configuration file in a text editor. If you configured the live application in Wowza Streaming Engine Manager, skip this section.

  1. Navigate to [install-dir]/conf/live and open Application.xml in a text editor.
  2. In the <Streams> container element, make sure the <StreamType> property is live. The XML looks like this:
    <Streams>
        ...
        <StreamType>live</StreamType>  
        ...
    </Streams>
    
  3. Set the <HTTPStreamers> property for all supported HTTP streaming protocols. The XML looks like this:
    <HTTPStreamers>cupertinostreaming,smoothstreaming,sanjosestreaming,mpegdashstreaming</HTTPStreamers>
  4. Set the <LiveStreamPacketizers> property for HDS, HLS, Microsoft Smooth Streaming, and MPEG-DASH streaming. The XML looks like this:
    <Streams>
        ...
        <LiveStreamPacketizers>cupertinostreamingpacketizer,smoothstreamingpacketizer,sanjosestreamingpacketizer,mpegdashstreamingpacketizer</LiveStreamPacketizers>
        ...
    </Streams>
    
  5. In the <RTP> container element, make sure playback authentication is disabled by setting the <PlayMethod> property to none. The XML looks like this:
    <RTP>
        <Authentication>
            ...
            <PlayMethod>none</PlayMethod>
        </Authentication>
        ...
    </RTP>
  6. Save your changes and close Application.xml.
  7. Restart Wowza Streaming Engine or Wowza Media Server.

Publish the source stream to Wowza Streaming Engine


This section provides the basic steps for creating a .stream file to publish the encoded live stream to Wowza Streaming Engine.

Note: Consult your MPEG-TS encoder documentation for information about how to configure an outgoing live stream.

  1. In Wowza Streaming Engine Manager, click Server in the menu bar, click Stream Files in the contents panel, and then click Add Stream File.

  1. In the Add Stream File dialog box, enter a name for the stream file, for example, mpegts.stream.



     
  2. For Stream URI, specify udp://0.0.0.0:10000.

If you're receiving a multicast stream, change 0.0.0.0 to the multicast address of the stream. If needed, you can also use a unique port, for example, udp://0.0.0.0:26400.

  1. Click Add.

When your source encoder is connected, start the stream.

  1. Click Stream Files in the contents panel and then click the Connect icon for your MPEG-TS  .stream file.

  1. In the Connect a Stream File dialog box, click the Application Name menu and choose live.
  2. Click the MediaCaster Type menu and choose rtp.


     
  3. Click OK.

The Connection successful message is displayed.

Test playback


In Wowza Streaming Engine Manager, click Test Players in the upper-right corner of the live application page.

Each tab in the Test Players window either hosts a test player that can play the live stream, or provides instructions for playing the live stream. The test players are preconfigured to stream the default live stream myStream.

To test playback of the MPEG-TS stream mpeg-ts.stream over Adobe HDS, for example, make sure the encoder is sending a stream to the live application in Wowza Streaming Engine and that Adobe Flash is enabled in the browser you're using. Then, click the Adobe HDS tab, enter the information below, and then click Start.

  • Server – Enter [wowza-ip-address]:1935.
     
  • Application – Enter live.
     
  • Stream – Enter mpegts.stream.


The result is the playback URL:
 
http://[wowza-ip-address]:1935/live/mpegts.stream/manifest.f4m

You can also test your live stream by using the test players online on our Wowza Test Players webpage, or by using the example players that install with Wowza Streaming Engine at [install-dir]/examples/. For more information, see any of these articles:

More resources