Skip to content

update_input async

update_input(
    input_id: __string,
    *,
    config_overrides: Optional[AsyncMediaLiveClientConfig] = None,
    destinations: Optional[__listOfInputDestinationRequest] = None,
    input_devices: Optional[__listOfInputDeviceRequest] = None,
    input_security_groups: Optional[__listOf__string] = None,
    media_connect_flows: Optional[__listOfMediaConnectFlowRequest] = None,
    name: Optional[__string] = None,
    role_arn: Optional[__string] = None,
    sources: Optional[__listOfInputSourceRequest] = None,
    srt_settings: Optional[SrtSettingsRequest] = None,
    multicast_settings: Optional[MulticastSettingsUpdateRequest] = None,
    smpte2110_receiver_group_settings: Optional[Smpte2110ReceiverGroupSettings] = None,
    sdi_sources: Optional[InputSdiSources] = None,
    special_router_settings: Optional[SpecialRouterSettings] = None,
) -> UpdateInputResponse

Updates an input.

Parameters:

  • destinations (Optional[__listOfInputDestinationRequest], default: None ) –

    Destination settings for PUSH type inputs.

  • input_devices (Optional[__listOfInputDeviceRequest], default: None ) –

    Settings for the devices.

  • input_id (__string) –

    Unique ID of the input.

  • input_security_groups (Optional[__listOf__string], default: None ) –

    A list of security groups referenced by IDs to attach to the input.

  • media_connect_flows (Optional[__listOfMediaConnectFlowRequest], default: None ) –

    A list of the MediaConnect Flow ARNs that you want to use as the source of the input. You can specify as few as one Flow and presently, as many as two. The only requirement is when you have more than one is that each Flow is in a separate Availability Zone as this ensures your EML input is redundant to AZ issues.

  • name (Optional[__string], default: None ) –

    Name of the input.

  • role_arn (Optional[__string], default: None ) –

    The Amazon Resource Name (ARN) of the role this input assumes during and after creation.

  • sources (Optional[__listOfInputSourceRequest], default: None ) –

    The source URLs for a PULL-type input. Every PULL type input needs exactly two source URLs for redundancy. Only specify sources for PULL type Inputs. Leave Destinations empty.

  • srt_settings (Optional[SrtSettingsRequest], default: None ) –

    The settings associated with an SRT input.

  • multicast_settings (Optional[MulticastSettingsUpdateRequest], default: None ) –

    Multicast Input settings.

  • smpte2110_receiver_group_settings (Optional[Smpte2110ReceiverGroupSettings], default: None ) –

    Include this parameter if the input is a SMPTE 2110 input, to identify the stream sources for this input.

  • special_router_settings (Optional[SpecialRouterSettings], default: None ) –

    When using MediaConnect Router as the source of a MediaLive input there's a special handoff that occurs when a router output is created. This group of settings is set on your behalf by the MediaConnect Router service using this set of settings. This setting object can only by used by that service.

Raises:

