Skip to content

Ozzletroll/TAC-COM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,117 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Logo

TAC/COM

Mech Pilot Voice Comms Interface
Download · Report Bug · Request Feature

Features

TAC/COM is a realtime VoIP effects processor that emulates sci-fi radio comms chatter.

  • Realtime audio processing
  • Push-to-talk and open mic modes
  • Built-in noise suppression
  • Adjustable noise gate
  • 5 themed presets with unique mic click sfx and effects processing
  • Compatible with any VoIP software

Built With

  • C#
  • WPF
  • CSCore
  • NWaves
  • Dapplo.Windows.Input
  • AdonisUI
  • WebRtcVadSharp
  • RNNoise.NET

Requirements

  • Windows 10 or later

(back to top)

Getting Started

Installation

  1. Download the latest release.
  2. Install virtual audio cable driver: VB-Cable Virtual Audio Device
  3. Unzip and run the TAC/COM executable.

Setup

  1. Set the TAC/COM input device to your microphone input device.
  2. Set the TAC/COM output device to your virtual audio cable input device.
  3. Select your desired radio profile. Each profile features unique mic clicks, transmission static and voice processing.
  4. Set your chosen push-to-talk keybind via the keybind edit button. Enable "passthrough" if you want the keybind to reach other apps, otherwise leave it disabled.

Screenshot of the TAC/COM window setup with a microphone input device and 'CABLE Input Input (VB-Audio Virtual Cable)' as the output device.

Discord Setup

Whilst instructions here are given for Discord, setup should be largely identical for any other VoIP program.

  1. Navigate to "User Settings".
  2. Open "Voice & Video" under "App Settings".
  3. Set input device to your virtual audio cable output device.

Screenshot of Discord's Voice & Video settings, with the input device set to 'CABLE Output (VB-Audio Virtual Cable)'.

  1. Disable Discord's echo cancellation and noise suppression.

Screenshot of Discord's Voice & Video settings, with Noise Suppression set to 'None'.

Unless disabled fully, Discord's echo cancellation and noise suppression will interfere with TAC/COM's radio mic sfx. TAC/COM uses it's own built-in adjustable noise gate that does not affect the sfx channel.


More detailed installation guides can be found on the TAC/COM wiki here.


Noise Gate Configuration

To set TAC/COM's noise gate threshold correctly, you can use Discord's "Mic Test" feature (under User Settings -> Voice & Video). Alternatively, you can temporarily select your headset speakers as TAC/COM's output device. Either option will allow you to hear your own processed voice for testing purposes.

  1. Set the noise gate threshold in TAC/COM to -100db.
  2. Speak at a normal volume.
  3. Gradually raise the threshold value until any background noise is eliminated.
  4. If your own voice becomes muted or suppressed, lower the threshold slightly.

Repeat this process whilst holding the push-to-talk key. Ideally you should hear your own processed voice clearly with no background noise, as well as the distinct mic open/close click tones on push-to-talk keydown/release.

Make sure to set the "Noise" and "Interference" levels to 0% during testing, as these setting deliberately introduce noise and distortion to the processed signal.

Usage

  1. Click "enable" to allow audio passthrough. This will transmit your voice without any additional processing to your chosen output device.
  2. Hit your chosen push-to-talk key to begin "radio" transmission. Release the key to return to regular mic passthrough.

During PTT radio transmission, the audio is deliberately compressed and distorted. Therefore, it is important to adhere to correct radio protocol:

  • Wait for the channel to be clear. Do not interrupt teammates.
  • Pause a moment after pressing the PTT button.
  • Be direct and short when communicating.
  • Speak slowly and clearly.
  • Use sci-fi military jargon at every opportunity.

Settings

Mode

Toggles whether TAC/COM should run in the default push-to-talk mode, or in Open Mic mode. In Open Mic mode, the radio effect is triggered automatically upon voice activity detection.

Noise Gate Threshold

The threshold in dB at which noise attenuation begins. All input below the given threshold will be attenuated. Ranges from 0dB to -100dB.

Output Level

The level boost in dB for the processed output signal. Used to normalise input/output levels. Ranges from -10dB to +10dB.

Noise Level

Sets the level of the processed signal's "background noise" effect during transmission. Ranges from 0% to 100%.

Interference Level

Sets the level of the processed signal's simulated signal degradation/interference. Ranges from 0% to 100%. Use sparingly for dramatic effect, as values above 50% become increasingly unintelligible.

Exclusive Mode

Allows TAC/COM to utilise the chosen input device in exclusive mode, preventing other applications from accessing it. This can help prevent third-party audio software from interfering with audio playback.

Enable Noise Suppression

Enables the use of the RNNoise noise suppression algorithm. Removes background noise at the cost of overall audio fidelity.

Buffer Size

Sets TAC/COM's internal sample buffer size in milliseconds. Increase this if popping/crackling occurs.

Voice Activity Mode

When using Open Mic mode, this settings sets the voice activity detector's sensitivity mode. More aggressive values minimise non-speech triggering the detector, but are more prone to missing parts of speech.

Hold Time

When using Open Mic mode, this setting controls the length of time in milliseconds between voice activity ending and the end of the radio transmission effect.

Minimise to System Tray

Set whether TAC/COM will minimise to the system tray icon rather than the taskbar.

System Tray Icon

While running, TAC/COM creates an icon on the system tray that provides a simple visual indicator of the push-to-talk transmission state.

Icon Description
A crossed-out white microphone icon, indicating that TAC/COM is not transmitting any audio data. Standby: No audio being passed to the output device.
A white microphone icon, indicating that TAC/COM is transmitting unprocessed audio. Enabled: Regular microphone input being passed to the output voice, with no radio effect applied.
A red microphone icon, indicating that TAC/COM is applying the radio effect to the output. Transmitting: Processed radio effect audio being passed to output device.

Right clicking the system icon shows a dropdown menu of additional options to show/hide the app, toggle if TAC/COM's window should stay on top of other windows, and to display an audio device debug panel.

(back to top)

About

Realtime VoIP radio effects.

Resources

Stars

Watchers

Forks

Languages