aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Fietz <Martin.Fietz@gmail.com>2015-11-02 15:13:13 +0100
committerMartin Fietz <Martin.Fietz@gmail.com>2015-11-02 15:13:13 +0100
commit33d20d5b1489deb2258797004aef04359d7eccc5 (patch)
treecd85e288c1ff74cafbdc7c1d087bdbacd6156456
parent27d146a64b2bc3949df47778d93addb7a09da0f8 (diff)
downloadAudioPlayer-33d20d5b1489deb2258797004aef04359d7eccc5.tar.gz
Android mediaplayer: Set pitch and speed on Marshmallow
-rw-r--r--build.gradle3
-rw-r--r--library/build.gradle8
-rw-r--r--library/src/main/java/org/antennapod/audio/AndroidAudioPlayer.java38
3 files changed, 37 insertions, 12 deletions
diff --git a/build.gradle b/build.gradle
index c6371d6..4acb2b5 100644
--- a/build.gradle
+++ b/build.gradle
@@ -6,9 +6,6 @@ buildscript {
}
dependencies {
classpath 'com.android.tools.build:gradle:1.3.1'
-
- // NOTE: Do not place your application dependencies here; they belong
- // in the individual module build.gradle files
}
}
diff --git a/library/build.gradle b/library/build.gradle
index b7eacc2..bf282b5 100644
--- a/library/build.gradle
+++ b/library/build.gradle
@@ -1,17 +1,17 @@
apply plugin: 'com.android.library'
android {
- compileSdkVersion 22
- buildToolsVersion '22.0.1'
+ compileSdkVersion 23
+ buildToolsVersion '23.0.2'
defaultConfig {
minSdkVersion 9
targetSdkVersion 23
versionCode 1
- versionName "1.0.2"
+ versionName "1.0.3"
}
buildTypes {
release {
- minifyEnabled false
+ minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
diff --git a/library/src/main/java/org/antennapod/audio/AndroidAudioPlayer.java b/library/src/main/java/org/antennapod/audio/AndroidAudioPlayer.java
index 2476343..7b8be82 100644
--- a/library/src/main/java/org/antennapod/audio/AndroidAudioPlayer.java
+++ b/library/src/main/java/org/antennapod/audio/AndroidAudioPlayer.java
@@ -16,7 +16,9 @@ package org.antennapod.audio;
import android.content.Context;
import android.media.MediaPlayer;
+import android.media.PlaybackParams;
import android.net.Uri;
+import android.os.Build;
import android.util.Log;
import java.io.IOException;
@@ -210,13 +212,23 @@ public class AndroidAudioPlayer extends AbstractAudioPlayer {
public int getAudioSessionId() {
return mp.getAudioSessionId();
}
+
+ @Override
public boolean canSetPitch() {
- return false;
+ if(Build.VERSION.SDK_INT >= 23) {
+ return true;
+ } else {
+ return false;
+ }
}
@Override
public boolean canSetSpeed() {
- return false;
+ if(Build.VERSION.SDK_INT >= 23) {
+ return true;
+ } else {
+ return false;
+ }
}
@Override
@@ -404,18 +416,34 @@ public class AndroidAudioPlayer extends AbstractAudioPlayer {
@Override
public void setPitchStepsAdjustment(float pitchSteps) {
- // Can't!
+ if(Build.VERSION.SDK_INT < 23) {
+ return;
+ }
+ PlaybackParams params = mp.getPlaybackParams();
+ params.setPitch(params.getPitch() + pitchSteps);
+ mp.setPlaybackParams(params);
}
@Override
public void setPlaybackPitch(float f) {
- // Can't!
+ Log.d(AMP_TAG, "setPlaybackPitch(" + f + ")");
+ if (Build.VERSION.SDK_INT < 23) {
+ return;
+ }
+ PlaybackParams params = mp.getPlaybackParams();
+ params.setPitch(f);
+ mp.setPlaybackParams(params);
}
@Override
public void setPlaybackSpeed(float f) {
- // Can't!
Log.d(AMP_TAG, "setPlaybackSpeed(" + f + ")");
+ if (Build.VERSION.SDK_INT < 23) {
+ return;
+ }
+ PlaybackParams params = mp.getPlaybackParams();
+ params.setSpeed(f);
+ mp.setPlaybackParams(params);
}
@Override