From 7b23dfeb506b9e62ea245671e61bf2c3be71d15c Mon Sep 17 00:00:00 2001 From: Martin Fietz Date: Sat, 19 Sep 2015 01:36:52 +0200 Subject: Move audio player classes to external library --- .../antennapod/core/preferences/UserPreferences.java | 7 +++++++ .../service/playback/PlaybackServiceMediaPlayer.java | 20 ++++++++++---------- .../antennapod/core/util/playback/AudioPlayer.java | 10 ++++++++-- 3 files changed, 25 insertions(+), 12 deletions(-) (limited to 'core/src/main/java/de') diff --git a/core/src/main/java/de/danoeh/antennapod/core/preferences/UserPreferences.java b/core/src/main/java/de/danoeh/antennapod/core/preferences/UserPreferences.java index c0d44dff3..e6a2a2464 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/preferences/UserPreferences.java +++ b/core/src/main/java/de/danoeh/antennapod/core/preferences/UserPreferences.java @@ -89,6 +89,10 @@ public class UserPreferences { public static final String IMAGE_CACHE_DEFAULT_VALUE = "100"; public static final int IMAGE_CACHE_SIZE_MINIMUM = 20; + // Experimental + public static final String PREF_SONIC = "prefSonic"; + public static final String PREF_NORMALIZER = "prefNormalizer"; + // Constants private static int EPISODE_CACHE_SIZE_UNLIMITED = -1; public static int FEED_ORDER_COUNTER = 0; @@ -469,6 +473,9 @@ public class UserPreferences { return selectedSpeeds; } + public static boolean useSonic() { + return prefs.getBoolean(PREF_SONIC, false); + } /** * Return the folder where the app stores all of its data. This method will diff --git a/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceMediaPlayer.java b/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceMediaPlayer.java index 757b2e980..7cf7eb622 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceMediaPlayer.java +++ b/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceMediaPlayer.java @@ -1047,9 +1047,9 @@ public class PlaybackServiceMediaPlayer implements SharedPreferences.OnSharedPre return mp; } - private final com.aocate.media.MediaPlayer.OnCompletionListener audioCompletionListener = new com.aocate.media.MediaPlayer.OnCompletionListener() { + private final org.antennapod.audio.MediaPlayer.OnCompletionListener audioCompletionListener = new org.antennapod.audio.MediaPlayer.OnCompletionListener() { @Override - public void onCompletion(com.aocate.media.MediaPlayer mp) { + public void onCompletion(org.antennapod.audio.MediaPlayer mp) { genericOnCompletion(); } }; @@ -1065,9 +1065,9 @@ public class PlaybackServiceMediaPlayer implements SharedPreferences.OnSharedPre endPlayback(); } - private final com.aocate.media.MediaPlayer.OnBufferingUpdateListener audioBufferingUpdateListener = new com.aocate.media.MediaPlayer.OnBufferingUpdateListener() { + private final org.antennapod.audio.MediaPlayer.OnBufferingUpdateListener audioBufferingUpdateListener = new org.antennapod.audio.MediaPlayer.OnBufferingUpdateListener() { @Override - public void onBufferingUpdate(com.aocate.media.MediaPlayer mp, + public void onBufferingUpdate(org.antennapod.audio.MediaPlayer mp, int percent) { genericOnBufferingUpdate(percent); } @@ -1084,9 +1084,9 @@ public class PlaybackServiceMediaPlayer implements SharedPreferences.OnSharedPre callback.onBufferingUpdate(percent); } - private final com.aocate.media.MediaPlayer.OnInfoListener audioInfoListener = new com.aocate.media.MediaPlayer.OnInfoListener() { + private final org.antennapod.audio.MediaPlayer.OnInfoListener audioInfoListener = new org.antennapod.audio.MediaPlayer.OnInfoListener() { @Override - public boolean onInfo(com.aocate.media.MediaPlayer mp, int what, + public boolean onInfo(org.antennapod.audio.MediaPlayer mp, int what, int extra) { return genericInfoListener(what); } @@ -1103,9 +1103,9 @@ public class PlaybackServiceMediaPlayer implements SharedPreferences.OnSharedPre return callback.onMediaPlayerInfo(what); } - private final com.aocate.media.MediaPlayer.OnErrorListener audioErrorListener = new com.aocate.media.MediaPlayer.OnErrorListener() { + private final org.antennapod.audio.MediaPlayer.OnErrorListener audioErrorListener = new org.antennapod.audio.MediaPlayer.OnErrorListener() { @Override - public boolean onError(com.aocate.media.MediaPlayer mp, int what, + public boolean onError(org.antennapod.audio.MediaPlayer mp, int what, int extra) { return genericOnError(mp, what, extra); } @@ -1122,9 +1122,9 @@ public class PlaybackServiceMediaPlayer implements SharedPreferences.OnSharedPre return callback.onMediaPlayerError(inObj, what, extra); } - private final com.aocate.media.MediaPlayer.OnSeekCompleteListener audioSeekCompleteListener = new com.aocate.media.MediaPlayer.OnSeekCompleteListener() { + private final org.antennapod.audio.MediaPlayer.OnSeekCompleteListener audioSeekCompleteListener = new org.antennapod.audio.MediaPlayer.OnSeekCompleteListener() { @Override - public void onSeekComplete(com.aocate.media.MediaPlayer mp) { + public void onSeekComplete(org.antennapod.audio.MediaPlayer mp) { genericSeekCompleteListener(); } }; diff --git a/core/src/main/java/de/danoeh/antennapod/core/util/playback/AudioPlayer.java b/core/src/main/java/de/danoeh/antennapod/core/util/playback/AudioPlayer.java index aafcea307..b6beb5bf1 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/util/playback/AudioPlayer.java +++ b/core/src/main/java/de/danoeh/antennapod/core/util/playback/AudioPlayer.java @@ -3,7 +3,9 @@ package de.danoeh.antennapod.core.util.playback; import android.content.Context; import android.util.Log; import android.view.SurfaceHolder; -import com.aocate.media.MediaPlayer; +import org.antennapod.audio.MediaPlayer; + +import de.danoeh.antennapod.core.preferences.UserPreferences; public class AudioPlayer extends MediaPlayer implements IPlayer { private static final String TAG = "AudioPlayer"; @@ -16,7 +18,6 @@ public class AudioPlayer extends MediaPlayer implements IPlayer { public void setScreenOnWhilePlaying(boolean screenOn) { Log.e(TAG, "Setting screen on while playing not supported in Audio Player"); throw new UnsupportedOperationException("Setting screen on while playing not supported in Audio Player"); - } @Override @@ -31,4 +32,9 @@ public class AudioPlayer extends MediaPlayer implements IPlayer { public void setVideoScalingMode(int mode) { throw new UnsupportedOperationException("Setting scaling mode is not supported in Audio Player"); } + + @Override + protected boolean useSonic() { + return UserPreferences.useSonic(); + } } -- cgit v1.2.3 From a475bf112fb436e4a700e4499d491b1adabb9d83 Mon Sep 17 00:00:00 2001 From: Martin Fietz Date: Sat, 19 Sep 2015 20:38:45 +0200 Subject: Prevent NPE --- .../main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'core/src/main/java/de') diff --git a/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java b/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java index 73037d771..fa4a5726a 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java +++ b/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java @@ -309,7 +309,11 @@ public class PodDBAdapter { dbHelper.close(); dbHelper = null; } - return context.deleteDatabase(PodDBAdapter.DATABASE_NAME); + if(context != null) { // may not have been initialized + return context.deleteDatabase(PodDBAdapter.DATABASE_NAME); + } else { + return false; + } } /** -- cgit v1.2.3 From 5f77c4de50a7ec9ad36fc4c57407b1d9ccd39aef Mon Sep 17 00:00:00 2001 From: Martin Fietz Date: Sat, 19 Sep 2015 20:39:14 +0200 Subject: Replace some of the most annoying AsyncTasks with RxJava --- core/src/main/java/de/danoeh/antennapod/core/feed/FeedItemFilter.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'core/src/main/java/de') diff --git a/core/src/main/java/de/danoeh/antennapod/core/feed/FeedItemFilter.java b/core/src/main/java/de/danoeh/antennapod/core/feed/FeedItemFilter.java index 879b28096..c1d21552e 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/feed/FeedItemFilter.java +++ b/core/src/main/java/de/danoeh/antennapod/core/feed/FeedItemFilter.java @@ -55,7 +55,7 @@ public class FeedItemFilter { } } - public List filter(Context context, List items) { + public List filter(List items) { if(properties.length == 0) { return items; } -- cgit v1.2.3