/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the ivs-2020-07-14.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.IVS.Model { /// /// Container for the parameters to the CreateChannel operation. /// Creates a new channel and an associated stream key to start streaming. /// public partial class CreateChannelRequest : AmazonIVSRequest { private bool? _authorized; private bool? _insecureIngest; private ChannelLatencyMode _latencyMode; private string _name; private TranscodePreset _preset; private string _recordingConfigurationArn; private Dictionary _tags = new Dictionary(); private ChannelType _type; /// /// Gets and sets the property Authorized. /// /// Whether the channel is private (enabled for playback authorization). Default: false. /// /// public bool Authorized { get { return this._authorized.GetValueOrDefault(); } set { this._authorized = value; } } // Check to see if Authorized property is set internal bool IsSetAuthorized() { return this._authorized.HasValue; } /// /// Gets and sets the property InsecureIngest. /// /// Whether the channel allows insecure RTMP ingest. Default: false. /// /// public bool InsecureIngest { get { return this._insecureIngest.GetValueOrDefault(); } set { this._insecureIngest = value; } } // Check to see if InsecureIngest property is set internal bool IsSetInsecureIngest() { return this._insecureIngest.HasValue; } /// /// Gets and sets the property LatencyMode. /// /// Channel latency mode. Use NORMAL to broadcast and deliver live video /// up to Full HD. Use LOW for near-real-time interaction with viewers. (Note: /// In the Amazon IVS console, LOW and NORMAL correspond to /// Ultra-low and Standard, respectively.) Default: LOW. /// /// public ChannelLatencyMode LatencyMode { get { return this._latencyMode; } set { this._latencyMode = value; } } // Check to see if LatencyMode property is set internal bool IsSetLatencyMode() { return this._latencyMode != null; } /// /// Gets and sets the property Name. /// /// Channel name. /// /// [AWSProperty(Min=0, Max=128)] public string Name { get { return this._name; } set { this._name = value; } } // Check to see if Name property is set internal bool IsSetName() { return this._name != null; } /// /// Gets and sets the property Preset. /// /// Optional transcode preset for the channel. This is selectable only for ADVANCED_HD /// and ADVANCED_SD channel types. For those channel types, the default preset /// is HIGHER_BANDWIDTH_DELIVERY. For other channel types (BASIC /// and STANDARD), preset is the empty string (""). /// /// public TranscodePreset Preset { get { return this._preset; } set { this._preset = value; } } // Check to see if Preset property is set internal bool IsSetPreset() { return this._preset != null; } /// /// Gets and sets the property RecordingConfigurationArn. /// /// Recording-configuration ARN. Default: "" (empty string, recording is disabled). /// /// [AWSProperty(Min=0, Max=128)] public string RecordingConfigurationArn { get { return this._recordingConfigurationArn; } set { this._recordingConfigurationArn = value; } } // Check to see if RecordingConfigurationArn property is set internal bool IsSetRecordingConfigurationArn() { return this._recordingConfigurationArn != null; } /// /// Gets and sets the property Tags. /// /// Array of 1-50 maps, each of the form string:string (key:value). See Tagging Amazon /// Web Services Resources for more information, including restrictions that apply /// to tags and "Tag naming limits and requirements"; Amazon IVS has no service-specific /// constraints beyond what is documented there. /// /// [AWSProperty(Min=0, Max=50)] public Dictionary Tags { get { return this._tags; } set { this._tags = value; } } // Check to see if Tags property is set internal bool IsSetTags() { return this._tags != null && this._tags.Count > 0; } /// /// Gets and sets the property Type. /// /// Channel type, which determines the allowable resolution and bitrate. If you exceed /// the allowable input resolution or bitrate, the stream probably will disconnect immediately. /// Some types generate multiple qualities (renditions) from the original input; this /// automatically gives viewers the best experience for their devices and network conditions. /// Some types provide transcoded video; transcoding allows higher playback quality across /// a range of download speeds. Default: STANDARD. Valid values: /// ///
  • /// /// BASIC: Video is transmuxed: Amazon IVS delivers the original input quality /// to viewers. The viewer’s video-quality choice is limited to the original input. Input /// resolution can be up to 1080p and bitrate can be up to 1.5 Mbps for 480p and up to /// 3.5 Mbps for resolutions between 480p and 1080p. Original audio is passed through. /// ///
  • /// /// STANDARD: Video is transcoded: multiple qualities are generated from /// the original input, to automatically give viewers the best experience for their devices /// and network conditions. Transcoding allows higher playback quality across a range /// of download speeds. Resolution can be up to 1080p and bitrate can be up to 8.5 Mbps. /// Audio is transcoded only for renditions 360p and below; above that, audio is passed /// through. This is the default when you create a channel. /// ///
  • /// /// ADVANCED_SD: Video is transcoded; multiple qualities are generated from /// the original input, to automatically give viewers the best experience for their devices /// and network conditions. Input resolution can be up to 1080p and bitrate can be up /// to 8.5 Mbps; output is capped at SD quality (480p). You can select an optional transcode /// preset (see below). Audio for all renditions is transcoded, and an audio-only rendition /// is available. /// ///
  • /// /// ADVANCED_HD: Video is transcoded; multiple qualities are generated from /// the original input, to automatically give viewers the best experience for their devices /// and network conditions. Input resolution can be up to 1080p and bitrate can be up /// to 8.5 Mbps; output is capped at HD quality (720p). You can select an optional transcode /// preset (see below). Audio for all renditions is transcoded, and an audio-only rendition /// is available. /// ///
/// /// Optional transcode presets (available for the ADVANCED types) /// allow you to trade off available download bandwidth and video quality, to optimize /// the viewing experience. There are two presets: /// ///
  • /// /// Constrained bandwidth delivery uses a lower bitrate for each quality level. /// Use it if you have low download bandwidth and/or simple video content (e.g., talking /// heads) /// ///
  • /// /// Higher bandwidth delivery uses a higher bitrate for each quality level. Use /// it if you have high download bandwidth and/or complex video content (e.g., flashes /// and quick scene changes). /// ///
///
public ChannelType Type { get { return this._type; } set { this._type = value; } } // Check to see if Type property is set internal bool IsSetType() { return this._type != null; } } }