GitHub/LineageOS/android_hardware_samsung_slsi_openmax.git
11 years agoopenmax: Additional code for Buffer flag processing scheme change after EOS.
SeungBeom Kim [Fri, 22 Feb 2013 00:33:46 +0000 (09:33 +0900)]
openmax: Additional code for Buffer flag processing scheme change after EOS.

Sometimes, OpenMAX do not use Specific output buffer.
This buffer was return from MFC after EOS.
That Buffer will be free at finish time.(It Is not a memory leak.)
But, Buffer is not used.

This patch is solved that problem.

Depends On
 - Change I5090887e: openmax: Buffer flag processing scheme change after EOS.

Change-Id: I8bcdecb8d0dc12ac985af44283412a543e219f84
Signed-off-by: SeungBeom Kim <sbcrux.kim@samsung.com>
11 years agoopenmax: Support EOSBehavior.
SeungBeom Kim [Wed, 27 Feb 2013 01:10:02 +0000 (10:10 +0900)]
openmax: Support EOSBehavior.

Google has updated CTS test.
Support EOSBehavior for testEOSBehaviorH263 & testEOSBehaviorH264.
In case of "EOS Flag with Data",
This Patch is support for normal processing.

Depends On
 - Change I781712a5: libcodec: Support EOSBehavior.

Change-Id: I560434c55dd4932f018f973e0093453f493409cb
Signed-off-by: SeungBeom Kim <sbcrux.kim@samsung.com>
11 years agoosal: resolved prevent defect
Taehwan Kim [Fri, 22 Feb 2013 09:05:56 +0000 (09:05 +0000)]
osal: resolved prevent defect

- 19329, 21140

Change-Id: I21cb12259bedfcb69699b10445d738fed1a1636a
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovenc: removed FlushXXBufferReturn function
Taehwan Kim [Fri, 1 Feb 2013 06:03:53 +0000 (06:03 +0000)]
venc: removed FlushXXBufferReturn function

modified to use Exynos_XXBufferReturn
instead of Exynos_FlushXXBufferReturn.

Change-Id: Icb3f26ef9c1e9e46ad97f6a7efc26bd796e73a7f
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agoopenmax: Buffer flag processing scheme change after EOS.
SeungBeom Kim [Wed, 20 Feb 2013 06:47:49 +0000 (15:47 +0900)]
openmax: Buffer flag processing scheme change after EOS.

Add tag INDEX_AFTER_EOS = 0xE05.
In the case of after EOS,
1. MFC DD will return INDEX_AFTER_EOS tag.
2. OpenMAX will detect INDEX_AFTER_EOS tag.
3. OpenMAX will return buffer(with timestame = 0x0 and flags = 0x0).

< Without patch >
Sometimes, OpenMAX will return EOS flag twice when using ACodec.

Depends On
 - Change I57265bc8: MFC: MEDIA: EXYNOS: Change default tag of EOS

Change-Id: I5090887eb626fba14d5cba946ff71e3709ec4cfe
Signed-off-by: SeungBeom Kim <sbcrux.kim@samsung.com>
11 years agoopenmax: Change DPB setting scheme.
SeungBeom Kim [Tue, 19 Feb 2013 04:56:51 +0000 (13:56 +0900)]
openmax: Change DPB setting scheme.

Change DPB setting scheme on buffer shared mode for init and buffer reconfigure.
In the case of DPB buffer setting to MFC FW before incomming buffer to OpenMAX component,
Need for the Improved stability of buffer processing.

Depends On
 - Change-Id: If008de62a40baa262085fcf9dbadfe4b80ac2619

Change-Id: Iae6843dfc23708f4b80faa1fceeeccef09148482
Signed-off-by: SeungBeom Kim <sbcrux.kim@samsung.com>
11 years agocore: resolved prevent defect
Taehwan Kim [Wed, 13 Feb 2013 10:21:33 +0000 (10:21 +0000)]
core: resolved prevent defect

- 17726 : Null pointer dereferences

Change-Id: Id836e6fe16c4520941a03163b32516658d5e6947
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovideo/common: resolved prevent defects
Taehwan Kim [Wed, 13 Feb 2013 08:05:23 +0000 (08:05 +0000)]
video/common: resolved prevent defects

- 15864 : Null pointer dereferences

- 16787, 16788, 16790, 16791, 16793, 16794, 16795
: Memory-illegal access

Change-Id: I7d7f0e50f374115c80b60db60d7a6c866e526fed
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agobaseport: Error contrast codes.
SeungBeom Kim [Mon, 18 Feb 2013 05:03:19 +0000 (14:03 +0900)]
baseport: Error contrast codes.

Add NULL pointer check before buffer return.

