How to Record Output to File
How to Record Output to File
Backstage can record the rendered output of any GPU Output, NDI Output, or dedicated Recording Output to disk as image sequences or video files. Use this to capture final pixel-accurate output for post-production, archiving, or review.
Before you start
- At least one output configured (GPU Output, NDI Output, or Recording Output)
- A Projector or Display routed to that output via Video Routing
- Sufficient disk space on the target drive (uncompressed 4K at 60 fps generates ~1.5 GB/s in SBSM format)
- Content playing or ready to play on the output you want to record
Choose your recording method
Backstage offers two ways to record output to file. Choose based on your use case.
|
Method |
How it works |
When to use |
|---|---|---|
|
GPU Output inline recording |
Records directly from an existing GPU Output or NDI Output. The File Recording section appears in the output's Inspector. No extra output needed. |
You already have a GPU or NDI output and want to capture what it renders. Lower overhead. Preferred method when possible. |
|
Dedicated Recording Output |
A standalone offscreen output created solely for recording. Has its own resolution, independent of any physical display. Does not block the render loop. |
You need to record at a different resolution than your physical outputs, or you want a recording-only pipeline with no physical display attached. |
The GPU Output inline recording is the recommended approach. The dedicated Recording Output has more overhead. Use it only when you specifically need a different output resolution or an output with no physical display.
Steps
Method A: Record from a GPU Output or NDI Output
1. Select the output
Open the Outputs panel (top-left). Click the GPU Output or NDI Output you want to record. Its properties appear in the Inspector.
2. Expand the File Recording section
Scroll down in the Inspector to the File Recording collapsible section and expand it.
3. Enable recording
Check Enable. This prepares the output for recording and reveals the full set of recording options. While Enable is checked, all recording parameters are locked for editing. Uncheck Enable to change settings, then re-enable.
4. Configure recording settings
With Enable unchecked, set your recording parameters:
-
Width / Height — Resolution of the recorded frames. A warning appears if this does not match the output resolution.
-
File Name — Prefix for recorded files. Defaults to
output. -
Recording Path — Destination folder. Defaults to an
outputfolder next to the Backstage executable. A red warning appears if the path is invalid. -
Output Video Type — Choose between Image Sequence and Video. See the Options Explained section below.
5. Start recording
Check Enable, then check Record to File. Backstage immediately begins writing frames to the configured path. The Record to File checkbox is only available when the output is connected, the recording path is valid, and Enable is checked.
6. Stop recording
Uncheck Record to File. For image sequences, files remain in the output folder. For video, the container file is finalized and closed.
Method B: Use a dedicated Recording Output
1. Create a Recording Output
Open the Outputs panel. Expand the Recording section. Click the + button to create a new Recording Output.
2. Set the output resolution
Select the new Recording Output. In the Inspector under File Recording Output Properties, set Width and Height to your desired recording resolution. You can also set the Bit Depth.
3. Route a Projector or Display to the Recording Output
Open Video Routing. Find the Recording Output column. Check the box for the Projector or Display you want to record.
4. Configure and start recording
The File Recording section in the Inspector works identically to the GPU Output method. Follow steps 3 through 6 from Method A above.
Control recording via the Node Editor
Use the Video:FileRecorder node to start, stop, and control recording programmatically.
-
Select an output from the dropdown inside the node. Only outputs with Enable checked in their File Recording section appear.
-
Send a Bang to the Toggle input to start or stop recording.
-
Send
1or0to the Enable input to explicitly start or stop. -
Send an integer to Frame number to set the external frame counter (used with Update on frame number change recording mode).
-
Send a string to File Name to change the output file name at runtime.
-
The Enabled output emits
1or0to confirm the current recording state.
Options explained
Image Sequence options
When Output Video Type is set to Image Sequence, each rendered frame is written as an individual file.
|
Setting |
Description |
Values / Range |
|---|---|---|
|
Output Format |
File format for each recorded frame. |
SBSM, Raw Data, Raw 4:2:2, Raw 4:2:0, BMP, BMP 4:2:2, DPX RGB 10-bit, DPX 10-bit YCbCr 4:2:2, DPX 10-bit YCbCr 4:4:4 |
|
Recording Mode |
Controls when frames are captured. |
Continuous — saves every rendered frame. Update on frame number change — saves only when the external frame number (from the FileRecorder node) changes. |
|
Record nth frame |
Record every Nth frame instead of every frame. Reduces disk load. |
1 to 8 (default: 1) |
Video options
When Output Video Type is set to Video, frames are encoded into a video container file using FFmpeg.
|
Setting |
Description |
Values / Range |
|---|---|---|
|
Container Format |
The file container wrapping the encoded video. |
MP4, Matroska (MKV). Default: Matroska |
|
Video Codec |
Compression codec used for encoding. |
H264, AV1, MPEG4. Default: H264 |
|
Pixel Format |
Chroma subsampling of the encoded video. |
Planar I420 (YUV 4:2:0) |
|
Frame Rate |
Target frame rate of the encoded video. |
Default: 60.0 |
|
Bit Rate |
Target encoding bit rate in bits per second. |
Default: 9000000 (9 Mbps) |
|
Audio Source |
Select an Audio Mixer to embed audio in the video file. Leave empty for video only. |
Dropdown of available Audio Mixers |
|
Audio Codec |
Codec for the embedded audio track. Only available when an Audio Source is selected. |
Opus, ALAC, Vorbis, MP3, MP2. Default: Opus |
Thread and performance options
|
Setting |
Description |
Values / Range |
|---|---|---|
|
Asynchronous Copy |
When enabled, frame data is copied to disk on background threads without blocking the render loop. Disable only if you need guaranteed frame-accurate sequential writes. |
Checkbox (default: on) |
|
Number of Threads |
How many background threads write frames to disk in parallel. Higher values improve throughput on fast storage. Only available when Asynchronous Copy is enabled and output type is Image Sequence. |
1 to 30 (default: 30) |
File naming and output location
Recorded files are written to the folder specified in Recording Path. The default path is an output folder next to the Backstage executable.
-
Image Sequence: Files are named
<File Name>_<0000000001>.sbsm(or.dpx,.bmp, etc. depending on format). The frame counter is zero-padded to 10 digits. -
Video: The file is named
<File Name>.mkvor<File Name>.mp4based on the selected container format. A new recording overwrites the previous file.
Common mistakes
-
Recording resolution mismatch — If the recording resolution does not match the output resolution, Backstage shows a red warning. This can lead to scaling artifacts. Match the recording resolution to the output, or set it intentionally for a different capture size.
-
Bit depth mismatch — Selecting a 10-bit recording format (e.g. DPX RGB 10-bit) on an 8-bit output truncates precision. Backstage warns when the recording bit depth does not match the output bit depth.
-
Disk runs out of space — Uncompressed image sequences at high resolution consume storage fast. SBSM 4K at 60 fps requires sustained write speeds around 1.5 GB/s. Monitor available disk space and use a fast NVMe or RAID array.
-
Invalid recording path — If the recording path does not exist or is inaccessible, a red Invalid Recording Path! warning appears and the Record to File checkbox is disabled.
-
Using Video mode for post-production — H.264 and AV1 use lossy compression with YUV 4:2:0 chroma subsampling. For lossless, frame-accurate capture intended for post-production, use Image Sequence mode with DPX or SBSM format.
-
Cannot change settings while recording — Recording parameters are locked while Enable is checked. Uncheck Enable, make changes, then re-enable.
Tips
-
For the fastest uncompressed recording, use SBSM format with Asynchronous Copy enabled and a high thread count. SBSM is Brainsalt's native format and avoids any format conversion overhead.
-
Use DPX RGB 10-bit when recording for delivery to post-production. DPX is an industry-standard format widely supported in compositing and grading tools.
-
Use Video output type with H.264 or AV1 when you need a compact recording for review or archival purposes and frame-perfect accuracy is not critical.
-
The Update on frame number change recording mode is useful when driving recording from external timecode or a Sequence via the Video:FileRecorder node. Only frames at new timecode positions are saved, avoiding duplicate frames during paused playback.
-
Video recording supports embedded audio. Select an Audio Source (Audio Mixer) in the video settings to mux audio into the recorded video file.
Related
GPU Output — GPU Output reference page with all Inspector properties.
Recording Output — Recording Output reference page.
Video:FileRecorder — Video:FileRecorder node reference (pin definitions and usage).
Routing Windows — Routing Windows: how to route Projectors and Displays to outputs.
