A simple peer-to-peer voice chat application that works on Linux, macOS, and Windows. This application uses audio devices to capture and play audio over a network connection.
-
Install Rust and Cargo:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh source $HOME/.cargo/env
-
Install ALSA Development Libraries:
sudo apt-get update sudo apt-get install libasound2-dev
-
Clone the Repository and Build:
git clone https://github.com/yourusername/voip_walkie_talkie.git cd voip_walkie_talkie cargo build --release
-
Install Rust and Cargo:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh source $HOME/.cargo/env
-
Install PortAudio:
brew install portaudio
-
Clone the Repository and Build:
git clone https://github.com/yourusername/voip_walkie_talkie.git cd voip_walkie_talkie cargo build --release
-
Install Rust and Cargo:
- Download and install Rust from rustup.rs.
-
Install Windows Build Tools:
npm install -g windows-build-tools
-
Clone the Repository and Build:
git clone https://github.com/yourusername/voip_walkie_talkie.git cd voip_walkie_talkie cargo build --release
-
Run the Application:
./target/release/voip_walkie_talkie --host <FRIEND_IP> --port <FRIEND_PORT>
Replace
<FRIEND_IP>
and<FRIEND_PORT>
with the IP address and port number of the friend you want to connect to. -
Voice Chat:
- Speak into your microphone to send audio.
- Listen through your speakers or headphones to hear audio from your friend.
-
Graceful Shutdown:
- Press
Ctrl+C
to stop the application and exit gracefully.
- Press
-
Audio Device Not Found:
- Ensure that your audio devices are properly connected and recognized by the system.
- Check the device settings and permissions.
-
Connection Issues:
- Verify that the IP address and port are correct and accessible.
- Ensure that firewall or network settings are not blocking the connection.
-
Missing ALSA on Linux:
- Ensure
libasound2-dev
is installed. You may need to setPKG_CONFIG_PATH
if the ALSA library is not found.
export PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/local/lib/pkgconfig
- Ensure
-
PortAudio on macOS:
- Ensure
portaudio
is installed via Homebrew.
brew install portaudio
- Ensure
This project is licensed under the MIT License. See the LICENSE file for details.