Change-Id: I7a171150f31c3518c7bf4142aac59a11b103874d
Signed-off-by: SeungBeom Kim <sbcrux.kim@samsung.com>
11 years agovdec: added OMX_IndexParamSetDTSMode support
Jinsung Yang [Fri, 1 Feb 2013 07:09:41 +0000 (16:09 +0900)]
vdec: added OMX_IndexParamSetDTSMode support

typedef struct _EXYNOS_OMX_VIDEO_PARAM_DTSMODE {
    OMX_U32         nSize;
    OMX_VERSIONTYPE nVersion;
    OMX_BOOL        bDTSMode;
} EXYNOS_OMX_VIDEO_PARAM_DTSMODE;

- bDTSMode
    true  : DTS(Decorder Time Stamp)
    false : PTS(Presentation Time Stamp)

Change-Id: I9a7591ff8ebd9eb4fb3a2dbdd1dba7f6d2f549e8
Signed-off-by: Jinsung Yang <jsgood.yang@samsung.com>
11 years agovenc: changed file property
Taehwan Kim [Fri, 1 Feb 2013 06:41:12 +0000 (06:41 +0000)]
venc: changed file property

file property is changed to unix from dos.

Change-Id: Iea921d421e484f04c9347e9d43f91d3f7145d5a5
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovenc: added OMX_IndexParamVideoIntraRefresh support
Taehwan Kim [Thu, 17 Jan 2013 02:08:56 +0000 (02:08 +0000)]
venc: added OMX_IndexParamVideoIntraRefresh support

support "Cyclic intra-refresh" only.
doesn't support "Adaptive intra-refresh".

Change-Id: I50722f5bfe8729243395123f998025e6c655b7bd
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovdec: cleaned up code
Taehwan Kim [Fri, 1 Feb 2013 04:47:16 +0000 (04:47 +0000)]
vdec: cleaned up code

Change-Id: I59f523993ed9638b9640d6fc9877f662c057f639
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovdec: changed buffer count related with MAX DPB
Taehwan Kim [Fri, 1 Feb 2013 01:21:48 +0000 (01:21 +0000)]
vdec: changed buffer count related with MAX DPB

number of buffer is modified
to nBufferCountActual from maxDPBNum
in share mode case.

Change-Id: I07e5267ab80bf7b32442b8a4ebfba39cfe52131c
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agoh264enc/osal: modified OMX_IndexParamPrependSPSPPSToIDR support
Taehwan Kim [Thu, 31 Jan 2013 10:04:06 +0000 (10:04 +0000)]
h264enc/osal: modified OMX_IndexParamPrependSPSPPSToIDR support

in case of "OMX.google.android.index.prependSPSPPSToIDRFrames",
android uses the PrependSPSPPSToIDRFramesParams structure.
PrependSPSPPSToIDR support is decided by bEnable value.

struct PrependSPSPPSToIDRFramesParams {
    OMX_U32 nSize;
    OMX_VERSIONTYPE nVersion;
    OMX_BOOL bEnable;
};

Change-Id: I7c65cd8510d2446061f2f18402f2288c274c6a53
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agoexynos_omx: Add secure encode component.
SeungBeom Kim [Fri, 25 Jan 2013 01:15:14 +0000 (10:15 +0900)]
exynos_omx: Add secure encode component.

Add secure encode component for WFD.
Input buffer
 - Metadata : kMetadataBufferTypeCameraSource with FD(Secure buffer).
Output buffer
 - FD(Secure buffer) : pBuffer of OMX_BUFFERHEADERTYPE is FD.

Change-Id: Ie9f70da1101649d553669ad6044d77000eb987d3
Signed-off-by: SeungBeom Kim <sbcrux.kim@samsung.com>
11 years agovdec: fixed memory type problem in DRM case
Taehwan Kim [Wed, 30 Jan 2013 00:12:09 +0000 (00:12 +0000)]
vdec: fixed memory type problem in DRM case

must to use the SECURE_MEMORY type in DRM case.
but, the memory type has been overwritten
by other condition.
fixed this problem.

Change-Id: I8b2f8519c09425b2355e38c81fa87ed514451c03
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovdec: fixed reinput at output problem
Taehwan Kim [Tue, 29 Jan 2013 11:21:12 +0000 (11:21 +0000)]
vdec: fixed reinput at output problem

even though that FillThisBuffer isn't needed
when stopping drop logic,
has done the FillThisBuffer.
moved it to correct condition.

Change-Id: Idb624ea34837beb1c89b83641c9a33454c1c168b
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovdec: fixed the mapper.lock failed problem
Taehwan Kim [Tue, 29 Jan 2013 10:11:41 +0000 (10:11 +0000)]
vdec: fixed the mapper.lock failed problem

