M2tsSettings
public struct M2tsSettings : AWSShape
Undocumented
-
Declaration
Swift
public static var _members: [AWSShapeMember]
-
When set to drop, output audio streams will be removed from the program if the selected input audio stream is removed from the input. This allows the output audio configuration to dynamically change based on input configuration. If this is set to encodeSilence, all output audio streams will output encoded silence when not connected to an active input stream.
Declaration
Swift
public let absentInputAudioBehavior: M2tsAbsentInputAudioBehavior?
-
When set to enabled, uses ARIB-compliant field muxing and removes video descriptor.
Declaration
Swift
public let arib: M2tsArib?
-
Packet Identifier (PID) for ARIB Captions in the transport stream. Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 0x20)..8182 (or 0x1ff6).
Declaration
Swift
public let aribCaptionsPid: String?
-
If set to auto, pid number used for ARIB Captions will be auto-selected from unused pids. If set to useConfigured, ARIB Captions will be on the configured pid number.
Declaration
Swift
public let aribCaptionsPidControl: M2tsAribCaptionsPidControl?
-
When set to dvb, uses DVB buffer model for Dolby Digital audio. When set to atsc, the ATSC model is used.
Declaration
Swift
public let audioBufferModel: M2tsAudioBufferModel?
-
The number of audio frames to insert for each PES packet.
Declaration
Swift
public let audioFramesPerPes: Int?
-
Packet Identifier (PID) of the elementary audio stream(s) in the transport stream. Multiple values are accepted, and can be entered in ranges and/or by comma separation. Can be entered as decimal or hexadecimal values. Each PID specified must be in the range of 32 (or 0x20)..8182 (or 0x1ff6).
Declaration
Swift
public let audioPids: String?
-
When set to atsc, uses stream type = 0x81 for AC3 and stream type = 0x87 for EAC3. When set to dvb, uses stream type = 0x06.
Declaration
Swift
public let audioStreamType: M2tsAudioStreamType?
-
The output bitrate of the transport stream in bits per second. Setting to 0 lets the muxer automatically determine the appropriate bitrate.
Declaration
Swift
public let bitrate: Int?
-
If set to multiplex, use multiplex buffer model for accurate interleaving. Setting to bufferModel to none can lead to lower latency, but low-memory devices may not be able to play back the stream without interruptions.
Declaration
Swift
public let bufferModel: M2tsBufferModel?
-
When set to enabled, generates captionServiceDescriptor in PMT.
Declaration
Swift
public let ccDescriptor: M2tsCcDescriptor?
-
Inserts DVB Network Information Table (NIT) at the specified table repetition interval.
Declaration
Swift
public let dvbNitSettings: DvbNitSettings?
-
Inserts DVB Service Description Table (SDT) at the specified table repetition interval.
Declaration
Swift
public let dvbSdtSettings: DvbSdtSettings?
-
Packet Identifier (PID) for input source DVB Subtitle data to this output. Multiple values are accepted, and can be entered in ranges and/or by comma separation. Can be entered as decimal or hexadecimal values. Each PID specified must be in the range of 32 (or 0x20)..8182 (or 0x1ff6).
Declaration
Swift
public let dvbSubPids: String?
-
Inserts DVB Time and Date Table (TDT) at the specified table repetition interval.
Declaration
Swift
public let dvbTdtSettings: DvbTdtSettings?
-
Packet Identifier (PID) for input source DVB Teletext data to this output. Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 0x20)..8182 (or 0x1ff6).
Declaration
Swift
public let dvbTeletextPid: String?
-
If set to passthrough, passes any EBIF data from the input source to this output.
Declaration
Swift
public let ebif: M2tsEbifControl?
-
When videoAndFixedIntervals is selected, audio EBP markers will be added to partitions 3 and 4. The interval between these additional markers will be fixed, and will be slightly shorter than the video EBP marker interval. Only available when EBP Cablelabs segmentation markers are selected. Partitions 1 and 2 will always follow the video interval.
Declaration
Swift
public let ebpAudioInterval: M2tsAudioInterval?
-
When set, enforces that Encoder Boundary Points do not come within the specified time interval of each other by looking ahead at input video. If another EBP is going to come in within the specified time interval, the current EBP is not emitted, and the segment is “stretched” to the next marker. The lookahead value does not add latency to the system. The Live Event must be configured elsewhere to create sufficient latency to make the lookahead accurate.
Declaration
Swift
public let ebpLookaheadMs: Int?
-
Controls placement of EBP on Audio PIDs. If set to videoAndAudioPids, EBP markers will be placed on the video PID and all audio PIDs. If set to videoPid, EBP markers will be placed on only the video PID.
Declaration
Swift
public let ebpPlacement: M2tsEbpPlacement?
-
This field is unused and deprecated.
Declaration
Swift
public let ecmPid: String?
-
Include or exclude the ES Rate field in the PES header.
Declaration
Swift
public let esRateInPes: M2tsEsRateInPes?
-
Packet Identifier (PID) for input source ETV Platform data to this output. Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 0x20)..8182 (or 0x1ff6).
Declaration
Swift
public let etvPlatformPid: String?
-
Packet Identifier (PID) for input source ETV Signal data to this output. Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 0x20)..8182 (or 0x1ff6).
Declaration
Swift
public let etvSignalPid: String?
-
The length in seconds of each fragment. Only used with EBP markers.
Declaration
Swift
public let fragmentTime: Double?
-
If set to passthrough, passes any KLV data from the input source to this output.
Declaration
Swift
public let klv: M2tsKlv?
-
Packet Identifier (PID) for input source KLV data to this output. Multiple values are accepted, and can be entered in ranges and/or by comma separation. Can be entered as decimal or hexadecimal values. Each PID specified must be in the range of 32 (or 0x20)..8182 (or 0x1ff6).
Declaration
Swift
public let klvDataPids: String?
-
If set to passthrough, Nielsen inaudible tones for media tracking will be detected in the input audio and an equivalent ID3 tag will be inserted in the output.
Declaration
Swift
public let nielsenId3Behavior: M2tsNielsenId3Behavior?
-
Value in bits per second of extra null packets to insert into the transport stream. This can be used if a downstream encryption system requires periodic null packets.
Declaration
Swift
public let nullPacketBitrate: Double?
-
The number of milliseconds between instances of this table in the output transport stream. Valid values are 0, 10..1000.
Declaration
Swift
public let patInterval: Int?
-
When set to pcrEveryPesPacket, a Program Clock Reference value is inserted for every Packetized Elementary Stream (PES) header. This parameter is effective only when the PCR PID is the same as the video or audio elementary stream.
Declaration
Swift
public let pcrControl: M2tsPcrControl?
-
Maximum time in milliseconds between Program Clock Reference (PCRs) inserted into the transport stream.
Declaration
Swift
public let pcrPeriod: Int?
-
Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport stream. When no value is given, the encoder will assign the same value as the Video PID. Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 0x20)..8182 (or 0x1ff6).
Declaration
Swift
public let pcrPid: String?
-
The number of milliseconds between instances of this table in the output transport stream. Valid values are 0, 10..1000.
Declaration
Swift
public let pmtInterval: Int?
-
Packet Identifier (PID) for the Program Map Table (PMT) in the transport stream. Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 0x20)..8182 (or 0x1ff6).
Declaration
Swift
public let pmtPid: String?
-
The value of the program number field in the Program Map Table.
Declaration
Swift
public let programNum: Int?
-
When vbr, does not insert null packets into transport stream to fill specified bitrate. The bitrate setting acts as the maximum bitrate when vbr is set.
Declaration
Swift
public let rateMode: M2tsRateMode?
-
Packet Identifier (PID) for input source SCTE-27 data to this output. Multiple values are accepted, and can be entered in ranges and/or by comma separation. Can be entered as decimal or hexadecimal values. Each PID specified must be in the range of 32 (or 0x20)..8182 (or 0x1ff6).
Declaration
Swift
public let scte27Pids: String?
-
Optionally pass SCTE-35 signals from the input source to this output.
Declaration
Swift
public let scte35Control: M2tsScte35Control?
-
Packet Identifier (PID) of the SCTE-35 stream in the transport stream. Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 0x20)..8182 (or 0x1ff6).
Declaration
Swift
public let scte35Pid: String?
-
Inserts segmentation markers at each segmentationTime period. raiSegstart sets the Random Access Indicator bit in the adaptation field. raiAdapt sets the RAI bit and adds the current timecode in the private data bytes. psiSegstart inserts PAT and PMT tables at the start of segments. ebp adds Encoder Boundary Point information to the adaptation field as per OpenCable specification OC-SP-EBP-I01-130118. ebpLegacy adds Encoder Boundary Point information to the adaptation field using a legacy proprietary format.
Declaration
Swift
public let segmentationMarkers: M2tsSegmentationMarkers?
-
The segmentation style parameter controls how segmentation markers are inserted into the transport stream. With avails, it is possible that segments may be truncated, which can influence where future segmentation markers are inserted. When a segmentation style of “resetCadence” is selected and a segment is truncated due to an avail, we will reset the segmentation cadence. This means the subsequent segment will have a duration of $segmentationTime seconds. When a segmentation style of “maintainCadence” is selected and a segment is truncated due to an avail, we will not reset the segmentation cadence. This means the subsequent segment will likely be truncated as well. However, all segments after that will have a duration of $segmentationTime seconds. Note that EBP lookahead is a slight exception to this rule.
Declaration
Swift
public let segmentationStyle: M2tsSegmentationStyle?
-
The length in seconds of each segment. Required unless markers is set to none.
Declaration
Swift
public let segmentationTime: Double?
-
When set to passthrough, timed metadata will be passed through from input to output.
Declaration
Swift
public let timedMetadataBehavior: M2tsTimedMetadataBehavior?
-
Packet Identifier (PID) of the timed metadata stream in the transport stream. Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 0x20)..8182 (or 0x1ff6).
Declaration
Swift
public let timedMetadataPid: String?
-
The value of the transport stream ID field in the Program Map Table.
Declaration
Swift
public let transportStreamId: Int?
-
Packet Identifier (PID) of the elementary video stream in the transport stream. Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 0x20)..8182 (or 0x1ff6).
Declaration
Swift
public let videoPid: String?
-
init(absentInputAudioBehavior:arib:aribCaptionsPid:aribCaptionsPidControl:audioBufferModel:audioFramesPerPes:audioPids:audioStreamType:bitrate:bufferModel:ccDescriptor:dvbNitSettings:dvbSdtSettings:dvbSubPids:dvbTdtSettings:dvbTeletextPid:ebif:ebpAudioInterval:ebpLookaheadMs:ebpPlacement:ecmPid:esRateInPes:etvPlatformPid:etvSignalPid:fragmentTime:klv:klvDataPids:nielsenId3Behavior:nullPacketBitrate:patInterval:pcrControl:pcrPeriod:pcrPid:pmtInterval:pmtPid:programNum:rateMode:scte27Pids:scte35Control:scte35Pid:segmentationMarkers:segmentationStyle:segmentationTime:timedMetadataBehavior:timedMetadataPid:transportStreamId:videoPid:)
Undocumented
Declaration
Swift
public init(absentInputAudioBehavior: M2tsAbsentInputAudioBehavior? = nil, arib: M2tsArib? = nil, aribCaptionsPid: String? = nil, aribCaptionsPidControl: M2tsAribCaptionsPidControl? = nil, audioBufferModel: M2tsAudioBufferModel? = nil, audioFramesPerPes: Int? = nil, audioPids: String? = nil, audioStreamType: M2tsAudioStreamType? = nil, bitrate: Int? = nil, bufferModel: M2tsBufferModel? = nil, ccDescriptor: M2tsCcDescriptor? = nil, dvbNitSettings: DvbNitSettings? = nil, dvbSdtSettings: DvbSdtSettings? = nil, dvbSubPids: String? = nil, dvbTdtSettings: DvbTdtSettings? = nil, dvbTeletextPid: String? = nil, ebif: M2tsEbifControl? = nil, ebpAudioInterval: M2tsAudioInterval? = nil, ebpLookaheadMs: Int? = nil, ebpPlacement: M2tsEbpPlacement? = nil, ecmPid: String? = nil, esRateInPes: M2tsEsRateInPes? = nil, etvPlatformPid: String? = nil, etvSignalPid: String? = nil, fragmentTime: Double? = nil, klv: M2tsKlv? = nil, klvDataPids: String? = nil, nielsenId3Behavior: M2tsNielsenId3Behavior? = nil, nullPacketBitrate: Double? = nil, patInterval: Int? = nil, pcrControl: M2tsPcrControl? = nil, pcrPeriod: Int? = nil, pcrPid: String? = nil, pmtInterval: Int? = nil, pmtPid: String? = nil, programNum: Int? = nil, rateMode: M2tsRateMode? = nil, scte27Pids: String? = nil, scte35Control: M2tsScte35Control? = nil, scte35Pid: String? = nil, segmentationMarkers: M2tsSegmentationMarkers? = nil, segmentationStyle: M2tsSegmentationStyle? = nil, segmentationTime: Double? = nil, timedMetadataBehavior: M2tsTimedMetadataBehavior? = nil, timedMetadataPid: String? = nil, transportStreamId: Int? = nil, videoPid: String? = nil)
-
Declaration
Swift
public func validate(name: String) throws