Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PhoneSpeaker 📡

Stream your laptop's audio to your phone's speaker over WiFi — no cables, no Bluetooth pairing.

How it works

  • Your laptop captures its own audio output (tab or system audio)
  • Streams it in real time to your phone via WebRTC (peer-to-peer, low latency)
  • Your phone plays it through its speaker

Setup

1. Install dependencies

npm install

2. Start the server

npm start

Server runs on http://localhost:3000

3. On your laptop

  • Open http://localhost:3000 in Chrome/Edge
  • Select Laptop (Host)
  • Click Create room & share audio
  • In the browser dialog: choose the tab or screen you want to share, and make sure to tick "Share audio" / "Share tab audio"
  • A 4-character room code appears (e.g. AB3X)

4. On your phone

  • Connect your phone to the same WiFi network as your laptop
  • Find your laptop's local IP (run ipconfig on Windows or ifconfig on Mac/Linux)
  • Open http://YOUR_LAPTOP_IP:3000 on your phone's browser
  • Select Phone (Speaker)
  • Enter the room code
  • Tap Connect as speaker → audio plays through your phone!

Tips

  • Use Chrome or Edge for best WebRTC support
  • For system-wide audio capture (all apps, not just one tab), use the "Entire screen" option and tick "Share system audio" on Windows
  • On Mac, system audio capture requires a virtual audio driver like BlackHole
  • Multiple phones can connect to the same room — all play simultaneously
  • Adjust volume independently on each phone with the volume slider

Tech stack

  • Node.js + Express — web server
  • Socket.io — WebRTC signaling (offer/answer/ICE)
  • WebRTC — peer-to-peer audio streaming
  • getDisplayMedia API — captures tab/system audio on the host

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages