aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/soundbot/AudioPlayerSendHandler.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/soundbot/AudioPlayerSendHandler.java')
-rw-r--r--src/main/java/soundbot/AudioPlayerSendHandler.java48
1 files changed, 0 insertions, 48 deletions
diff --git a/src/main/java/soundbot/AudioPlayerSendHandler.java b/src/main/java/soundbot/AudioPlayerSendHandler.java
deleted file mode 100644
index 6499aad..0000000
--- a/src/main/java/soundbot/AudioPlayerSendHandler.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package soundbot;
-
-import com.sedmelluq.discord.lavaplayer.player.AudioPlayer;
-import com.sedmelluq.discord.lavaplayer.track.playback.AudioFrame;
-import net.dv8tion.jda.core.audio.AudioSendHandler;
-
-/**
- * This is a wrapper around AudioPlayer which makes it behave as an AudioSendHandler for JDA. As JDA calls canProvide
- * before every call to provide20MsAudio(), we pull the frame in canProvide() and use the frame we already pulled in
- * provide20MsAudio().
- */
-public class AudioPlayerSendHandler implements AudioSendHandler {
- private final AudioPlayer audioPlayer;
- private AudioFrame lastFrame;
-
- /**
- * @param audioPlayer Audio player to wrap.
- */
- public AudioPlayerSendHandler(AudioPlayer audioPlayer) {
- this.audioPlayer = audioPlayer;
- }
-
- @Override
- public boolean canProvide() {
- if (lastFrame == null) {
- lastFrame = audioPlayer.provide();
- }
-
- return lastFrame != null;
- }
-
- @Override
- public byte[] provide20MsAudio() {
- if (lastFrame == null) {
- lastFrame = audioPlayer.provide();
- }
-
- byte[] data = lastFrame != null ? lastFrame.data : null;
- lastFrame = null;
-
- return data;
- }
-
- @Override
- public boolean isOpus() {
- return true;
- }
-}