Unlock Apple Silicon's hardware Media Engine (hevc_videotoolbox) to stream 10-bit color, true pixel-off blacks, and single-digit millisecond latency to any Android screen.
func stream120Hz() async {
// Apple Silicon VideoToolbox
encoder = .hevc_videotoolbox
latency = <5.0ms
oledRange = .fullJpeg_0_255
}
Everything You Need for a Seamless Dual-Screen Setup
Eliminate the frustrating 30–60 FPS stutters found in proprietary solutions. Cursor movement and scrolling feel as responsive as your main display.
Forced Full Range JPEG (0–255) and Rec. 709 10-bit HEVC encoding prevents elevated dark greys and powers off AMOLED pixels completely.
Stopping or pausing the stream preserves the virtual DeskPad canvas in the background so your IDEs and workspaces never collapse.
Automated reverse port mapping (47984, 47989, 47990, 48010) over USB-C bypasses congested Wi-Fi channels for reliable wired performance.
$ adb reverse tcp:47984 tcp:47984
✓ RTSP Handshake: Ready
✓ Video Stream: 100 Mbps
✓ Roundtrip Jitter: 0.2ms
Control everything with a single click in your top Menu Bar, or run fast keyboard shortcuts (e2t, m2t, t2stop) in your terminal.
How AndroiDisplay Stacks Up
| Feature | AndroiDisplay | Duet Display | Apple Sidecar | Luna Display |
|---|---|---|---|---|
| Price | 100% Free / Open Source | $15–$50 / Year | Free (Apple Only) | $80 Hardware Dongle |
| Max Refresh Rate | 🚀 120 FPS Locked | 60 FPS (often drops) | 60 FPS | 30–60 FPS |
| Wired Latency | ⚡ < 5.0 ms | 25–45 ms | ~15 ms | 20–35 ms |
| Android Support | ✅ Any Android Device | ⚠️ Limited | ❌ iPad Only | ❌ iPad / Mac Only |
| OLED True Blacks | ✅ Full Range [0–255] | ❌ Washed Grey | ⚠️ Scaled | ❌ Washed Grey |
| Window Persistence | ✅ Retains Canvas on Stop | ❌ Collapses on Exit | ❌ Collapses on Exit | ❌ Collapses on Exit |
Try the CLI Suite in Real Time
// Click one of the buttons above or type a command below...
user@mac ~ % tab-ctl status
☀️ Sunshine Service: RUNNING
🖥️ DeskPad Canvas: ACTIVE (1440x900 HiDPI)
📱 Android Tablet: CONNECTED via USB (120 FPS HEVC)
Installation & Quickstart
Go to Settings $\rightarrow$ Developer Options $\rightarrow$ USB Debugging and turn it ON. Plug your tablet into your Mac with a USB-C cable and tap "Always allow from this computer".
Open Terminal on your Mac and run the installation script:
git clone https://github.com/abhay2008/AndroiDisplay.git && cd AndroiDisplay && ./install.sh
Open Moonlight on your tablet, tap 127.0.0.1, enter the 4-digit PIN in your Mac browser at https://localhost:47990, and launch the stream!
Frequently Asked Questions
Experience single-digit millisecond latency, locked 120 FPS, and true OLED dynamic range completely for free.