M2tsSettings
public struct M2tsSettings : AWSShape
Undocumented
-
Declaration
Swift
public static var _members: [AWSShapeMember]
-
Selects between the DVB and ATSC buffer models for Dolby Digital audio.
Declaration
Swift
public let audioBufferModel: M2tsAudioBufferModel?
-
The number of audio frames to insert for each PES packet.
Declaration
Swift
public let audioFramesPerPes: Int?
-
Specify the packet identifiers (PIDs) for any elementary audio streams you include in this output. Specify multiple PIDs as a JSON array. Default is the range 482-492.
Declaration
Swift
public let audioPids: [Int]?
-
Specify the output bitrate of the transport stream in bits per second. Setting to 0 lets the muxer automatically determine the appropriate bitrate. Other common values are 3750000, 7500000, and 15000000.
Declaration
Swift
public let bitrate: Int?
-
Controls what buffer model to use for accurate interleaving. If set to MULTIPLEX, use multiplex buffer model. If set to NONE, this 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?
-
Inserts DVB Network Information Table (NIT) at the specified table repetition interval.
Declaration
Swift
public let dvbNitSettings: DvbNitSettings?
-
Inserts DVB Service Description Table (NIT) at the specified table repetition interval.
Declaration
Swift
public let dvbSdtSettings: DvbSdtSettings?
-
Specify the packet identifiers (PIDs) for DVB subtitle data included in this output. Specify multiple PIDs as a JSON array. Default is the range 460-479.
Declaration
Swift
public let dvbSubPids: [Int]?
-
Inserts DVB Time and Date Table (TDT) at the specified table repetition interval.
Declaration
Swift
public let dvbTdtSettings: DvbTdtSettings?
-
Specify the packet identifier (PID) for DVB teletext data you include in this output. Default is 499.
Declaration
Swift
public let dvbTeletextPid: Int?
-
When set to VIDEO_AND_FIXED_INTERVALS, 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. When set to VIDEO_INTERVAL, these additional markers will not be inserted. Only applicable when EBP segmentation markers are is selected (segmentationMarkers is EBP or EBP_LEGACY).
Declaration
Swift
public let ebpAudioInterval: M2tsEbpAudioInterval?
-
Selects which PIDs to place EBP markers on. They can either be placed only on the video PID, or on both the video PID and all audio PIDs. Only applicable when EBP segmentation markers are is selected (segmentationMarkers is EBP or EBP_LEGACY).
Declaration
Swift
public let ebpPlacement: M2tsEbpPlacement?
-
Controls whether to include the ES Rate field in the PES header.
Declaration
Swift
public let esRateInPes: M2tsEsRateInPes?
-
Keep the default value (DEFAULT) unless you know that your audio EBP markers are incorrectly appearing before your video EBP markers. To correct this problem, set this value to Force (FORCE).
Declaration
Swift
public let forceTsVideoEbpOrder: M2tsForceTsVideoEbpOrder?
-
The length, in seconds, of each fragment. Only used with EBP markers.
Declaration
Swift
public let fragmentTime: Double?
-
Specify the maximum time, in milliseconds, between Program Clock References (PCRs) inserted into the transport stream.
Declaration
Swift
public let maxPcrInterval: Int?
-
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 minEbpInterval: Int?
-
If INSERT, 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 nielsenId3: M2tsNielsenId3?
-
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.
Declaration
Swift
public let patInterval: Int?
-
When set to PCR_EVERY_PES_PACKET, a Program Clock Reference value is inserted for every Packetized Elementary Stream (PES) header. This is effective only when the PCR PID is the same as the video or audio elementary stream.
Declaration
Swift
public let pcrControl: M2tsPcrControl?
-
Specify the packet identifier (PID) for the program clock reference (PCR) in this output. If you do not specify a value, the service will use the value for Video PID (VideoPid).
Declaration
Swift
public let pcrPid: Int?
-
Specify the number of milliseconds between instances of the program map table (PMT) in the output transport stream.
Declaration
Swift
public let pmtInterval: Int?
-
Specify the packet identifier (PID) for the program map table (PMT) itself. Default is 480.
Declaration
Swift
public let pmtPid: Int?
-
Specify the packet identifier (PID) of the private metadata stream. Default is 503.
Declaration
Swift
public let privateMetadataPid: Int?
-
Use Program number (programNumber) to specify the program number used in the program map table (PMT) for this output. Default is 1. Program numbers and program map tables are parts of MPEG-2 transport stream containers, used for organizing data.
Declaration
Swift
public let programNumber: Int?
-
When set to CBR, inserts null packets into transport stream to fill specified bitrate. When set to VBR, the bitrate setting acts as the maximum bitrate, but the output will not be padded up to that bitrate.
Declaration
Swift
public let rateMode: M2tsRateMode?
-
Include this in your job settings to put SCTE-35 markers in your HLS and transport stream outputs at the insertion points that you specify in an ESAM XML document. Provide the document in the setting SCC XML (sccXml).
Declaration
Swift
public let scte35Esam: M2tsScte35Esam?
-
Specify the packet identifier (PID) of the SCTE-35 stream in the transport stream.
Declaration
Swift
public let scte35Pid: Int?
-
For SCTE-35 markers from your input– Choose Passthrough (PASSTHROUGH) if you want SCTE-35 markers that appear in your input to also appear in this output. Choose None (NONE) if you don’t want SCTE-35 markers in this output. For SCTE-35 markers from an ESAM XML document– Choose None (NONE). Also provide the ESAM XML as a string in the setting Signal processing notification XML (sccXml). Also enable ESAM SCTE-35 (include the property scte35Esam).
Declaration
Swift
public let scte35Source: M2tsScte35Source?
-
Inserts segmentation markers at each segmentation_time period. rai_segstart sets the Random Access Indicator bit in the adaptation field. rai_adapt sets the RAI bit and adds the current timecode in the private data bytes. psi_segstart 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. ebp_legacy 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 “reset_cadence” 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 of $segmentation_time seconds. When a segmentation style of “maintain_cadence” 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 $segmentation_time seconds. Note that EBP lookahead is a slight exception to this rule.
Declaration
Swift
public let segmentationStyle: M2tsSegmentationStyle?
-
Specify the length, in seconds, of each segment. Required unless markers is set to none.
Declaration
Swift
public let segmentationTime: Double?
-
Specify the packet identifier (PID) for timed metadata in this output. Default is 502.
Declaration
Swift
public let timedMetadataPid: Int?
-
Specify the ID for the transport stream itself in the program map table for this output. Transport stream IDs and program map tables are parts of MPEG-2 transport stream containers, used for organizing data.
Declaration
Swift
public let transportStreamId: Int?
-
Specify the packet identifier (PID) of the elementary video stream in the transport stream.
Declaration
Swift
public let videoPid: Int?
-
init(audioBufferModel:audioFramesPerPes:audioPids:bitrate:bufferModel:dvbNitSettings:dvbSdtSettings:dvbSubPids:dvbTdtSettings:dvbTeletextPid:ebpAudioInterval:ebpPlacement:esRateInPes:forceTsVideoEbpOrder:fragmentTime:maxPcrInterval:minEbpInterval:nielsenId3:nullPacketBitrate:patInterval:pcrControl:pcrPid:pmtInterval:pmtPid:privateMetadataPid:programNumber:rateMode:scte35Esam:scte35Pid:scte35Source:segmentationMarkers:segmentationStyle:segmentationTime:timedMetadataPid:transportStreamId:videoPid:)
Undocumented
Declaration
Swift
public init(audioBufferModel: M2tsAudioBufferModel? = nil, audioFramesPerPes: Int? = nil, audioPids: [Int]? = nil, bitrate: Int? = nil, bufferModel: M2tsBufferModel? = nil, dvbNitSettings: DvbNitSettings? = nil, dvbSdtSettings: DvbSdtSettings? = nil, dvbSubPids: [Int]? = nil, dvbTdtSettings: DvbTdtSettings? = nil, dvbTeletextPid: Int? = nil, ebpAudioInterval: M2tsEbpAudioInterval? = nil, ebpPlacement: M2tsEbpPlacement? = nil, esRateInPes: M2tsEsRateInPes? = nil, forceTsVideoEbpOrder: M2tsForceTsVideoEbpOrder? = nil, fragmentTime: Double? = nil, maxPcrInterval: Int? = nil, minEbpInterval: Int? = nil, nielsenId3: M2tsNielsenId3? = nil, nullPacketBitrate: Double? = nil, patInterval: Int? = nil, pcrControl: M2tsPcrControl? = nil, pcrPid: Int? = nil, pmtInterval: Int? = nil, pmtPid: Int? = nil, privateMetadataPid: Int? = nil, programNumber: Int? = nil, rateMode: M2tsRateMode? = nil, scte35Esam: M2tsScte35Esam? = nil, scte35Pid: Int? = nil, scte35Source: M2tsScte35Source? = nil, segmentationMarkers: M2tsSegmentationMarkers? = nil, segmentationStyle: M2tsSegmentationStyle? = nil, segmentationTime: Double? = nil, timedMetadataPid: Int? = nil, transportStreamId: Int? = nil, videoPid: Int? = nil)
-
Declaration
Swift
public func validate(name: String) throws