diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2018-04-26 04:35:39 -0600 |
---|---|---|
committer | Linux Build Service Account <lnxbuild@localhost> | 2018-04-26 04:35:39 -0600 |
commit | 9cd7ef4124f04a59cfbfbee540fdf3e6bd0cb13d (patch) | |
tree | 8ebd668dcdcf41f91d423c345b4b42f3488c31b0 | |
parent | f831a9ce143e8ba0cdfce0c2bb058ab573f9b41c (diff) | |
parent | 90cb645991bc04da228cfbdd085e7cdce19ee3a0 (diff) | |
download | android_hardware_qcom_media-9cd7ef4124f04a59cfbfbee540fdf3e6bd0cb13d.tar.gz android_hardware_qcom_media-9cd7ef4124f04a59cfbfbee540fdf3e6bd0cb13d.tar.bz2 android_hardware_qcom_media-9cd7ef4124f04a59cfbfbee540fdf3e6bd0cb13d.zip |
Merge 90cb645991bc04da228cfbdd085e7cdce19ee3a0 on remote branch
Change-Id: I2be24692db58ae8b171f3e6d5b66a961c181b34f
-rw-r--r-- | mm-core/inc/QOMX_AudioExtensions.h | 16 | ||||
-rw-r--r-- | mm-core/inc/QOMX_AudioIndexExtensions.h | 3 | ||||
-rw-r--r-- | mm-core/src/msm8998/registry_table.c | 18 | ||||
-rw-r--r-- | mm-core/src/sdm660/registry_table_android.c | 16 | ||||
-rw-r--r-- | mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp | 23 |
5 files changed, 50 insertions, 26 deletions
diff --git a/mm-core/inc/QOMX_AudioExtensions.h b/mm-core/inc/QOMX_AudioExtensions.h index 71797b1b..dab06142 100644 --- a/mm-core/inc/QOMX_AudioExtensions.h +++ b/mm-core/inc/QOMX_AudioExtensions.h @@ -1,5 +1,5 @@ /*-------------------------------------------------------------------------- -Copyright (c) 2009, 2011, 2015, 2017 The Linux Foundation. All rights reserved. +Copyright (c) 2009, 2011, 2015, 2017-2018 The Linux Foundation. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: @@ -98,6 +98,7 @@ typedef enum QOMX_AUDIO_CODINGTYPE { QOMX_AUDIO_CodingEVRCB = 0x7F000001, QOMX_AUDIO_CodingEVRCWB = 0x7F000002, QOMX_AUDIO_CodingFLAC = 0x7F000003, + QOMX_AUDIO_CodingMPEGH = 0x7F000004, QOMX_AUDIO_CodingMax = 0x7FFFFFFF }QOMX_AUDIO_CODINGTYPE; @@ -581,6 +582,19 @@ typedef struct QOMX_AUDIO_PARAM_DSD_TYPE { OMX_U32 nBitsPerSample; } QOMX_AUDIO_PARAM_DSD_TYPE; +typedef struct QOMX_AUDIO_PARAM_MPEGH_TYPE { + OMX_U32 nSize; + OMX_VERSIONTYPE nVersion; + OMX_U32 nPortIndex; + OMX_U32 nSampleRate; /** Sent In-Band as well and can be redundant For Decoder, **/ + OMX_U32 nBitRate; /** Sent In-Band as well and can be redundant For Decoder, **/ + OMX_U32 nSamplesPerFrame; /** Sent In-Band as well and can be redundant For Decoder, **/ + OMX_U32 nDFrames; /** No of Dependent Frames; if 10;every 11 frame is seekable + - Specific to Encoder; Redundant for Decoder **/ + OMX_U32 nHOAOrder; /** HOA Order - Specific to Encoder; May be redundant for + Decoder **/ +} QOMX_AUDIO_PARAM_MPEGH_TYPE; + enum { kKeyIndexAlacFrameLength = 0, kKeyIndexAlacCompatibleVersion = 4, diff --git a/mm-core/inc/QOMX_AudioIndexExtensions.h b/mm-core/inc/QOMX_AudioIndexExtensions.h index 34e4667c..8e83c076 100644 --- a/mm-core/inc/QOMX_AudioIndexExtensions.h +++ b/mm-core/inc/QOMX_AudioIndexExtensions.h @@ -1,5 +1,5 @@ /*-------------------------------------------------------------------------- -Copyright (c) 2009, 2015 The Linux Foundation. All rights reserved. +Copyright (c) 2009, 2015, 2018 The Linux Foundation. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: @@ -75,6 +75,7 @@ typedef enum QOMX_AUDIO_EXTENSIONS_INDEXTYPE QOMX_IndexParamAudioApe = 0x7F200009, /** "OMX.Qualcomm.index.audio.ape" */ QOMX_IndexParamAudioFlacDec = 0x7F20000A, /** "OMX.Qualcomm.index.audio.flacdec**/ QOMX_IndexParamAudioDsdDec = 0x7F20000B, /** "OMX.Qualcomm.index.audio.Dsddec**/ + QOMX_IndexParamAudioMpegh = 0x7F20000C, /** "OMX.Qualcomm.index.audio.mpegh**/ QOMX_IndexParamAudioUnused = 0x7F2FFFFF } QOMX_AUDIO_EXTENSIONS_INDEXTYPE; diff --git a/mm-core/src/msm8998/registry_table.c b/mm-core/src/msm8998/registry_table.c index be1e2260..8527a032 100644 --- a/mm-core/src/msm8998/registry_table.c +++ b/mm-core/src/msm8998/registry_table.c @@ -1,5 +1,5 @@ /*-------------------------------------------------------------------------- -Copyright (c) 2016-2018, The Linux Foundation. All rights reserved. +Copyright (c) 2016 - 2018, The Linux Foundation. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are @@ -481,6 +481,22 @@ omx_core_cb_type core[] = } }, { + "OMX.qcom.audio.encoder.mpegh", + NULL, // Create instance function + // Unique instance handle + { + NULL, + NULL, + NULL, + NULL + }, + NULL, // Shared object library handle + "libOmxMpeghEncSw.so", + { + "audio_encoder.mpegh" + } + }, + { "OMX.qcom.audio.encoder.evrc", NULL, // Create instance function // Unique instance handle diff --git a/mm-core/src/sdm660/registry_table_android.c b/mm-core/src/sdm660/registry_table_android.c index e6c8d24e..be0cfb26 100644 --- a/mm-core/src/sdm660/registry_table_android.c +++ b/mm-core/src/sdm660/registry_table_android.c @@ -608,6 +608,22 @@ omx_core_cb_type core[] = } }, { + "OMX.qcom.audio.encoder.mpegh", + NULL, // Create instance function + // Unique instance handle + { + NULL, + NULL, + NULL, + NULL + }, + NULL, // Shared object library handle + "libOmxMpeghEncSw.so", + { + "audio_encoder.mpegh" + } + }, + { "OMX.qcom.audio.encoder.evrc", NULL, // Create instance function // Unique instance handle diff --git a/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp b/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp index 0c690a32..194bd0f0 100644 --- a/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp +++ b/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp @@ -2007,32 +2007,9 @@ bool venc_dev::venc_set_param(void *paramData, OMX_INDEXTYPE index) } m_sOutput_buff_property.datasize = fmt.fmt.pix_mp.plane_fmt[0].sizeimage; - - m_sOutput_buff_property.actualcount = portDefn->nBufferCountActual; - bufreq.memory = V4L2_MEMORY_USERPTR; - bufreq.count = portDefn->nBufferCountActual; - bufreq.type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE; - - if (ioctl(m_nDriver_fd,VIDIOC_REQBUFS, &bufreq)) { - DEBUG_PRINT_ERROR("VIDIOC_REQBUFS CAPTURE_MPLANE Failed"); - return false; - } - - if (bufreq.count == portDefn->nBufferCountActual) - m_sOutput_buff_property.mincount = m_sOutput_buff_property.actualcount = bufreq.count; - - if (portDefn->nBufferCountActual >= m_sOutput_buff_property.mincount) - m_sOutput_buff_property.actualcount = portDefn->nBufferCountActual; - - if (fmt.fmt.pix_mp.num_planes > 1) - output_extradata_info.count = m_sOutput_buff_property.actualcount; - } - DEBUG_PRINT_LOW("input: actual: %u, min: %u, count_req: %u", (unsigned int)portDefn->nBufferCountActual, (unsigned int)m_sInput_buff_property.mincount, bufreq.count); - DEBUG_PRINT_LOW("Output: actual: %u, min: %u, count_req: %u", - (unsigned int)portDefn->nBufferCountActual, (unsigned int)m_sOutput_buff_property.mincount, bufreq.count); } else if (portDefn->nPortIndex == PORT_INDEX_OUT) { m_sVenc_cfg.dvs_height = portDefn->format.video.nFrameHeight; m_sVenc_cfg.dvs_width = portDefn->format.video.nFrameWidth; |