---
title: "AudioConverterConvertComplexBuffer(_:_:_:_:)"
framework: audiotoolbox
role: symbol
role_heading: Function
path: "audiotoolbox/audioconverterconvertcomplexbuffer(_:_:_:_:)"
---

# AudioConverterConvertComplexBuffer(_:_:_:_:)

Converts audio data from one linear PCM format to another, where both use the same sample rate.

## Declaration

```swift
func AudioConverterConvertComplexBuffer(_ inAudioConverter: AudioConverterRef, _ inNumberPCMFrames: UInt32, _ inInputData: UnsafePointer<AudioBufferList>, _ outOutputData: UnsafeMutablePointer<AudioBufferList>) -> OSStatus
```

## Parameters

- `inAudioConverter`: The audio converter to use for the format conversion.
- `inNumberPCMFrames`: The number of linear PCM frames to convert.
- `inInputData`: The source audio buffer list.
- `outOutputData`: The destination audio buffer list.

## Return Value

Return Value A result code.

## Discussion

Discussion This function is appropriate for linear PCM-to-linear PCM audio data format conversion where there is no sample rate conversion. important: This function fails for conversions where there is a variation between the input and output data buffer sizes. This includes sample rate conversions and conversions involving most compressed formats. In these cases, instead use the AudioConverterFillComplexBuffer(_:_:_:_:_:_:) function.

## See Also

### Performing Conversions

- [Encoding and decoding audio](audiotoolbox/encoding-and-decoding-audio.md)
- [AudioConverterConvertBuffer(_:_:_:_:_:)](audiotoolbox/audioconverterconvertbuffer(_:_:_:_:_:).md)
- [AudioConverterFillComplexBuffer(_:_:_:_:_:_:)](audiotoolbox/audioconverterfillcomplexbuffer(_:_:_:_:_:_:).md)
