Sample Buffer Attachment Keys

Buffer-level attachments associated with a sample buffer.


To get and set a sample buffer’s buffer-level attachments, use the functions described in CMAttachment.



let kCMSampleBufferAttachmentKey_ForceKeyFrame: CFString

Indicates that the current or next video sample buffer should be forced to be encoded as a key frame.

let kCMSampleBufferAttachmentKey_StillImageLensStabilizationInfo: CFString

Indicates information about the lens stabilization applied to the current still image buffer.

let kCMSampleBufferAttachmentKey_ResetDecoderBeforeDecoding: CFString

Indicates whether the sample buffer should be reset before decoding (type CFBoolean, default false).

let kCMSampleBufferAttachmentKey_DrainAfterDecoding: CFString

Indicates whether the sample buffer should be drained after decoding type CFBoolean, default false).

let kCMSampleBufferAttachmentKey_PostNotificationWhenConsumed: CFString

If present, indicates that decode pipelines should post a notification when consuming the sample buffer(type CFDictionary).

let kCMSampleBufferAttachmentKey_ResumeOutput: CFString

If present, indicates that output should be resumed following a discontinuity CFBoolean, default false).

let kCMSampleBufferAttachmentKey_TransitionID: CFString

Marks a transition from one source of buffers to another.

let kCMSampleBufferAttachmentKey_TrimDurationAtStart: CFString

The duration that should be removed at the beginning of the sample buffer, after decoding.

let kCMSampleBufferAttachmentKey_TrimDurationAtEnd: CFString

The duration that should be removed at the end of the sample buffer, after decoding.

let kCMSampleBufferAttachmentKey_SpeedMultiplier: CFString

The factor by which the sample buffer's presentation should be accelerated (type CFNumber, default 1.0).

let kCMSampleBufferAttachmentKey_Reverse: CFString

Indicates that the decoded contents of the sample buffer should be reversed (type CFBoolean, default false).

let kCMSampleBufferAttachmentKey_FillDiscontinuitiesWithSilence: CFString

Fill the difference between discontiguous sample buffers with silence (type CFBoolean, default false).

let kCMSampleBufferAttachmentKey_EmptyMedia: CFString

Marks an intentionally empty interval in the sequence of samples (type CFBoolean, default false).

let kCMSampleBufferAttachmentKey_PermanentEmptyMedia: CFString

Marks the end of the sequence of samples (type CFBoolean, default false).

let kCMSampleBufferAttachmentKey_DisplayEmptyMediaImmediately: CFString

Tells that the empty marker should be dequeued immediately regardless of its timestamp (type CFBoolean, default false).

let kCMSampleBufferAttachmentKey_EndsPreviousSampleDuration: CFString

Indicates that sample buffer's decode timestamp may be used to define the previous sample buffer's duration (type CFBoolean, default false).

let kCMSampleBufferAttachmentKey_SampleReferenceURL: CFString

Indicates the URL where the sample data is (type CFURL).

let kCMSampleBufferAttachmentKey_SampleReferenceByteOffset: CFString

Indicates the byte offset at which the sample data begins (type CFNumber).

let kCMSampleBufferAttachmentKey_GradualDecoderRefresh: CFString

Indicates the decoder refresh count (type CFNumber).

let kCMSampleBufferAttachmentKey_DroppedFrameReason: CFString

Indicates the reason the current video frame was dropped (type CFString).

let kCMSampleBufferAttachmentKey_DroppedFrameReasonInfo: CFString

Indicates additional information regarding the dropped video frame (type CFString).