summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2018-04-26 04:35:39 -0600
committerLinux Build Service Account <lnxbuild@localhost>2018-04-26 04:35:39 -0600
commit9cd7ef4124f04a59cfbfbee540fdf3e6bd0cb13d (patch)
tree8ebd668dcdcf41f91d423c345b4b42f3488c31b0
parentf831a9ce143e8ba0cdfce0c2bb058ab573f9b41c (diff)
parent90cb645991bc04da228cfbdd085e7cdce19ee3a0 (diff)
downloadandroid_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.h16
-rw-r--r--mm-core/inc/QOMX_AudioIndexExtensions.h3
-rw-r--r--mm-core/src/msm8998/registry_table.c18
-rw-r--r--mm-core/src/sdm660/registry_table_android.c16
-rw-r--r--mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp23
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;