aws_sdk_ivs/client/
create_channel.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`CreateChannel`](crate::operation::create_channel::builders::CreateChannelFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`name(impl Into<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_name):<br>required: **false**<br><p>Channel name.</p><br>
7    ///   - [`latency_mode(ChannelLatencyMode)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::latency_mode) / [`set_latency_mode(Option<ChannelLatencyMode>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_latency_mode):<br>required: **false**<br><p>Channel latency mode. Use <code>NORMAL</code> to broadcast and deliver live video up to Full HD. Use <code>LOW</code> for near-real-time interaction with viewers. Default: <code>LOW</code>.</p><br>
8    ///   - [`r#type(ChannelType)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::type) / [`set_type(Option<ChannelType>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_type):<br>required: **false**<br><p>Channel type, which determines the allowable resolution and bitrate. <i>If you exceed the allowable input resolution or bitrate, the stream probably will disconnect immediately.</i> Default: <code>STANDARD</code>. For details, see <a href="https://docs.aws.amazon.com/ivs/latest/LowLatencyAPIReference/channel-types.html">Channel Types</a>.</p><br>
9    ///   - [`authorized(bool)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::authorized) / [`set_authorized(Option<bool>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_authorized):<br>required: **false**<br><p>Whether the channel is private (enabled for playback authorization). Default: <code>false</code>.</p><br>
10    ///   - [`recording_configuration_arn(impl Into<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::recording_configuration_arn) / [`set_recording_configuration_arn(Option<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_recording_configuration_arn):<br>required: **false**<br><p>Recording-configuration ARN. A valid ARN value here both specifies the ARN and enables recording. Default: "" (empty string, recording is disabled).</p><br>
11    ///   - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_tags):<br>required: **false**<br><p>Array of 1-50 maps, each of the form <code>string:string (key:value)</code>. See <a href="https://docs.aws.amazon.com/tag-editor/latest/userguide/best-practices-and-strats.html">Best practices and strategies</a> in <i>Tagging Amazon Web Services Resources and Tag Editor</i> for details, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS has no service-specific constraints beyond what is documented there.</p><br>
12    ///   - [`insecure_ingest(bool)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::insecure_ingest) / [`set_insecure_ingest(Option<bool>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_insecure_ingest):<br>required: **false**<br><p>Whether the channel allows insecure RTMP and SRT ingest. Default: <code>false</code>.</p><br>
13    ///   - [`preset(TranscodePreset)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::preset) / [`set_preset(Option<TranscodePreset>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_preset):<br>required: **false**<br><p>Optional transcode preset for the channel. This is selectable only for <code>ADVANCED_HD</code> and <code>ADVANCED_SD</code> channel types. For those channel types, the default <code>preset</code> is <code>HIGHER_BANDWIDTH_DELIVERY</code>. For other channel types (<code>BASIC</code> and <code>STANDARD</code>), <code>preset</code> is the empty string (<code>""</code>).</p><br>
14    ///   - [`playback_restriction_policy_arn(impl Into<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::playback_restriction_policy_arn) / [`set_playback_restriction_policy_arn(Option<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_playback_restriction_policy_arn):<br>required: **false**<br><p>Playback-restriction-policy ARN. A valid ARN value here both specifies the ARN and enables playback restriction. Default: "" (empty string, no playback restriction policy is applied).</p><br>
15    ///   - [`multitrack_input_configuration(MultitrackInputConfiguration)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::multitrack_input_configuration) / [`set_multitrack_input_configuration(Option<MultitrackInputConfiguration>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_multitrack_input_configuration):<br>required: **false**<br><p>Object specifying multitrack input configuration. Default: no multitrack input configuration is specified.</p><br>
16    ///   - [`container_format(ContainerFormat)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::container_format) / [`set_container_format(Option<ContainerFormat>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_container_format):<br>required: **false**<br><p>Indicates which content-packaging format is used (MPEG-TS or fMP4). If <code>multitrackInputConfiguration</code> is specified and <code>enabled</code> is <code>true</code>, then <code>containerFormat</code> is required and must be set to <code>FRAGMENTED_MP4</code>. Otherwise, <code>containerFormat</code> may be set to <code>TS</code> or <code>FRAGMENTED_MP4</code>. Default: <code>TS</code>.</p><br>
17    /// - On success, responds with [`CreateChannelOutput`](crate::operation::create_channel::CreateChannelOutput) with field(s):
18    ///   - [`channel(Option<Channel>)`](crate::operation::create_channel::CreateChannelOutput::channel): <p></p>
19    ///   - [`stream_key(Option<StreamKey>)`](crate::operation::create_channel::CreateChannelOutput::stream_key): <p></p>
20    /// - On failure, responds with [`SdkError<CreateChannelError>`](crate::operation::create_channel::CreateChannelError)
21    pub fn create_channel(&self) -> crate::operation::create_channel::builders::CreateChannelFluentBuilder {
22        crate::operation::create_channel::builders::CreateChannelFluentBuilder::new(self.handle.clone())
23    }
24}