Find an action, understand its effect and read its limits. Use the task guides for step-by-step capture workflows.
Open cameras in separate windows
Each desktop window shows one camera. All windows in the same app share the capture session.
Choose File → Connect to Camera… to open the camera picker.
Select a discovered camera, or enter its address.
For another camera, choose File → Connect to Camera… again.
If a window already shows that camera, Capturefab brings the window forward. A camera connected by an agent also gets a window.
The picker keeps up to six recent cameras. Move the pointer over a recent camera to show Forget. Forgetting removes the shortcut.
Closing a camera window disconnects that camera. Capturefab asks for confirmation if it is recording. Closing the last window quits the app.
Quitting with an active assistant task opens a separate decision. Review that decision before stopping the app.
Appearance, interface size, recent cameras and output settings are shared. Each window keeps its own layout and open panels.
Camera connections, schedules and session history belong to the running session. Saved files remain after exit. See session control.
Find desktop commands
Use the menus to find camera actions, display controls and help. Unavailable actions appear disabled.
Desktop menu reference
Menu
Actions
File
Connect to Camera…, Enter Camera Address, Quick Command…, Discover Cameras, Capture and Save, Start/Stop Recording, Schedule Capture, Set Up Recording or Forwarding…, Manage Destinations…, Close Window.
Edit
Undo, Redo, Cut, Copy, Paste, Select All, Find Camera Feature…, Copy Session Command.
View
Show Sidebar, Show Inspector, Show Activity, Camera Features, Capture, Record and Forward, Zoom In/Out, Zoom to Fit, Actual Pixels, Show Histogram, Show Focus Region, Image Only, Enter/Exit Full Screen.
Camera
Start/Stop Stream, Use Auto/Manual Exposure, Refresh Features, Save Setup…, Restore Setup…, Start/Stop All Streams, Capture All, Record All Cameras, Stop All Recordings, Use Auto/Manual Exposure for All, Disconnect Camera.
Help
Capturefab Help, Connect an Agent…, Documentation, Troubleshooting, Release Notes, Report a Problem… and, on Windows and Linux, About Capturefab and Check for Updates….
On macOS, the application menu contains About Capturefab, Check for Updates…, Settings… and Quit Capturefab. On Windows and Linux, File contains Exit or Quit. When a check finds a new version, the item reads Update Available: VERSION…; see update checks.
Capture All saves from every connected camera. The other “All” commands operate on eligible connected cameras. Document scanners do not stream or record video.
Use Copy Session Command to give a terminal the current session name. Use Connect an Agent… for an agent briefing.
Open CPU, memory and disk measurements. See resource limits.
Include simulated cameras
Include built-in simulators in discovery so you can practise without hardware.
Start the live view when a camera connects
Start preview automatically for supported cameras. A document scanner always waits for an explicit scan.
Updates
Check for new versions automatically, at most once a day; Check Now checks immediately. See update checks.
Prompt measurement keys
Save or remove provider keys used by prompt measurements. Select Save key to store a new key.
On macOS, Settings opens in a separate window. The app opens only one Settings window at a time.
A saved API key uses the operating system's credential store. Ordinary preferences do not contain API keys.
Apple Intelligence displays local model availability and a Test local AI button. It has no model picker, server field or image-sharing control.
The local model can use text, numeric observations and permitted data results. It cannot view camera images. See requirements and troubleshooting.
Check for new versions
The desktop app reads the public release list at most once a day. It never downloads or installs anything itself.
The check is one request for https://capturefab.com/releases.json. It sends no account, device, usage or version information and sets no cookies; the server sees your IP address, as for any website visit. The first check runs shortly after launch.
Choose Check for Updates… to check now. The Software Update sheet shows the new version's highlights, Download for this computer, Release Notes and the file's SHA-256 to compare with SHA256SUMS. Skip This Version stops the notice and menu title for that version. Install a download the same way you installed this version; recordings and schedules keep running until you quit.
In Settings › Updates, turn off Check for new versions automatically, or use Check Now. The line below shows when the last check ran and what it found.
Managed installs can turn off every check with CAPTUREFAB_UPDATE_CHECK=off or a policy file; see update checks.
Connect, configure and examine cameras
The camera supplies its available controls, allowed values and access rules. Capturefab displays those controls in the inspector.
Use Discover Cameras to refresh available sources.
Search by feature name or an ordinary term, such as “exposure” or “image size”.
Enter a supported value, then apply the edit.
Common controls include exposure, gain, image size, pixel format, frame rate, triggers and device commands. Availability depends on the camera.
Read-only controls show their values. Locked controls cannot change in the current camera state. Stop acquisition when the camera demands it.
Refresh Features reloads the camera's current values and access rules. A selector change can alter the controls available under that selector.
Save Setup… saves the camera's settings by name. Restore Setup… compares a saved setup with the camera and restores it as one change that Undo reverts. See saved setups.
Use Auto Exposure lets Capturefab adjust supported exposure controls. Use Manual Exposure stops those adjustments.
Auto exposure includes rate constraints and optional white-balance controls where supported. See auto exposure and frame rate.
GigE network report
After a GigE camera is found or attempted, the picker offers Scan network. Before that, use Check network in Help.
Stop recording, forwarding and schedules on the cameras you will tune.
Select Scan network.
Read the interface, reachability and camera results.
Use Report to reopen the latest results.
The scan distinguishes discovery, control access and observed streaming. It reports link speed, MTU, packet tests and unsupported settings.
Connected GigE cameras receive supported packet and bandwidth settings. Preview can pause briefly during tuning. Host addresses, routes and MTUs stay unchanged.
Camera types change the order of relevant controls. They do not add capabilities missing from the source.
Automatic CPU work leaves one core free where possible, with at most eight image-processing threads. Device pressure can reduce that count.
Automatic camera buffers use one quarter of total memory, within 512 MiB to 2 GiB. Unknown memory size uses 512 MiB.
Explicit settings remain upper bounds. Safeguards can lower effective CPU limits under device pressure.
Automatic work limits resets CPU and camera-buffer limits. It does not reset the disk storage policy.
An older resource settings file can contain a retired upload limit. Capturefab ignores that field and retains CPU and camera-buffer settings.
Frame delivery
The panel reports the last ten seconds. Camera frames lost means loss on the camera link or inside its worker.
Preview frames skipped means a newer preview replaced an older one. Efficient mode can intentionally skip previews.
Skipped previews do not mean captured or recorded frames were lost. Investigate reported camera loss separately.
Encoder counters report frames lost or delayed by recording and stream output. Investigate these separately from camera-link loss and skipped previews.
Unavailable or stale measurements are labelled. They must not be read as zero usage.
Read session acquisition analytics
Open Analytics in the toolbar, then select Acquisition. This view measures all cameras in the current session.
Charts show frame rate, acquired payload rate, missed frames and data volume by camera. Summaries refresh every five seconds.
Payload means acquired image data before encoding. It is separate from saved file size.
Missed frames count camera-link and worker loss. Skipped previews are separate. Session totals continue across camera reconnects.
Select Show history data to open the current data snapshot.
Use its page controls to move through the rows.
Select Update history to load the latest charted report.
The chart retains at most 24 hours. The history contains one-second samples for all cameras, within 250,000 rows.
Session totals can include earlier activity outside the chart's retained period. Time with no connected camera appears idle.
History rows show time-bucket averages and observed totals. The horizontal axis starts at the first retained sample, which can differ from session start.
Camera data-volume bars compare up to five of the largest session totals. The lines connect observations; missing samples do not become new measurements.
The analytics database stays in memory. Closing the session clears it. A dataset is the separate feature for retained capture records.
On a remote server, Capture insights shows the same acquisition measurements. See monitoring endpoints.
Collect numeric measurements with a model
Prompt measurements send sampled camera images to a model. The model returns numbers, confidence values and notes.
Open Settings → Prompt measurement keys.
Select OpenAI, Gemini or Claude.
Enter the provider key.
Select Save key.
Connect a camera and start its stream.
Open Analytics → Prompt measurements.
Select the provider and enter a vision model that supports structured JSON.
Select Add measurement.
Enter a name, a numeric question and an optional unit.
Set Sample every between 5 and 3,600 seconds.
Select Start collection.
The default interval is 30 seconds. Configure up to 16 measurements. Each request sends the sampled image and the measurement prompts.
Example measurements
Name
Prompt
Unit
Tubes
Count the visible tubes.
tubes
Ribbon length
Estimate ribbon length in meters using the visible ruler.
m
Occupied spaces
Count marked spaces that contain a box.
spaces
For physical dimensions, give scale or calibration information in the prompt. Treat model values as estimates. Unsupported measurements are recorded as unknown.
Collection behavior
Collection stays attached to the camera selected at start. Changing cameras in the workspace does not retarget that collection.
Editing the configuration pauses collection. Select Start collection again to apply the edited settings.
Only one request runs at a time. The next interval starts after the response. Repeated frames are skipped.
Stop collection prevents new calls and discards an unfinished response. The network request might still finish at the provider.
A provider, validation or database error pauses collection. Stopping the stream or disconnecting the camera also ends collection.
History, privacy and keys
Results record camera, frame, prompt, provider, model, value, confidence and note. Unknown values appear as gaps, not zero.
History retains at most 24 hours and 10,000 rows in memory. Charts show up to 24 separate series panels.
Closing the app clears measurement history. Provider, model, prompts and interval remain saved. A new app session starts with collection paused.
Raw images and keys are not stored in the measurement database. Images are sent to the selected provider using your API account.
Environment keys override saved keys: OPENAI_API_KEY, GOOGLE_API_KEY, GEMINI_API_KEY and ANTHROPIC_API_KEY.
For Gemini, a nonempty GOOGLE_API_KEY takes priority over GEMINI_API_KEY. Restart the app after changing its environment.
Refresh reloads credential status without showing the key.
Remove saved key removes the credential-store entry. It does not remove an environment variable.
These keys are shared with matching assistant providers. Saving or removing one affects both features.
Prompt measurements collect configured numbers. The assistant is a separate interface for planning or carrying out camera tasks.
Use keyboard controls
Use Tab and Shift+Tab to move through controls. The focused control receives typing and its normal activation keys.
Letter shortcuts such as H, R and F work when a text field is not using the keyboard.
Enter applies the focused field or activates its control. In Quick Command, Enter sends a request or commits an edit; it never runs a plan.
Escape closes the current panel. On macOS, Command+Period also closes a panel.
Desktop shortcuts
Action
macOS
Windows / Linux
Connect another camera
⌘N
Ctrl+N
Enter camera address
⌘L
Ctrl+L
Discover cameras
⌘R
Ctrl+R or F5
Start or stop stream
Space
Space
Capture / Capture All
⌘S / ⇧⌘S
Ctrl+S / Ctrl+Shift+S
Start or stop recording
⇧⌘R
Ctrl+Shift+R
Switch auto/manual
⇧⌘A
Ctrl+Shift+A
Search features
⌘F
Ctrl+F
Features / Capture / Video
⌘1 / ⌘2 / ⌘3
Ctrl+1 / Ctrl+2 / Ctrl+3
Zoom in / out
⌘+ / ⌘−
Ctrl+= / Ctrl+−
Fit / Actual pixels
⌘0 / ⌥⌘0
Ctrl+0 / Ctrl+Alt+0
Activity / Inspector
⌘J / ⌘I
Ctrl+J / Ctrl+I
Show or hide sidebar
⌥⌘S
Ctrl+Alt+S
Image only / Histogram / Focus region
F / H / R
F / H / R
Copy session command
⇧⌘C
Ctrl+Shift+C
Full screen
⌃⌘F
F11
Quick Command
⌘K
Ctrl+Shift+K
Settings
⌘,
Ctrl+,
Help
⌘? or F1
F1 or Ctrl+/
Undo
⌘Z
Ctrl+Z
Redo
⇧⌘Z
Ctrl+Shift+Z or Ctrl+Y
Close window
⌘W
Alt+F4 on Windows; Ctrl+W on Linux
Quit
⌘Q
File → Exit on Windows; Ctrl+Q on Linux
Keyboard focus scrolls hidden controls into view. An invalid field is revealed so you can correct it.
Screen-reader labels identify controls and current values. Availability depends on the platform's accessibility support and the selected source.
Control a server from a browser
The browser controls a running Capturefab server. Cameras, jobs and files remain on that server.
Start the server with an explicit listening address.
Open the reported URL from a computer that can reach that address.