---
title: "startClipBuffering(completionHandler:)"
framework: replaykit
role: symbol
role_heading: Instance Method
path: "replaykit/rpscreenrecorder/startclipbuffering(completionhandler:)"
---

# startClipBuffering(completionHandler:)

Starts buffering a clip recording.

## Declaration

```swift
func startClipBuffering(completionHandler: (@Sendable ((any Error)?) -> Void)? = nil)
```

```swift
func startClipBuffering() async throws
```

## Parameters

- `completionHandler`: The system invokes this closure when recording starts. The system passes an error object to the closure if it encountered a problem.

## Discussion

Discussion important: You can call this method from synchronous code using a completion handler, as shown on this page, or you can call it as an asynchronous method that has the following declaration: func startClipBuffering() async throws For information about concurrency and asynchronous code in Swift, see Calling Objective-C APIs Asynchronously.

## See Also

### Performing Clip Recording

- [stopClipBuffering(completionHandler:)](replaykit/rpscreenrecorder/stopclipbuffering(completionhandler:).md)
- [exportClip(to:duration:completionHandler:)](replaykit/rpscreenrecorder/exportclip(to:duration:completionhandler:).md)
