Documentation

Simple, powerful screen recording for macOS

Quick Start

# Install
curl -fsSL https://framecap.app/install | bash

# Record your screen
framecap -t "screen:0,audio:system"

# Press Enter to stop recording

Usage

framecap -t <track> [options]    # Track-based recording
framecap sources                 # List devices & apps
framecap --help                  # Show help

Options

OptionDescriptionDefault
-t, --track <spec>Recording track specificationRequired
-o, --output <dir>Output directoryCurrent directory
-r, --framerate <fps>Frame rate (1-120)30
-c, --codec <type>h264, proreslt, prores422, prores4444proreslt
-d, --duration <sec>Recording duration (0.1-86400)Manual stop
-w, --overwriteOverwrite existing filesfalse
-q, --quietMinimal outputfalse

Track Format

Tracks follow this pattern:

source:id[,option:value...]

Sources

SourceDescription
screen:0Primary display
screen:1External display
camera:builtinBuilt-in camera
camera:<id>Camera by device ID
audio:systemSystem audio (screen recording only)
audio:<id>Microphone by device ID

Track Options

OptionDescriptionExample
appFilter to specific app(s)app:com.figma.Desktop
hideHide specific appshide:[com.apple.dock,com.apple.menubar]
filtersApply video filtersfilters:[crop(...),flip(h)]
codecOverride codec for this trackcodec:h264
outTrack-specific output directoryout:~/Videos
filenameCustom filename prefixfilename:presentation

Filters

Crop

Remove unwanted regions from your recording.

crop(x=0,y=40,w=1920,h=1040)

Mask

Create rounded corners with optional background.

mask(x=100,y=100,w=800,h=800,r=24,bg=#000000)

Flip

Mirror or rotate your recording.

flip(h)   # Horizontal mirror
flip(v)   # Vertical flip
flip(hv)  # 180° rotation

Examples

Basic Recording

# Screen with system audio
framecap -t "screen:0,audio:system"

# Camera with microphone
framecap -t "camera:builtin,audio:builtin"

# Screen only, no audio
framecap -t "screen:0"

Advanced Recording

# Multiple filters
framecap -t "screen:0,filters:[crop(x=0,y=40,w=1920,h=1040),flip(h)]"

# Hide dock and menu bar
framecap -t "screen:0,hide:[com.apple.dock,com.apple.notificationcenterui]"

# Record specific app with transparency
framecap -t "screen:0,app:com.figma.Desktop,codec:prores4444"

# Multiple apps
framecap -t "screen:0,app:[com.spotify.client,com.google.Chrome]"

Multi-track Recording

# Screen + camera
framecap \
  -t "screen:0,audio:system,filename:presentation" \
  -t "camera:builtin,audio:builtin,filename:presenter" \
  -o ~/Videos

# Multiple screens
framecap \
  -t "screen:0,filename:main" \
  -t "screen:1,filename:external" \
  -o ~/Desktop/recordings

Codecs

CodecQualityFile SizeUse Case
h264GoodSmallestSharing, streaming
proresltExcellentMediumGeneral use (default)
prores422ExcellentLargeProfessional editing
prores4444Excellent + AlphaLargestTransparency support

Device Discovery

# List all available sources
framecap sources

# List with details
framecap sources --verbose

# List windows only
framecap sources --windows

# List audio devices
framecap sources --audio

Permissions

macOS requires explicit permissions for recording:

  • Screen Recording → System Settings → Privacy & Security
  • Camera → System Settings → Privacy & Security
  • Microphone → System Settings → Privacy & Security

Grant permissions when prompted or run framecap sources to trigger permission requests.

Troubleshooting

Common Issues

IssueSolution
Permission deniedGrant Screen Recording permission in System Settings
Camera not foundRun framecap sources to find correct device ID
No audio in recordingUse audio:system for screen or verify microphone ID
High CPU usageUse h264 codec or reduce framerate with -r 24
Another instance runningOnly one screen recording allowed at a time

System Requirements

  • macOS 13.0 (Ventura) or later
  • Storage ~500 MB/min for ProRes LT at 1080p
  • Memory 4 GB RAM minimum
  • Processor Apple Silicon or Intel