GitHub/LineageOS/android_hardware_samsung_slsi_openmax.git
11 years agovenc: cleaned up related code with codec buffer
Taehwan Kim [Fri, 7 Dec 2012 00:30:05 +0000 (00:30 +0000)]
venc: cleaned up related code with codec buffer

added new functions to extract the most used code.
1. alloc codec buffer
2. free codec buffer
3. regist codec buffer

Change-Id: I0c4988fe577421658291013d65105125ab816e22
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovenc: changed CSC method in case of RGB input color
Taehwan Kim [Tue, 11 Dec 2012 09:20:31 +0000 (09:20 +0000)]
venc: changed CSC method in case of RGB input color

if USE_GSC_RGB_ENCODER is true,
CSC method is chaned to CSC_METHOD_HW from CSC_METHOD_SW
in case of RGB input color.

Change-Id: I67212bfd04a7bf8c9b5d7d65551b26a31d63c150
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agoosal: Fix build error
Jinsung Yang [Fri, 7 Dec 2012 15:01:56 +0000 (00:01 +0900)]
osal: Fix build error

Change-Id: I56f30102fa1448217abafaf8f9967d7d642962e9
Signed-off-by: Jinsung Yang <jsgood.yang@samsung.com>
11 years agoosal: add RGB lock support
Jinsung Yang [Wed, 5 Dec 2012 14:23:28 +0000 (23:23 +0900)]
osal: add RGB lock support

When RGB buffer is allocated by gralloc, this patch allows to lock
for this buffer with ion_map() since that for the RGB format buffer,
gralloc uses PVR own function to virtual address mapping instead of
ion_map().

The flag GRALLOC_USAGE_HW_VIDEO_ENCODER is used to aware the buffer
is RGB format in gralloc.

Change-Id: Iae92296751cc1bb1015aa33ec7f3b4ccc78955d7
Signed-off-by: Jinsung Yang <jsgood.yang@samsung.com>
11 years agocommon: Increase max instance number
Jinsung Yang [Fri, 16 Nov 2012 04:49:06 +0000 (13:49 +0900)]
common: Increase max instance number

DEC: 3 -> 8
ENC: 1 -> 8

Change-Id: Iae88c1f41763b2a9b7c63f7bbe8e0e9b2de6e2d6
Signed-off-by: Jinsung Yang <jsgood.yang@samsung.com>
11 years agoh264dec/include: support S3D
Taehwan Kim [Wed, 5 Dec 2012 01:43:30 +0000 (01:43 +0000)]
h264dec/include: support S3D

added VIDEO_FRAME_STATUS_ENABLED_S3D handling
and the OMX_EventS3DInformation event,
in order to support S3D.

Change-Id: I189b10a1b760bb7c7db4e49836988d70122fbf10
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovdec: support Dynamic Resolution Change in case of H264dec
Taehwan Kim [Thu, 29 Nov 2012 01:48:25 +0000 (01:48 +0000)]
vdec: support Dynamic Resolution Change in case of H264dec

added DPB reconfiguration handling
in order to support DRC playback
in case of H264Dec.

Change-Id: I366374d7cb5eadd3c715ac566be16d45e92b0bc2
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agoosal: modified to RGBA_8888 hal pixel format from ARGB888
Taehwan Kim [Thu, 6 Dec 2012 06:17:31 +0000 (06:17 +0000)]
osal: modified to RGBA_8888 hal pixel format from ARGB888

HAL_PIXEL_FORMAT_ARGB888 is custom format.
but, HAL_PIXEL_FORMAT_RGBA_8888 is native format.

Byte order is same with HAL_PIXEL_FORMAT_RGBA_8888.
so, modified to use HAL_PIXEL_FORMAT_RGBA_8888.

Change-Id: I59d27cc440652fd55fb578a355bdfb6ce51ff6a9
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovideo: fixed missing code for H/W CSC
Taehwan Kim [Thu, 6 Dec 2012 04:32:25 +0000 (04:32 +0000)]
video: fixed missing code for H/W CSC

vdec: wrapped unneeded code, if DMA_BUF is used.

