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.

This article explains how to configure a live application that ingests content from an encoder using the MPEG-2 Transport Stream (MPEG-TS) container format. The following steps assume you have already created a Live application. See Get started as a Wowza Streaming Engine Manager administrator for how to create applications in Wowza Streaming Engine.

Configure the live application in Wowza Streaming Engine Manager

  1. In Wowza Streaming Engine Manager, click the Applications tab at the top of the page and then select your application in the contents panel.
  2. On the Setup tab of the your application's page, make sure all Playback Types are selected.

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 a live application by editing your application's Application.xml configuration file in a text editor. If you configured a live application in Wowza Streaming Engine Manager, skip this section. 

  1. Navigate to [install-dir]/conf/[application-name] 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 the HLS and MPEG-DASH streaming protocols. The XML looks like this:
    <HTTPStreamers>cupertinostreaming,mpegdashstreaming</HTTPStreamers>
  4. Set the <LiveStreamPacketizers> property for HLS and MPEG-DASH streaming. The XML looks like this:
    <Streams>
        ...
        <LiveStreamPacketizers>cupertinostreamingpacketizer,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.

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 your application.
  2. Click the MediaCaster Type menu and choose rtp.


     
  3. Click OK.

The Connection successful message 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.

To test playback of the MPEG-TS stream mpeg-ts.stream, make sure the encoder is sending a stream to your application in Wowza Streaming Engine. 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 mpegts.stream, use the following playback URL:

http://[address]:1935/[application-name]/mpegts.stream/playlist.m3u8

More resources