Menu
Live Streaming with AWS
Live Streaming with AWS Elemental Cloud

Automated Deployment

Before you launch the automated deployment, please review the architecture, configuration, network security, and other considerations discussed in this guide. Follow the step-by-step instructions in this section to configure and deploy the solution into your account.

Time to deploy: Approximately 20 minutes

Prerequisites

Before you launch this live streaming solution, you must have an existing AWS Elemental Cloud deployment. The AWS Elemental Cloud deployment should include the following:

  • AWS Elemental Live with two running nodes using version 2.9.3 or later. If you plan to use the sample video stream as your source, you must have three running nodes.

  • AWS Elemental Delta with two running nodes and the origin service pack enabled.

  • A valid username and API key with access to the AWS Elemental Cloud deployment.

For more information on AWS Elemental Cloud, or for any configuration questions, visit https://www.elemental.com/products/aws-elemental-cloud/ or contact cloudsales@elementaltechnologies.com.

To get your content into AWS Elemental Live, you must configure your contribution encoder to point to the public IP address of the two AWS Elemental Live nodes. For example, rtp://54.54.54.54:5001 and rtp://52.52.52.52:5001.

Note

Make sure that your ground controller has outbound access to the public IP addressed of the AWS Elemental Live nodes on port 5000 and port 5001.

Launch the Stack

This automated AWS CloudFormation template deploys the live streaming solution on the AWS Cloud. Please make sure that you have a running AWS Elemental Cloud deployment before launching the stack. See Prerequisites for configuration details.

Note

You are responsible for the cost of the AWS services used while running this solution. See the Cost section for more details. For full details, see the pricing webpage for each AWS service you will be using in this solution.

  1. Log in to the AWS Management Console and click the button below to launch the live-streaming AWS CloudFormation template.

    
                                Live Streaming launch button

    You can also download the template as a starting point for your own implementation.

  2. The template is launched in the US East (N. Virginia) Region by default. To launch this solution in a different AWS Region, use the region selector in the console navigation bar.

    Note

    This solution uses the AWS Lambda service, which is currently available in specific AWS Regions only. Therefore, you must launch this solution in an AWS Region where Lambda is available. For the most current AWS Lambda availability by region, see the AWS service offerings by region. To launch the solution in a region that does not support Lambda, use the live-streaming-ec2 template.

  3. On the Select Template page, verify that you selected the correct template and choose Next.

  4. On the Specify Details page, assign a name to your live streaming solution stack.

  5. Under Parameters, review the parameters for the template, and modify them as necessary.

    Note

    To successfully launch the live streaming solution stack, you need to enter parameters from your existing AWS Elemental Cloud deployment. See Appendix A for steps to find each AWS Elemental Cloud parameter value.

    This solution uses the following default values.

    Parameter Default Description
    Elemental User <Requires input> The AWS Elemental username with admin access to the AWS Elemental Cloud deployment
    Elemental API Key <Requires input> The API key associated with the AWS Elemental user account
    Elemental Live <Requires input> The FQDN of the AWS Elemental Conductor service that is used to configure Live nodes

    Important

    Do not include https://.

    Elemental Live Version <Requires input> AWS Elemental Live server version; valid options are 2.9 or 2.10
    Elemental Delta 1 <Requires input> The FQDN of the primary AWS Elemental Delta server that is used to configure the content filters

    Important

    Do not include https://.

    Elemental Delta 2 <Requires input> The FQDN of the secondary AWS Elemental Delta server that is used to configure content filters

    Important

    Do not include https://.

    Live Nodes <Requires input> Comma-delimited list of AWS Elemental Live node IDs

    Note

    To use the sample video feed, you must provide IDs for three nodes.

    Source Stream Demo The UDP or RTP source video stream. Include the port and protocol. For example, rtp://10.0.0.1:5001

    Note

    To use the sample video feed, use the default value: Demo.

    Send Anonymous Usage Data Yes Send anonymous data to AWS to help us understand usage across our customer base as a whole. To opt out of this feature, select No. For more information, see Appendix B.
  6. Choose Next.

  7. On the Options page, choose Next.

  8. On the Review page, review and confirm the settings. Be sure to check the box acknowledging that the template will create AWS Identity and Access Management (IAM) resources.

  9. Choose Create to deploy the stack.

    You can view the status of the stack in the AWS CloudFormation console in the Status column. You should see a status of CREATE_COMPLETE in roughly 20 minutes.

    To test the live stream playback, navigate to the AWS CloudFormation stack Outputs tab, copy the Amazon CloudFront URL from the Value column for the applicable stream and paste it into an online DASH or HLS test player, such as Bitmovin.

Note

In addition to the primary AWS Lambda function, this solution includes the solution-helper Lambda function, which runs only during initial configuration or when resources are updated or deleted.

When running this solution, you will see both Lambda functions in the AWS Lambda console, but only the primary Lambda function is regularly active. However, do not delete the solution-helper function as it is necessary to manage associated resources.

Once the live streaming event is complete, terminate the resources created by this solution to help ensure that you don’t incur unnecessary AWS charges.