Add Overloads to Frame and Image Extract Functions
Add overloads getFrameAtTime, getFrameAtIndex and getImageAtIndex
functions. The colorFormat parameter, if not explicitly passed will now
be initialised in an overloaded function. This will allow for the
default value to be configurable with a setting.
Test: make
Bug: 298965955
Change-Id: Ib01906c87f9156bbf8bf269dfe224ac3a342d892
diff --git a/media/libmedia/include/media/mediametadataretriever.h b/media/libmedia/include/media/mediametadataretriever.h
index fba1a30..9074574 100644
--- a/media/libmedia/include/media/mediametadataretriever.h
+++ b/media/libmedia/include/media/mediametadataretriever.h
@@ -96,13 +96,19 @@
status_t setDataSource(
const sp<IDataSource>& dataSource, const char *mime = NULL);
sp<IMemory> getFrameAtTime(int64_t timeUs, int option,
- int colorFormat = HAL_PIXEL_FORMAT_RGB_565, bool metaOnly = false);
+ int colorFormat, bool metaOnly = false);
+ sp<IMemory> getFrameAtTime(int64_t timeUs, int option,
+ bool metaOnly = false);
sp<IMemory> getImageAtIndex(int index,
- int colorFormat = HAL_PIXEL_FORMAT_RGB_565, bool metaOnly = false, bool thumbnail = false);
+ int colorFormat, bool metaOnly = false, bool thumbnail = false);
+ sp<IMemory> getImageAtIndex(int index,
+ bool metaOnly = false, bool thumbnail = false);
sp<IMemory> getImageRectAtIndex(
int index, int colorFormat, int left, int top, int right, int bottom);
sp<IMemory> getFrameAtIndex(
- int index, int colorFormat = HAL_PIXEL_FORMAT_RGB_565, bool metaOnly = false);
+ int index, int colorFormat, bool metaOnly = false);
+ sp<IMemory> getFrameAtIndex(
+ int index, bool metaOnly = false);
sp<IMemory> extractAlbumArt();
const char* extractMetadata(int keyCode);
diff --git a/media/libmedia/mediametadataretriever.cpp b/media/libmedia/mediametadataretriever.cpp
index 2ae76b3..427a3bd 100644
--- a/media/libmedia/mediametadataretriever.cpp
+++ b/media/libmedia/mediametadataretriever.cpp
@@ -142,6 +142,11 @@
}
sp<IMemory> MediaMetadataRetriever::getFrameAtTime(
+ int64_t timeUs, int option, bool metaOnly) {
+ return getFrameAtTime(timeUs, option, HAL_PIXEL_FORMAT_RGB_565, metaOnly);
+}
+
+sp<IMemory> MediaMetadataRetriever::getFrameAtTime(
int64_t timeUs, int option, int colorFormat, bool metaOnly)
{
ALOGV("getFrameAtTime: time(%" PRId64 " us) option(%d) colorFormat(%d) metaOnly(%d)",
@@ -155,6 +160,11 @@
}
sp<IMemory> MediaMetadataRetriever::getImageAtIndex(
+ int index, bool metaOnly, bool thumbnail) {
+ return getImageAtIndex(index, HAL_PIXEL_FORMAT_RGB_565, metaOnly, thumbnail);
+}
+
+sp<IMemory> MediaMetadataRetriever::getImageAtIndex(
int index, int colorFormat, bool metaOnly, bool thumbnail) {
ALOGV("getImageAtIndex: index(%d) colorFormat(%d) metaOnly(%d) thumbnail(%d)",
index, colorFormat, metaOnly, thumbnail);
@@ -180,6 +190,11 @@
}
sp<IMemory> MediaMetadataRetriever::getFrameAtIndex(
+ int index, bool metaOnly) {
+ return getFrameAtIndex(index, HAL_PIXEL_FORMAT_RGB_565, metaOnly);
+}
+
+sp<IMemory> MediaMetadataRetriever::getFrameAtIndex(
int index, int colorFormat, bool metaOnly) {
ALOGV("getFrameAtIndex: index(%d), colorFormat(%d) metaOnly(%d)",
index, colorFormat, metaOnly);