Easy to implement Voice Chat (VOIP) using Blueprints
Easy Voice Chat lets you add custom voice communication to your game. Voice data is provided as a byte array which can then be sent over the network using RPCs. This means it is completely independent of the Online Sessions system, and so can work without having to create a session.
The Voip Manager component captures audio, and then passes it to blueprints via an event so you can choose how it is sent and played back. The Voip Audio component then plays compressed audio back. Both of these components can be attached to any actor, meaning that you can have audio not just for within a game, you can also have it within lobby's or when spectating etc. The system is designed to give you as much flexibility as possible.
Uses SynthComponent for audio playback, which allows you to easily apply dynamic sound effects such as making it sound like a radio broadcast. This also lets you adjust settings such as attenuation so you can use the plugin for local/positional VOIP, or any other situation you want. Unlike the default implementation in the engine, you can also change the microphone at runtime if you want.
Please check the documentation to configure your project to be able to use the plugin, there are a few config changes required to get it working as intended.
Version 1.3 (21st June 2022, affects versions 4.26+)
Added ability to change audio capture devices. Updated example project with more functionality such as only transmitting audio to a certain team, and added additional comments to make it easier to understand. Removed Win32 support from 4.26+
Number of C++ Classes: 3
Network Replicated: No - Handle this yourself in Blueprints
Supported Development Platforms: Win64
Supported Target Build Platforms: Win64
Make sure to enable the voice module for your project (see documentation to know how). Please read other aspects of the documentation such as increasing the bandwidth of your NetDriver.