All Products
Search
Document Center

ApsaraVideo Live:Live stream ingest

Last Updated:Nov 14, 2023

ApsaraVideo Live supports multiple stream ingest methods. You can implement stream ingest for standard streaming and Real-Time Streaming (RTS) by using different devices based on your business requirements.

Prerequisites

  • For standard streaming: All operations from Activate ApsaraVideo Live to Generate ingest and streaming URLs in the basic procedure to get started with ApsaraVideo Live are complete. For more information, see Basic procedure.

  • For RTS: All operations from Activate ApsaraVideo Live to Generate ingest and streaming URLs in the basic procedure to implement RTS are complete. For more information, see Basic procedure.

Note

When you construct ingest and streaming URLs based on the concatenating rules, see Ingest and streaming URLs. For sample code that shows how to generate an ingest URL, see How do I use PHP or Java code to generate an ingest URL and a streaming URL .

Stream ingest for standard streaming

Scenario 1: Ingest streams on a PC

When you use a PC that runs Windows or macOS, you can install Open Broadcaster Software (OBS) to ingest streams based on your business requirements. OBS supports Windows, macOS, and Linux and is free and open source software for video recording and live streaming.

In the following example, OBS Studio V27.2.3 for Windows is used. The operations that you perform to ingest streams are similar for OBS of other versions or on other platforms. For more information about how to use OBS, see Use OBS to ingest streams.

  1. Download and install OBS Studio. Download link: OBS Studio.
  2. Run OBS Studio.
  3. In the menu bar, choose File > Settings.
  4. On the Settings page, click Stream and configure the following parameters.
    001
    ParameterDescription
    ServiceSelect Custom....
    ServerEnter the generated ingest URL that is signed. Example: rtmp://demo.aliyundoc.com/app/stream?auth_key=1543302081-0-0-9c6e7c8190c10bdfb3c0************.
    Stream KeyLeave this parameter empty.
  5. Go to the homepage of OBS Studio. Find the Sources section, add a source, and then click Start Streaming.
    002

Scenario 2: Ingest streams on a mobile device

  1. Use a mobile device to scan the QR code to download the Push SDK demo.
    Note If you use an iOS device and receive a message indicating that the demo is from an untrusted enterprise developer, tap Settings > General > Device Management. On the page that appears, find the permissions required by Taobao and tap Trust.
  2. Run the Push SDK demo.
  3. Select Camera Pushing or Screen Sharing.
    Note Only YUV files are allowed when you ingest local streams from a mobile device.
  4. Enter the ingest URL that is signed. Example: rtmp://demo.aliyundoc.com/app/stream?auth_key=1543302081-0-0-9c6e7c8190c10bdfb3c0************. Configure other parameters based on your business requirements.
  5. Click Start to start stream ingest.

Scenario 3: Use Push SDK to ingest streams

Push SDK for iOS

  1. Integrate Push SDK for iOS. For more information, see SDK integration.
  2. Configure the stream ingest parameters based on your business requirements and ingest a stream. For more information, see Use Push SDK for iOS.
    Exceptions may occur when you configure the stream ingest parameters or ingest a stream. For more information, see Handle errors, exceptions, and special cases.

Push SDK for Android

  1. Integrate Push SDK for Android. For more information, see SDK integration.
  2. Configure the stream ingest parameters based on your business requirements and ingest a stream. For more information, see Use Push SDK for Android.
    Exceptions may occur when you configure the stream ingest parameters or ingest a stream. For more information, see Handle errors, exceptions, and special cases.

Stream ingest for RTS

When you ingest streams over RTS, the formats vary based on different scenarios. Strictly conform to the following rules based on the format of the ingested stream and the client used for stream ingest.

Scenario 1: Ingest RTMP streams on a PC by using OBS

  1. Launch OBS.

  2. In the menu bar, choose File > Settings.

  3. On the Settings page, click Stream. On the page that appears, enter the generated ingest URL in the RTMP format in the Server field. Example: rtmp://example.aliyundoc.com/liveApp****/liveStream****?auth_key=1543302081-0-0-9c6e7c8190c10bdfb3c0****.

    001
    Note
    • The ingest URL consists of an ingest domain, application name, stream name, and token. Replace them based on your business requirements.
    • You can specify a value for Stream Key or leave the field empty.
  4. In the left-side navigation pane, click Output. On the page that appears, set the Keyframe Interval parameter to a value less than or equal to 3 and the Profile parameter to baseline.

    002
  5. In the left-side navigation pane, click Advanced. On the page that appears, select Dynamically change bitrate to manage congestion in the Network section.

Scenario 2: Ingest RTS streams on the web by using a browser

  1. Access the RTS player for web.

  2. Click the Stream Ingest tab.

  3. Expand the none drop-down box and select camera or screen based on your business requirements.

    If you select camera, click Mic and Camera at the bottom of the page to authorize the player to access your devices. After the authorization is successful, expand the Select Microphone and Select Camera drop-down boxes to select corresponding devices.

    Stream ingest on the web
  4. Click Create Local Stream.

  5. Enter the generated ingest URL in the RTS format. Example: artc://example.aliyundoc.com/liveApp****/liveStream****?auth_key=1543302081-0-0-9c6e7c8190c10bdfb3c0****.

  6. Click Start.

Scenario 3: Use Push SDK to ingest RTS streams

The procedure for using Push SDK to ingest an RTS stream is similar to the procedure for using Push SDK to ingest an RTMP stream. To ingest an RTS stream, you must specify an ingest URL in the RTS format when you call the startPush operation. Other settings are the same.

Push SDK for iOS

  1. Integrate Push SDK for iOS. For more information, see SDK integration.
  2. Configure the stream ingest parameters based on your business requirements and ingest a stream. For more information, see Use Push SDK for iOS.
    Exceptions may occur when you configure the stream ingest parameters or ingest a stream. For more information, see Handle errors, exceptions, and special cases.

Push SDK for Android

  1. Integrate Push SDK for Android. For more information, see SDK integration.
  2. Configure the stream ingest parameters based on your business requirements and ingest a stream. For more information, see Use Push SDK for Android.
    Exceptions may occur when you configure the stream ingest parameters or ingest a stream. For more information, see Handle errors, exceptions, and special cases.