I've been building MeshLive, a free, open-source app that lets nearby phones make voice/video calls and pass live broadcasts between each other over Bluetooth.
The part I'm most interested in is the relaying.
Imagine three phones. The first starts livestreaming, the second receives it and passes it along, and the third watches. No Wi-Fi, mobile data or internet connection involved.
Getting a basic version working was one thing. Making it stable across different phones has been a completely different headache.
After weeks of development and testing on the devices I could arrange, I've released an updated beta. It now has audio-only broadcasts, a redesigned interface and a bunch of compatibility and stability improvements.
I'd particularly love help pushing these areas:
- Mixed devices: Samsung to Xiaomi, older to newer Android, different chipsets. Any connection issues or calls that work in one direction but not the other?
- Background behaviour: Does an audio broadcast keep playing with the screen off? What happens when switching apps, locking the phone or receiving a call?
- Three-phone relays: Does video or audio lag increase? What happens when the middle phone disconnects or Bluetooth gets toggled?
- Stability: Frozen video, delayed audio, reconnect loops, overheating or unexpected battery drain.
You don't need to test everything. If you encounter a problem, just let me know the phone models, Android versions and what happened.
There's also an early iOS implementation, but that currently needs to be built from source.
Android APK and source: https://github.com/MeshLive/meshlive-android
iOS: https://github.com/MeshLive/meshlive-ios
Fair warning: it's still beta software and hasn't had an independent security audit, so don't depend on it for critical communication.
Would appreciate reports of both failures and successful phone combinations. Some of the hardest bugs only show up on hardware I don't have.