If needs the PortSettingsChanged event,
it is possible to be used old width and height
in LockANB function,
before reconfiguring an output buffer.
added to check an exceptionFlag in LockANB function.

Change-Id: I57f2b98beed0050a87f0ff13ab892f6c6d5ce7c4
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agoosal: changed a flag value in case of CONTIG_MEM
Taehwan Kim [Tue, 29 Jan 2013 23:45:46 +0000 (23:45 +0000)]
osal: changed a flag value in case of CONTIG_MEM

changed to ION_EXYNOS_MFC_INPUT_MASK from 0.
It means that first try to allocate a buffer
in area of reserved memory.

Change-Id: I90173b0d0423e6481d712f45223c7ae9d3377e64
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovdec: Remove DPB plane size alignment calculation dependency
Satish Kumar Reddy [Thu, 3 Jan 2013 03:54:09 +0000 (03:54 +0000)]
vdec: Remove DPB plane size alignment calculation dependency

DPB plane size alignment calculation is removed from exynos OMX
and instead aligned size information is retrieved from MFC driver

Change-Id: I1fb9d748532022da02c0caf340f3e961119d1113
Signed-off-by: Satish Kumar Reddy <palli.satish@samsung.com>
11 years agowmvdec: modified NEED_TIMESTAMP_REORDER handling
Taehwan Kim [Wed, 16 Jan 2013 08:08:29 +0000 (08:08 +0000)]
wmvdec: modified NEED_TIMESTAMP_REORDER handling

if there is a skipping frame before the EOS frame,
used the already saved index about timestamp.
so, couldn't notice the EOS flag.

this patch fixes the above problem.

Change-Id: Ib2d7329f4e3c3f4f46fa5bc92bcbd3371af7a09e
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovideo: added OMX_IndexVendorGetBufferFD support
Taehwan Kim [Thu, 3 Jan 2013 10:37:45 +0000 (10:37 +0000)]
video: added OMX_IndexVendorGetBufferFD support

in order to get the FD about buffer,
added OMX_IndexVendorGetBufferFD support.

Change-Id: I2034d97c7afcdabe41876e08380ec4f8b120f52f
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovideo: added OMX_IndexVendorNeedContigMemory support
Taehwan Kim [Thu, 3 Jan 2013 09:12:54 +0000 (09:12 +0000)]
video: added OMX_IndexVendorNeedContigMemory support

in order to set to allocate physically contig. buffer,
added OMX_IndexVendorNeedContigMemory support.

Change-Id: I27660a4b135d6c27c9eedd749cd2665157d72e70
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agocommon: added bNeedContigMem in port
Taehwan Kim [Thu, 3 Jan 2013 09:08:23 +0000 (09:08 +0000)]
common: added bNeedContigMem in port

If needs to allocate physically contiguous buffer,
bNeedContigMem is true.

Change-Id: I72ac999e45f3206b4852e78e6eb7e1a812fd3dbf
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovdec/venc: modified memory type in CSC
Taehwan Kim [Thu, 3 Jan 2013 08:09:49 +0000 (08:09 +0000)]
vdec/venc: modified memory type in CSC

fixed to use CSC_MEMORY_DMABUF before.
If use the HW-CSC in case of non-DMA_BUF environment,
needs to set CSC_MEMORY_USERPTR.

Change-Id: I23656f49cf762e507e8a11abc2047e99075e721b
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agoosal: added CONTIG_MEMORY type
Taehwan Kim [Thu, 3 Jan 2013 09:01:43 +0000 (09:01 +0000)]
osal: added CONTIG_MEMORY type

If use the CONTIG_MEMORY,
OMX allocates the buffer that is contiguous physically.

Change-Id: I7bbf08578b33eeb4f8ee7dd019323197fca54aae
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agoadec: added the initial part for port flush status
Kim Sangyub [Tue, 15 Jan 2013 07:46:17 +0000 (07:46 +0000)]
adec: added the initial part for port flush status

Before Input Buffer is taken from the queue, port flush status is checked,
however, the current port flush status is always false.
so added to set the initial part

Change-Id: I86c715f1df751a34fb03b52b44587193db0810ad
Signed-off-by: Kim Sangyub <sangyub.kim@samsung.com>
11 years agoh264enc: Support prepending SPS/PPS to every IDR/I frames
Jinsung Yang [Sun, 30 Dec 2012 06:43:40 +0000 (15:43 +0900)]
h264enc: Support prepending SPS/PPS to every IDR/I frames

Encoder enables the feature prepending SPS/PPS to every IDR/I frames
when called google extension index
"OMX.google.android.index.prependSPSPPSToIDRFrames".

