How to Stream to Amazon IVS with OBS Studio

This guide provides a straightforward, step-by-step walkthrough on how to configure OBS Studio to stream directly to an Amazon Interactive Video Service (IVS) live endpoint. You will learn how to locate your Amazon IVS stream credentials, configure the connection settings in OBS Studio, and optimize your encoder settings to ensure a stable, low-latency broadcast.

Step 1: Retrieve Your Amazon IVS Stream Credentials

Before configuring OBS Studio, you need to collect the ingestion details from your AWS Console.

  1. Log in to the AWS Management Console.
  2. Navigate to the Amazon IVS console.
  3. Click on Channels and select the channel you want to stream to (or create a new one).
  4. Scroll down to the Stream configuration section.
  5. Copy the Ingest server URL (typically starts with rtmps://).
  6. Copy the Stream key. Keep this key private.

Step 2: Configure Stream Settings in OBS Studio

Once you have your credentials, you must input them into OBS Studio.

  1. Open OBS Studio.
  2. Click on Settings in the bottom-right corner (or go to File > Settings).
  3. Click on the Stream tab in the left sidebar.
  4. Set the Service dropdown to Custom…
  5. In the Server field, paste the Ingest server URL you copied from AWS.
  6. In the Stream Key field, paste your AWS Stream key.
  7. Click Apply.

Step 3: Optimize Encoder Settings for Amazon IVS

Amazon IVS requires specific encoding settings to maintain low latency and stream stability.

  1. While still in the Settings window, click on the Output tab.
  2. Set the Output Mode dropdown at the top to Advanced.
  3. Under the Streaming tab, configure the following settings:
    • Encoder: Select x264 (CPU) or NVIDIA NVENC H.264 (GPU).
    • Rate Control: Set to CBR (Constant Bitrate). This is required for stable ingestion.
    • Bitrate: Set between 3000 Kbps and 8500 Kbps (depending on your resolution and network upload speed. 4500 Kbps is recommended for 1080p at 30fps; 6000 Kbps for 1080p at 60fps).
    • Keyframe Interval: Set strictly to 2 seconds. Amazon IVS requires a 2-second keyframe interval.
    • CPU Usage Preset (for x264): Set to veryfast or faster.
    • Profile: Set to main or high.

Step 4: Configure Video and Audio Settings

  1. Click on the Video tab in the left sidebar.
  2. Set your Base (Canvas) Resolution to your monitor’s resolution (e.g., 1920x1080).
  3. Set your Output (Scaled) Resolution to matches your target stream quality (e.g., 1920x1080 or 1280x720).
  4. Set the Common FPS Values to either 30 or 60.
  5. Click on the Audio tab in the left sidebar.
  6. Ensure the Sample Rate is set to 44.1 kHz or 48 kHz.
  7. Click OK to save all changes and close the Settings menu.

Step 5: Start the Stream

With all configurations complete, click Start Streaming in the main OBS Studio control panel. You can verify that your stream is live by checking the live preview pane in your Amazon IVS channel console on AWS.