diff options
author | ByteHamster <ByteHamster@users.noreply.github.com> | 2021-05-14 21:22:22 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-14 21:22:22 +0200 |
commit | fcb75fc38202e6f93e787955a330f333724b3081 (patch) | |
tree | 4d357f530b2e26a11c6fa653fec5d8a187216e94 | |
parent | 292c9bf15136f76fea8928ed7abb2b55fb316678 (diff) | |
parent | f56ce1ea529e90637b80f4f20853d63ccbbff5fd (diff) | |
download | AntennaPod-fcb75fc38202e6f93e787955a330f333724b3081.zip |
Merge pull request #5161 from ByteHamster/reduce-playback-controller
Remove some unnecessary code from playback controller
18 files changed, 32 insertions, 174 deletions
diff --git a/app/src/androidTest/java/de/test/antennapod/service/playback/CancelablePSMPCallback.java b/app/src/androidTest/java/de/test/antennapod/service/playback/CancelablePSMPCallback.java index 82670b41b..ae38fd5e7 100644 --- a/app/src/androidTest/java/de/test/antennapod/service/playback/CancelablePSMPCallback.java +++ b/app/src/androidTest/java/de/test/antennapod/service/playback/CancelablePSMPCallback.java @@ -43,14 +43,6 @@ public class CancelablePSMPCallback implements PlaybackServiceMediaPlayer.PSMPCa } @Override - public void setSpeedAbilityChanged() { - if (isCancelled) { - return; - } - originalCallback.setSpeedAbilityChanged(); - } - - @Override public void onBufferingUpdate(int percent) { if (isCancelled) { return; diff --git a/app/src/androidTest/java/de/test/antennapod/service/playback/DefaultPSMPCallback.java b/app/src/androidTest/java/de/test/antennapod/service/playback/DefaultPSMPCallback.java index 4fbf49096..29a854f20 100644 --- a/app/src/androidTest/java/de/test/antennapod/service/playback/DefaultPSMPCallback.java +++ b/app/src/androidTest/java/de/test/antennapod/service/playback/DefaultPSMPCallback.java @@ -23,11 +23,6 @@ public class DefaultPSMPCallback implements PlaybackServiceMediaPlayer.PSMPCallb } @Override - public void setSpeedAbilityChanged() { - - } - - @Override public void onBufferingUpdate(int percent) { } diff --git a/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerActivity.java index a5bdb5554..4b5822ac7 100644 --- a/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerActivity.java +++ b/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerActivity.java @@ -17,6 +17,7 @@ import android.widget.TextView; import com.bumptech.glide.Glide; +import de.danoeh.antennapod.core.event.ServiceEvent; import de.danoeh.antennapod.view.PlayButton; import org.apache.commons.lang3.StringUtils; import org.greenrobot.eventbus.EventBus; @@ -139,11 +140,6 @@ public abstract class MediaplayerActivity extends CastEnabledActivity implements } @Override - public void onShutdownNotification() { - finish(); - } - - @Override public void onPlaybackEnd() { finish(); } @@ -158,11 +154,6 @@ public abstract class MediaplayerActivity extends CastEnabledActivity implements super.setScreenOn(enable); MediaplayerActivity.this.setScreenOn(enable); } - - @Override - public void onSetSpeedAbilityChanged() { - MediaplayerActivity.this.onSetSpeedAbilityChanged(); - } }; } @@ -171,9 +162,11 @@ public abstract class MediaplayerActivity extends CastEnabledActivity implements onPositionObserverUpdate(); } - private void onSetSpeedAbilityChanged() { - Log.d(TAG, "onSetSpeedAbilityChanged()"); - updatePlaybackSpeedButton(); + @Subscribe(threadMode = ThreadMode.MAIN) + public void onPlaybackServiceChanged(ServiceEvent event) { + if (event.action == ServiceEvent.Action.SERVICE_SHUT_DOWN) { + finish(); + } } private void onPlaybackSpeedChange() { diff --git a/app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java b/app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java index cd6f006ac..c6927c69f 100644 --- a/app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java +++ b/app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java @@ -1,7 +1,6 @@ package de.danoeh.antennapod.dialog; import android.app.Dialog; -import android.content.Context; import android.os.Bundle; import android.view.View; import android.view.ViewGroup; @@ -41,16 +40,6 @@ public class VariableSpeedDialog extends DialogFragment { selectedSpeeds = new ArrayList<>(UserPreferences.getPlaybackSpeedArray()); } - public static void showGetPluginDialog(final Context context) { - AlertDialog.Builder builder = new AlertDialog.Builder(context); - builder.setTitle(R.string.no_playback_plugin_title); - builder.setMessage(R.string.no_playback_plugin_or_sonic_msg); - builder.setPositiveButton(R.string.enable_sonic, (dialog, which) -> - UserPreferences.enableSonic()); - builder.setNeutralButton(R.string.close_label, null); - builder.show(); - } - @Override public void onStart() { super.onStart(); diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java index d54ea566b..64cbaa023 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java @@ -38,6 +38,7 @@ import de.danoeh.antennapod.activity.CastEnabledActivity; import de.danoeh.antennapod.activity.MainActivity; import de.danoeh.antennapod.core.event.FavoritesEvent; import de.danoeh.antennapod.core.event.PlaybackPositionEvent; +import de.danoeh.antennapod.core.event.ServiceEvent; import de.danoeh.antennapod.model.feed.Chapter; import de.danoeh.antennapod.core.event.UnreadItemsUpdateEvent; import de.danoeh.antennapod.model.feed.FeedItem; @@ -223,6 +224,13 @@ public class AudioPlayerFragment extends Fragment implements controller.getDuration())); } + @Subscribe(threadMode = ThreadMode.MAIN) + public void onPlaybackServiceChanged(ServiceEvent event) { + if (event.action == ServiceEvent.Action.SERVICE_SHUT_DOWN) { + ((MainActivity) getActivity()).getBottomSheet().setState(BottomSheetBehavior.STATE_COLLAPSED); + } + } + private void setupLengthTextView() { showTimeLeft = UserPreferences.shouldShowRemainingTime(); txtvLength.setOnClickListener(v -> { @@ -241,10 +249,6 @@ public class AudioPlayerFragment extends Fragment implements if (controller == null) { return; } - if (!controller.canSetPlaybackSpeed()) { - VariableSpeedDialog.showGetPluginDialog(getContext()); - return; - } List<Float> availableSpeeds = UserPreferences.getPlaybackSpeedArray(); float currentSpeed = controller.getCurrentPlaybackSpeedMultiplier(); @@ -278,14 +282,10 @@ public class AudioPlayerFragment extends Fragment implements if (butPlaybackSpeed == null || controller == null) { return; } - float speed = 1.0f; - if (controller.canSetPlaybackSpeed()) { - speed = PlaybackSpeedUtils.getCurrentPlaybackSpeed(media); - } + float speed = PlaybackSpeedUtils.getCurrentPlaybackSpeed(media); String speedStr = new DecimalFormat("0.00").format(speed); txtvPlaybackSpeed.setText(speedStr); butPlaybackSpeed.setSpeed(speed); - butPlaybackSpeed.setAlpha(controller.canSetPlaybackSpeed() ? 1.0f : 0.5f); butPlaybackSpeed.setVisibility(View.VISIBLE); txtvPlaybackSpeed.setVisibility(View.VISIBLE); } @@ -364,11 +364,6 @@ public class AudioPlayerFragment extends Fragment implements } @Override - public void onShutdownNotification() { - ((MainActivity) getActivity()).getBottomSheet().setState(BottomSheetBehavior.STATE_COLLAPSED); - } - - @Override public void onPlaybackEnd() { ((MainActivity) getActivity()).getBottomSheet().setState(BottomSheetBehavior.STATE_COLLAPSED); } @@ -377,11 +372,6 @@ public class AudioPlayerFragment extends Fragment implements public void onPlaybackSpeedChange() { updatePlaybackSpeedButton(getMedia()); } - - @Override - public void onSetSpeedAbilityChanged() { - updatePlaybackSpeedButton(getMedia()); - } }; } diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/ChaptersFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/ChaptersFragment.java index 6a8d648ad..de14f220e 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/ChaptersFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/ChaptersFragment.java @@ -70,7 +70,7 @@ public class ChaptersFragment extends AppCompatDialogFragment { controller.playPause(); } Chapter chapter = adapter.getItem(pos); - controller.seekToChapter(chapter); + controller.seekTo((int) chapter.getStart()); updateChapterSelection(pos); }); recyclerView.setAdapter(adapter); diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/ExternalPlayerFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/ExternalPlayerFragment.java index fe7787bc9..370c4c301 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/ExternalPlayerFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/ExternalPlayerFragment.java @@ -16,6 +16,7 @@ import com.google.android.material.bottomsheet.BottomSheetBehavior; import de.danoeh.antennapod.R; import de.danoeh.antennapod.activity.MainActivity; import de.danoeh.antennapod.core.event.PlaybackPositionEvent; +import de.danoeh.antennapod.core.event.ServiceEvent; import de.danoeh.antennapod.model.playback.MediaType; import de.danoeh.antennapod.core.feed.util.ImageResourceUtils; import de.danoeh.antennapod.core.glide.ApGlideSettings; @@ -113,11 +114,6 @@ public class ExternalPlayerFragment extends Fragment { } @Override - public void onShutdownNotification() { - ((MainActivity) getActivity()).setPlayerVisible(false); - } - - @Override public void onPlaybackEnd() { ((MainActivity) getActivity()).setPlayerVisible(false); } @@ -148,6 +144,13 @@ public class ExternalPlayerFragment extends Fragment { onPositionObserverUpdate(); } + @Subscribe(threadMode = ThreadMode.MAIN) + public void onPlaybackServiceChanged(ServiceEvent event) { + if (event.action == ServiceEvent.Action.SERVICE_SHUT_DOWN) { + ((MainActivity) getActivity()).setPlayerVisible(false); + } + } + @Override public void onDestroy() { super.onDestroy(); diff --git a/app/src/main/java/de/danoeh/antennapod/view/PlaybackSpeedSeekBar.java b/app/src/main/java/de/danoeh/antennapod/view/PlaybackSpeedSeekBar.java index 47797e4a4..c75164a74 100644 --- a/app/src/main/java/de/danoeh/antennapod/view/PlaybackSpeedSeekBar.java +++ b/app/src/main/java/de/danoeh/antennapod/view/PlaybackSpeedSeekBar.java @@ -10,7 +10,6 @@ import androidx.annotation.Nullable; import androidx.core.util.Consumer; import de.danoeh.antennapod.R; import de.danoeh.antennapod.core.util.playback.PlaybackController; -import de.danoeh.antennapod.dialog.VariableSpeedDialog; public class PlaybackSpeedSeekBar extends FrameLayout { private SeekBar seekBar; @@ -41,7 +40,7 @@ public class PlaybackSpeedSeekBar extends FrameLayout { seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { - if (controller != null && controller.canSetPlaybackSpeed()) { + if (controller != null) { float playbackSpeed = (progress + 10) / 20.0f; controller.setPlaybackSpeed(playbackSpeed); @@ -55,9 +54,6 @@ public class PlaybackSpeedSeekBar extends FrameLayout { @Override public void onStartTrackingTouch(SeekBar seekBar) { - if (controller != null && !controller.canSetPlaybackSpeed()) { - VariableSpeedDialog.showGetPluginDialog(getContext()); - } } @Override diff --git a/core/src/main/java/de/danoeh/antennapod/core/event/ServiceEvent.java b/core/src/main/java/de/danoeh/antennapod/core/event/ServiceEvent.java index b3241a8b6..2230ee84f 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/event/ServiceEvent.java +++ b/core/src/main/java/de/danoeh/antennapod/core/event/ServiceEvent.java @@ -2,7 +2,8 @@ package de.danoeh.antennapod.core.event; public class ServiceEvent { public enum Action { - SERVICE_STARTED + SERVICE_STARTED, + SERVICE_SHUT_DOWN } public final Action action; diff --git a/core/src/main/java/de/danoeh/antennapod/core/service/playback/ExoPlayerWrapper.java b/core/src/main/java/de/danoeh/antennapod/core/service/playback/ExoPlayerWrapper.java index 0d289bee6..0a9bf5f43 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/service/playback/ExoPlayerWrapper.java +++ b/core/src/main/java/de/danoeh/antennapod/core/service/playback/ExoPlayerWrapper.java @@ -114,11 +114,6 @@ public class ExoPlayerWrapper implements IPlayer { } @Override - public boolean canSetSpeed() { - return true; - } - - @Override public boolean canDownmix() { return false; } diff --git a/core/src/main/java/de/danoeh/antennapod/core/service/playback/LocalPSMP.java b/core/src/main/java/de/danoeh/antennapod/core/service/playback/LocalPSMP.java index 1a9f472bb..dc29f53d4 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/service/playback/LocalPSMP.java +++ b/core/src/main/java/de/danoeh/antennapod/core/service/playback/LocalPSMP.java @@ -608,23 +608,13 @@ public class LocalPSMP extends PlaybackServiceMediaPlayer { } /** - * Returns true if the playback speed can be adjusted. - */ - @Override - public boolean canSetSpeed() { - return mediaPlayer != null && mediaPlayer.canSetSpeed(); - } - - /** * Sets the playback speed. * This method is executed on the caller's thread. */ private void setSpeedSyncAndSkipSilence(float speed, boolean skipSilence) { playerLock.lock(); - if (mediaPlayer.canSetSpeed()) { - Log.d(TAG, "Playback speed was set to " + speed); - callback.playbackSpeedChanged(speed); - } + Log.d(TAG, "Playback speed was set to " + speed); + callback.playbackSpeedChanged(speed); mediaPlayer.setPlaybackParams(speed, skipSilence); playerLock.unlock(); } @@ -651,7 +641,7 @@ public class LocalPSMP extends PlaybackServiceMediaPlayer { if ((playerStatus == PlayerStatus.PLAYING || playerStatus == PlayerStatus.PAUSED || playerStatus == PlayerStatus.INITIALIZED - || playerStatus == PlayerStatus.PREPARED) && mediaPlayer.canSetSpeed()) { + || playerStatus == PlayerStatus.PREPARED)) { retVal = mediaPlayer.getCurrentSpeedMultiplier(); } playerLock.unlock(); @@ -1048,7 +1038,6 @@ public class LocalPSMP extends PlaybackServiceMediaPlayer { ap.setOnErrorListener(audioErrorListener); ap.setOnBufferingUpdateListener(audioBufferingUpdateListener); ap.setOnInfoListener(audioInfoListener); - ap.setOnSpeedAdjustmentAvailableChangedListener(audioSetSpeedAbilityListener); } else if (mp instanceof ExoPlayerWrapper) { ExoPlayerWrapper ap = (ExoPlayerWrapper) mp; ap.setOnCompletionListener(audioCompletionListener); @@ -1092,10 +1081,6 @@ public class LocalPSMP extends PlaybackServiceMediaPlayer { return callback.onMediaPlayerInfo(what, 0); } - private final MediaPlayer.OnSpeedAdjustmentAvailableChangedListener audioSetSpeedAbilityListener = - (arg0, speedAdjustmentAvailable) -> callback.setSpeedAbilityChanged(); - - private final MediaPlayer.OnErrorListener audioErrorListener = (mp, what, extra) -> { if(mp != null && mp.canFallback()) { diff --git a/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackService.java b/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackService.java index 77c40f32a..89a947fdc 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackService.java +++ b/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackService.java @@ -189,11 +189,6 @@ public class PlaybackService extends MediaBrowserServiceCompat { public static final int NOTIFICATION_TYPE_PLAYBACK_SPEED_CHANGE = 8; /** - * Ability to set the playback speed has changed - */ - public static final int NOTIFICATION_TYPE_SET_SPEED_ABILITY_CHANGED = 9; - - /** * Returned by getPositionSafe() or getDurationSafe() if the playbackService * is in an invalid state. */ @@ -894,10 +889,6 @@ public class PlaybackService extends MediaBrowserServiceCompat { sendNotificationBroadcast(NOTIFICATION_TYPE_PLAYBACK_SPEED_CHANGE, 0); } - public void setSpeedAbilityChanged() { - sendNotificationBroadcast(NOTIFICATION_TYPE_SET_SPEED_ABILITY_CHANGED, 0); - } - @Override public void onBufferingUpdate(int percent) { sendNotificationBroadcast(NOTIFICATION_TYPE_BUFFER_UPDATE, percent); @@ -1604,6 +1595,7 @@ public class PlaybackService extends MediaBrowserServiceCompat { @Override public void onReceive(Context context, Intent intent) { if (TextUtils.equals(intent.getAction(), ACTION_SHUTDOWN_PLAYBACK_SERVICE)) { + EventBus.getDefault().post(new ServiceEvent(ServiceEvent.Action.SERVICE_SHUT_DOWN)); stateManager.stopService(); } } @@ -1705,10 +1697,6 @@ public class PlaybackService extends MediaBrowserServiceCompat { return mediaPlayer.getPlayable(); } - public boolean canSetSpeed() { - return mediaPlayer.canSetSpeed(); - } - public void setSpeed(float speed) { mediaPlayer.setPlaybackParams(speed, UserPreferences.isSkipSilence()); } 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 c393820b1..8d9135a3a 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 @@ -144,11 +144,6 @@ public abstract class PlaybackServiceMediaPlayer { public abstract void setStartWhenPrepared(boolean startWhenPrepared); /** - * Returns true if the playback speed can be adjusted. - */ - public abstract boolean canSetSpeed(); - - /** * Sets the playback parameters. * - Speed * - SkipSilence (ExoPlayer only) @@ -349,8 +344,6 @@ public abstract class PlaybackServiceMediaPlayer { void playbackSpeedChanged(float s); - void setSpeedAbilityChanged(); - void onBufferingUpdate(int percent); void onMediaChanged(boolean reloadUI); diff --git a/core/src/main/java/de/danoeh/antennapod/core/util/playback/IPlayer.java b/core/src/main/java/de/danoeh/antennapod/core/util/playback/IPlayer.java index a511916fa..c726c5b5e 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/util/playback/IPlayer.java +++ b/core/src/main/java/de/danoeh/antennapod/core/util/playback/IPlayer.java @@ -7,9 +7,6 @@ import java.io.IOException; import java.util.List; public interface IPlayer { - - boolean canSetSpeed(); - boolean canDownmix(); int getCurrentPosition(); diff --git a/core/src/main/java/de/danoeh/antennapod/core/util/playback/PlaybackController.java b/core/src/main/java/de/danoeh/antennapod/core/util/playback/PlaybackController.java index c6166264b..717af4186 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/util/playback/PlaybackController.java +++ b/core/src/main/java/de/danoeh/antennapod/core/util/playback/PlaybackController.java @@ -8,9 +8,7 @@ import android.content.Intent; import android.content.IntentFilter; import android.content.ServiceConnection; import android.media.MediaPlayer; -import android.os.Build; import android.os.IBinder; -import android.text.TextUtils; import android.util.Log; import android.util.Pair; import android.view.SurfaceHolder; @@ -18,7 +16,6 @@ import androidx.annotation.NonNull; import de.danoeh.antennapod.core.R; import de.danoeh.antennapod.core.event.MessageEvent; import de.danoeh.antennapod.core.event.ServiceEvent; -import de.danoeh.antennapod.model.feed.Chapter; import de.danoeh.antennapod.model.playback.MediaType; import de.danoeh.antennapod.core.feed.util.PlaybackSpeedUtils; import de.danoeh.antennapod.core.preferences.PlaybackPreferences; @@ -91,9 +88,6 @@ public abstract class PlaybackController { activity.registerReceiver(notificationReceiver, new IntentFilter( PlaybackService.ACTION_PLAYER_NOTIFICATION)); - activity.registerReceiver(shutdownReceiver, new IntentFilter( - PlaybackService.ACTION_SHUTDOWN_PLAYBACK_SERVICE)); - if (!released) { bindToService(); } else { @@ -121,12 +115,6 @@ public abstract class PlaybackController { // ignore } unbind(); - - try { - activity.unregisterReceiver(shutdownReceiver); - } catch (IllegalArgumentException e) { - // ignore - } media = null; released = true; @@ -252,35 +240,16 @@ public abstract class PlaybackController { case PlaybackService.NOTIFICATION_TYPE_PLAYBACK_SPEED_CHANGE: onPlaybackSpeedChange(); break; - case PlaybackService.NOTIFICATION_TYPE_SET_SPEED_ABILITY_CHANGED: - onSetSpeedAbilityChanged(); - break; } } }; - private final BroadcastReceiver shutdownReceiver = new BroadcastReceiver() { - @Override - public void onReceive(Context context, Intent intent) { - if (playbackService != null) { - if (TextUtils.equals(intent.getAction(), PlaybackService.ACTION_SHUTDOWN_PLAYBACK_SERVICE)) { - unbind(); - onShutdownNotification(); - } - } - } - }; - public void onPositionObserverUpdate() {} public void onPlaybackSpeedChange() {} - public void onSetSpeedAbilityChanged() {} - - public void onShutdownNotification() {} - /** * Called when the currently displayed information should be refreshed. */ @@ -488,12 +457,6 @@ public abstract class PlaybackController { } } - public void seekToChapter(Chapter chapter) { - if (playbackService != null) { - playbackService.seekToChapter(chapter); - } - } - public void seekTo(int time) { if (playbackService != null) { playbackService.seekTo(time); @@ -510,13 +473,6 @@ public abstract class PlaybackController { return status; } - public boolean canSetPlaybackSpeed() { - return UserPreferences.useSonic() - || UserPreferences.useExoplayer() - || Build.VERSION.SDK_INT >= 23 - || (playbackService != null && playbackService.canSetSpeed()); - } - public void setPlaybackSpeed(float speed) { PlaybackPreferences.setCurrentlyPlayingTemporaryPlaybackSpeed(speed); if (getMedia() != null && getMedia().getMediaType() == MediaType.VIDEO) { @@ -545,7 +501,7 @@ public abstract class PlaybackController { } public float getCurrentPlaybackSpeedMultiplier() { - if (playbackService != null && canSetPlaybackSpeed()) { + if (playbackService != null) { return playbackService.getCurrentPlaybackSpeed(); } else { return PlaybackSpeedUtils.getCurrentPlaybackSpeed(getMedia()); diff --git a/core/src/main/java/de/danoeh/antennapod/core/util/playback/VideoPlayer.java b/core/src/main/java/de/danoeh/antennapod/core/util/playback/VideoPlayer.java index 6728c027d..ecf47f8ae 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/util/playback/VideoPlayer.java +++ b/core/src/main/java/de/danoeh/antennapod/core/util/playback/VideoPlayer.java @@ -11,11 +11,6 @@ public class VideoPlayer extends MediaPlayer implements IPlayer { private static final String TAG = "VideoPlayer"; @Override - public boolean canSetSpeed() { - return false; - } - - @Override public boolean canDownmix() { return false; } diff --git a/core/src/main/res/values/strings.xml b/core/src/main/res/values/strings.xml index 48f7f7c69..c8ec07292 100644 --- a/core/src/main/res/values/strings.xml +++ b/core/src/main/res/values/strings.xml @@ -320,9 +320,6 @@ <string name="time_left_label">Time left:\u0020</string> <!-- Variable Speed --> - <string name="no_playback_plugin_title">Plugin Not Installed</string> - <string name="no_playback_plugin_or_sonic_msg">For variable speed playback to work, we recommend to enable the built-in Sonic mediaplayer.</string> - <string name="enable_sonic">Enable Sonic</string> <string name="speed_presets">Presets</string> <string name="preset_already_exists">%1$.2fx is already saved as a preset.</string> diff --git a/core/src/play/java/de/danoeh/antennapod/core/service/playback/RemotePSMP.java b/core/src/play/java/de/danoeh/antennapod/core/service/playback/RemotePSMP.java index b114663f0..9fd99f236 100644 --- a/core/src/play/java/de/danoeh/antennapod/core/service/playback/RemotePSMP.java +++ b/core/src/play/java/de/danoeh/antennapod/core/service/playback/RemotePSMP.java @@ -511,13 +511,6 @@ public class RemotePSMP extends PlaybackServiceMediaPlayer { this.startWhenPrepared.set(startWhenPrepared); } - // As things are right now, changing the return value of this function is not enough to ensure - // all other components recognize it. - @Override - public boolean canSetSpeed() { - return false; - } - @Override public void setPlaybackParams(float speed, boolean skipSilence) { //Can be safely ignored as neither set speed not skipSilence is supported |