---
title: "append(bufferReference:flags:)"
framework: coremedia
role: symbol
role_heading: Instance Method
path: "coremedia/cmblockbuffer/append(bufferreference:flags:)"
---

# append(bufferReference:flags:)

Adds a reference to another block buffer.

## Declaration

```swift
func append<T>(bufferReference: T, flags: CMBlockBuffer.Flags = []) throws where T : CMBlockBufferProtocol
```

## Parameters

- `bufferReference`: A block buffer to refer to. The buffer must not be empty unless you also pass the doc://com.apple.coremedia/documentation/CoreMedia/CMBlockBuffer/Flags/permitEmptyReference flag.
- `flags`: Feature and control flags.

## See Also

### Modifying a Block Buffer

- [append(length:allocator:range:flags:)](coremedia/cmblockbuffer/append(length:allocator:range:flags:).md)
- [append(buffer:allocator:flags:)](coremedia/cmblockbuffer/append(buffer:allocator:flags:)-28keu.md)
- [append(buffer:allocator:flags:)](coremedia/cmblockbuffer/append(buffer:allocator:flags:)-8fws8.md)
- [append(length:allocator:deallocator:range:flags:)](coremedia/cmblockbuffer/append(length:allocator:deallocator:range:flags:).md)
- [append(buffer:deallocator:flags:)](coremedia/cmblockbuffer/append(buffer:deallocator:flags:)-3bfef.md)
- [append(buffer:deallocator:flags:)](coremedia/cmblockbuffer/append(buffer:deallocator:flags:)-1ibzz.md)
- [CMBlockBuffer.CustomBlockAllocator](coremedia/cmblockbuffer/customblockallocator.md)
- [CMBlockBuffer.CustomBlockDeallocator](coremedia/cmblockbuffer/customblockdeallocator.md)
- [assureBlockMemory()](coremedia/cmblockbuffer/assureblockmemory().md)
- [withUnsafeMutableBytes(atOffset:_:)](coremedia/cmblockbuffer/withunsafemutablebytes(atoffset:_:).md)
