Merge "media: update c2 manifest xml"
diff --git a/conf_files/atoll/media_codecs.xml b/conf_files/atoll/media_codecs.xml
index 5ba36ab..3922409 100644
--- a/conf_files/atoll/media_codecs.xml
+++ b/conf_files/atoll/media_codecs.xml
@@ -202,7 +202,7 @@
<Limit name="bitrate" range="1-2000000" />
<Limit name="frame-rate" range="1-30" />
<Limit name="concurrent-instances" max="16" />
- <Limit name="performance-point-864x480" value="30" />
+ <Limit name="performance-point-720x480" value="30" />
</MediaCodec>
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" type="video/mp4v-es" >
<Quirk name="requires-allocate-on-input-ports" />
@@ -215,7 +215,7 @@
<Limit name="bitrate" range="1-8000000" />
<Limit name="frame-rate" range="1-30" />
<Limit name="concurrent-instances" max="16" />
- <Limit name="performance-point-864x480" value="30" />
+ <Limit name="performance-point-720x480" value="30" />
</MediaCodec>
</Encoders>
<Decoders>
@@ -371,7 +371,7 @@
<Limit name="frame-rate" range="1-30" />
<Feature name="adaptive-playback" />
<Limit name="concurrent-instances" max="16" />
- <Limit name="performance-point-864x480" value="30" />
+ <Limit name="performance-point-720x480" value="30" />
</MediaCodec>
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es">
<Quirk name="requires-allocate-on-input-ports" />
diff --git a/conf_files/atoll/media_codecs_performance.xml b/conf_files/atoll/media_codecs_performance.xml
index cec4bd9..bd31f08 100644
--- a/conf_files/atoll/media_codecs_performance.xml
+++ b/conf_files/atoll/media_codecs_performance.xml
@@ -32,16 +32,16 @@
<Limit name="measured-frame-rate-720x480" range="121-121" />
<Limit name="measured-frame-rate-1280x720" range="49-49" />
<Limit name="measured-frame-rate-1920x1080" range="16-45" />
- <Limit name="measured-frame-rate-3840x2160" range="6-24" />
+ <Limit name="measured-frame-rate-3840x2160" range="20-28" />
</MediaCodec>
- <MediaCodec name="OMX.qcom.video.encoder.h263" type="video/3gpp" update="true">
- <Limit name="measured-frame-rate-176x144" range="303-303" />
- <Limit name="measured-frame-rate-352x288" range="259-259" />
+ <MediaCodec name="OMX.qcom.video.encoder.h263sw" type="video/3gpp" update="true">
+ <Limit name="measured-frame-rate-176x144" range="79-117" />
+ <Limit name="measured-frame-rate-352x288" range="59-84" />
</MediaCodec>
- <MediaCodec name="OMX.qcom.video.encoder.mpeg4" type="video/mp4v-es" update="true">
- <Limit name="measured-frame-rate-176x144" range="299-299" />
- <Limit name="measured-frame-rate-352x288" range="245-245" />
- <Limit name="measured-frame-rate-640x480" range="148-148" />
+ <MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" type="video/mp4v-es" update="true">
+ <Limit name="measured-frame-rate-176x144" range="80-102" />
+ <Limit name="measured-frame-rate-352x288" range="55-79" />
+ <Limit name="measured-frame-rate-640x480" range="39-58" />
</MediaCodec>
<MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" update="true">
<Limit name="measured-frame-rate-320x180" range="266-266" />
@@ -67,28 +67,50 @@
<Limit name="measured-frame-rate-1280x720" range="17-24" />
<Limit name="measured-frame-rate-1920x1080" range="8-12" />
</MediaCodec>
+ <MediaCodec name="c2.android.avc.encoder" type="video/avc" update="true">
+ <Limit name="measured-frame-rate-320x240" range="196-266" />
+ <Limit name="measured-frame-rate-720x480" range="64-92" />
+ <Limit name="measured-frame-rate-1280x720" range="38-60" />
+ <Limit name="measured-frame-rate-1920x1080" range="23-33" />
+ </MediaCodec>
+ <MediaCodec name="c2.android.hevc.encoder" type="video/hevc" update="true">
+ <Limit name="measured-frame-rate-320x240" range="22-36" />
+ </MediaCodec>
+ <MediaCodec name="c2.android.h263.encoder" type="video/3gpp" update="true">
+ <Limit name="measured-frame-rate-176x144" range="215-333" />
+ </MediaCodec>
+ <MediaCodec name="c2.android.mpeg4.encoder" type="video/mp4v-es" update="true">
+ <Limit name="measured-frame-rate-176x144" range="222-311" />
+ </MediaCodec>
+ <MediaCodec name="c2.android.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
+ <Limit name="measured-frame-rate-320x180" range="120-187" />
+ <Limit name="measured-frame-rate-640x360" range="87-123" />
+ <Limit name="measured-frame-rate-1280x720" range="21-31" />
+ <Limit name="measured-frame-rate-1920x1080" range="19-28" />
+ </MediaCodec>
</Encoders>
<Decoders>
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" update="true">
- <Limit name="measured-frame-rate-320x240" range="221-221" />
- <Limit name="measured-frame-rate-720x480" range="156-156" />
- <Limit name="measured-frame-rate-1280x720" range="111-111" />
- <Limit name="measured-frame-rate-1920x1088" range="71-71" />
+ <Limit name="measured-frame-rate-320x240" range="305-494" />
+ <Limit name="measured-frame-rate-720x480" range="310-488" />
+ <Limit name="measured-frame-rate-1280x720" range="177-275" />
+ <Limit name="measured-frame-rate-1920x1088" range="93-146" />
</MediaCodec>
<MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" update="true">
<Limit name="measured-frame-rate-352x288" range="222-222" />
- <Limit name="measured-frame-rate-720x480" range="165-165" />
- <Limit name="measured-frame-rate-1280x720" range="88-88" />
- <Limit name="measured-frame-rate-1920x1080" range="56-56" />
- <Limit name="measured-frame-rate-3840x2160" range="12-12" />
+ <Limit name="measured-frame-rate-720x480" range="268-360" />
+ <Limit name="measured-frame-rate-1280x720" range="191-268" />
+ <Limit name="measured-frame-rate-1920x1080" range="94-147" />
+ <Limit name="measured-frame-rate-3840x2160" range="29-41" />
</MediaCodec>
- <MediaCodec name="OMX.qcom.video.decoder.h263" type="video/3gpp" update="true">
+ <MediaCodec name="OMX.qti.video.decoder.h263sw" type="video/3gpp" update="true">
<Limit name="measured-frame-rate-176x144" range="356-356" />
<Limit name="measured-frame-rate-352x288" range="292-292" />
</MediaCodec>
- <MediaCodec name="OMX.qcom.video.decoder.mpeg4" type="video/mp4v-es" update="true">
- <Limit name="measured-frame-rate-176x144" range="146-146" />
- <Limit name="measured-frame-rate-480x360" range="145-145" />
+ <MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es" update="true">
+ <Limit name="measured-frame-rate-176x144" range="203-431" />
+ <Limit name="measured-frame-rate-480x360" range="190-450" />
+ <Limit name="measured-frame-rate-1280x720" range="160-217" />
</MediaCodec>
<MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" update="true">
<Limit name="measured-frame-rate-320x240" range="337-337" />
@@ -137,5 +159,36 @@
<Limit name="measured-frame-rate-1280x720" range="32-40" />
<Limit name="measured-frame-rate-1920x1080" range="19-23" />
</MediaCodec>
+ <MediaCodec name="c2.android.avc.decoder" type="video/avc" update="true">
+ <Limit name="measured-frame-rate-320x240" range="143-204" />
+ <Limit name="measured-frame-rate-720x480" range="48-76" />
+ <Limit name="measured-frame-rate-1280x720" range="20-29" />
+ <Limit name="measured-frame-rate-1920x1080" range="10-15" />
+ </MediaCodec>
+ <MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true">
+ <Limit name="measured-frame-rate-352x288" range="120-290" />
+ <Limit name="measured-frame-rate-640x360" range="66-161" />
+ <Limit name="measured-frame-rate-720x480" range="99-142" />
+ <Limit name="measured-frame-rate-1280x720" range="51-73" />
+ <Limit name="measured-frame-rate-1920x1080" range="26-38" />
+ </MediaCodec>
+ <MediaCodec name="c2.android.h263.decoder" type="video/3gpp" update="true">
+ <Limit name="measured-frame-rate-176x144" range="333-920" />
+ <Limit name="measured-frame-rate-352x288" range="438-584" />
+ </MediaCodec>
+ <MediaCodec name="c2.android.mpeg4.decoder" type="video/mp4v-es" update="true">
+ <Limit name="measured-frame-rate-176x144" range="554-876" />
+ </MediaCodec>
+ <MediaCodec name="c2.android.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
+ <Limit name="measured-frame-rate-320x180" range="514-727" />
+ <Limit name="measured-frame-rate-640x360" range="143-222" />
+ <Limit name="measured-frame-rate-1920x1080" range="22-31" />
+ </MediaCodec>
+ <MediaCodec name="c2.android.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
+ <Limit name="measured-frame-rate-320x180" range="432-576" />
+ <Limit name="measured-frame-rate-640x360" range="126-179" />
+ <Limit name="measured-frame-rate-1280x720" range="39-75" />
+ <Limit name="measured-frame-rate-1920x1080" range="25-36" />
+ </MediaCodec>
</Decoders>
</MediaCodecs>
diff --git a/conf_files/atoll/media_codecs_vendor.xml b/conf_files/atoll/media_codecs_vendor.xml
index 3e4be53..7fea019 100644
--- a/conf_files/atoll/media_codecs_vendor.xml
+++ b/conf_files/atoll/media_codecs_vendor.xml
@@ -213,7 +213,7 @@
<Limit name="bitrate" range="1-2000000" />
<Limit name="frame-rate" range="1-30" />
<Limit name="concurrent-instances" max="16" />
- <Limit name="performance-point-864x480" value="30" />
+ <Limit name="performance-point-720x480" value="30" />
</MediaCodec>
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" type="video/mp4v-es" >
<Quirk name="requires-allocate-on-input-ports" />
@@ -226,7 +226,7 @@
<Limit name="bitrate" range="1-8000000" />
<Limit name="frame-rate" range="1-30" />
<Limit name="concurrent-instances" max="16" />
- <Limit name="performance-point-864x480" value="30" />
+ <Limit name="performance-point-720x480" value="30" />
</MediaCodec>
</Encoders>
<Decoders>
@@ -382,7 +382,7 @@
<Limit name="frame-rate" range="1-30" />
<Feature name="adaptive-playback" />
<Limit name="concurrent-instances" max="16" />
- <Limit name="performance-point-864x480" value="30" />
+ <Limit name="performance-point-720x480" value="30" />
</MediaCodec>
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es">
<Quirk name="requires-allocate-on-input-ports" />
diff --git a/conf_files/sm6150/media_codecs_vendor_sdmmagpie_v0.xml b/conf_files/sm6150/media_codecs_vendor_sdmmagpie_v0.xml
index 185ed28..088c1bf 100644
--- a/conf_files/sm6150/media_codecs_vendor_sdmmagpie_v0.xml
+++ b/conf_files/sm6150/media_codecs_vendor_sdmmagpie_v0.xml
@@ -204,7 +204,7 @@
<Quirk name="requires-allocate-on-input-ports" />
<Quirk name="requires-allocate-on-output-ports" />
<Quirk name="requires-loaded-to-idle-after-allocation" />
- <Limit name="size" min="512x512" max="4096x2160" />
+ <Limit name="size" min="512x512" max="8192x8192" />
<Limit name="frame-rate" range="1-20" />
<Limit name="concurrent-instances" max="6" />
<Limit name="quality" range="0-100" default="80" />
diff --git a/conf_files/sm6150/media_codecs_vendor_sdmmagpie_v1.xml b/conf_files/sm6150/media_codecs_vendor_sdmmagpie_v1.xml
index 185ed28..088c1bf 100644
--- a/conf_files/sm6150/media_codecs_vendor_sdmmagpie_v1.xml
+++ b/conf_files/sm6150/media_codecs_vendor_sdmmagpie_v1.xml
@@ -204,7 +204,7 @@
<Quirk name="requires-allocate-on-input-ports" />
<Quirk name="requires-allocate-on-output-ports" />
<Quirk name="requires-loaded-to-idle-after-allocation" />
- <Limit name="size" min="512x512" max="4096x2160" />
+ <Limit name="size" min="512x512" max="8192x8192" />
<Limit name="frame-rate" range="1-20" />
<Limit name="concurrent-instances" max="6" />
<Limit name="quality" range="0-100" default="80" />
diff --git a/mm-video-v4l2/vidc/venc/src/omx_video_encoder.cpp b/mm-video-v4l2/vidc/venc/src/omx_video_encoder.cpp
index 57e66a0..7eb5bf1 100644
--- a/mm-video-v4l2/vidc/venc/src/omx_video_encoder.cpp
+++ b/mm-video-v4l2/vidc/venc/src/omx_video_encoder.cpp
@@ -248,8 +248,25 @@
codec_type = OMX_VIDEO_CodingHEVC;
} else if (!strncmp((char *)m_nkind, "OMX.qcom.video.encoder.heic", \
OMX_MAX_STRINGNAME_SIZE)) {
- strlcpy((char *)m_cRole, "video_encoder.hevc", OMX_MAX_STRINGNAME_SIZE);
- codec_type = OMX_VIDEO_CodingImageHEIC;
+ char platform_name[PROP_VALUE_MAX] = {0};
+ char version[PROP_VALUE_MAX] = {0};
+ property_get("ro.board.platform", platform_name, "0"); //HW ID
+ if (!strcmp(platform_name, "sm6150"))
+ {
+ if (property_get("vendor.media.target.version", version, "0") &&
+ (atoi(version) == 0))
+ {
+ //Sku version, HEIC is disabled on this target
+ DEBUG_PRINT_ERROR("heic encoder not supported on this target");
+ eRet = OMX_ErrorInvalidComponentName;
+ } else {
+ strlcpy((char *)m_cRole, "video_encoder.hevc", OMX_MAX_STRINGNAME_SIZE);
+ codec_type = OMX_VIDEO_CodingImageHEIC;
+ }
+ } else {
+ strlcpy((char *)m_cRole, "video_encoder.hevc", OMX_MAX_STRINGNAME_SIZE);
+ codec_type = OMX_VIDEO_CodingImageHEIC;
+ }
} else if (!strncmp((char *)m_nkind, "OMX.qcom.video.encoder.hevc.secure", \
OMX_MAX_STRINGNAME_SIZE)) {
strlcpy((char *)m_cRole, "video_encoder.hevc", OMX_MAX_STRINGNAME_SIZE);
@@ -273,6 +290,11 @@
eRet = OMX_ErrorInvalidComponentName;
}
}
+ else if (!strcmp(platform_name, "atoll")) {
+ //TME is enabled on ATOLL
+ strlcpy((char *)m_cRole, "video_encoder.tme", OMX_MAX_STRINGNAME_SIZE);
+ codec_type = (OMX_VIDEO_CODINGTYPE)QOMX_VIDEO_CodingTME;
+ }
else {
DEBUG_PRINT_LOW("TME is not supported");
eRet = OMX_ErrorInvalidComponentName;