Carabiner is a powerful video capture and remote control application designed for streaming device development and testing. It provides seamless control of Roku, Android-based streaming devices (Fire TV, Google TV, Android TV), and Apple TV through an intuitive floating and resizable window interface.
Perfect for developers and QA engineers who need to test streaming applications using capture cards and keyboard controls, eliminating the need for physical TV sets or remote controls. Whether you're developing apps, testing UI designs, or performing quality assurance, Carabiner streamlines your workflow by bringing your streaming devices directly to your desktop.
- Multi-Device Support: Control Roku, Android-based devices (Fire TV, Google TV, Android TV) and Apple TV
- Real-time Video Capture: View your streaming device output directly on your computer
- Video Recording: Record streaming device sessions in MP4/WebM format for documentation and testing
- Keyboard Control: Use your computer keyboard to navigate and control devices
- Text Pasting: Paste clipboard content directly to streaming devices
- Screenshot Capture: Save or copy screenshots with one click
- Automation Scripts: Record key sequences with precise timing and replay them on demand
- Control Demo Mode: Show the pressed control keys on the screen for demos and presentations
- Overlay Images: Load reference images for pixel-perfect UI comparison with opacity control
- Customizable Display: Adjust transparency, borders, dimensions and toggle always-on-top behavior
- Global Shortcut: Quick show/hide the display window from anywhere with a keyboard shortcut
- Audio Capture: Toggle audio capture for testing audio features (TTS, Audio tracks)
- Auto-Launch: Start with your system for seamless workflow
- Resolution Control: Configure capture device resolution
- Dark Mode Support: Allows to switch the settings interface to dark mode
- Default Save Locations: Configure custom default folders for screenshots and recordings in the Files tab
- Interactive Notifications: Click toast notifications to open saved file locations instantly
- Install Carabiner β via Homebrew (macOS) or download from the releases page:
See the Installation Guide for all platforms and options.
brew tap lvcabral/carabiner brew install --cask carabiner
- Launch Carabiner
- Configure your capture device in the General tab
- Add your streaming device in the Control tab
- Link your devices in the General tab and start controlling!
For detailed setup and usage instructions, see our comprehensive guides:
- π¦ Installation Guide - Complete installation and setup instructions
- π Usage Guide - Detailed feature documentation and tutorials
- π§ Building from Source - Developer setup and contribution guide
- β¨οΈ Keyboard Mappings - Complete keyboard control reference
- πΈ Screenshots - Visual showcase of the application interface
- π€ Android / Fire TV Setup - ADB setup for Fire TV and Google TV
- π Apple TV Setup - pyatv setup and pairing for Apple TV
We welcome contributions to make Carabiner better! Here's how you can help:
- π Report Bugs: Found an issue? Create a bug report
- π‘ Suggest Features: Have an idea? Submit a feature request
- π§ Fix Issues: Browse open issues and submit pull requests
- π Improve Documentation: Help improve this README or other documentation
- π Support Development: Donate to the developer
- JavaScript: Core programming language
- Electron Framework: Cross-platform desktop application framework
- React: User interface library for the settings panel
- Roku External Control Protocol (ECP): Roku device communication
- Android Debug Bridge (ADB): Android device communication
- pyatv: Apple TV device communication via Media Remote Protocol (MRP)
This application was built with inspiration and code from several excellent open-source projects:
- floatcam by @theterminalguy - Primary foundation for settings interface and video display functionality
- FireTVRemote-Node π₯ by @ZaneH - Reference implementation for ADB remote control of Android devices
- Roku GamePad Gateway by @lvcabral - Reference for Roku ECP API integration
Carabiner was created during the Paramount Network Streaming - Code Fest 2024 and was selected as the winning project. The name was inspired by the essential tool used by mountain climbers β just as a carabiner connects climbers to their lifeline to reach the top, this app connects developers to their streaming devices.
- Website: https://lvcabral.com
- Threads: @lvcabral
- Bluesky: @lvcabral.com
- X/Twitter: @lvcabral
- Podcast: PODebug Podcast
- GitHub: More repositories
Copyright Β© 2024-2026 Marcelo Lv Cabral. All rights reserved.
Licensed under the MIT License.

