• How to use Elecard CodecWorks with Wowza Media Server

    This document describes the steps needed to set up the Elecard CodecWorks software in order to run with Wowza Media Server.
    Note: These instructions assume that you have installed Wowza Media Server and Elecard CodecWorks Demo on the same machine.

    Contents





    Elecard CodecWorks manager Configuration



    1. Install Elecard CodecWorks software. The Elecard CodecWorks Demo software can be downloaded from the Elecard site.
      Note: We last tested with version 4.1.120606.
    2. Start the Elecard CodecWorks Manager and right-click on the working pane.
    3. Select “Local Server --> Activate” (console or service, depending on how you want to use the Elecard software).
    4. Once you activate the server, by default, there are several consoles, each being able to provide a media output. Right-click on one of them and select “Change schema”.
    5. In the console schema list pop-up window, press the “Create new” button and the “New schema” configuration pane will pop-up.
    6. In the “Input settings” tab, select a template suited for your setup. In this example, we were using a multicast IP input source, so we selected the “IP in | Coding to AVC SD, AAC | IP out” template. In the working pane you would be able to see the source parameters. Right-click on the working pane and choose the option “Expand all”. You will be able to see the source parameters, where you can put the source multicast IP, port and the network interface receiving the multicast traffic and announcements. If the IP multicast source is sending SAP announcements, in the “[NET] Multicast group or Unicast Address” line, you can click on the “…” button and an announcement list will pop up containing all multicast SAP announcements available on your network. Choose your session and click “OK”. By doing this, all he input source parameters would be populated with its multicast source IP and port.
    7. Select the “Input” tab and choose the Video and Audio PID. Once you do that, the “Output” tab will become active.
    8. In the “Output” tab choose this template’s encoding parameters, and for a detailed look of the output settings go to the “Output settings” tab
    9. In the “Output settings” tab, in the Renderer section, you are able to choose the output transport method (0 for UDP, or 1 for RTP/AVP). Also you have to specify the network interface address and port from which the Elecard software will publish the multicast stream. Also you can specify whether to send the SAP announcements and the SAP session name
    10. When you click the “Save” button, from the “New schema” configuration pane, you will be asked to provide a schema name and description. Once you do that, click the “OK” button. By doing that, you will see in the “Schema list” the schema that you just created.
    11. In the “Schema list”, select your schema and click the “OK” button.
    12. In the Elecard CodecWorks Manager, for the console selected in step 4, you will see that it uses the schema you just created. In order to start the IP stream with the parameters you configured in your schema, right-click on the chosen console, and select the “Start” option. If everything goes well, you should see the date and time your session started and also CPU and memory usage details.
    13. Generate a Session Description Protocol (SDP) file using Elecard CodecWorks sdp generation tool. You can download this tool from the Elecard website (https://members.elecard.ru/productlo...9%2Fsdpgen.zip). Note: SDP describes the native stream. Name the file myStream.sdp


    Wowza Media Server Configuration



    1. Install the Wowza Media Server. The latest installer can be downloaded from here.
    2. Create application folder [install-dir]/applications/live
    3. Create configuration folder [install-dir]/conf/live and copy [install-dir]/conf/Application.xml into this new folder
    4. Edit the newly copied Application.xml file and make the following changes (some of these settings may already be present):
      1. Set the Streams/StreamType property to: live
        Code:
        <StreamType>live</StreamType>
      2. Set the HTTPStreamers property to: cupertinostreaming, smoothstreaming, sanjosestreaming
        Code:
        <HTTPStreamers>cupertinostreaming,smoothstreaming,sanjosestreaming</HTTPStreamers>
      3. Set the Streams/LiveStreamPacketizers property to: cupertinostreamingpacketizer, smoothstreamingpacketizer, sanjosestreamingpacketizer:
        Code:
        <LiveStreamPacketizers>cupertinostreamingpacketizer, smoothstreamingpacketizer, sanjosestreamingpacketizer</LiveStreamPacketizers>
      4. Set the RTP/Authentication/PlayMethod to: none
        Code:
        <PlayMethod>none</PlayMethod>
    5. Using a text editor, edit the file [install-dir]/conf/admin.password and add a username and password that will be used to start and stop the publishing of the stream (below is an example of the file with the username myuser and password mypassword):
      Code:
      # Admin password file (format [username][space][password])
      # username password
      myuser mypassword


    Publishing the stream



    1. Run Elecard sdpgen.exe tool to generate a list of *.SDP files with details on available sessions of streaming data.
    2. Copy the SDP file generated into the [install-dir]/content folder.
    3. Start Wowza Media Server
    4. Use the Stream Manager to start the stream
      1. Open a web browser and enter the url: http://[wowza-address]:8086/streammanager
      2. Enter your admin username and password from above
      3. Click the [start-receiving-stream] link just below the live application folder
      4. Select the MediaCaster Type: rtp
      5. Enter myStream.sdp into the Stream Name field
      6. Click OK


    Playback



    • To play using Adobe Flash Player (RTMP):

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

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

      Code:
      Server: rtmp://[wowza-ip-address]/live
      Stream: myStream.sdp
    • To play using Adobe Flash Player (San Jose/Adobe HTTP Dynamic Streaming)

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

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

      Code:
      Stream: http://[wowza-ip-address]:1935/live/myStream.sdp/manifest.f4m
      Note: The HTTP link above will not play directly in a browser. The stream can only be played from an OSMF based Flash player that is embedded in an HTML page. To play the stream from a remote system, copy the contents of the clientOSMF/bin-release folder to a web server.

    • To play using an Apple iOS device (Cupertino/Apple HTTP Live Streaming):

      Enter the following URL into the Safari web browser:
      Code:
      http://[wowza-ip-address]:1935/live/myStream.sdp/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. The iPhone 3GS and newer devices support Baseline profile. See How to find Apple iOS device supported profile and level information.

      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.

    • To play using Microsoft Silverlight:

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

      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.

      Code:
      http://[wowza-address]:1935/live/myStream.sdp/Manifest
      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.

    • To play using RTSP/RTP player or device:

      Enter the following URL into the RTSP/RTP player:
      Code:
      rtsp://[wowza-address]:1935/live/myStream.sdp


    Adaptive Bitrate Streaming



    Adaptive Bitrate (ABR) live streaming to Flash, Apple iOS devices and Silverlight requires that you have an encoder that can generate multiple bitrate streams from the same source that are properly key-frame aligned. Once have you an encoder that can generate properly aligned streams then you need to create a Synchronized Multimedia Integration Language (SMIL) file that links the streams together for playback.

    Note: To perform Adaptive Bitrate Streaming with Elecard, you need to build a schema in Elecard CodecWorks which encodes the input stream into several key-frame aligned streams. Use the corresponding template to do this.

    For example, let's say we have three live streams encoded at three different bitrates myStream_500.sdp (500kbps total bitrate), myStream_1000.sdp (1000kbps total bitrate) and myStream_1500.sdp (1500kbps total bitrate). Using a text editor create a SMIL file in the [install-dir]/content folder with the name myStream.smil with the following content:
    Code:
    <smil>
        <head>
        </head>
        <body>
            <switch>
                <video src="myStream_500.sdp" system-bitrate="500000"/>
                <video src="myStream_1000.sdp" system-bitrate="1000000"/>
                <video src="myStream_1500.sdp" system-bitrate="1500000"/>
            </switch>
        </body>
    </smil>
    You can see that there is a <video> entry in the <switch> container for each rendition of the stream. The system-bitrate value is set to the total bitrate in bits-per-second for that stream.

    • To play using Adobe Flash player (San Jose/Adobe HDS)[/B]

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

      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.

      Code:
      Stream: http://[wowza-ip-address]:1935/live/smil:myStream.smil/manifest.f4m
    • To play using an Apple iOS device (Cupertino/Apple HLS)

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

      Code:
      http://[wowza-ip-address]:1935/live/smil:myStream.smil/playlist.m3u8
    • To play using Microsoft Silverlight (Smooth Streaming)

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

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

      Code:
      http://[wowza-ip-address]:1935/live/smil:myStream.smil/Manifest


    Support



    In case of any questions regarding the Elecard CodecWorks software, please feel free to contact tsup@elecard.com


    Comments 7 Comments
    1. notreg -
      Is there any problem with cupertino paketization? It have a/v asynch with iphone, but rtsp or rtmp looks normal. Wowza version is 2.2.3.
    1. rrlanham -
      Is the audio mp3? If so, it should be stereo 44100Hz, otherwise might not work or could be your problem. Use AAC audio if possible. Try 2 second video key frame interval.

      Richard
    1. notreg -
      Audio is AAC. Where is key frame interval in that encoder? GOP setted to 30.
    1. rrlanham -
      It would be GOP/FPS

      Some encoders have a key frame frequency setting, otherwise it is gop/fps

      Richard
    1. arminz -
      Is it possible to play different programs in the same channel separately?
    1. rrlanham -
      Not sure what you mean in this case by "channels". You can publish and play many streams to a Wowza application/instance

      Richard
    1. steveitl -
      Hi,
      which type of special license i need for TS encoding ?

      stefano