Skip to content

Start Composition

ivsrealtime_start_composition R Documentation

Starts a Composition from a stage based on the configuration provided in the request

Description

Starts a Composition from a stage based on the configuration provided in the request.

A Composition is an ephemeral resource that exists after this endpoint returns successfully. Composition stops and the resource is deleted:

  • When stop_composition is called.

  • After a 1-minute timeout, when all participants are disconnected from the stage.

  • After a 1-minute timeout, if there are no participants in the stage when StartComposition is called.

  • When broadcasting to the IVS channel fails and all retries are exhausted.

  • When broadcasting is disconnected and all attempts to reconnect are exhausted.

Usage

ivsrealtime_start_composition(stageArn, idempotencyToken, layout,
  destinations, tags)

Arguments

stageArn

[required] ARN of the stage to be used for compositing.

idempotencyToken

Idempotency token.

layout

Layout object to configure composition parameters.

destinations

[required] Array of destination configuration.

tags

Tags attached to the resource. Array of maps, each of the form string:string (key:value). See Tagging AWS Resources for details, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS has no constraints on tags beyond what is documented there.

Value

A list with the following syntax:

list(
  composition = list(
    arn = "string",
    stageArn = "string",
    state = "STARTING"|"ACTIVE"|"STOPPING"|"FAILED"|"STOPPED",
    layout = list(
      grid = list(
        featuredParticipantAttribute = "string",
        omitStoppedVideo = TRUE|FALSE,
        videoAspectRatio = "AUTO"|"VIDEO"|"SQUARE"|"PORTRAIT",
        videoFillMode = "FILL"|"COVER"|"CONTAIN",
        gridGap = 123
      ),
      pip = list(
        featuredParticipantAttribute = "string",
        omitStoppedVideo = TRUE|FALSE,
        videoFillMode = "FILL"|"COVER"|"CONTAIN",
        gridGap = 123,
        pipParticipantAttribute = "string",
        pipBehavior = "STATIC"|"DYNAMIC",
        pipOffset = 123,
        pipPosition = "TOP_LEFT"|"TOP_RIGHT"|"BOTTOM_LEFT"|"BOTTOM_RIGHT",
        pipWidth = 123,
        pipHeight = 123
      )
    ),
    destinations = list(
      list(
        id = "string",
        state = "STARTING"|"ACTIVE"|"STOPPING"|"RECONNECTING"|"FAILED"|"STOPPED",
        startTime = as.POSIXct(
          "2015-01-01"
        ),
        endTime = as.POSIXct(
          "2015-01-01"
        ),
        configuration = list(
          name = "string",
          channel = list(
            channelArn = "string",
            encoderConfigurationArn = "string"
          ),
          s3 = list(
            storageConfigurationArn = "string",
            encoderConfigurationArns = list(
              "string"
            ),
            recordingConfiguration = list(
              format = "HLS"
            )
          )
        ),
        detail = list(
          s3 = list(
            recordingPrefix = "string"
          )
        )
      )
    ),
    tags = list(
      "string"
    ),
    startTime = as.POSIXct(
      "2015-01-01"
    ),
    endTime = as.POSIXct(
      "2015-01-01"
    )
  )
)

Request syntax

svc$start_composition(
  stageArn = "string",
  idempotencyToken = "string",
  layout = list(
    grid = list(
      featuredParticipantAttribute = "string",
      omitStoppedVideo = TRUE|FALSE,
      videoAspectRatio = "AUTO"|"VIDEO"|"SQUARE"|"PORTRAIT",
      videoFillMode = "FILL"|"COVER"|"CONTAIN",
      gridGap = 123
    ),
    pip = list(
      featuredParticipantAttribute = "string",
      omitStoppedVideo = TRUE|FALSE,
      videoFillMode = "FILL"|"COVER"|"CONTAIN",
      gridGap = 123,
      pipParticipantAttribute = "string",
      pipBehavior = "STATIC"|"DYNAMIC",
      pipOffset = 123,
      pipPosition = "TOP_LEFT"|"TOP_RIGHT"|"BOTTOM_LEFT"|"BOTTOM_RIGHT",
      pipWidth = 123,
      pipHeight = 123
    )
  ),
  destinations = list(
    list(
      name = "string",
      channel = list(
        channelArn = "string",
        encoderConfigurationArn = "string"
      ),
      s3 = list(
        storageConfigurationArn = "string",
        encoderConfigurationArns = list(
          "string"
        ),
        recordingConfiguration = list(
          format = "HLS"
        )
      )
    )
  ),
  tags = list(
    "string"
  )
)