From 0d4015fff02d4b594610ee49347bbc4f01e86684 Mon Sep 17 00:00:00 2001 From: Alex Date: Thu, 16 Jan 2020 03:16:27 -0500 Subject: [PATCH 1/2] youtube fix --- src/utils/audio/AudioUtils.java | 43 ++++++++++++--------------------- 1 file changed, 15 insertions(+), 28 deletions(-) diff --git a/src/utils/audio/AudioUtils.java b/src/utils/audio/AudioUtils.java index a98cc25..4ab68e2 100644 --- a/src/utils/audio/AudioUtils.java +++ b/src/utils/audio/AudioUtils.java @@ -20,7 +20,7 @@ public class AudioUtils public AudioManager am; public final AudioPlayer player; public final AudioPlayerManager playerManager; - private boolean isPlaying = false; +// private boolean isPlaying = false; private ArrayList playlist = new ArrayList(); @@ -86,11 +86,11 @@ public class AudioUtils public class SmallAudio implements AudioLoadResultHandler { - private AudioPlayer player; +// private AudioPlayer player; private SmallAudio(AudioPlayer player) { - this.player = player; +// this.player = player; } @Override public void loadFailed(FriendlyException arg0) { } @@ -104,11 +104,6 @@ public class AudioUtils { playlist.add(track); } - - if(player.getPlayingTrack() == null) - { - startPlay(player); - } } } @@ -117,36 +112,28 @@ public class AudioUtils { guild.getAudioManager().setSendingHandler(new AudioPlayerSendHandler(player)); playerManager.loadItemOrdered(player, videoURL, new SmallAudio(player)); - - + try { + Thread.sleep(1000); + } catch (InterruptedException e) {} + if(player.getPlayingTrack() == null) + { + System.out.println("HERE"); + startPlay(player); + } return null; } private void startPlay(AudioPlayer player) { - do { - if(player.getPlayingTrack() == null) + if(!playlist.isEmpty()) { - System.out.println("HERE"); - if(playlist.isEmpty()) - { - isPlaying = false; - } - else - { - System.out.println("NEXT SONG"); - player.startTrack(playlist.get(0), false); - isPlaying = true; - - if(!playlist.isEmpty()) - playlist.remove(0); - } + player.startTrack(playlist.get(0), false); + playlist.remove(0); } } - while(isPlaying); - isPlaying = false; + while(!playlist.isEmpty()); } public String skipVideo(AudioPlayer player) From 86d7e58838b35d00920399e411ac96f8b43a1f36 Mon Sep 17 00:00:00 2001 From: Alex Date: Sun, 9 Feb 2020 23:06:45 -0500 Subject: [PATCH 2/2] =Youtube Fixes --- src/core/CommandThread.java | 2 +- src/utils/audio/AudioUtils.java | 68 +++++++++++++++++++-------------- 2 files changed, 40 insertions(+), 30 deletions(-) diff --git a/src/core/CommandThread.java b/src/core/CommandThread.java index 2d044e5..070d0eb 100644 --- a/src/core/CommandThread.java +++ b/src/core/CommandThread.java @@ -52,4 +52,4 @@ public class CommandThread extends Thread e.printStackTrace(); } } -} +} \ No newline at end of file diff --git a/src/utils/audio/AudioUtils.java b/src/utils/audio/AudioUtils.java index 4ab68e2..7430926 100644 --- a/src/utils/audio/AudioUtils.java +++ b/src/utils/audio/AudioUtils.java @@ -20,7 +20,6 @@ public class AudioUtils public AudioManager am; public final AudioPlayer player; public final AudioPlayerManager playerManager; -// private boolean isPlaying = false; private ArrayList playlist = new ArrayList(); @@ -85,12 +84,9 @@ public class AudioUtils } public class SmallAudio implements AudioLoadResultHandler - { -// private AudioPlayer player; - + { private SmallAudio(AudioPlayer player) { -// this.player = player; } @Override public void loadFailed(FriendlyException arg0) { } @@ -117,37 +113,15 @@ public class AudioUtils } catch (InterruptedException e) {} if(player.getPlayingTrack() == null) { - System.out.println("HERE"); - startPlay(player); + MusicController control = new MusicController(player, playlist); + control.start(); } return null; } - private void startPlay(AudioPlayer player) - { - do - { - if(!playlist.isEmpty()) - { - player.startTrack(playlist.get(0), false); - playlist.remove(0); - } - } - while(!playlist.isEmpty()); - } - public String skipVideo(AudioPlayer player) { player.stopTrack(); - try - { - playlist.remove(0); - player.getPlayingTrack(); - } - catch(Exception e) - { - return "Stopped"; - } return "Skipped"; } @@ -163,3 +137,39 @@ public class AudioUtils return playlist; } } + +class MusicController extends Thread +{ + AudioPlayer player; + private ArrayList playlist; + + public MusicController(AudioPlayer player, ArrayList playlist) + { + this.player = player; + this.playlist = playlist; + } + + @Override + public void run() + { + AudioTrack nowPlaying = null; + do + { + if(!playlist.isEmpty() || nowPlaying != null) + { + if(player.getPlayingTrack() == null) + { + if(playlist.isEmpty()) + nowPlaying = null; + else + { + nowPlaying = playlist.get(0); + playlist.remove(0); + } + player.startTrack(nowPlaying, false); + } + } + } + while(!playlist.isEmpty() || player.getPlayingTrack() != null); + } +}