MetaCDN - StreamShark

How to Live Stream Using Telestream Wirecast

Overview

StreamShark's Live Streaming product is compatible with Telestream Wirecast. Let's outline the steps required to get you streaming your live event with Wirecast and StreamShark.

Video Walkthrough

Telestream Wirecast

Telestream Wirecast is available as paid software for both PC and Mac. It supports downloadable FMLE xml configurations with certain limitations:
Wirecast can load configuration files that have been created for Flash Media Live Encoder (FMLE). Wirecast reads the RTMP Address and Stream Name from this file, but it does not read any other configuration information from the FMLE XML file (bit rates, codec configuration, etc.). Many popular sites provide an FMLE configuration file for your stream configuration.
 

Don't have Telestream Wirecast? You can download a free trial and/or purchase it by clicking on the banner below: 

 

High Level Instructions

Customers may find it easier to manually configure their streams rather than depending on the downloadable configuration files. Each stream URL is available in the StreamShark portal and can be manually configured (along with a corresponding 'Encoding' preset) in Wirecast. The following high level suggestions should allow you to use Wirecast to stream to StreamShark.
  1. Under the Output->Output settings you will need to manually configure your streams to match the stream numbers and qualities you specified when setting up the live stream in StreamShark. If you selected multiple streams you will need to add each these streams individually, while making sure the number of streams, the resolution and bitrates exactly match what was set in StreamShark.
  2. For each stream, the Address and Stream must be set in Wirecast. The credentials should be left blank as your username and password are embedded in your Stream name already. You can obtain the correct values for your stream in StreamShark under 'Live Streaming' -> Click specified stream for details. The Address is your FMS URL, and the Stream is your FMS Stream (with a small modification - see step 3).
  3. For each stream, the Stream name must include the full bit rate such as 'wirecast-demo_328?wiredemo&adbe-live-event=wirecast-demo_'. For instance, for stream 1, that would be livestreamdemo_328?mypassword. If you import from the FMLE XML file, you will need to replace the placeholder bitrate information (%b) with the actual bitrate of each stream.
  4. Once you have set up your streams, create corresponding 'Encoding' quality presets for each stream. Save your settings and click 'Stream' to begin.
  5. Confirm that your video is broadcasting by clicking the 'Preview' link on your live stream listing in StreamShark.

Step By Step Instructions

The following section contains step by step instructions for broadcasting with Wirecast. I have already created a Live Stream in StreamShark called 'wirecast-demo' that is using StreamShark's default publishing settings, 'Recommended (16:9)' which is a 3 quality multi-bitrate stream.

Step 1

First open Wirecast, and click on the Output->Output Settings menu option.

wirecast_01_output_settings.png

Step 2

We are going to set the Output Destination as a RTMP server. We plan to have dedicated StreamShark stream configuration presets for Wirecast in the near future to allow more rapid setup of streaming for customers using this application. For now, each stream needs to be set manually.

wirecast_02_rtmp_server.png

Step 3

Before we configure the name and address of our three RTMP streams, let's configure some presets for our 3 encoding quality levels. In StreamShark, our streams are configured as follows:

  • Stream 1 - 200 kbps, 416 * 234 (with 128 kbps AAC audio)
  • Stream 2 - 600 kbps, 640 * 360 (with 128 kbps AAC audio)
  • Stream 3 - 1200 kbps, 640 * 360 (with 128 kbps AAC audio)

Let's add a preset for each of these by clicking on the gear icon, and selecting 'New Preset'

wirecast_03_encoding_preset.png

Step 4

Let us create an 'Encoder Preset' for the first stream quality, called 'MetaCDN 328':

Stream 1 - 200 kbps, 416 * 234 (with 128 kbps AAC audio)

We need to set the following to match our StreamShark settings:

  • Width is 416
  • Height is 234
  • Average bit rate is 200
  • Profile is baseline
  • Keyframe every 60 frames. In StreamShark our keyframe interval is set in seconds, so we need to calculate this in frames as this is the format wirecast uses. In this example we are broadcasting at 30 frames per second, so if the keyframe interval is 2 seconds then we need a keyframe every 60 frames.
  • Strict Constant Bitrate is checked.
  • Audio Encoding is set to 128 kbps AAC.

wirecast_04_encoding_328.png

Step 5

Let us create an 'Encoder Preset' for the second stream quality, called 'MetaCDN 728':

Stream 2 - 600 kbps, 640 * 360 (with 128 kbps AAC audio)

We need to set the following to match our StreamShark settings:

  • Width is 640
  • Height is 360
  • Average bit rate is 600
  • Profile is baseline
  • Keyframe every 60 frames. In StreamShark our keyframe interval is set in seconds, so we need to calculate this in frames as this is the format wirecast uses. In this example we are broadcasting at 30 frames per second, so if the keyframe interval is 2 seconds then we need a keyframe every 60 frames.
  • Strict Constant Bitrate is checked.
  • Audio Encoding is set to 128 kbps AAC.

wirecast_05_encoding_728.png

Step 6

Let us create an 'Encoder Preset' for the third and final stream quality, called 'MetaCDN 1328':

Stream 3 - 1200 kbps, 640 * 360 (with 128 kbps AAC audio)

We need to set the following to match our StreamShark settings:

  • Width is 640
  • Height is 360
  • Average bit rate is 1200
  • Profile is baseline
  • Keyframe every 60 frames. In StreamShark our keyframe interval is set in seconds, so we need to calculate this in frames as this is the format wirecast uses. In this example we are broadcasting at 30 frames per second, so if the keyframe interval is 2 seconds then we need a keyframe every 60 frames.
  • Strict Constant Bitrate is checked.
  • Audio Encoding is set to 128 kbps AAC.

wirecast_06_encoding_1328.png

Step 7

Now we have set up the right encoding quality levels for each of our streams, let's set up the actual RTMP stream publishing points for each stream. Again, we need to do this 3 times, once for each of our stream qualities.

Create the first RTMP Flash Server, called 'MetaCDN Stream 1'. Select the Encoding preset we created in Step 4, called 'MetaCDN 328'. You can obtain the correct values for your stream in StreamShark under 'Live Streaming' -> click your desired stream for details. The Address is your FMS URL, and the Stream is your Stream 1 value.

wirecast_07_stream_328.png

Step 8

Create the second RTMP Flash Server, called 'MetaCDN Stream 2'. Select the Encoding preset we created in Step 5, called 'MetaCDN 728'. You can obtain the correct values for your stream in StreamShark under 'Live Streaming' -> click your desired stream for details. The Address is your FMS URL, and the Stream is your Stream 2 value.

wirecast_08_stream_728.png

Step 9

Create the third and final RTMP Flash Server, called 'MetaCDN Stream 3'. Select the Encoding preset we created in Step 6, called 'MetaCDN 1328'. You can obtain the correct values for your stream in StreamShark under 'Live Streaming' -> click your desired stream for details. The Address is your FMS URL, and the Stream is your Stream 3 value.

wirecast_09_stream_1328.png

Step 10

Now we are ready to start broadcasting. Go back to the Output menu, and click on Start / Stop Broadcasting -> Start All.

wirecast_10_stream_broadcast.png

 

Live streaming from a pre-recorded video file

Using Wirecast, it is very easy to live streaming from a pre-recorded video file with just a few clicks. 

In the bottom part of the control panel, you can see an "add" icon to add sources. You can click the file icon and then "Add Video Shot" to select the video file that you would like to stream. 

Screen_Shot_2014-06-04_at_8.18.28_AM.png

Have more questions? Submit a request