# Developer Overview
Amplifier is a voice chat plugin for Paper servers that provides real-time audio processing capabilities. It exposes a public API for other plugins to hook into voice chat events, manipulate player audio properties, and play positional audio in the game world.
---
## Maven / Gradle
The Amplifier-API artifact is hosted on JitPack. Add it as a `compileOnly` dependency so that Amplifier is not shaded into your plugin jar.
**Repository:**
*Gradle (Kotlin DSL):*
```kotlin
maven("https://jitpack.io")
```
*Maven:*
```xml
<repository>
<id>jitpack</id>
<url>https://jitpack.io</url>
</repository>
```
**Dependency:**
*Gradle (Kotlin DSL):*
```kotlin
compileOnly("com.github.Lodestones:Amplifier-API:1.0.13")
```
*Maven:*
```xml
<dependency>
<groupId>com.github.Lodestones</groupId>
<artifactId>Amplifier-API</artifactId>
<version>1.0.13</version>
<scope>provided</scope>
</dependency>
```
Add `Amplifier` as a `depend` in your `plugin.yml`:
```yaml
depend:
- Amplifier
```
---
## Accessing the API
The API is accessed through the static `AmplifierAPI` class. The API instance is available after Amplifier has been enabled.
```java
import gg.lode.amplifierapi.AmplifierAPI;
import gg.lode.amplifierapi.IAmplifierAPI;
IAmplifierAPI api = AmplifierAPI.getApi();
if (api == null) {
// Amplifier is not loaded
return;
}
```
---
## Common Operations
### Get the voice manager
```java
IVoiceManager voiceManager = api.getVoiceManager();
```
### Modify player voice properties
```java
IVoicePlayer voicePlayer = voiceManager.getVoicePlayer(player);
if (voicePlayer != null) {
voicePlayer.setPitch(1.5f);
voicePlayer.setVolume(0.8f);
voicePlayer.setReverbIntensity(0.4f); // Subtle reverb
voicePlayer.setReverbRoomSize(0.7f); // Medium hall
}
```
### Play positional audio
```java
byte[] pcmData = ...; // Raw 16-bit PCM audio data
voiceManager.playSound(location, pcmData, 1.0f, 48.0f);
```
### Listen for microphone events
```java
@EventHandler
public void onMicrophone(PlayerMicrophoneEvent event) {
Player player = event.player();
// Process or modify the audio data
}
```
---
## Related Pages
- [[Amplifier/Developers/API Reference]] — Full interface documentation