---
title: AVAudioPCMBuffer
framework: avfaudio
role: symbol
role_heading: Class
path: avfaudio/avaudiopcmbuffer
---

# AVAudioPCMBuffer

An object that represents an audio buffer you use with PCM audio formats.

## Declaration

```swift
class AVAudioPCMBuffer
```

## Overview

Overview The PCM buffer class provides methods that are useful for manipulating buffers of audio in PCM format.

## Topics

### Creating a PCM Audio Buffer

- [init(pcmFormat:frameCapacity:)](avfaudio/avaudiopcmbuffer/init(pcmformat:framecapacity:)-5jhd5.md)
- [init(pcmFormat:bufferListNoCopy:deallocator:)](avfaudio/avaudiopcmbuffer/init(pcmformat:bufferlistnocopy:deallocator:)-9iwe7.md)

### Getting and Setting the Frame Length

- [frameLength](avfaudio/avaudiopcmbuffer/framelength.md)

### Accessing PCM Buffer Data

- [channelData(_:)](avfaudio/avaudiopcmbuffer/channeldata(_:).md)
- [mutableChannelData(_:)](avfaudio/avaudiopcmbuffer/mutablechanneldata(_:).md)
- [withUnsafeAudioBufferList(_:)](avfaudio/avaudiopcmbuffer/withunsafeaudiobufferlist(_:).md)
- [floatChannelData](avfaudio/avaudiopcmbuffer/floatchanneldata.md)
- [frameCapacity](avfaudio/avaudiopcmbuffer/framecapacity.md)
- [int16ChannelData](avfaudio/avaudiopcmbuffer/int16channeldata.md)
- [int32ChannelData](avfaudio/avaudiopcmbuffer/int32channeldata.md)
- [stride](avfaudio/avaudiopcmbuffer/stride.md)
- [AVAudioPCMBuffer.ChannelData](avfaudio/avaudiopcmbuffer/channeldata.md)
- [AVAudioPCMBuffer.MutableChannelData](avfaudio/avaudiopcmbuffer/mutablechanneldata.md)

### Initializers

- [init(PCMFormat:bufferListNoCopy:deallocator:)](avfaudio/avaudiopcmbuffer/init(pcmformat:bufferlistnocopy:deallocator:)-2ms1j.md)
- [init(PCMFormat:frameCapacity:)](avfaudio/avaudiopcmbuffer/init(pcmformat:framecapacity:)-7scyk.md)
- [init(copying:)](avfaudio/avaudiopcmbuffer/init(copying:)-68es5.md)
- [init(copying:)](avfaudio/avaudiopcmbuffer/init(copying:)-875xm.md)

## Relationships

### Inherits From

- [AVAudioBuffer](avfaudio/avaudiobuffer.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCopying](foundation/nscopying.md)
- [NSMutableCopying](foundation/nsmutablecopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Supporting data types

- [AVAudioBuffer](avfaudio/avaudiobuffer.md)
- [AVReadOnlyAudioPCMBuffer](avfaudio/avreadonlyaudiopcmbuffer.md)
- [AVAudioFile](avfaudio/avaudiofile.md)
- [AVAudioTime](avfaudio/avaudiotime.md)
- [Audio settings](avfaudio/audio-settings.md)
