summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorAndreas Huber <andih@google.com>2009-09-15 14:32:59 -0700
committerAndreas Huber <andih@google.com>2009-09-15 14:32:59 -0700
commitc966a3c255652ba30a7b457663c874da24e7fb6e (patch)
treeb6f71e2ac202376dc97a131cbdc90780924c1367 /include
parente80534ff59b2e62a0ddf4359147b81f5ba10de86 (diff)
downloadframeworks_base-c966a3c255652ba30a7b457663c874da24e7fb6e.zip
frameworks_base-c966a3c255652ba30a7b457663c874da24e7fb6e.tar.gz
frameworks_base-c966a3c255652ba30a7b457663c874da24e7fb6e.tar.bz2
Support CbYCrY -> RGB565 color conversion in IOMXRenderer.
Diffstat (limited to 'include')
-rw-r--r--include/media/stagefright/SoftwareRenderer.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/media/stagefright/SoftwareRenderer.h b/include/media/stagefright/SoftwareRenderer.h
index 705b914..b61858c 100644
--- a/include/media/stagefright/SoftwareRenderer.h
+++ b/include/media/stagefright/SoftwareRenderer.h
@@ -18,6 +18,7 @@
#define SOFTWARE_RENDERER_H_
+#include <OMX_Video.h>
#include <media/stagefright/VideoRenderer.h>
#include <utils/RefBase.h>
@@ -29,6 +30,7 @@ class MemoryHeapBase;
class SoftwareRenderer : public VideoRenderer {
public:
SoftwareRenderer(
+ OMX_COLOR_FORMATTYPE colorFormat,
const sp<ISurface> &surface,
size_t displayWidth, size_t displayHeight,
size_t decodedWidth, size_t decodedHeight);
@@ -39,6 +41,12 @@ public:
const void *data, size_t size, void *platformPrivate);
private:
+ uint8_t *initClip();
+
+ void renderCbYCrY(const void *data, size_t size);
+ void renderYUV420Planar(const void *data, size_t size);
+
+ OMX_COLOR_FORMATTYPE mColorFormat;
sp<ISurface> mISurface;
size_t mDisplayWidth, mDisplayHeight;
size_t mDecodedWidth, mDecodedHeight;
@@ -46,6 +54,8 @@ private:
sp<MemoryHeapBase> mMemoryHeap;
int mIndex;
+ uint8_t *mClip;
+
SoftwareRenderer(const SoftwareRenderer &);
SoftwareRenderer &operator=(const SoftwareRenderer &);
};