venc: added ifdef macro.
if it isn't there, DstBuf value will be wrong.

all:
added to set FD value at CodecBufferToData function
for H/W CSC.
if DMA_BUF is used, needs FD value.

Change-Id: Icca36d5a8e80cd7cc0c462416db085af005592bb
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years ago[HACK] venc: support USERPTR about input
Taehwan Kim [Thu, 29 Nov 2012 08:55:20 +0000 (08:55 +0000)]
[HACK] venc: support USERPTR about input

This is temporary patch
in order to support USERPTR about input
in camera recording scenario
even if use DMA_BUF.

Change-Id: Ie218644d6dca425ce29ab4b190152c1b8c59ee03
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovdec: added UnlockANB in FlushPort sequence
Taehwan Kim [Thu, 29 Nov 2012 00:04:06 +0000 (00:04 +0000)]
vdec: added UnlockANB in FlushPort sequence

added UnlockANB in FlushPort sequence
to support output share mode.
locked ANB is needed unlock sequence before returning.

Change-Id: Ibf3fd3ae7eca723736d88c0514ffca311712a8bd
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovdec: cleaned up related code with codec buffer
Taehwan Kim [Thu, 22 Nov 2012 00:34:44 +0000 (00:34 +0000)]
vdec: cleaned up related code with codec buffer

added new functions to extract the most used code.
1. alloc codec buffer
2. free codec buffer
3. regist codec buffer

Change-Id: Iae4989bfa1ab0eb3b49c5017e43dde8215f30958
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovenc: modified codecBufferQ scheme about output port
Taehwan Kim [Wed, 14 Nov 2012 07:08:15 +0000 (07:08 +0000)]
venc: modified codecBufferQ scheme about output port

what is enqueued in codecBufferQ has been modified
to CodecBuffer from VideoBuffer.

Change-Id: Ia1c9a9b11d0d92e383be3c3f0b4163fb4b350ddf
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovdec: modified codecBufferQ scheme about output port
Taehwan Kim [Wed, 14 Nov 2012 02:16:12 +0000 (02:16 +0000)]
vdec: modified codecBufferQ scheme about output port

What is enqueued in codecBufferQ has been modified
to CodecBuffer from VideoBuffer.

Change-Id: Ib608bc65b4ee0bf2f2f013b86b31b12a2b36db90
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovdec/venc: Added mem_type param for csc_set_src_buffer.
meka rama [Thu, 29 Nov 2012 05:59:49 +0000 (14:59 +0900)]
vdec/venc: Added mem_type param for csc_set_src_buffer.

Default, it is set to CSC_MEMORY_DMABUF.

Change-Id: I3e4088609162c1c2d1161c82dd12abdf0d8963ee
Signed-off-by: meka rama <v.meka@samsung.com>
12 years agovdec: removed FlushXXBufferReturn function.
Taehwan Kim [Thu, 22 Nov 2012 04:30:12 +0000 (04:30 +0000)]
vdec: removed FlushXXBufferReturn function.

modified to use Exynos_XXBufferReturn
instead of Exynos_FlushXXBufferReturn.

Change-Id: Ie6e1b6110ef03ec69cb7799a90b177be570fb8d0
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
12 years agoosal: cleaned up code
Taehwan Kim [Thu, 22 Nov 2012 06:04:04 +0000 (06:04 +0000)]
osal: cleaned up code

Change-Id: I33630bca0dec430bf743ce2f3125193a2dc37652
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
12 years agoosal: changed a condition check in case of OMX_IndexParamEnableAndroidBuffers.
Taehwan Kim [Wed, 21 Nov 2012 07:06:55 +0000 (07:06 +0000)]
osal: changed a condition check in case of OMX_IndexParamEnableAndroidBuffers.

It is possible to use NON-ANB, even if OMX_IndexParamEnableAndroidBuffers.
changed a condition check in case of above.

Change-Id: I2197a71df7194a85ae693cd8fb2222e651113dcc
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
12 years agovenc: added to support the dynamic configuration
Taehwan Kim [Tue, 20 Nov 2012 06:53:17 +0000 (06:53 +0000)]
venc: added to support the dynamic configuration

