This guide will help you get started with Carabiner and make the most of its features.
After installing Carabiner, launch the application to access the settings window. Configure your preferences in the various tabs, then minimize or close the settings window to start using the floating display window.
- Open the General tab in settings
- Select your video capture device from the dropdown
- Choose appropriate capture resolution from the Display tab
- Enable audio capture if needed
- Navigate to the Control tab
- Enter the device details:
- IP Address / Device ID: IP for Roku, Fire TV, and Google TV; UUID or MAC address for Apple TV
- Alias: A friendly name for the device
- Type: Select Roku, Fire TV, Google TV, or Apple TV
- Click + to register the device
Note
Roku users — enable ECP first: Carabiner communicates with Roku devices via the External Control Protocol (ECP). Before adding a Roku device, make sure ECP is enabled:
- Press the Home button on your Roku remote.
- Go to Settings > System > Advanced system settings.
- Select Control by mobile apps.
- Set to Enabled or Permissive.
- Return to the General tab
- Link your capture device with a streaming device
- This enables seamless control integration
When the floating display window is focused, use your keyboard to control the selected device:
- Arrow Keys: Navigate menus
- Enter/Return: Select items
- Backspace: Go back
- Space: Play/pause
- Ctrl+V (Cmd+V on Mac): Paste clipboard text
See the complete keyboard control mappings for advanced controls.
Capture screenshots of your streaming display:
- Click the settings button in the top-right corner of the display window
- Choose from the dropdown menu:
- Copy: Save screenshot to clipboard
- Save: Save screenshot to your specified folder
- Alternatively, use the keyboard shortcuts:
Ctrl+Shift+C(Windows/Linux) orCmd+Shift+C(macOS) to copy the screenshot to the clipboard.Ctrl+S(Windows/Linux) orCmd+S(macOS) to save the screenshot as a file.
Interactive Save Notifications:
- After saving a screenshot, a toast notification appears showing the filename
- Click the toast notification to instantly open the containing folder
- The notification includes the text "Click to open containing folder" for guidance
Record your streaming device sessions (in MP4/WebM) for documentation, tutorials, or debugging:
Starting a Recording:
- Menu Method: Go to File → Start Recording
- Keyboard Shortcut:
Ctrl+Shift+R(Windows/Linux) orCmd+Shift+R(macOS) - Recording Indicator: A red pulsing indicator shows when recording is active
Stopping a Recording:
- Menu Method: Go to File → Stop Recording
- Keyboard Shortcut:
Ctrl+Shift+S(Windows/Linux) orCmd+Shift+S(macOS) - Save Location: Choose save location through system dialog when prompted
Recording Features:
- High Quality: Records at 2.5 Mbps for crisp video quality
- Multiple Formats: Supports MP4 (H.264) and WebM formats automatically
- Visual Indicator: Red pulsing indicator shows when recording is active
- Auto-Naming: Files are automatically named with timestamp (e.g.,
carabiner-recording-2025-07-01-143052.mp4) - Smart Saving: Choose save location through system dialog
- Interactive Save Notifications: Click the toast notification after saving to open the containing folder
💡 Tip: Recordings capture what you see in the display window, perfect for creating tutorials or documenting app behavior! After saving, click the toast notification to quickly navigate to your saved file.
The Automation tab lets you record key sequences (with the exact timing between keypresses) and replay them on demand. This is useful for repetitive test flows — navigating to a menu, resetting app state, launching a specific screen — that you would otherwise repeat manually every session.
Recording a script:
- Open the Automation tab in settings.
- Click Start Recording (or press
Cmd+Shift+Aon macOS /Ctrl+Shift+Aon Windows/Linux). - Switch focus to the display window and press the keys you want to record. Each keypress is captured along with the delay since the previous key.
- Press Stop Recording (or
Cmd+Shift+Z/Ctrl+Shift+Z) when done. The script is saved automatically.
Playing back a script:
- Click the ▶ button next to any script in the list, or
- Use the File → Run Script submenu (also available in the tray and right-click context menu).
- Click the ■ button to interrupt playback.
Editing a script:
- Rename: Click the ✎ (pencil) button and type a new name.
- Edit steps: Click the ≡ button to expand the step editor. From there you can:
- Change the delay before any step (in milliseconds, 0–5000).
- Reorder steps with ↑ / ↓.
- Remove individual steps with ✕.
- Click Save Changes to apply edits or Cancel to revert.
- Click 🗑 to delete a script entirely.
Note: Scripts are tied to the protocol of the device that was active when they were recorded (ECP for Roku, ADB for Android). Playing a script on a device with a different protocol will show a warning toast, but playback will still proceed.
Load reference images for design comparison:
- Open Overlay section in settings
- Load an image file to overlay on the video
- Adjust opacity as needed
- Perfect for achieving pixel-perfect UI designs
- A list of recent images is available for quick access
The Files tab in settings allows you to configure default save locations for your captured content:
-
Screenshot Path Configuration:
- Set a custom default folder for saving screenshots
- If no custom path is set, screenshots save to the Pictures folder
- Use the "⋯" button to browse and select a folder
- Use the "↺" button to reset to default location
-
Video Recording Path Configuration:
- Set a custom default folder for saving video recordings
- If no custom path is set, recordings save to the Movies folder (macOS) or Videos folder (Windows/Linux)
- Use the "⋯" button to browse and select a folder
- Use the "↺" button to reset to default location
-
Path Management:
- Both paths are optional - leaving them empty uses system defaults
- Custom paths are remembered between application sessions
- Folders must be accessible and writable for successful saves
💡 Tip: Setting custom default save locations helps organize your captures and ensures they're saved exactly where you want them, eliminating the need to navigate to your preferred folder every time!
- Transparency: Adjust window transparency (0-90%)
- Borders: Add decorative borders to the display
- Always on Top: Keep the display window above all others
- Display Size: Choose from preset resolutions or use custom sizing
- Global Shortcut: Set a hotkey for quick show/hide the display window
- Launch on Login: Start Carabiner automatically with your system
- Settings at Start: Control whether settings window opens on launch
For Android-based devices (Fire TV, Google TV), configure the ADB path in settings:
- Open the Control tab
- Set the path to your ADB executable under ADB Tool Path
- Ensure ADB / Wi-Fi debugging is enabled on your device
- Accept the authorization prompt on the device when connecting for the first time
See the Android / Fire TV setup guide for detailed instructions.
For Apple TV devices, install pyatv and pair once before adding the device:
- Install
atvremotevia pipx — see the Apple TV setup guide - Open the Control tab and set the atvremote Tool Path
- Enter the Apple TV's Device ID (UUID or MAC address) and select Apple TV
- Click + to add the device
See the Apple TV setup guide for detailed instructions on installing pyatv and pairing your Apple TV.
If you encounter issues not covered here:
- Check the Issues page for known problems
- Search existing issues or create a new one with detailed information
- Include your OS version, device type, and steps to reproduce the issue
- Explore the keyboard control mappings for advanced navigation
- Check the installation guide for setup assistance
- See the building from source guide for development setup
- View the screenshots gallery to see the application interface