From d946798f163f2eabad461efc0cd87f20dea90fee Mon Sep 17 00:00:00 2001 From: Scott Jackson Date: Sat, 27 Sep 2014 19:31:40 -0700 Subject: Call setDataSource so EQ is allowed to be created --- .../daneren2005/dsub/service/DownloadService.java | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/github/daneren2005/dsub/service/DownloadService.java b/src/github/daneren2005/dsub/service/DownloadService.java index 5d57bebe..e51c3ec5 100644 --- a/src/github/daneren2005/dsub/service/DownloadService.java +++ b/src/github/daneren2005/dsub/service/DownloadService.java @@ -1231,19 +1231,25 @@ public class DownloadService extends Service { } public EqualizerController getEqualizerController() { + EqualizerController controller = null; try { - return effectsController.getEqualizerController(); + controller = effectsController.getEqualizerController(); + if(controller.getEqualizer() == null) { + throw new Exception("Failed to get EQ"); + } } catch(Exception e) { + Log.w(TAG, "Failed to start EQ, retrying with new mediaPlayer: " + e); + // If we failed, we are going to try to reinitialize the MediaPlayer boolean playing = playerState == STARTED; int pos = getPlayerPosition(); reset(); - - // Resetup media player - mediaPlayer.setAudioSessionId(audioSessionId); - - EqualizerController controller = null; + try { + // Resetup media player + mediaPlayer.setAudioSessionId(audioSessionId); + mediaPlayer.setDataSource(currentPlaying.getFile().getCanonicalPath()); + controller = effectsController.getEqualizerController(); } catch(Exception e2) { Log.w(TAG, "Failed to setup EQ even after reinitialization"); @@ -1252,9 +1258,9 @@ public class DownloadService extends Service { // Restart from same position and state we left off in play(getCurrentPlayingIndex(), playing, pos); - - return controller; } + + return controller; } public MediaRouteSelector getRemoteSelector() { -- cgit v1.2.3