---
title: AVReadOnlyAudioPCMBuffer
framework: avfaudio
role: symbol
role_heading: Structure
path: avfaudio/avreadonlyaudiopcmbuffer
---

# AVReadOnlyAudioPCMBuffer

A read-only, Sendable audio buffer for safe concurrent access.

## Declaration

```swift
struct AVReadOnlyAudioPCMBuffer
```

## Topics

### Creating a read-only buffer

- [init(copying:)](avfaudio/avreadonlyaudiopcmbuffer/init(copying:).md)
- [init(format:frameCapacity:initializingWith:)](avfaudio/avreadonlyaudiopcmbuffer/init(format:framecapacity:initializingwith:).md)
- [init(unsafeRetaining:)](avfaudio/avreadonlyaudiopcmbuffer/init(unsaferetaining:).md)

### Getting buffer properties

- [format](avfaudio/avreadonlyaudiopcmbuffer/format.md)
- [frameCapacity](avfaudio/avreadonlyaudiopcmbuffer/framecapacity.md)
- [frameLength](avfaudio/avreadonlyaudiopcmbuffer/framelength.md)
- [stride](avfaudio/avreadonlyaudiopcmbuffer/stride.md)

### Accessing channel data

- [channelData(_:)](avfaudio/avreadonlyaudiopcmbuffer/channeldata(_:).md)
- [withUnsafeAudioBufferList(_:)](avfaudio/avreadonlyaudiopcmbuffer/withunsafeaudiobufferlist(_:).md)
- [AVReadOnlyAudioPCMBuffer.ChannelData](avfaudio/avreadonlyaudiopcmbuffer/channeldata.md)

## Relationships

### Conforms To

- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Supporting data types

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