> For the complete documentation index, see [llms.txt](https://assetstore.replaykit.voxelbusters.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://assetstore.replaykit.voxelbusters.com/api/start-recording.md).

# Start Recording

This starts the recording and internally it may call PrepareRecording if its not called earlier to this call. If it calls PrepareRecording internally, it may show up permission for the user to allow recording.

```csharp
recorder.StartRecording(callback: (success, error) =>
{
    if (success)
    {
        Debug.Log("Start recording successful.");
    }
    else
    {
        Debug.Log($"Start recording failed with error [{error}]");
    }
});
```

Example

> ```csharp
> using VoxelBusters.ScreenRecorderKit;
>
> IScreenRecorder recorder;
> //... Create instance for IScreenRecorder via ScreenRecorderBuilder
>
> public void StartRecording()
> {
>     recorder.StartRecording(StartRecordingComplete);
> }
>
> private void StartRecordingComplete(bool status, Error error)
> {
>     if (success)
>     {
>         Debug.Log("Start recording successful.");
>     }
>     else
>     {
>         Debug.Log($"Start recording failed with error [{error}]");
>     }
> }
> ```