added to support the dynamic configuration
in order to support OMX_IndexConfigVideoIntraVOPRefresh.

Change-Id: Ia8a23f3efec960af4b92fd40e9938dcd20f9037d
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
12 years agovenc/osal: modified a bFirstInput handling position
Taehwan Kim [Tue, 20 Nov 2012 00:03:37 +0000 (00:03 +0000)]
venc/osal: modified a bFirstInput handling position

modified a bFirstInput handling position
to venc from osal.

Change-Id: I3b042db705b91c41104721c6a9926192166c414d
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
12 years agobuild: Replace TARGET_DEVICE to TARGET_BOOTLOADER_BOARD_NAME
Jinsung Yang [Wed, 21 Nov 2012 05:01:25 +0000 (14:01 +0900)]
build: Replace TARGET_DEVICE to TARGET_BOOTLOADER_BOARD_NAME

Change-Id: I269ed8b0842036b7483115406f245ccc7b583283
Signed-off-by: Jinsung Yang <jsgood.yang@samsung.com>
12 years agocommon: added signal abendStateEvent if componentInit fails
Taehwan Kim [Mon, 12 Nov 2012 05:52:36 +0000 (05:52 +0000)]
common: added signal abendStateEvent if componentInit fails

This patch fixes the ANR at reset/release time,
caused by some failures in initializing component.

Change-Id: I45e560068e91fb2441a3c316a3c0f293b28b15ff
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
12 years agowmadec: Initial commit for WMA OMX decoder
Kim Sungyeon [Fri, 7 Sep 2012 12:49:16 +0000 (12:49 +0000)]
wmadec: Initial commit for WMA OMX decoder

Added OMX component and ffmepg library files used by OMX component.

Change-Id: I7ec651201fb960a5229d4ca23be61cec59f47759
Signed-off-by: Kim Sungyeon <sy85.kim@samsung.com>
12 years agoexynos_omx: Unified source for exynos4/exynos5 series
Huisung Kang [Tue, 20 Nov 2012 04:08:53 +0000 (13:08 +0900)]
exynos_omx: Unified source for exynos4/exynos5 series

Change-Id: I9587633d32ca3e61e9edb4d79c3b4b156944db85
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agoexynos_omx: Added VC1 and Mpeg2 components
Satish Kumar Reddy [Mon, 29 Oct 2012 02:19:42 +0000 (11:19 +0900)]
exynos_omx: Added VC1 and Mpeg2 components

Vc1 and Mpeg2 components are implemented and verified
using UTC application

Change-Id: I8c2896ef063d8249f64d0a703b00d52d71cdcb93
Signed-off-by: Satish Kumar Reddy <palli.satish@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agoosal: Add USE_ANB_OUTBUF_SHARE flag
Yunji Kim [Mon, 29 Oct 2012 04:51:10 +0000 (13:51 +0900)]
osal: Add USE_ANB_OUTBUF_SHARE flag

This patch supports both share & copy mode for output buffer

Change-Id: I594b5aeedfdd294029b81e47577b3ff07ecb9112
Signed-off-by: Yunji Kim <yunji.kim@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agovenc: Add error handling code
Yunji Kim [Mon, 29 Oct 2012 04:47:28 +0000 (13:47 +0900)]
venc: Add error handling code

Change-Id: I0651c6c843c00d03a7d12fe1f2de7e32ead693bc
Signed-off-by: Yunji Kim <yunji.kim@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agovenc: modified an error check routine
Taehwan Kim [Mon, 29 Oct 2012 04:40:32 +0000 (13:40 +0900)]
venc: modified an error check routine

If do "buffer flush" without doing srcIn function,
In case of BUFFER_COPY,
always return OMX_ErrorBadParameter
in the codecEnQueueAllBuffer function.

Change-Id: Ia1631de9ecb02f83b5cfc8edbacfbef453705864
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agovideo/osal: Support both DMABUF and virtual address
Satish Kumar Reddy [Mon, 29 Oct 2012 04:33:17 +0000 (13:33 +0900)]
video/osal: Support both DMABUF and virtual address

