summaryrefslogtreecommitdiff
path: root/include/ExynosJpegApi.h
diff options
context:
space:
mode:
authorJiyoung Shin <idon.shin@samsung.com>2012-04-17 17:49:23 -0700
committerDima Zavin <dima@android.com>2012-05-07 11:26:48 -0700
commit3802e44ea4993eec4d0daa3d1fcfe31146859898 (patch)
tree88444b142357de64b1fee4860ff20c2a09a1281c /include/ExynosJpegApi.h
parent9426c428f0ffede2ee24d397912f7db84c56c3f7 (diff)
downloadexynos5-3802e44ea4993eec4d0daa3d1fcfe31146859898.tar.gz
hardware: eynos5: update include directory for JPEG
update ExynosJpegApi.h Change-Id: I7a47a1fc354cd9b7f3c365207f2aa025e1787cf7 Signed-off-by: Jiyoung Shin <idon.shin@samsung.com>
Diffstat (limited to 'include/ExynosJpegApi.h')
-rw-r--r--include/ExynosJpegApi.h21
1 files changed, 13 insertions, 8 deletions
diff --git a/include/ExynosJpegApi.h b/include/ExynosJpegApi.h
index 49a8db7..1451d7c 100644
--- a/include/ExynosJpegApi.h
+++ b/include/ExynosJpegApi.h
@@ -21,10 +21,9 @@
#include "videodev2.h"
#include "videodev2_exynos_media.h"
-//#define JPEG_DEC_BYTE_ALIGN (8)
-
#define JPEG_CACHE_OFF (0)
#define JPEG_CACHE_ON (1)
+#define KERNEL_33_JPEG_API (1)
class ExynosJpegBase {
public:
@@ -54,6 +53,7 @@ public:
ERROR_BUFFR_IS_NULL,
ERROR_BUFFER_TOO_SMALL,
ERROR_GET_SIZE_FAIL,
+ ERROR_BUF_NOT_SET_YET,
ERROR_REQBUF_FAIL,
ERROR_INVALID_V4l2_BUF_TYPE = -0x80,
ERROR_MMAP_FAILED,
@@ -143,10 +143,10 @@ protected:
int setJpegConfig(enum MODE eMode, void *pConfig);
int setColorFormat(enum MODE eMode, int iV4l2ColorFormat);
int setJpegFormat(enum MODE eMode, int iV4l2JpegFormat);
- int getBuf(struct BUFFER *pstBuf, char **pcBuf, int *piInputSize, int iPlaneNum);
+ int getBuf(bool bCreateBuf, struct BUFFER *pstBuf, char **pcBuf, int *iBufSize, int iSize, int iPlaneNum);
int setBuf(struct BUFFER *pstBuf, char **pcBuf, int *iSize, int iPlaneNum);
int updateConfig(enum MODE eMode, int iInBufs, int iOutBufs, int iInBufPlanes, int iOutBufPlanes);
- int excute(int iInBufPlanes, int iOutBufPlanes);
+ int execute(int iInBufPlanes, int iOutBufPlanes);
};
//! ExynosJpegEncoder class
@@ -171,13 +171,14 @@ public:
int setJpegConfig(void* pConfig);
- char **getInBuf(int *piInputSize);
- char *getOutBuf(int *piOutputSize);
+ int getInBuf(char **pcBuf, int *piInputSize, int iSize);
+ int getOutBuf(char **pcBuf, int *piOutputSize);
int setInBuf(char **pcBuf, int *iSize);
int setOutBuf(char *pcBuf, int iSize);
int getSize(int *piWidth, int *piHeight);
+ int getColorFormat(void);
int setColorFormat(int iV4l2ColorFormat);
int setJpegFormat(int iV4l2JpegFormat);
int updateConfig(void);
@@ -203,8 +204,8 @@ public:
int setJpegConfig(void* pConfig);
- char *getInBuf(int *piInputSize);
- char **getOutBuf(int *piOutputSize);
+ int getInBuf(char **pcBuf, int *piInputSize);
+ int getOutBuf(char **pcBuf, int *piOutputSize, int iSize);
int setInBuf(char *pcBuf, int iSize);
int setOutBuf(char **pcBuf, int *iSize);
@@ -218,6 +219,10 @@ public:
int setJpegSize(int iJpegSize);
int decode(void);
+#ifdef WA_BLOCKING_ARTIFACT
+private:
+ void reduceBlockingArtifact(unsigned char *addr, int iColor, int width, int height);
+#endif
};
#endif /* __EXYNOS_JPEG_BASE_H__ */