<!--
{
  "documentType" : "article",
  "framework" : "AudioToolbox",
  "identifier" : "/documentation/AudioToolbox/1559928-audio-converter-properties",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Audio Converter Properties"
}
-->

# Audio Converter Properties

Audio converter properties, used with the [`AudioConverterGetPropertyInfo(_:_:_:_:)`](/documentation/AudioToolbox/AudioConverterGetPropertyInfo(_:_:_:_:)), [`AudioConverterGetProperty(_:_:_:_:)`](/documentation/AudioToolbox/AudioConverterGetProperty(_:_:_:_:)), and [`AudioConverterSetProperty(_:_:_:_:)`](/documentation/AudioToolbox/AudioConverterSetProperty(_:_:_:_:)) functions.

## Topics

### Constants

[`var kAudioConverterPropertyMinimumInputBufferSize: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterPropertyMinimumInputBufferSize)

A `UInt32` value that indicates the size, in bytes, of the smallest buffer of input data that can be supplied via the audio converter input callback or as the input to the [`AudioConverterConvertBuffer(_:_:_:_:_:)`](/documentation/AudioToolbox/AudioConverterConvertBuffer(_:_:_:_:_:)) function.

[`var kAudioConverterPropertyMinimumOutputBufferSize: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterPropertyMinimumOutputBufferSize)

A `UInt32` value that indicates the size, in bytes, of the smallest buffer of output data that can be supplied to AudioConverterFillComplexBuffer or as the output to AudioConverterConvertBuffer

[`var kAudioConverterPropertyMaximumInputBufferSize: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterPropertyMaximumInputBufferSize)

Deprecated. The audio converter input callback may be passed any number of packets of data. If fewer are packets are returned than required, then the input proc is called again. If more packets are passed than required, they remain in the client’s buffer and are consumed as needed.

[`var kAudioConverterPropertyMaximumInputPacketSize: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterPropertyMaximumInputPacketSize)

A `UInt32` value that indicates the size, in bytes, of the largest single packet of data in the input format. This is mostly useful for variable bit rate compressed data (decoders).

[`var kAudioConverterPropertyMaximumOutputPacketSize: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterPropertyMaximumOutputPacketSize)

A `UInt32` value that indicates the size, in bytes, of the largest single packet of data in the output format. This is mostly useful for variable bit rate compressed data (encoders).

[`var kAudioConverterPropertyCalculateInputBufferSize: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterPropertyCalculateInputBufferSize)

A `UInt32` value that on input holds a size, in bytes, that is desired for the output data. On output, it holds the size, in bytes, of the input buffer required to generate that much output data. Note that some converters cannot do this calculation.

[`var kAudioConverterPropertyCalculateOutputBufferSize: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterPropertyCalculateOutputBufferSize)

A `UInt32` value that on input holds a size, in bytes, that is desired for the input data. On output, it holds the size, in bytes, of the output buffer required to hold the output data to be generated. Some converters cannot do this calculation.

[`var kAudioConverterPropertyInputCodecParameters: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterPropertyInputCodecParameters)

The value of this property varies from format to format and is considered private to the format. It is treated as a buffer of untyped data.

[`var kAudioConverterPropertyOutputCodecParameters: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterPropertyOutputCodecParameters)

The value of this property varies from format to format and is considered private to the format. It is treated as a buffer of untyped data.

[`var kAudioConverterSampleRateConverterAlgorithm: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterSampleRateConverterAlgorithm)

A value that indicates the sample rate conversion algorithm.

[`var kAudioConverterSampleRateConverterComplexity: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterSampleRateConverterComplexity)

The sample rate conversion algorithm.

[`var kAudioConverterSampleRateConverterQuality: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterSampleRateConverterQuality)

The rendering quality of the sample rate converter.

[`var kAudioConverterSampleRateConverterInitialPhase: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterSampleRateConverterInitialPhase)

A `Float64` value equal to `0.0`.

[`var kAudioConverterCodecQuality: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterCodecQuality)

The rendering quality of a codec. A `UInt32` value.

[`var kAudioConverterPrimeMethod: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterPrimeMethod)

The priming method, usually for sample-rate conversion.

[`var kAudioConverterPrimeInfo: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterPrimeInfo)

An [`AudioConverterPrimeInfo`](/documentation/AudioToolbox/AudioConverterPrimeInfo) structure.

[`var kAudioConverterChannelMap: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterChannelMap)

An array of `SInt32` values that specify an input-to-output channel mapping.

[`var kAudioConverterDecompressionMagicCookie: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterDecompressionMagicCookie)

A `void*` value that points to memory set up by the caller. This property is required by some audio data formats in order to decompress the input data.

[`var kAudioConverterCompressionMagicCookie: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterCompressionMagicCookie)

A `void*` value that points to memory set up by the caller. This property is returned by the converter so that your application may store it along with the output data. This property can then be passed back to the converter for decompression at a later time.

[`var kAudioConverterEncodeBitRate: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterEncodeBitRate)

A `UInt32` value containing the number of bits per second to aim for when encoding data. Some decoders also allow you to query this property to discover the bit rate.

[`var kAudioConverterEncodeAdjustableSampleRate: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterEncodeAdjustableSampleRate)

A `Float64` value that specifies an output sample rate.

[`var kAudioConverterInputChannelLayout: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterInputChannelLayout)

An `AudioChannelLayout` structure that specifies an audio converter’s input channel layout.

[`var kAudioConverterOutputChannelLayout: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterOutputChannelLayout)

An `AudioChannelLayout` structure that specifies an audio converter’s output channel layout.

[`var kAudioConverterApplicableEncodeBitRates: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterApplicableEncodeBitRates)

An array of `AudioValueRange` structures that describes applicable bit rates based on current settings.

[`var kAudioConverterAvailableEncodeBitRates: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterAvailableEncodeBitRates)

An array of `AudioValueRange` structures that describes the available bit rates based on the input format. You can determine the available bit rates using Audio Format Services.

[`var kAudioConverterApplicableEncodeSampleRates: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterApplicableEncodeSampleRates)

An array of `AudioValueRange` structures that describes applicable sample rates based on current settings.

[`var kAudioConverterAvailableEncodeSampleRates: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterAvailableEncodeSampleRates)

An array of `AudioValueRange` structures that describes the available sample rates based on the input format. You can determine the available sample rates using Audio Format Services.

[`var kAudioConverterAvailableEncodeChannelLayoutTags: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterAvailableEncodeChannelLayoutTags)

An array of `AudioChannelLayoutTag` values for the format and number of channels specified in the encoder’s input format.

[`var kAudioConverterCurrentOutputStreamDescription: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterCurrentOutputStreamDescription)

The current, completely specified output `AudioStreamBasicDescription` structure.

[`var kAudioConverterCurrentInputStreamDescription: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterCurrentInputStreamDescription)

The current, completely specified input `AudioStreamBasicDescription` structure.

[`var kAudioConverterPropertySettings: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterPropertySettings)

An array (of type `CFArray`) of property settings for converters.

[`var kAudioConverterPropertyBitDepthHint: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterPropertyBitDepthHint)

A `UInt32` value that designates the source bit depth to preserve.

[`var kAudioConverterPropertyFormatList: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterPropertyFormatList)

An array of `AudioFormatListItem` structures that describes the set of data formats produced by the encoder end of an audio converter.

[`var kAudioConverterPropertyCanResumeFromInterruption: AudioConverterPropertyID`](/documentation/AudioToolbox/kAudioConverterPropertyCanResumeFromInterruption)

Indicates whether the underlying codec supports resumption of processing following an audio interruption. A read-only `UInt32` value.



---

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)