IMediaSource: add supportReadMultiple().
Bug: 29331573
Change-Id: I7cdff44878bd93671e98fe11c99d17e82410cdcb
diff --git a/media/libmedia/IMediaSource.cpp b/media/libmedia/IMediaSource.cpp
index 7e40e4f..d2b4291 100644
--- a/media/libmedia/IMediaSource.cpp
+++ b/media/libmedia/IMediaSource.cpp
@@ -221,6 +221,10 @@
return ret;
}
+ bool supportReadMultiple() {
+ return true;
+ }
+
virtual status_t pause() {
ALOGV("pause");
Parcel data, reply;
diff --git a/media/libmediaplayerservice/nuplayer/GenericSource.cpp b/media/libmediaplayerservice/nuplayer/GenericSource.cpp
index 56042d4..3d836c8 100644
--- a/media/libmediaplayerservice/nuplayer/GenericSource.cpp
+++ b/media/libmediaplayerservice/nuplayer/GenericSource.cpp
@@ -1420,7 +1420,9 @@
options.setNonBlocking();
}
- bool couldReadMultiple = (!mIsWidevine && trackType == MEDIA_TRACK_TYPE_AUDIO);
+ bool couldReadMultiple =
+ (!mIsWidevine && trackType == MEDIA_TRACK_TYPE_AUDIO
+ && track->mSource->supportReadMultiple());
for (size_t numBuffers = 0; numBuffers < maxBuffers; ) {
Vector<MediaBuffer *> mediaBuffers;
status_t err = NO_ERROR;