ChimeSDKMediaPipelines / Client / create_media_capture_pipeline

create_media_capture_pipeline#

ChimeSDKMediaPipelines.Client.create_media_capture_pipeline(**kwargs)#

Creates a media pipeline.

See also: AWS API Documentation

Request Syntax

response = client.create_media_capture_pipeline(
    SourceType='ChimeSdkMeeting',
    SourceArn='string',
    SinkType='S3Bucket',
    SinkArn='string',
    ClientRequestToken='string',
    ChimeSdkMeetingConfiguration={
        'SourceConfiguration': {
            'SelectedVideoStreams': {
                'AttendeeIds': [
                    'string',
                ],
                'ExternalUserIds': [
                    'string',
                ]
            }
        },
        'ArtifactsConfiguration': {
            'Audio': {
                'MuxType': 'AudioOnly'|'AudioWithActiveSpeakerVideo'|'AudioWithCompositedVideo'
            },
            'Video': {
                'State': 'Enabled'|'Disabled',
                'MuxType': 'VideoOnly'
            },
            'Content': {
                'State': 'Enabled'|'Disabled',
                'MuxType': 'ContentOnly'
            },
            'CompositedVideo': {
                'Layout': 'GridView',
                'Resolution': 'HD'|'FHD',
                'GridViewConfiguration': {
                    'ContentShareLayout': 'PresenterOnly'|'Horizontal'|'Vertical'|'ActiveSpeakerOnly',
                    'PresenterOnlyConfiguration': {
                        'PresenterPosition': 'TopLeft'|'TopRight'|'BottomLeft'|'BottomRight'
                    },
                    'ActiveSpeakerOnlyConfiguration': {
                        'ActiveSpeakerPosition': 'TopLeft'|'TopRight'|'BottomLeft'|'BottomRight'
                    },
                    'HorizontalLayoutConfiguration': {
                        'TileOrder': 'JoinSequence'|'SpeakerSequence',
                        'TilePosition': 'Top'|'Bottom',
                        'TileCount': 123,
                        'TileAspectRatio': 'string'
                    },
                    'VerticalLayoutConfiguration': {
                        'TileOrder': 'JoinSequence'|'SpeakerSequence',
                        'TilePosition': 'Left'|'Right',
                        'TileCount': 123,
                        'TileAspectRatio': 'string'
                    },
                    'VideoAttribute': {
                        'CornerRadius': 123,
                        'BorderColor': 'Black'|'Blue'|'Red'|'Green'|'White'|'Yellow',
                        'HighlightColor': 'Black'|'Blue'|'Red'|'Green'|'White'|'Yellow',
                        'BorderThickness': 123
                    },
                    'CanvasOrientation': 'Landscape'|'Portrait'
                }
            }
        }
    },
    SseAwsKeyManagementParams={
        'AwsKmsKeyId': 'string',
        'AwsKmsEncryptionContext': 'string'
    },
    SinkIamRoleArn='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
Parameters:
  • SourceType (string) –

    [REQUIRED]

    Source type from which the media artifacts are captured. A Chime SDK Meeting is the only supported source.

  • SourceArn (string) –

    [REQUIRED]

    ARN of the source from which the media artifacts are captured.

  • SinkType (string) –

    [REQUIRED]

    Destination type to which the media artifacts are saved. You must use an S3 bucket.

  • SinkArn (string) –

    [REQUIRED]

    The ARN of the sink type.

  • ClientRequestToken (string) –

    The unique identifier for the client request. The token makes the API request idempotent. Use a unique token for each media pipeline request.

    This field is autopopulated if not provided.

  • ChimeSdkMeetingConfiguration (dict) –

    The configuration for a specified media pipeline. SourceType must be ChimeSdkMeeting.

    • SourceConfiguration (dict) –

      The source configuration for a specified media pipeline.

      • SelectedVideoStreams (dict) –

        The selected video streams for a specified media pipeline. The number of video streams can’t exceed 25.

        • AttendeeIds (list) –

          The attendee IDs of the streams selected for a media pipeline.

          • (string) –

        • ExternalUserIds (list) –

          The external user IDs of the streams selected for a media pipeline.

          • (string) –

    • ArtifactsConfiguration (dict) –

      The configuration for the artifacts in an Amazon Chime SDK meeting.

      • Audio (dict) – [REQUIRED]

        The configuration for the audio artifacts.

        • MuxType (string) – [REQUIRED]

          The MUX type of the audio artifact configuration object.

      • Video (dict) – [REQUIRED]

        The configuration for the video artifacts.

        • State (string) – [REQUIRED]

          Indicates whether the video artifact is enabled or disabled.

        • MuxType (string) –

          The MUX type of the video artifact configuration object.

      • Content (dict) – [REQUIRED]

        The configuration for the content artifacts.

        • State (string) – [REQUIRED]

          Indicates whether the content artifact is enabled or disabled.

        • MuxType (string) –

          The MUX type of the artifact configuration.

      • CompositedVideo (dict) –

        Enables video compositing.

        • Layout (string) –

          The layout setting, such as GridView in the configuration object.

        • Resolution (string) –

          The video resolution setting in the configuration object. Default: HD at 1280 x 720. FHD resolution: 1920 x 1080.

        • GridViewConfiguration (dict) – [REQUIRED]

          The GridView configuration setting.

          • ContentShareLayout (string) – [REQUIRED]

            Defines the layout of the video tiles when content sharing is enabled.

          • PresenterOnlyConfiguration (dict) –

            Defines the configuration options for a presenter only video tile.

            • PresenterPosition (string) –

              Defines the position of the presenter video tile. Default: TopRight.

          • ActiveSpeakerOnlyConfiguration (dict) –

            The configuration settings for an ActiveSpeakerOnly video tile.

            • ActiveSpeakerPosition (string) –

              The position of the ActiveSpeakerOnly video tile.

          • HorizontalLayoutConfiguration (dict) –

            The configuration settings for a horizontal layout.

            • TileOrder (string) –

              Sets the automatic ordering of the video tiles.

            • TilePosition (string) –

              Sets the position of horizontal tiles.

            • TileCount (integer) –

              The maximum number of video tiles to display.

            • TileAspectRatio (string) –

              Specifies the aspect ratio of all video tiles.

          • VerticalLayoutConfiguration (dict) –

            The configuration settings for a vertical layout.

            • TileOrder (string) –

              Sets the automatic ordering of the video tiles.

            • TilePosition (string) –

              Sets the position of vertical tiles.

            • TileCount (integer) –

              The maximum number of tiles to display.

            • TileAspectRatio (string) –

              Sets the aspect ratio of the video tiles, such as 16:9.

          • VideoAttribute (dict) –

            The attribute settings for the video tiles.

            • CornerRadius (integer) –

              Sets the corner radius of all video tiles.

            • BorderColor (string) –

              Defines the border color of all video tiles.

            • HighlightColor (string) –

              Defines the highlight color for the active video tile.

            • BorderThickness (integer) –

              Defines the border thickness for all video tiles.

          • CanvasOrientation (string) –

            The orientation setting, horizontal or vertical.

  • SseAwsKeyManagementParams (dict) –

    An object that contains server side encryption parameters to be used by media capture pipeline. The parameters can also be used by media concatenation pipeline taking media capture pipeline as a media source.

    • AwsKmsKeyId (string) – [REQUIRED]

      The KMS key you want to use to encrypt your media pipeline output. Decryption is required for concatenation pipeline. If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

      • Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

      • Use an alias for the KMS key ID. For example, alias/ExampleAlias.

      • Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

      • Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

      If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

      • Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

      • Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

      If you don’t specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

      Note that the role specified in the SinkIamRoleArn request parameter must have permission to use the specified KMS key.

    • AwsKmsEncryptionContext (string) –

      Base64-encoded string of a UTF-8 encoded JSON, which contains the encryption context as non-secret key-value pair known as encryption context pairs, that provides an added layer of security for your data. For more information, see KMS encryption context and Asymmetric keys in KMS in the Key Management Service Developer Guide.

  • SinkIamRoleArn (string) –

    The Amazon Resource Name (ARN) of the sink role to be used with AwsKmsKeyId in SseAwsKeyManagementParams. Can only interact with S3Bucket sink type. The role must belong to the caller’s account and be able to act on behalf of the caller during the API call. All minimum policy permissions requirements for the caller to perform sink-related actions are the same for SinkIamRoleArn.

    Additionally, the role must have permission to kms:GenerateDataKey using KMS key supplied as AwsKmsKeyId in SseAwsKeyManagementParams. If media concatenation will be required later, the role must also have permission to kms:Decrypt for the same KMS key.

  • Tags (list) –

    The tag key-value pairs.

    • (dict) –

      A key/value pair that grants users access to meeting resources.

      • Key (string) – [REQUIRED]

        The key half of a tag.

      • Value (string) – [REQUIRED]

        The value half of a tag.

Return type:

dict

Returns:

Response Syntax

{
    'MediaCapturePipeline': {
        'MediaPipelineId': 'string',
        'MediaPipelineArn': 'string',
        'SourceType': 'ChimeSdkMeeting',
        'SourceArn': 'string',
        'Status': 'Initializing'|'InProgress'|'Failed'|'Stopping'|'Stopped'|'Paused'|'NotStarted',
        'SinkType': 'S3Bucket',
        'SinkArn': 'string',
        'CreatedTimestamp': datetime(2015, 1, 1),
        'UpdatedTimestamp': datetime(2015, 1, 1),
        'ChimeSdkMeetingConfiguration': {
            'SourceConfiguration': {
                'SelectedVideoStreams': {
                    'AttendeeIds': [
                        'string',
                    ],
                    'ExternalUserIds': [
                        'string',
                    ]
                }
            },
            'ArtifactsConfiguration': {
                'Audio': {
                    'MuxType': 'AudioOnly'|'AudioWithActiveSpeakerVideo'|'AudioWithCompositedVideo'
                },
                'Video': {
                    'State': 'Enabled'|'Disabled',
                    'MuxType': 'VideoOnly'
                },
                'Content': {
                    'State': 'Enabled'|'Disabled',
                    'MuxType': 'ContentOnly'
                },
                'CompositedVideo': {
                    'Layout': 'GridView',
                    'Resolution': 'HD'|'FHD',
                    'GridViewConfiguration': {
                        'ContentShareLayout': 'PresenterOnly'|'Horizontal'|'Vertical'|'ActiveSpeakerOnly',
                        'PresenterOnlyConfiguration': {
                            'PresenterPosition': 'TopLeft'|'TopRight'|'BottomLeft'|'BottomRight'
                        },
                        'ActiveSpeakerOnlyConfiguration': {
                            'ActiveSpeakerPosition': 'TopLeft'|'TopRight'|'BottomLeft'|'BottomRight'
                        },
                        'HorizontalLayoutConfiguration': {
                            'TileOrder': 'JoinSequence'|'SpeakerSequence',
                            'TilePosition': 'Top'|'Bottom',
                            'TileCount': 123,
                            'TileAspectRatio': 'string'
                        },
                        'VerticalLayoutConfiguration': {
                            'TileOrder': 'JoinSequence'|'SpeakerSequence',
                            'TilePosition': 'Left'|'Right',
                            'TileCount': 123,
                            'TileAspectRatio': 'string'
                        },
                        'VideoAttribute': {
                            'CornerRadius': 123,
                            'BorderColor': 'Black'|'Blue'|'Red'|'Green'|'White'|'Yellow',
                            'HighlightColor': 'Black'|'Blue'|'Red'|'Green'|'White'|'Yellow',
                            'BorderThickness': 123
                        },
                        'CanvasOrientation': 'Landscape'|'Portrait'
                    }
                }
            }
        },
        'SseAwsKeyManagementParams': {
            'AwsKmsKeyId': 'string',
            'AwsKmsEncryptionContext': 'string'
        },
        'SinkIamRoleArn': 'string'
    }
}

Response Structure

  • (dict) –

    • MediaCapturePipeline (dict) –

      A media pipeline object, the ID, source type, source ARN, sink type, and sink ARN of a media pipeline object.

      • MediaPipelineId (string) –

        The ID of a media pipeline.

      • MediaPipelineArn (string) –

        The ARN of the media capture pipeline

      • SourceType (string) –

        Source type from which media artifacts are saved. You must use ChimeMeeting.

      • SourceArn (string) –

        ARN of the source from which the media artifacts are saved.

      • Status (string) –

        The status of the media pipeline.

      • SinkType (string) –

        Destination type to which the media artifacts are saved. You must use an S3 Bucket.

      • SinkArn (string) –

        ARN of the destination to which the media artifacts are saved.

      • CreatedTimestamp (datetime) –

        The time at which the pipeline was created, in ISO 8601 format.

      • UpdatedTimestamp (datetime) –

        The time at which the pipeline was updated, in ISO 8601 format.

      • ChimeSdkMeetingConfiguration (dict) –

        The configuration for a specified media pipeline. SourceType must be ChimeSdkMeeting.

        • SourceConfiguration (dict) –

          The source configuration for a specified media pipeline.

          • SelectedVideoStreams (dict) –

            The selected video streams for a specified media pipeline. The number of video streams can’t exceed 25.

            • AttendeeIds (list) –

              The attendee IDs of the streams selected for a media pipeline.

              • (string) –

            • ExternalUserIds (list) –

              The external user IDs of the streams selected for a media pipeline.

              • (string) –

        • ArtifactsConfiguration (dict) –

          The configuration for the artifacts in an Amazon Chime SDK meeting.

          • Audio (dict) –

            The configuration for the audio artifacts.

            • MuxType (string) –

              The MUX type of the audio artifact configuration object.

          • Video (dict) –

            The configuration for the video artifacts.

            • State (string) –

              Indicates whether the video artifact is enabled or disabled.

            • MuxType (string) –

              The MUX type of the video artifact configuration object.

          • Content (dict) –

            The configuration for the content artifacts.

            • State (string) –

              Indicates whether the content artifact is enabled or disabled.

            • MuxType (string) –

              The MUX type of the artifact configuration.

          • CompositedVideo (dict) –

            Enables video compositing.

            • Layout (string) –

              The layout setting, such as GridView in the configuration object.

            • Resolution (string) –

              The video resolution setting in the configuration object. Default: HD at 1280 x 720. FHD resolution: 1920 x 1080.

            • GridViewConfiguration (dict) –

              The GridView configuration setting.

              • ContentShareLayout (string) –

                Defines the layout of the video tiles when content sharing is enabled.

              • PresenterOnlyConfiguration (dict) –

                Defines the configuration options for a presenter only video tile.

                • PresenterPosition (string) –

                  Defines the position of the presenter video tile. Default: TopRight.

              • ActiveSpeakerOnlyConfiguration (dict) –

                The configuration settings for an ActiveSpeakerOnly video tile.

                • ActiveSpeakerPosition (string) –

                  The position of the ActiveSpeakerOnly video tile.

              • HorizontalLayoutConfiguration (dict) –

                The configuration settings for a horizontal layout.

                • TileOrder (string) –

                  Sets the automatic ordering of the video tiles.

                • TilePosition (string) –

                  Sets the position of horizontal tiles.

                • TileCount (integer) –

                  The maximum number of video tiles to display.

                • TileAspectRatio (string) –

                  Specifies the aspect ratio of all video tiles.

              • VerticalLayoutConfiguration (dict) –

                The configuration settings for a vertical layout.

                • TileOrder (string) –

                  Sets the automatic ordering of the video tiles.

                • TilePosition (string) –

                  Sets the position of vertical tiles.

                • TileCount (integer) –

                  The maximum number of tiles to display.

                • TileAspectRatio (string) –

                  Sets the aspect ratio of the video tiles, such as 16:9.

              • VideoAttribute (dict) –

                The attribute settings for the video tiles.

                • CornerRadius (integer) –

                  Sets the corner radius of all video tiles.

                • BorderColor (string) –

                  Defines the border color of all video tiles.

                • HighlightColor (string) –

                  Defines the highlight color for the active video tile.

                • BorderThickness (integer) –

                  Defines the border thickness for all video tiles.

              • CanvasOrientation (string) –

                The orientation setting, horizontal or vertical.

      • SseAwsKeyManagementParams (dict) –

        An object that contains server side encryption parameters to be used by media capture pipeline. The parameters can also be used by media concatenation pipeline taking media capture pipeline as a media source.

        • AwsKmsKeyId (string) –

          The KMS key you want to use to encrypt your media pipeline output. Decryption is required for concatenation pipeline. If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

          • Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

          • Use an alias for the KMS key ID. For example, alias/ExampleAlias.

          • Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

          • Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

          If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

          • Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

          • Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

          If you don’t specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

          Note that the role specified in the SinkIamRoleArn request parameter must have permission to use the specified KMS key.

        • AwsKmsEncryptionContext (string) –

          Base64-encoded string of a UTF-8 encoded JSON, which contains the encryption context as non-secret key-value pair known as encryption context pairs, that provides an added layer of security for your data. For more information, see KMS encryption context and Asymmetric keys in KMS in the Key Management Service Developer Guide.

      • SinkIamRoleArn (string) –

        The Amazon Resource Name (ARN) of the sink role to be used with AwsKmsKeyId in SseAwsKeyManagementParams.

Exceptions

  • ChimeSDKMediaPipelines.Client.exceptions.BadRequestException

  • ChimeSDKMediaPipelines.Client.exceptions.ForbiddenException

  • ChimeSDKMediaPipelines.Client.exceptions.UnauthorizedClientException

  • ChimeSDKMediaPipelines.Client.exceptions.ThrottledClientException

  • ChimeSDKMediaPipelines.Client.exceptions.ResourceLimitExceededException

  • ChimeSDKMediaPipelines.Client.exceptions.ServiceUnavailableException

  • ChimeSDKMediaPipelines.Client.exceptions.ServiceFailureException