Source code in docs_src/capo_medialive/_services/async_media_live.py
async def update_input(
    self,
    input_id: "capo_medialive.types.__string.__string",
    *,
    config_overrides: Optional[AsyncMediaLiveClientConfig] = None,
    destinations: Optional[
        "capo_medialive.types.__list_of_input_destination_request.__listOfInputDestinationRequest"
    ] = None,
    input_devices: Optional[
        "capo_medialive.types.__list_of_input_device_request.__listOfInputDeviceRequest"
    ] = None,
    input_security_groups: Optional[
        "capo_medialive.types.__list_of__string.__listOf__string"
    ] = None,
    media_connect_flows: Optional[
        "capo_medialive.types.__list_of_media_connect_flow_request.__listOfMediaConnectFlowRequest"
    ] = None,
    name: Optional["capo_medialive.types.__string.__string"] = None,
    role_arn: Optional["capo_medialive.types.__string.__string"] = None,
    sources: Optional[
        "capo_medialive.types.__list_of_input_source_request.__listOfInputSourceRequest"
    ] = None,
    srt_settings: Optional[
        "capo_medialive.types.srt_settings_request.SrtSettingsRequest"
    ] = None,
    multicast_settings: Optional[
        "capo_medialive.types.multicast_settings_update_request.MulticastSettingsUpdateRequest"
    ] = None,
    smpte2110_receiver_group_settings: Optional[
        "capo_medialive.types.smpte2110_receiver_group_settings.Smpte2110ReceiverGroupSettings"
    ] = None,
    sdi_sources: Optional[
        "capo_medialive.types.input_sdi_sources.InputSdiSources"
    ] = None,
    special_router_settings: Optional[
        "capo_medialive.types.special_router_settings.SpecialRouterSettings"
    ] = None,
) -> "capo_medialive.types.update_input_response.UpdateInputResponse":
    """Updates an input.

    Args:
        destinations: Destination settings for PUSH type inputs.
        input_devices: Settings for the devices.
        input_id: Unique ID of the input.
        input_security_groups: A list of security groups referenced by IDs to attach to the input.
        media_connect_flows: A list of the MediaConnect Flow ARNs that you want to use as the source of the input. You can specify as few as one Flow and presently, as many as two. The only requirement is when you have more than one is that each Flow is in a separate Availability Zone as this ensures your EML input is redundant to AZ issues.
        name: Name of the input.
        role_arn: The Amazon Resource Name (ARN) of the role this input assumes during and after creation.
        sources: The source URLs for a PULL-type input. Every PULL type input needs exactly two source URLs for redundancy. Only specify sources for PULL type Inputs. Leave Destinations empty.
        srt_settings: The settings associated with an SRT input.
        multicast_settings: Multicast Input settings.
        smpte2110_receiver_group_settings: Include this parameter if the input is a SMPTE 2110 input, to identify the stream sources for this input.
        special_router_settings: When using MediaConnect Router as the source of a MediaLive input there's a special handoff that occurs when a router output is created. This group of settings is set on your behalf by the MediaConnect Router service using this set of settings. This setting object can only by used by that service.

    Raises:
        capo_medialive.errors.bad_gateway_exception.BadGatewayException: Placeholder documentation for BadGatewayException
        capo_medialive.errors.bad_request_exception.BadRequestException: Placeholder documentation for BadRequestException
        capo_medialive.errors.conflict_exception.ConflictException: Placeholder documentation for ConflictException
        capo_medialive.errors.forbidden_exception.ForbiddenException: Placeholder documentation for ForbiddenException
        capo_medialive.errors.gateway_timeout_exception.GatewayTimeoutException: Placeholder documentation for GatewayTimeoutException
        capo_medialive.errors.internal_server_error_exception.InternalServerErrorException: Placeholder documentation for InternalServerErrorException
        capo_medialive.errors.not_found_exception.NotFoundException: Placeholder documentation for NotFoundException
        capo_medialive.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_medialive.types.update_input_request.UpdateInputRequest]",
    ) -> AsyncOperationResponse[
        "capo_medialive.types.update_input_response.UpdateInputResponse"
    ]:
        import capo_medialive._operations.media_live.update_input

        (
            output,
            http_response,
        ) = await capo_medialive._operations.media_live.update_input.async_update_input(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateInput")
    )
    input_: capo_medialive.types.update_input_request.UpdateInputRequest = {
        "input_id": input_id
    }
    if destinations is not None:
        input_["destinations"] = destinations
    if input_devices is not None:
        input_["input_devices"] = input_devices
    if input_security_groups is not None:
        input_["input_security_groups"] = input_security_groups
    if media_connect_flows is not None:
        input_["media_connect_flows"] = media_connect_flows
    if name is not None:
        input_["name"] = name
    if role_arn is not None:
        input_["role_arn"] = role_arn
    if sources is not None:
        input_["sources"] = sources
    if srt_settings is not None:
        input_["srt_settings"] = srt_settings
    if multicast_settings is not None:
        input_["multicast_settings"] = multicast_settings
    if smpte2110_receiver_group_settings is not None:
        input_["smpte2110_receiver_group_settings"] = (
            smpte2110_receiver_group_settings
        )
    if sdi_sources is not None:
        input_["sdi_sources"] = sdi_sources
    if special_router_settings is not None:
        input_["special_router_settings"] = special_router_settings

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output