DMABUF can be enabled by this marco BOARD_USE_DMA_BUF

Change-Id: Ie38db57250368dae208a8cca3cc7d7a73f5a6e63
Signed-off-by: Satish Kumar Reddy <palli.satish@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agoosal: changed bool type to OMX_BOOL type
Yunji Kim [Mon, 29 Oct 2012 04:25:55 +0000 (13:25 +0900)]
osal: changed bool type to OMX_BOOL type

Change-Id: I1a83d8bfadee170f789a7755bed76c22ab247919
Signed-off-by: Yunji Kim <yunji.kim@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agovdec/osal: Remove unused format.
Yunji Kim [Mon, 29 Oct 2012 04:24:27 +0000 (13:24 +0900)]
vdec/osal: Remove unused format.

 - OMX_SEC_COLOR_FormatNV12TPhysicalAddress
 - OMX_SEC_COLOR_FormatANBYUV420SemiPlanar

Change-Id: I31d743c2bec1ea2da8847940d8f9d7b36308e09b
Signed-off-by: Yunji Kim <yunji.kim@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agovdec: modified an error check routine
Taehwan Kim [Mon, 29 Oct 2012 04:18:30 +0000 (13:18 +0900)]
vdec: modified an error check routine

If do "buffer flush" without doing srcIn function,
In case of BUFFER_COPY,
always return OMX_ErrorBadParameter
in the codecEnQueueAllBuffer function.

Change-Id: I01e8f421b68d6f66b0939334fc128901fb30210d
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agocommon: Added a bufferQ cleaning routine
Taehwan Kim [Mon, 29 Oct 2012 04:13:59 +0000 (13:13 +0900)]
common: Added a bufferQ cleaning routine

When changing to Loaded from Idle,
does not clean a bufferQ at each port.

Then, possible to access old infomation
in input or output buffer getQueue function.

Change-Id: I574f9783abaaf9def7413588e2e3341602cdcc70
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agovdec/include: fixed to return an input buffer to client
Taehwan Kim [Mon, 29 Oct 2012 04:12:08 +0000 (13:12 +0900)]
vdec/include: fixed to return an input buffer to client

Error frame is skipped by Check_Stream_StartCode function.
but, It isn't returned to client.
added OMX_ErrorCorruptedFrame return type and handling scheme.

Change-Id: I18bff34e143b6b956f77346f27c8926c5aef1022
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agocore: Changed the library loading information.
Yunji Kim [Mon, 29 Oct 2012 04:07:20 +0000 (13:07 +0900)]
core: Changed the library loading information.

changed the error level from trace to info.

Change-Id: Id752a6461cc11bbb153275df057f31404213d0fd
Signed-off-by: Yunji Kim <yunji.kim@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agovdec: resolved prevent defects
Taehwan Kim [Mon, 29 Oct 2012 04:05:00 +0000 (13:05 +0900)]
vdec: resolved prevent defects

resolved defects like below
 1. UNREACHABLE
 2. NO_EFFECT
 3. FORWARD_NULL
 4. DEADCODE

Change-Id: Id1961c3bd693f28eb0d7d87d702f5899ec954225
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agovdec: fixed a problem about drop frame logic
Taehwan Kim [Mon, 29 Oct 2012 03:59:34 +0000 (12:59 +0900)]
vdec: fixed a problem about drop frame logic

After skeeing, If not exist startup code in the first frame,
can't escape the drop frame logic.

Change-Id: Ia095dbdd7cc1554a15adaac91bea7eeb8b577ee7
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agocode cleanup
Huisung Kang [Mon, 29 Oct 2012 03:55:59 +0000 (12:55 +0900)]
code cleanup

Change-Id: I8627745966029678d9de77f8665e993f94972787
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agovideo/common: Code cleanup for bitmask comparisons
Jinsung Yang [Mon, 29 Oct 2012 02:45:44 +0000 (11:45 +0900)]
video/common: Code cleanup for bitmask comparisons

This patch cleans up the coding style of bitmask comparisons for
easy understanding like below:

- if ((pExynosInputPort->bufferProcessType & BUFFER_COPY) == BUFFER_COPY)
+ if (pExynosInputPort->bufferProcessType & BUFFER_COPY)

