<!--
{
  "documentType" : "article",
  "framework" : "CoreAudioTypes",
  "identifier" : "/documentation/CoreAudioTypes/audio-format-flags",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Audio Format Flags"
}
-->

# Audio Format Flags

Commonly used combinations of data format flags for an audio stream description.

## Discussion

Prefer using fixed-point formats in <doc://com.apple.documentation/documentation/PackageDescription/Platform/iOS> and floating-point formats in <doc://com.apple.documentation/documentation/PackageDescription/Platform/macOS>.

## Topics

### Format flags

[`var kAppleLosslessFormatFlag_16BitSourceData: AudioFormatFlags`](/documentation/CoreAudioTypes/kAppleLosslessFormatFlag_16BitSourceData)

A flag that indicates Apple Lossless data sourced from 16-bit native endian signed integer data.

[`var kAppleLosslessFormatFlag_20BitSourceData: AudioFormatFlags`](/documentation/CoreAudioTypes/kAppleLosslessFormatFlag_20BitSourceData)

A flag that indicates Apple Lossless data sourced from 20-bit native endian signed integer data aligned high in 24 bits.

[`var kAppleLosslessFormatFlag_24BitSourceData: AudioFormatFlags`](/documentation/CoreAudioTypes/kAppleLosslessFormatFlag_24BitSourceData)

A flag that indicates Apple Lossless data sourced from 24-bit native endian signed integer data.

[`var kAppleLosslessFormatFlag_32BitSourceData: AudioFormatFlags`](/documentation/CoreAudioTypes/kAppleLosslessFormatFlag_32BitSourceData)

A flag that indicates Apple Lossless data sourced from 32-bit native endian signed integer data.

[`var kAudioFormatFlagIsAlignedHigh: AudioFormatFlags`](/documentation/CoreAudioTypes/kAudioFormatFlagIsAlignedHigh)

A flag that indicates whether placement of the sample bits is with the high or low bits of the channel.

[`var kAudioFormatFlagIsBigEndian: AudioFormatFlags`](/documentation/CoreAudioTypes/kAudioFormatFlagIsBigEndian)

A flag that indicates whether the format is big or little endian.

[`var kAudioFormatFlagIsFloat: AudioFormatFlags`](/documentation/CoreAudioTypes/kAudioFormatFlagIsFloat)

A flag that indicates whether the format is floating point or integer.

[`var kAudioFormatFlagIsNonInterleaved: AudioFormatFlags`](/documentation/CoreAudioTypes/kAudioFormatFlagIsNonInterleaved)

A flag that indicates whether the samples for each channel or frame are continguously located, and whether the layout of the channels or frames is end-to-end.

[`var kAudioFormatFlagIsNonMixable: AudioFormatFlags`](/documentation/CoreAudioTypes/kAudioFormatFlagIsNonMixable)

A flag that indicates the format is nonmixable.

[`var kAudioFormatFlagIsPacked: AudioFormatFlags`](/documentation/CoreAudioTypes/kAudioFormatFlagIsPacked)

A flag that indicates whether placement of the sample bits occupy the entire available bits of the channel.

[`var kAudioFormatFlagIsSignedInteger: AudioFormatFlags`](/documentation/CoreAudioTypes/kAudioFormatFlagIsSignedInteger)

A flag that indicates whether the format is signed or unsigned integer.

[`var kAudioFormatFlagsAreAllClear: AudioFormatFlags`](/documentation/CoreAudioTypes/kAudioFormatFlagsAreAllClear)

A flag that indicates whether all the flags are clear.

[`var kAudioFormatFlagsNativeEndian: AudioFormatFlags`](/documentation/CoreAudioTypes/kAudioFormatFlagsNativeEndian)

A flag that specifies whether the format is big endian, depending on the endianness of the processor at build time.

[`var kAudioFormatFlagsNativeFloatPacked: AudioFormatFlags`](/documentation/CoreAudioTypes/kAudioFormatFlagsNativeFloatPacked)

The flags for the canonical format of fully packed, native endian floating-point data.

[`var kLinearPCMFormatFlagIsAlignedHigh: AudioFormatFlags`](/documentation/CoreAudioTypes/kLinearPCMFormatFlagIsAlignedHigh)

A flag that indicates whether placement of the sample bits is with the high or low bits of the channel.

[`var kLinearPCMFormatFlagIsBigEndian: AudioFormatFlags`](/documentation/CoreAudioTypes/kLinearPCMFormatFlagIsBigEndian)

A flag that indicates whether the format is big or little endian.

[`var kLinearPCMFormatFlagIsFloat: AudioFormatFlags`](/documentation/CoreAudioTypes/kLinearPCMFormatFlagIsFloat)

A flag that indicates whether the format is floating point or integer.

[`var kLinearPCMFormatFlagIsNonInterleaved: AudioFormatFlags`](/documentation/CoreAudioTypes/kLinearPCMFormatFlagIsNonInterleaved)

A flag that indicates whether the samples for each channel or frame are continguously located, and whether the layout of the channels or frames is end-to-end.

[`var kLinearPCMFormatFlagIsNonMixable: AudioFormatFlags`](/documentation/CoreAudioTypes/kLinearPCMFormatFlagIsNonMixable)

A flag that indicates the format is nonmixable.

[`var kLinearPCMFormatFlagIsPacked: AudioFormatFlags`](/documentation/CoreAudioTypes/kLinearPCMFormatFlagIsPacked)

A flag that indicates whether placement of the sample bits occupy the entire available bits of the channel.

[`var kLinearPCMFormatFlagIsSignedInteger: AudioFormatFlags`](/documentation/CoreAudioTypes/kLinearPCMFormatFlagIsSignedInteger)

A flag that indicates whether the format is signed or unsigned integer.

[`var kLinearPCMFormatFlagsAreAllClear: AudioFormatFlags`](/documentation/CoreAudioTypes/kLinearPCMFormatFlagsAreAllClear)

A flag that indicates whether all the flags are clear.

[`var kLinearPCMFormatFlagsSampleFractionMask: AudioFormatFlags`](/documentation/CoreAudioTypes/kLinearPCMFormatFlagsSampleFractionMask)

A flag that indicates the sample fraction mask.

[`var kLinearPCMFormatFlagsSampleFractionShift: AudioFormatFlags`](/documentation/CoreAudioTypes/kLinearPCMFormatFlagsSampleFractionShift)

A flag that indicates the bit position of the PCM flag’s 6-bit bitfield.

[`var kAudioFormatFlagsAudioUnitCanonical: AudioFormatFlags`](/documentation/CoreAudioTypes/kAudioFormatFlagsAudioUnitCanonical)

The flags for the canonical audio unit and processing sample type.

[`var kAudioFormatFlagsCanonical: AudioFormatFlags`](/documentation/CoreAudioTypes/kAudioFormatFlagsCanonical)

The set of flags for the canonical input-output audio sample type.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)