/* * 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 medialive-2017-10-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.MediaLive.Model { /// /// Ms Smooth Group Settings /// public partial class MsSmoothGroupSettings { private string _acquisitionPointId; private SmoothGroupAudioOnlyTimecodeControl _audioOnlyTimecodeControl; private SmoothGroupCertificateMode _certificateMode; private int? _connectionRetryInterval; private OutputLocationRef _destination; private string _eventId; private SmoothGroupEventIdMode _eventIdMode; private SmoothGroupEventStopBehavior _eventStopBehavior; private int? _filecacheDuration; private int? _fragmentLength; private InputLossActionForMsSmoothOut _inputLossAction; private int? _numRetries; private int? _restartDelay; private SmoothGroupSegmentationMode _segmentationMode; private int? _sendDelayMs; private SmoothGroupSparseTrackType _sparseTrackType; private SmoothGroupStreamManifestBehavior _streamManifestBehavior; private string _timestampOffset; private SmoothGroupTimestampOffsetMode _timestampOffsetMode; /// /// Gets and sets the property AcquisitionPointId. The ID to include in each message in /// the sparse track. Ignored if sparseTrackType is NONE. /// public string AcquisitionPointId { get { return this._acquisitionPointId; } set { this._acquisitionPointId = value; } } // Check to see if AcquisitionPointId property is set internal bool IsSetAcquisitionPointId() { return this._acquisitionPointId != null; } /// /// Gets and sets the property AudioOnlyTimecodeControl. If set to passthrough for an /// audio-only MS Smooth output, the fragment absolute time will be set to the current /// timecode. This option does not write timecodes to the audio elementary stream. /// public SmoothGroupAudioOnlyTimecodeControl AudioOnlyTimecodeControl { get { return this._audioOnlyTimecodeControl; } set { this._audioOnlyTimecodeControl = value; } } // Check to see if AudioOnlyTimecodeControl property is set internal bool IsSetAudioOnlyTimecodeControl() { return this._audioOnlyTimecodeControl != null; } /// /// Gets and sets the property CertificateMode. If set to verifyAuthenticity, verify the /// https certificate chain to a trusted Certificate Authority (CA). This will cause /// https outputs to self-signed certificates to fail. /// public SmoothGroupCertificateMode CertificateMode { get { return this._certificateMode; } set { this._certificateMode = value; } } // Check to see if CertificateMode property is set internal bool IsSetCertificateMode() { return this._certificateMode != null; } /// /// Gets and sets the property ConnectionRetryInterval. Number of seconds to wait before /// retrying connection to the IIS server if the connection is lost. Content will be cached /// during this time and the cache will be be delivered to the IIS server once the connection /// is re-established. /// [AWSProperty(Min=0)] public int ConnectionRetryInterval { get { return this._connectionRetryInterval.GetValueOrDefault(); } set { this._connectionRetryInterval = value; } } // Check to see if ConnectionRetryInterval property is set internal bool IsSetConnectionRetryInterval() { return this._connectionRetryInterval.HasValue; } /// /// Gets and sets the property Destination. Smooth Streaming publish point on an IIS server. /// Elemental Live acts as a "Push" encoder to IIS. /// [AWSProperty(Required=true)] public OutputLocationRef Destination { get { return this._destination; } set { this._destination = value; } } // Check to see if Destination property is set internal bool IsSetDestination() { return this._destination != null; } /// /// Gets and sets the property EventId. MS Smooth event ID to be sent to the IIS server.Should /// only be specified if eventIdMode is set to useConfigured. /// public string EventId { get { return this._eventId; } set { this._eventId = value; } } // Check to see if EventId property is set internal bool IsSetEventId() { return this._eventId != null; } /// /// Gets and sets the property EventIdMode. Specifies whether or not to send an event /// ID to the IIS server. If no event ID is sent and the same Live Event is used without /// changing the publishing point, clients might see cached video from the previous run.Options:- /// "useConfigured" - use the value provided in eventId- "useTimestamp" - generate and /// send an event ID based on the current timestamp- "noEventId" - do not send an event /// ID to the IIS server. /// public SmoothGroupEventIdMode EventIdMode { get { return this._eventIdMode; } set { this._eventIdMode = value; } } // Check to see if EventIdMode property is set internal bool IsSetEventIdMode() { return this._eventIdMode != null; } /// /// Gets and sets the property EventStopBehavior. When set to sendEos, send EOS signal /// to IIS server when stopping the event /// public SmoothGroupEventStopBehavior EventStopBehavior { get { return this._eventStopBehavior; } set { this._eventStopBehavior = value; } } // Check to see if EventStopBehavior property is set internal bool IsSetEventStopBehavior() { return this._eventStopBehavior != null; } /// /// Gets and sets the property FilecacheDuration. Size in seconds of file cache for streaming /// outputs. /// [AWSProperty(Min=0)] public int FilecacheDuration { get { return this._filecacheDuration.GetValueOrDefault(); } set { this._filecacheDuration = value; } } // Check to see if FilecacheDuration property is set internal bool IsSetFilecacheDuration() { return this._filecacheDuration.HasValue; } /// /// Gets and sets the property FragmentLength. Length of mp4 fragments to generate (in /// seconds). Fragment length must be compatible with GOP size and framerate. /// [AWSProperty(Min=1)] public int FragmentLength { get { return this._fragmentLength.GetValueOrDefault(); } set { this._fragmentLength = value; } } // Check to see if FragmentLength property is set internal bool IsSetFragmentLength() { return this._fragmentLength.HasValue; } /// /// Gets and sets the property InputLossAction. Parameter that control output group behavior /// on input loss. /// public InputLossActionForMsSmoothOut InputLossAction { get { return this._inputLossAction; } set { this._inputLossAction = value; } } // Check to see if InputLossAction property is set internal bool IsSetInputLossAction() { return this._inputLossAction != null; } /// /// Gets and sets the property NumRetries. Number of retry attempts. /// [AWSProperty(Min=0)] public int NumRetries { get { return this._numRetries.GetValueOrDefault(); } set { this._numRetries = value; } } // Check to see if NumRetries property is set internal bool IsSetNumRetries() { return this._numRetries.HasValue; } /// /// Gets and sets the property RestartDelay. Number of seconds before initiating a restart /// due to output failure, due to exhausting the numRetries on one segment, or exceeding /// filecacheDuration. /// [AWSProperty(Min=0)] public int RestartDelay { get { return this._restartDelay.GetValueOrDefault(); } set { this._restartDelay = value; } } // Check to see if RestartDelay property is set internal bool IsSetRestartDelay() { return this._restartDelay.HasValue; } /// /// Gets and sets the property SegmentationMode. useInputSegmentation has been deprecated. /// The configured segment size is always used. /// public SmoothGroupSegmentationMode SegmentationMode { get { return this._segmentationMode; } set { this._segmentationMode = value; } } // Check to see if SegmentationMode property is set internal bool IsSetSegmentationMode() { return this._segmentationMode != null; } /// /// Gets and sets the property SendDelayMs. Number of milliseconds to delay the output /// from the second pipeline. /// [AWSProperty(Min=0, Max=10000)] public int SendDelayMs { get { return this._sendDelayMs.GetValueOrDefault(); } set { this._sendDelayMs = value; } } // Check to see if SendDelayMs property is set internal bool IsSetSendDelayMs() { return this._sendDelayMs.HasValue; } /// /// Gets and sets the property SparseTrackType. Identifies the type of data to place in /// the sparse track:- SCTE35: Insert SCTE-35 messages from the source content. With each /// message, insert an IDR frame to start a new segment.- SCTE35_WITHOUT_SEGMENTATION: /// Insert SCTE-35 messages from the source content. With each message, insert an IDR /// frame but don't start a new segment.- NONE: Don't generate a sparse track for any /// outputs in this output group. /// public SmoothGroupSparseTrackType SparseTrackType { get { return this._sparseTrackType; } set { this._sparseTrackType = value; } } // Check to see if SparseTrackType property is set internal bool IsSetSparseTrackType() { return this._sparseTrackType != null; } /// /// Gets and sets the property StreamManifestBehavior. When set to send, send stream manifest /// so publishing point doesn't start until all streams start. /// public SmoothGroupStreamManifestBehavior StreamManifestBehavior { get { return this._streamManifestBehavior; } set { this._streamManifestBehavior = value; } } // Check to see if StreamManifestBehavior property is set internal bool IsSetStreamManifestBehavior() { return this._streamManifestBehavior != null; } /// /// Gets and sets the property TimestampOffset. Timestamp offset for the event. Only /// used if timestampOffsetMode is set to useConfiguredOffset. /// public string TimestampOffset { get { return this._timestampOffset; } set { this._timestampOffset = value; } } // Check to see if TimestampOffset property is set internal bool IsSetTimestampOffset() { return this._timestampOffset != null; } /// /// Gets and sets the property TimestampOffsetMode. Type of timestamp date offset to use.- /// useEventStartDate: Use the date the event was started as the offset- useConfiguredOffset: /// Use an explicitly configured date as the offset /// public SmoothGroupTimestampOffsetMode TimestampOffsetMode { get { return this._timestampOffsetMode; } set { this._timestampOffsetMode = value; } } // Check to see if TimestampOffsetMode property is set internal bool IsSetTimestampOffsetMode() { return this._timestampOffsetMode != null; } } }