summaryrefslogtreecommitdiffstats
path: root/variablespeed
diff options
context:
space:
mode:
authorHugo Hudson <hugohudson@google.com>2011-08-09 12:24:57 +0100
committerHugo Hudson <hugohudson@google.com>2011-08-09 12:40:19 +0100
commit5f65e43cf103514ddb69abca7cc78dfe99cd329c (patch)
treed9fc8cec2c6a11dbae7d050828d5ea40b64318c6 /variablespeed
parent454eaf31f312fd2f2e6bc3d30bb050d65079a9a0 (diff)
downloadandroid_frameworks_ex-5f65e43cf103514ddb69abca7cc78dfe99cd329c.tar.gz
android_frameworks_ex-5f65e43cf103514ddb69abca7cc78dfe99cd329c.tar.bz2
android_frameworks_ex-5f65e43cf103514ddb69abca7cc78dfe99cd329c.zip
Prove that there's an issue with media player audio.
- File format of files downloaded from GoogleVoice: MPEG ADTS, layer III, v2.5, 32 kbps, 8 kHz, Monaural - If we seek in that file before beginning playback, there is a very obvious triple/quadruple stutter. - This adds a unit test that plays such a file after seeking, which clearly demonstratest the stutter on my variable speed library. - This same test can be used to demonstrate the stutter with the regular MediaPlayer. Other: - Also adds the correct ADD_VOICEMAIL permission, which was renamed earlier. Bug: 5114126 Change-Id: I3dfaf7686c879076d9949047d91875010b6d8b52
Diffstat (limited to 'variablespeed')
-rw-r--r--variablespeed/tests/AndroidManifest.xml2
-rw-r--r--variablespeed/tests/assets/fake_voicemail.mp3bin0 -> 20817 bytes
-rw-r--r--variablespeed/tests/assets/fake_voicemail2.mp3bin0 -> 26336 bytes
-rw-r--r--variablespeed/tests/src/com/android/ex/variablespeed/MediaPlayerProxyTestCase.java12
4 files changed, 13 insertions, 1 deletions
diff --git a/variablespeed/tests/AndroidManifest.xml b/variablespeed/tests/AndroidManifest.xml
index abbe65c..a7d2ed1 100644
--- a/variablespeed/tests/AndroidManifest.xml
+++ b/variablespeed/tests/AndroidManifest.xml
@@ -29,5 +29,5 @@
android:label="Android Variablespeed Library Tests"
/>
<!-- The tests need these permissions to add test voicemail entries. -->
- <uses-permission android:name="com.android.voicemail.permission.READ_WRITE_OWN_VOICEMAIL" />
+ <uses-permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL" />
</manifest>
diff --git a/variablespeed/tests/assets/fake_voicemail.mp3 b/variablespeed/tests/assets/fake_voicemail.mp3
new file mode 100644
index 0000000..23fc415
--- /dev/null
+++ b/variablespeed/tests/assets/fake_voicemail.mp3
Binary files differ
diff --git a/variablespeed/tests/assets/fake_voicemail2.mp3 b/variablespeed/tests/assets/fake_voicemail2.mp3
new file mode 100644
index 0000000..854186d
--- /dev/null
+++ b/variablespeed/tests/assets/fake_voicemail2.mp3
Binary files differ
diff --git a/variablespeed/tests/src/com/android/ex/variablespeed/MediaPlayerProxyTestCase.java b/variablespeed/tests/src/com/android/ex/variablespeed/MediaPlayerProxyTestCase.java
index 59bdfcf..a7c1127 100644
--- a/variablespeed/tests/src/com/android/ex/variablespeed/MediaPlayerProxyTestCase.java
+++ b/variablespeed/tests/src/com/android/ex/variablespeed/MediaPlayerProxyTestCase.java
@@ -247,6 +247,18 @@ public abstract class MediaPlayerProxyTestCase extends InstrumentationTestCase {
mCompletionListener.awaitOneCallback(10, TimeUnit.SECONDS);
}
+ public void testHalfWaySeekWithStutteringAudio() throws Exception {
+ // The audio contained in this file has a stutter if we seek to half way and play.
+ // It shouldn't have.
+ setDataSourceFromContentProvider(mPlayer, "fake_voicemail2.mp3", "audio/mp3");
+ mPlayer.prepare();
+ assertTrue(mPlayer.getDuration() > 0);
+ mPlayer.seekTo(mPlayer.getDuration() / 2);
+ mPlayer.start();
+ mPlayer.setOnCompletionListener(mCompletionListener);
+ mCompletionListener.awaitOneCallback(10, TimeUnit.SECONDS);
+ }
+
public void testResetWithoutReleaseAndThenReUse() throws Exception {
setDataSourceFromContentProvider(mPlayer, "quick_test_recording.mp3", "audio/mp3");
mPlayer.reset();