summaryrefslogtreecommitdiffstats
path: root/media/tests/MediaFrameworkTest
diff options
context:
space:
mode:
authorMarco Nelissen <marcone@google.com>2015-05-27 12:33:03 -0700
committerMarco Nelissen <marcone@google.com>2015-05-27 12:33:03 -0700
commite796ff912ecae57d8cb34c9366b3596fc1029fd8 (patch)
tree02ffe875c4dca943327dd2085b19c3c6442e1715 /media/tests/MediaFrameworkTest
parentf981ea95f2e951a558f73fb941cf006423e52627 (diff)
downloadframeworks_base-e796ff912ecae57d8cb34c9366b3596fc1029fd8.zip
frameworks_base-e796ff912ecae57d8cb34c9366b3596fc1029fd8.tar.gz
frameworks_base-e796ff912ecae57d8cb34c9366b3596fc1029fd8.tar.bz2
Handle unknown duration in playMediaSamples test
Bug: 21391417 Change-Id: I85d8f5921e8423da078acfe3aff34a6fcef69e78
Diffstat (limited to 'media/tests/MediaFrameworkTest')
-rw-r--r--media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/functional/CodecTest.java21
1 files changed, 14 insertions, 7 deletions
diff --git a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/functional/CodecTest.java b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/functional/CodecTest.java
index 66ed933..bcfcbf3 100644
--- a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/functional/CodecTest.java
+++ b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/functional/CodecTest.java
@@ -823,13 +823,20 @@ public class CodecTest {
duration = mMediaPlayer.getDuration();
// start to play
mMediaPlayer.start();
- waittime = duration - mMediaPlayer.getCurrentPosition();
- synchronized(onCompletion){
- try {
- onCompletion.wait(waittime + buffertime);
- }catch (Exception e) {
- Log.v(TAG, "playMediaSamples are interrupted");
- return false;
+ if (duration < 0) {
+ Log.w(TAG, filePath + " has unknown duration, waiting until playback completes");
+ while (mMediaPlayer.isPlaying()) {
+ SystemClock.sleep(1000);
+ }
+ } else {
+ waittime = duration - mMediaPlayer.getCurrentPosition();
+ synchronized(onCompletion){
+ try {
+ onCompletion.wait(waittime + buffertime);
+ } catch (Exception e) {
+ Log.v(TAG, "playMediaSamples are interrupted");
+ return false;
+ }
}
}
terminateMessageLooper();