- if (pExynosOutputPort->bufferProcessType == BUFFER_SHARE)
+ if (pexynosOutputPort->bufferProcessType & BUFFER_SHARE)

Change-Id: I43e0e216ac13e1e84dbe1822bc69984ad4ca4555
Signed-off-by: Jinsung Yang <jsgood.yang@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agovideo: Remove useless definition of include header
Huisung Kang [Mon, 29 Oct 2012 02:27:32 +0000 (11:27 +0900)]
video: Remove useless definition of include header

'$(TOP)/hardware/samsung_slsi/exynos/libcsc' is not need to.

Change-Id: I61fc12a78e52203deb4f38793f1097861e0cc3f4
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agoosal: Changed error check routine for ion_client_create function.
Yunji Kim [Sat, 27 Oct 2012 02:51:27 +0000 (11:51 +0900)]
osal: Changed error check routine for ion_client_create function.

Because the return value of ion_client_create function chagned from
ion_client pointer to ion_client type.
ion_client_create returns negative value if creating new ion_client is
failed.

Change-Id: I736edff5373d1c3adc340cbd0e804502076b89a6
Signed-off-by: Yunji Kim <yunji.kim@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agovideo: dec: h264: S3D support
Satish Kumar Reddy [Tue, 28 Aug 2012 17:56:28 +0000 (17:56 +0000)]
video: dec: h264: S3D support

This patch enables S3D support, only when output buffer is
BUFFER_COPY mode

Change-Id: Icbc7ada44528c396f12db864136aebab7fb920ae
Signed-off-by: Satish Kumar Reddy <palli.satish@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agoexynos_omx: Add BOARD_USE_KHRONOS_OMX_HEADER flag.
Yunji Kim [Sat, 27 Oct 2012 01:10:59 +0000 (10:10 +0900)]
exynos_omx: Add BOARD_USE_KHRONOS_OMX_HEADER flag.

BOARD_USE_KHRONOS_OMX_HEADER flag is needed to include proper openMAX
spec header file.

If BOARD_USE_KHRONOS_OMX_HEADER is true, use khronos's original omx
header files.
    - $(EXYNOS_OMX_TOP)/include/khronos/
else, use android's omx header files.
    - frameworks/native/include/media/openmax

Google extends OMX header files of Khronos.
    - OMX_COLOR_FormatAndroidOpaque was added in OMX_COLOR_FORMATTYPE.
    - OMX_VIDEO_CodingVPX was added in OMX_VIDEO_CODINGTYPE.
    - FLAC type for audio was added.
    - etc..

So this BOARD_USE_KHRONOS_OMX_HEADER flag is needed to avoid conflict
error about OMX_COLOR_FormatAndroidOpaque, etc.

Change-Id: Ib03ad0ea83669e58125da32d590368ac11d36677
Signed-off-by: Yunji Kim <yunji.kim@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agoCode cleanup for Android.mk
Huisung Kang [Sat, 27 Oct 2012 00:53:00 +0000 (09:53 +0900)]
Code cleanup for Android.mk

This patch fixup build error and remove unused definitions

Change-Id: I14e03bfb65778bb20a30f5f7a5581e3c378f6b66
Signed-off-by: Yunji Kim <yunji.kim@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agoModified Android.mk to support various SoCs
Huisung Kang [Sat, 27 Oct 2012 03:08:06 +0000 (12:08 +0900)]
Modified Android.mk to support various SoCs

Change-Id: I871a0bb6c8cc0499690f9011084376013fd0cc03
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agoexynos_omx has moved from hardware/samsung_slsi/exynos5
Yunji Kim [Thu, 11 Oct 2012 06:32:10 +0000 (06:32 +0000)]
exynos_omx has moved from hardware/samsung_slsi/exynos5

Change-Id: I16f3ebed97ae8921436a09d9e2e653bb7172b3d2
Signed-off-by: Yunji Kim <yunji.kim@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
12 years agoempty base
Seokkeun Ahn [Fri, 24 Aug 2012 07:23:53 +0000 (16:23 +0900)]
empty base