Change-Id: I30e31f7b6631b399b16010acc8650ed071d45c71
Signed-off-by: Jinsung Yang <jsgood.yang@samsung.com>
11 years agovideo: added USE_CSC_HW macro
Taehwan Kim [Fri, 28 Dec 2012 02:26:22 +0000 (02:26 +0000)]
video: added USE_CSC_HW macro

Change-Id: I64609678de85d69b108c2c32158901f7ca00c327
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agoosal: added USE_IMPROVED_BUFFER support
Taehwan Kim [Fri, 28 Dec 2012 02:10:19 +0000 (02:10 +0000)]
osal: added USE_IMPROVED_BUFFER support

in case of USE_IMPROVED_BUFFER,
flag about SYSTEM_MEMORY is changed
for improved performance.

Change-Id: Id0c7c194e76b67a1a0f032d1909550e4b1631be4
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovideo: changed the memory type about ION
Taehwan Kim [Wed, 26 Dec 2012 06:56:50 +0000 (06:56 +0000)]
video: changed the memory type about ION

memory type about ION is changed
to SYSTEM_MEMORY from NORMAL_MEMORY.

Change-Id: I6b1703fd4a1fc0969bbf31e71d30df49fb927f67
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agoh264dec: fixed the DRC handling problem
Taehwan Kim [Fri, 28 Dec 2012 08:35:33 +0000 (08:35 +0000)]
h264dec: fixed the DRC handling problem

happened re-setup about DPB in SHARE MODE,
before generating the OMX_EventPortSettingsChanged event
in case of DRC.
solved to use exceptionFlag.

Change-Id: I363eeb59e170ebaa999bd486e4a6a31333957fe8
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agoRevert "[HACK] venc: support USERPTR about input"
Taehwan Kim [Mon, 31 Dec 2012 00:23:28 +0000 (00:23 +0000)]
Revert "[HACK] venc: support USERPTR about input"

This reverts commit f27148d67da2a9a308adcb4d5f192ef69e7bbe9c.

Change-Id: Iacde17dca45d4e0034b7119d39ce41e8db87cbcb
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agoosal: modified mem_cnt calculation
Taehwan Kim [Fri, 28 Dec 2012 06:01:35 +0000 (06:01 +0000)]
osal: modified mem_cnt calculation

despite isn't owner of memory, mem_cnt is decreased.
this problem is fixed.
and seperated alloc/free and map/unmap.

Change-Id: I11b434aaad40362371b7484d9bfb922dbd46b766
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovenc: cleaned up related code with codec buffer
Taehwan Kim [Fri, 28 Dec 2012 00:32:41 +0000 (00:32 +0000)]
venc: cleaned up related code with codec buffer

Change-Id: Id0d878e507e323e3987f05a1db80114290fa3273
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovc1dec: WMV decoder EOS handling fix
Taehwan Kim [Fri, 14 Dec 2012 04:03:20 +0000 (04:03 +0000)]
vc1dec: WMV decoder EOS handling fix

This patch solves eos event not returned issue

Change-Id: Ibeb571b24172f60f9cd11d4f5c22162018d77b45
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
11 years agovenc: added UnlockANBHandle in video encode component.
SeungBeom Kim [Thu, 20 Dec 2012 02:51:38 +0000 (11:51 +0900)]
venc: added UnlockANBHandle in video encode component.

added UnlockANBHandle in video encode component
to support sharing gralloc buffer about input port.
locked ANB is needed unlock before returning.

Change-Id: Ibaf65e50134b3fcc96ad37f49cad5ac6b631e382
Signed-off-by: SeungBeom Kim <sbcrux.kim@samsung.com>
11 years agoRevert "venc: added UnlockANB in FlushPort sequence"
Taehwan Kim [Tue, 18 Dec 2012 00:26:39 +0000 (00:26 +0000)]
Revert "venc: added UnlockANB in FlushPort sequence"

This reverts commit a1b54e5db6a1ed43c0a838bd442a77f340113ab3.

Change-Id: I23ca829daa2b7842eccf2f8d5a89ff510ce97551

11 years agovenc: added UnlockANB in FlushPort sequence
Taehwan Kim [Fri, 7 Dec 2012 01:20:09 +0000 (01:20 +0000)]
venc: added UnlockANB in FlushPort sequence

added UnlockANB in FlushPort sequence
to support sharing gralloc buffer about input port.
locked ANB is needed unlock before returning.

Change-Id: I27c7e4cd8fa7c90ad4015429d1d02fcc1a49ea04
Signed-off-by: Taehwan Kim <t_h.kim@samsung.com>
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>
12 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>
12 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>
12 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>
12 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>
12 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>
12 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>
12 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>
12 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>
12 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>
12 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