Expose a variation of the createRenderer API that works on a plain Surface.
diff --git a/media/libmedia/IOMX.cpp b/media/libmedia/IOMX.cpp
index b0f466b..d1dbc5c 100644
--- a/media/libmedia/IOMX.cpp
+++ b/media/libmedia/IOMX.cpp
@@ -6,6 +6,7 @@
#include <binder/Parcel.h>
#include <media/IOMX.h>
#include <ui/ISurface.h>
+#include <ui/Surface.h>
namespace android {
@@ -29,6 +30,18 @@
RENDERER_RENDER,
};
+sp<IOMXRenderer> IOMX::createRenderer(
+ const sp<Surface> &surface,
+ const char *componentName,
+ OMX_COLOR_FORMATTYPE colorFormat,
+ size_t encodedWidth, size_t encodedHeight,
+ size_t displayWidth, size_t displayHeight) {
+ return createRenderer(
+ surface->getISurface(),
+ componentName, colorFormat, encodedWidth, encodedHeight,
+ displayWidth, displayHeight);
+}
+
static void *readVoidStar(const Parcel *parcel) {
// FIX if sizeof(void *) != sizeof(int32)
return (void *)parcel->readInt32();