Inspiration
Ever get stuck without a microphone, yet there's a microphone in the phone in your pocket? One that can not only send sound over a cable, but across the internet and add processing on top.
What it does
First, it can capture the audio coming into your Android's microphone, and send it back over the speakers, allowing you to connect it to other audio devices. Next, other phones can connect and the audio is streamed wirelessly between everyone; Finally, processing is added to include captions on what is being said, and allowing a moderator to control who can speak.
How we built it
Android studio using native android APIs to access real-time audio in and out signal for local microphone. WiFi direct for streaming between local devices. Bing Speech API for converting the messages to text in real time.
Challenges we ran into
WiFi direct is fairly flaky, it is hard to get everything connected together well. Speech API could be improved, it is lacking documentation and the results do not match our use-case that well.
Accomplishments that we're proud of
Lots of learning about how networks work and how to stream information quickly between devices. Writing it in a way that made it easy to add more devices or more features like speech-to-text and audio modulation.
What we learned
Debugging networking is hard, especially without many error messages.
What's next for Live Mic
Enabling NSD (network service discovery) along side WiFi direct peer-to-peer for more connection options. Optimizing the data transfer to reduce lag and data usage. More moderator options, like multiple chat rooms, plus connecting with non-Android devices.
Built With
- android
- bing-speech
- wifi-direct
Log in or sign up for Devpost to join the conversation.