/* * 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 mediapackage-2017-10-12.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.MediaPackage.Model { /// /// A HTTP Live Streaming (HLS) manifest configuration. /// public partial class HlsManifestCreateOrUpdateParameters { private AdMarkers _adMarkers; private AdsOnDeliveryRestrictions _adsOnDeliveryRestrictions; private List _adTriggers = new List(); private string _id; private bool? _includeIframeOnlyStream; private string _manifestName; private PlaylistType _playlistType; private int? _playlistWindowSeconds; private int? _programDateTimeIntervalSeconds; /// /// Gets and sets the property AdMarkers. This setting controls how ad markers are included /// in the packaged OriginEndpoint."NONE" will omit all SCTE-35 ad markers from the output."PASSTHROUGH" /// causes the manifest to contain a copy of the SCTE-35 admarkers (comments) taken directly /// from the input HTTP Live Streaming (HLS) manifest."SCTE35_ENHANCED" generates ad markers /// and blackout tags based on SCTE-35messages in the input source."DATERANGE" inserts /// EXT-X-DATERANGE tags to signal ad and program transition events in HLS and CMAF manifests. /// For this option, you must set a programDateTimeIntervalSeconds value that is greater /// than 0. /// public AdMarkers AdMarkers { get { return this._adMarkers; } set { this._adMarkers = value; } } // Check to see if AdMarkers property is set internal bool IsSetAdMarkers() { return this._adMarkers != null; } /// /// Gets and sets the property AdsOnDeliveryRestrictions. /// public AdsOnDeliveryRestrictions AdsOnDeliveryRestrictions { get { return this._adsOnDeliveryRestrictions; } set { this._adsOnDeliveryRestrictions = value; } } // Check to see if AdsOnDeliveryRestrictions property is set internal bool IsSetAdsOnDeliveryRestrictions() { return this._adsOnDeliveryRestrictions != null; } /// /// Gets and sets the property AdTriggers. /// public List AdTriggers { get { return this._adTriggers; } set { this._adTriggers = value; } } // Check to see if AdTriggers property is set internal bool IsSetAdTriggers() { return this._adTriggers != null && this._adTriggers.Count > 0; } /// /// Gets and sets the property Id. The ID of the manifest. The ID must be unique within /// the OriginEndpoint and it cannot be changed after it is created. /// [AWSProperty(Required=true)] public string Id { get { return this._id; } set { this._id = value; } } // Check to see if Id property is set internal bool IsSetId() { return this._id != null; } /// /// Gets and sets the property IncludeIframeOnlyStream. When enabled, an I-Frame only /// stream will be included in the output. /// public bool IncludeIframeOnlyStream { get { return this._includeIframeOnlyStream.GetValueOrDefault(); } set { this._includeIframeOnlyStream = value; } } // Check to see if IncludeIframeOnlyStream property is set internal bool IsSetIncludeIframeOnlyStream() { return this._includeIframeOnlyStream.HasValue; } /// /// Gets and sets the property ManifestName. An optional short string appended to the /// end of the OriginEndpoint URL. If not specified, defaults to the manifestName for /// the OriginEndpoint. /// public string ManifestName { get { return this._manifestName; } set { this._manifestName = value; } } // Check to see if ManifestName property is set internal bool IsSetManifestName() { return this._manifestName != null; } /// /// Gets and sets the property PlaylistType. The HTTP Live Streaming (HLS) playlist type.When /// either "EVENT" or "VOD" is specified, a corresponding EXT-X-PLAYLIST-TYPEentry will /// be included in the media playlist. /// public PlaylistType PlaylistType { get { return this._playlistType; } set { this._playlistType = value; } } // Check to see if PlaylistType property is set internal bool IsSetPlaylistType() { return this._playlistType != null; } /// /// Gets and sets the property PlaylistWindowSeconds. Time window (in seconds) contained /// in each parent manifest. /// public int PlaylistWindowSeconds { get { return this._playlistWindowSeconds.GetValueOrDefault(); } set { this._playlistWindowSeconds = value; } } // Check to see if PlaylistWindowSeconds property is set internal bool IsSetPlaylistWindowSeconds() { return this._playlistWindowSeconds.HasValue; } /// /// Gets and sets the property ProgramDateTimeIntervalSeconds. The interval (in seconds) /// between each EXT-X-PROGRAM-DATE-TIME taginserted into manifests. Additionally, when /// an interval is specifiedID3Timed Metadata messages will be generated every 5 seconds /// using theingest time of the content.If the interval is not specified, or set to 0, /// thenno EXT-X-PROGRAM-DATE-TIME tags will be inserted into manifests and noID3Timed /// Metadata messages will be generated. Note that irrespectiveof this parameter, if any /// ID3 Timed Metadata is found in HTTP Live Streaming (HLS) input,it will be passed through /// to HLS output. /// public int ProgramDateTimeIntervalSeconds { get { return this._programDateTimeIntervalSeconds.GetValueOrDefault(); } set { this._programDateTimeIntervalSeconds = value; } } // Check to see if ProgramDateTimeIntervalSeconds property is set internal bool IsSetProgramDateTimeIntervalSeconds() { return this._programDateTimeIntervalSeconds.HasValue; } } }