=Fixing Youtube Player
This commit is contained in:
+1
-106
@@ -49,110 +49,6 @@ import utils.GlobalLog;
|
||||
@SuppressWarnings("unused")
|
||||
public class Main extends ListenerAdapter
|
||||
{
|
||||
public class AudioPlayerSendHandler implements AudioSendHandler
|
||||
{
|
||||
private final AudioPlayer audioPlayer;
|
||||
private AudioFrame lastFrame;
|
||||
|
||||
public AudioPlayerSendHandler(AudioPlayer audioPlayer)
|
||||
{
|
||||
this.audioPlayer = audioPlayer;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canProvide()
|
||||
{
|
||||
lastFrame = audioPlayer.provide();
|
||||
return lastFrame != null;
|
||||
}
|
||||
|
||||
@Override public byte[] provide20MsAudio()
|
||||
{
|
||||
return lastFrame.getData();
|
||||
}
|
||||
|
||||
@Override public boolean isOpus()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
public class SmallAudio implements AudioLoadResultHandler
|
||||
{
|
||||
private TextChannel channel;
|
||||
private Guild guild;
|
||||
private AudioPlayer player;
|
||||
|
||||
private SmallAudio(TextChannel channel, Guild guild, AudioPlayer player)
|
||||
{
|
||||
this.channel = channel;
|
||||
this.player = player;
|
||||
this.guild = guild;
|
||||
}
|
||||
|
||||
@Override public void loadFailed(FriendlyException arg0) { }
|
||||
@Override public void noMatches() { }
|
||||
@Override public void playlistLoaded(AudioPlaylist arg0) { }
|
||||
|
||||
@Override
|
||||
public void trackLoaded(AudioTrack track)
|
||||
{
|
||||
connectToFirstVoiceChannel(guild.getAudioManager());
|
||||
player.startTrack(track, false);
|
||||
}
|
||||
|
||||
private void connectToFirstVoiceChannel(AudioManager audioManager)
|
||||
{
|
||||
if (!audioManager.isConnected() && !audioManager.isAttemptingToConnect())
|
||||
{
|
||||
for (VoiceChannel voiceChannel : audioManager.getGuild().getVoiceChannels())
|
||||
{
|
||||
audioManager.openAudioConnection(voiceChannel);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public final AudioPlayerManager playerManager;
|
||||
public final AudioPlayer player;
|
||||
|
||||
// Initialization and setup
|
||||
public static void main(String[] args) throws InterruptedException, LoginException, Exception
|
||||
{
|
||||
JDA bot = new JDABuilder(AccountType.BOT).setToken(Ref.TestToken).buildBlocking();
|
||||
bot.addEventListener(new Main());
|
||||
}
|
||||
|
||||
public Main()
|
||||
{
|
||||
this.playerManager = new DefaultAudioPlayerManager();
|
||||
this.player = playerManager.createPlayer();
|
||||
|
||||
AudioSourceManagers.registerRemoteSources(playerManager);
|
||||
AudioSourceManagers.registerLocalSource(playerManager);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onGuildMessageReceived(GuildMessageReceivedEvent event)
|
||||
{
|
||||
if(event.getMessage().getContentRaw().contains("!hasan"))
|
||||
{
|
||||
final TextChannel channel = event.getChannel();
|
||||
final Guild guild = channel.getGuild();
|
||||
|
||||
guild.getAudioManager().setSendingHandler(new AudioPlayerSendHandler(player));
|
||||
|
||||
playerManager.loadItemOrdered(player, "https://www.youtube.com/watch?v=qL-JCVA22Lo", new SmallAudio(channel, guild, player));
|
||||
}
|
||||
|
||||
super.onGuildMessageReceived(event);
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
|
||||
// Variables and bot specific objects
|
||||
private static KittyCore kittyCore;
|
||||
private static DatabaseManager databaseManager;
|
||||
@@ -236,5 +132,4 @@ public class Main extends ListenerAdapter
|
||||
if(!Superintendent.perCommandUpkeepPost(kittyCore, databaseManager))
|
||||
return;
|
||||
}
|
||||
}
|
||||
*/
|
||||
}
|
||||
Reference in New Issue
Block a user