sm8250-common: copy common media configs
This commit is contained in:
parent
1945382c6e
commit
843a2147e4
491
media/media_codecs.xml
Normal file
491
media/media_codecs.xml
Normal file
@ -0,0 +1,491 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Copyright (C) 2012-2020 The Linux Foundation. All rights reserved.
|
||||
Not a contribution.
|
||||
Copyright (C) 2012-2013 The Android Open Source Project
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<!--
|
||||
<!DOCTYPE MediaCodecs [
|
||||
<!ELEMENT Include EMPTY>
|
||||
<!ATTLIST Include href CDATA #REQUIRED>
|
||||
<!ELEMENT MediaCodecs (Decoders|Encoders|Include)*>
|
||||
<!ELEMENT Decoders (MediaCodec|Include)*>
|
||||
<!ELEMENT Encoders (MediaCodec|Include)*>
|
||||
<!ELEMENT MediaCodec (Type|Quirk|Include)*>
|
||||
<!ATTLIST MediaCodec name CDATA #REQUIRED>
|
||||
<!ATTLIST MediaCodec type CDATA>
|
||||
<!ELEMENT Type EMPTY>
|
||||
<!ATTLIST Type name CDATA #REQUIRED>
|
||||
<!ELEMENT Quirk EMPTY>
|
||||
<!ATTLIST Quirk name CDATA #REQUIRED>
|
||||
]>
|
||||
|
||||
There's a simple and a complex syntax to declare the availability of a
|
||||
media codec:
|
||||
|
||||
A codec that properly follows the OpenMax spec and therefore doesn't have any
|
||||
quirks and that only supports a single content type can be declared like so:
|
||||
|
||||
<MediaCodec name="OMX.foo.bar" type="something/interesting" />
|
||||
|
||||
If a codec has quirks OR supports multiple content types, the following syntax
|
||||
can be used:
|
||||
|
||||
<MediaCodec name="OMX.foo.bar" >
|
||||
<Type name="something/interesting" />
|
||||
<Type name="something/else" />
|
||||
...
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Quirk name="output-buffers-are-unreadable" />
|
||||
</MediaCodec>
|
||||
|
||||
Only the three quirks included above are recognized at this point:
|
||||
|
||||
"requires-allocate-on-input-ports"
|
||||
must be advertised if the component does not properly support specification
|
||||
of input buffers using the OMX_UseBuffer(...) API but instead requires
|
||||
OMX_AllocateBuffer to be used.
|
||||
|
||||
"requires-allocate-on-output-ports"
|
||||
must be advertised if the component does not properly support specification
|
||||
of output buffers using the OMX_UseBuffer(...) API but instead requires
|
||||
OMX_AllocateBuffer to be used.
|
||||
|
||||
"output-buffers-are-unreadable"
|
||||
must be advertised if the emitted output buffers of a decoder component
|
||||
are not readable, i.e. use a custom format even though abusing one of
|
||||
the official OMX colorspace constants.
|
||||
Clients of such decoders will not be able to access the decoded data,
|
||||
naturally making the component much less useful. The only use for
|
||||
a component with this quirk is to render the output to the screen.
|
||||
Audio decoders MUST NOT advertise this quirk.
|
||||
Video decoders that advertise this quirk must be accompanied by a
|
||||
corresponding color space converter for thumbnail extraction,
|
||||
matching surfaceflinger support that can render the custom format to
|
||||
a texture and possibly other code, so just DON'T USE THIS QUIRK.
|
||||
|
||||
|
||||
-->
|
||||
<!--
|
||||
"performance-point"
|
||||
Vendor-guaranteed performance advertised to the applications
|
||||
<Limit name="performance-point-widthxheight" value="fps" />
|
||||
|
||||
-For each of the resolutions, the advertised fps is the max supported,
|
||||
with HW-friendly color format and considering video-only.
|
||||
-Performance for any intermediate resolution will be that of the
|
||||
next-higher-advertised-resolution.
|
||||
|
||||
standard sizes: 480p/576p (SD), 720p (HD), 1080p (FHD), 2160p (UHD)
|
||||
standard frame rates: 24, 25, 30, 48+, 50, 60, 100*, 120*, 200*, 240* fps
|
||||
* HD+ only
|
||||
+ SD only
|
||||
- All supported standard performance points are listed (unless they are
|
||||
covered by another listed standard performance point)
|
||||
- Non-standard performance points are listed along with all the standard
|
||||
performance points covered by them.
|
||||
-->
|
||||
<!--
|
||||
"block-count"
|
||||
Used by following MediaCodecInfo apis:
|
||||
getSupportedWidthsFor(height) and
|
||||
getSupportedHeightsFor(width)
|
||||
-->
|
||||
<!--
|
||||
Non-Secure decoder capabilities
|
||||
(MB is defined as 16x16)
|
||||
_____________________________________________________________________
|
||||
| Codec | W H fps Mbps MB/s Max MB/s|
|
||||
|_____________|_____________________________________________________|
|
||||
| h264 | 1920 1088 480 220 3916800 7776000 |
|
||||
| | 3820 2160 240 220 7735500 |
|
||||
| | 4096 2160 120 220 4147200 |
|
||||
| | 7680 4320 60 220 7776000 |
|
||||
| hevc | 1920 1088 480 220 3916800 7776000 |
|
||||
| | 3820 2160 240 220 7735500 |
|
||||
| | 4096 2160 120 220 4147200 |
|
||||
| | 7680 4320 60 220 7776000 |
|
||||
| mpeg4-sw | 1920 1088 30 40 244800 244800 |
|
||||
| | 1280 720 30 40 108000 |
|
||||
| vp8 | 1280 720 120 220 432000 1036800 |
|
||||
| | 1920 1088 120 220 979200 |
|
||||
| | 3840 2160 30 220 972000 |
|
||||
| | 4096 2160 30 220 1036800 |
|
||||
| vp9 | 1920 1088 480 220 3916800 7776000 |
|
||||
| | 3820 2160 240 220 7735500 |
|
||||
| | 4096 2160 120 220 4147200 |
|
||||
| | 7680 4320 60 220 7776000 |
|
||||
| h263-sw | 864 480 30 16 48600 48600 |
|
||||
| mpeg2 | 1020 1088 60i 40 130050 244800 |
|
||||
| | 1920 1088 30 40 244800 |
|
||||
|_____________|_____________________________________________________|
|
||||
|
||||
Secure decoder capabilities
|
||||
(MB is defined as 16x16)
|
||||
__________________________________________________________________
|
||||
| Codec | W H fps Mbps MB/s Max MB/s|
|
||||
|__________|_____________________________________________________|
|
||||
| h264 | 1280 720 60 40 216000 2073600 |
|
||||
| | 1920 1088 60 40 489600 |
|
||||
| | 3840 2160 60 40 1944000 |
|
||||
| | 4096 2160 60 40 2073600 |
|
||||
| | 4096 2304 30 40 1105920 |
|
||||
| hevc | 1280 720 60 40 216000 2073600 |
|
||||
| | 1920 1088 60 40 489600 |
|
||||
| | 3840 2160 60 40 1944000 |
|
||||
| | 4096 2160 60 40 2073600 |
|
||||
| | 4096 2304 30 40 1105920 |
|
||||
| vp9 | 1280 720 60 40 216000 2073600 |
|
||||
| | 1920 1088 60 40 489600 |
|
||||
| | 3840 2160 60 40 1944000 |
|
||||
| | 4096 2160 60 40 2073600 |
|
||||
| | 4096 2304 30 40 1105920 |
|
||||
| mpeg2 | 1920 1088 30 40 244800 244800 |
|
||||
|__________|_____________________________________________________|
|
||||
|
||||
Non-Secure encoder capabilities (Secure not supported)
|
||||
(MB is defined as 16x16)
|
||||
__________________________________________________________________
|
||||
| Codec | W H fps Mbps MB/s Max MB/s|
|
||||
|__________|_____________________________________________________|
|
||||
| h264 | 1280 720 960 220 3456000 3916800 |
|
||||
| | 1920 1088 480 220 3916800 |
|
||||
| | 3840 2160 120 220 3888000 |
|
||||
| | 4096 2160 60 220 2073600 |
|
||||
| | 8192 4320 24 220 3317760 |
|
||||
| hevc | 1280 720 960 220 3456000 3916800 |
|
||||
| | 1920 1088 480 220 3916800 |
|
||||
| | 3840 2160 120 220 3888000 |
|
||||
| | 4096 2160 60 220 2073600 |
|
||||
| | 8192 4320 24 220 3317760 |
|
||||
| hevc.cq | 512 512 3825 220 3916800 3916800 |
|
||||
| mpeg4-sw | 1280 720 30 4 108000 108000 |
|
||||
| vp8 | 1280 720 60 70 216000 2073600 |
|
||||
| | 1920 1088 60 70 489600 |
|
||||
| | 3840 2160 60 70 1944000 |
|
||||
| | 4096 2160 60 70 2073600 |
|
||||
| h263-sw | 864 480 30 2 48600 48600 |
|
||||
|__________|_____________________________________________________|
|
||||
-->
|
||||
|
||||
<MediaCodecs>
|
||||
<Include href="media_codecs_google_audio.xml" />
|
||||
<Include href="media_codecs_google_telephony.xml" />
|
||||
<Settings>
|
||||
<Setting name="max-video-encoder-input-buffers" value="11" />
|
||||
</Settings>
|
||||
<Encoders>
|
||||
<!-- Video Hardware -->
|
||||
<MediaCodec name="OMX.qcom.video.encoder.avc" type="video/avc" >
|
||||
<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="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="3916800" />
|
||||
<Limit name="bitrate" range="1-220000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-1920x1080" value="240" />
|
||||
<Limit name="performance-point-3840x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" >
|
||||
<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="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-70000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2160" value="60" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.hevc" type="video/hevc" >
|
||||
<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="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="3916800" />
|
||||
<Limit name="bitrate" range="1-160000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Feature name="bitrate-modes" value="VBR,CBR" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-1920x1080" value="240" />
|
||||
<Limit name="performance-point-3840x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.hevc.cq" type="video/hevc" >
|
||||
<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="128x128" max="512x512" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="frame-rate" range="1-20" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="quality" range="0-100" default="80" />
|
||||
<Feature name="bitrate-modes" value="CQ" />
|
||||
<Limit name="performance-point-512x512" value="3825" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.heic" type="image/vnd.android.heic" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<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="16384x16384" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="frame-rate" range="1-20" />
|
||||
<Limit name="concurrent-instances" max="6" />
|
||||
<Limit name="quality" range="0-100" default="80" />
|
||||
<Feature name="bitrate-modes" value="CQ" />
|
||||
<Limit name="performance-point-16384x8192" value="3" />
|
||||
<Limit name="performance-point-1920x1080" value="6" />
|
||||
</MediaCodec>
|
||||
<!-- Video Software -->
|
||||
<MediaCodec name="OMX.qcom.video.encoder.h263sw" type="video/3gpp" >
|
||||
<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="96x96" max="864x864" />
|
||||
<Limit name="alignment" value="4x4" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="36-1620" />
|
||||
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||
<Limit name="bitrate" range="1-2000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-720x576" value="25" />
|
||||
<Limit name="performance-point-720x480" value="30" />
|
||||
<Limit name="performance-point-864x480" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" type="video/mp4v-es" >
|
||||
<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="96x96" max="864x864" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="36-1620" />
|
||||
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||
<Limit name="bitrate" range="1-8000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-720x576" value="25" />
|
||||
<Limit name="performance-point-720x480" value="30" />
|
||||
<Limit name="performance-point-864x480" value="30" />
|
||||
</MediaCodec>
|
||||
</Encoders>
|
||||
<Decoders>
|
||||
<!-- Video Hardware -->
|
||||
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="7776000" />
|
||||
<Limit name="bitrate" range="1-220000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-3840x2160" value="240" />
|
||||
<Limit name="performance-point-4096x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="60" />
|
||||
<Limit name="performance-point-8192x4320" value="48" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.avc.secure" type="video/avc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2304" value="60" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.mpeg2" type="video/mpeg2" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="1920x1920" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-8160" />
|
||||
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1920x1080" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.mpeg2.secure" type="video/mpeg2" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="1920x1920" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-8160" />
|
||||
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-1920x1080" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="1036800" />
|
||||
<Limit name="bitrate" range="1-100000000" />
|
||||
<Limit name="frame-rate" range="1-120" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1920x1080" value="120" />
|
||||
<Limit name="performance-point-3840x2160" value="30" />
|
||||
<Limit name="performance-point-4096x2160" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="7776000" />
|
||||
<Limit name="bitrate" range="1-100000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="6" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-3840x2160" value="240" />
|
||||
<Limit name="performance-point-4096x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="60" />
|
||||
<Limit name="performance-point-8192x4320" value="48" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp9.secure" type="video/x-vnd.on2.vp9" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2304" value="60" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="7776000" />
|
||||
<Limit name="bitrate" range="1-160000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-3840x2160" value="240" />
|
||||
<Limit name="performance-point-4096x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="60" />
|
||||
<Limit name="performance-point-8192x4320" value="48" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.hevc.secure" type="video/hevc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2304" value="60" />
|
||||
</MediaCodec>
|
||||
<!-- Video Software -->
|
||||
<MediaCodec name="OMX.qti.video.decoder.h263sw" type="video/3gpp" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="96x96" max="864x864" />
|
||||
<Limit name="alignment" value="4x4" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="36-1620" />
|
||||
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||
<Limit name="bitrate" range="1-16000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="4" />
|
||||
<Limit name="performance-point-720x480" value="30" />
|
||||
<Limit name="performance-point-720x576" value="25" />
|
||||
<Limit name="performance-point-864x480" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es">
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="96x96" max="1920x1920" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="36-8160" />
|
||||
<Limit name="blocks-per-second" min="36" max="244800" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Limit name="concurrent-instances" max="4" />
|
||||
<Limit name="performance-point-1920x1080" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.opus.decoder" type="audio/opus" update="true" rank="100"/>
|
||||
</Decoders>
|
||||
<Include href="media_codecs_google_video.xml" />
|
||||
</MediaCodecs>
|
462
media/media_codecs_c2.xml
Normal file
462
media/media_codecs_c2.xml
Normal file
@ -0,0 +1,462 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!--
|
||||
Copyright (c) 2018-2020 Qualcomm Technologies, Inc.
|
||||
All Rights Reserved.
|
||||
Confidential and Proprietary - Qualcomm Technologies, Inc.
|
||||
|
||||
Not a Contribution.
|
||||
|
||||
Copyright (C) 2012-2018 The Linux Foundation. All rights reserved.
|
||||
Copyright (C) 2012-2013 The Android Open Source Project
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<!--
|
||||
Kona Non-Secure decoder capabilities
|
||||
_________________________________________________________
|
||||
| Codec | W H fps Mbps MB/s |
|
||||
|_____________|_________________________________________|
|
||||
| h264 | 4096 2160 60 120 2073600 |
|
||||
| | (4096) (2304) (30) (120) |
|
||||
| hevc | 4096 2160 60 120 2073600 |
|
||||
| | (4096) (2304) (30) (120) |
|
||||
| vp8 | 4096 2160 30 120 1036800 |
|
||||
| | (4096) (2304) (24) (120) |
|
||||
| vp9 | 4096 2160 60 120 2073600 |
|
||||
| | (4096) (2304) (30) (120) |
|
||||
|_____________|_________________________________________|
|
||||
|
||||
Kona Secure decoder capabilities
|
||||
______________________________________________________
|
||||
| Codec | W H fps Mbps MB/s |
|
||||
|__________|_________________________________________|
|
||||
| h264 | 4096 2160 60 40 2073600 |
|
||||
| | (4096) (2304) (30) (40) |
|
||||
| vp9 | 4096 2160 60 40 2073600 |
|
||||
| | (4096) (2304) (30) (40) |
|
||||
| hevc | 4096 2160 60 40 2073600 |
|
||||
| | (4096) (2304) (30) (40) |
|
||||
|__________|_________________________________________|
|
||||
|
||||
Kona Non-Secure encoder capabilities (Secure not supported)
|
||||
______________________________________________________
|
||||
| Codec | W H fps Mbps MB/s |
|
||||
|__________|_________________________________________|
|
||||
| h264 | 4096 2160 60 120 2073600 |
|
||||
| | (4096) (2304) (30) (120) |
|
||||
| hevc | 4096 2160 60 120 2073600 |
|
||||
| | (4096) (2304) (30) (120) |
|
||||
| vp8 | 4096 2160 30 120 1036800 |
|
||||
| | (4096) (2304) (24) (120) |
|
||||
|__________|_________________________________________|
|
||||
-->
|
||||
|
||||
<Included>
|
||||
<Include href="media_codecs_google_audio.xml" />
|
||||
<Include href="media_codecs_google_telephony.xml" />
|
||||
<Settings>
|
||||
<Setting name="max-video-encoder-input-buffers" value="11" />
|
||||
</Settings>
|
||||
<Decoders>
|
||||
<!-- C2 decoders -->
|
||||
<MediaCodec name="c2.qti.avc.decoder" type="video/avc">
|
||||
<Limit name="size" min="128x128" max="4096x2304" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="blocks-per-second" range="64-2073600" />
|
||||
<Limit name="bitrate" range="1-120000000" />
|
||||
<Limit name="frame-rate" range="1-480" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-4096x2304" value="30" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-1920x1080" value="240" />
|
||||
<Limit name="performance-point-1280x720" value="480" />
|
||||
<Feature name="adaptive-playback" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.avc.decoder.secure" type="video/avc" >
|
||||
<Limit name="size" min="128x128" max="4096x2160" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="blocks-per-second" min="64" max="1958400" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-240" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-4096x2304" value="30" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.hevc.decoder" type="video/hevc" >
|
||||
<Limit name="size" min="128x128" max="4096x2304" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-120000000" />
|
||||
<Limit name="frame-rate" range="1-480" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-4096x2304" value="30" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-1920x1080" value="240" />
|
||||
<Limit name="performance-point-1280x720" value="480" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.hevc.decoder.secure" type="video/hevc" >
|
||||
<Limit name="size" min="128x128" max="4096x2304" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-480" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="6" />
|
||||
<Limit name="performance-point-4096x2304" value="30" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.vp8.decoder" type="video/x-vnd.on2.vp8" >
|
||||
<Limit name="size" min="128x128" max="4096x2304" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="blocks-per-second" min="64" max="1036800" />
|
||||
<Limit name="bitrate" range="1-120000000" />
|
||||
<Limit name="frame-rate" range="1-240" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-4096x2304" value="24" />
|
||||
<Limit name="performance-point-3840x2160" value="30" />
|
||||
<Limit name="performance-point-1920x1080" value="120" />
|
||||
<Limit name="performance-point-1280x720" value="240" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.vp9.decoder" type="video/x-vnd.on2.vp9" >
|
||||
<Limit name="size" min="128x128" max="4096x2304" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-120000000" />
|
||||
<Limit name="frame-rate" range="1-480" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="6" />
|
||||
<Limit name="performance-point-4096x2304" value="30" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-1920x1080" value="240" />
|
||||
<Limit name="performance-point-1280x720" value="480" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.vp9.decoder.secure" type="video/x-vnd.on2.vp9" >
|
||||
<Limit name="size" min="128x128" max="4096x2304" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-480" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-4096x2304" value="30" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
</MediaCodec>
|
||||
<!-- TODO: parameters are copied from kona omx -->
|
||||
<MediaCodec name="c2.qti.mpeg2.decoder" type="video/mpeg2" >
|
||||
<Limit name="size" min="128x128" max="1920x1920" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1920x1080" value="30" />
|
||||
</MediaCodec>
|
||||
|
||||
<!-- OMX alias decoders (Codec2 decoders with OMX names) -->
|
||||
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="7776000" />
|
||||
<Limit name="bitrate" range="1-220000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-3840x2160" value="240" />
|
||||
<Limit name="performance-point-4096x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="60" />
|
||||
<Limit name="performance-point-8192x4320" value="48" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.avc.secure" type="video/avc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2304" value="60" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.mpeg2" type="video/mpeg2" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="1920x1920" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-8160" />
|
||||
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1920x1080" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.mpeg2.secure" type="video/mpeg2" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="1920x1920" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-8160" />
|
||||
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-1920x1080" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="1036800" />
|
||||
<Limit name="bitrate" range="1-100000000" />
|
||||
<Limit name="frame-rate" range="1-120" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1920x1080" value="120" />
|
||||
<Limit name="performance-point-3840x2160" value="30" />
|
||||
<Limit name="performance-point-4096x2160" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="7776000" />
|
||||
<Limit name="bitrate" range="1-100000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="6" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-3840x2160" value="240" />
|
||||
<Limit name="performance-point-4096x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="60" />
|
||||
<Limit name="performance-point-8192x4320" value="48" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp9.secure" type="video/x-vnd.on2.vp9" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2304" value="60" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="7776000" />
|
||||
<Limit name="bitrate" range="1-160000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-3840x2160" value="240" />
|
||||
<Limit name="performance-point-4096x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="60" />
|
||||
<Limit name="performance-point-8192x4320" value="48" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.hevc.secure" type="video/hevc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2304" value="60" />
|
||||
</MediaCodec>
|
||||
<!-- TODO: parameters are copied from kona omx -->
|
||||
</Decoders>
|
||||
<Encoders>
|
||||
<!-- C2 encoders -->
|
||||
<MediaCodec name="c2.qti.avc.encoder" type="video/avc">
|
||||
<Limit name="size" min="128x128" max="4096x2304" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-120000000" />
|
||||
<Limit name="frame-rate" range="1-480" />
|
||||
<Limit name="performance-point-4096x2304" value="30" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-1920x1080" value="240" />
|
||||
<Limit name="performance-point-1280x720" value="480" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.hevc.encoder" type="video/hevc">
|
||||
<Limit name="size" min="128x128" max="4096x2304" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-120000000" />
|
||||
<Limit name="frame-rate" range="1-480" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-4096x2304" value="30" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-1920x1080" value="240" />
|
||||
<Limit name="performance-point-1280x720" value="480" />
|
||||
<Feature name="bitrate-modes" value="VBR,CBR" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.hevc.encoder.cq" type="video/hevc" >
|
||||
<Alias name="OMX.qcom.video.encoder.hevc.cq"/>
|
||||
<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="128x128" max="512x512" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="frame-rate" range="1-20" />
|
||||
<Limit name="concurrent-instances" max="6" />
|
||||
<Limit name="quality" range="0-100" default="80" />
|
||||
<Feature name="bitrate-modes" value="CQ" />
|
||||
<Limit name="performance-point-512x512" value="3825" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.heic.encoder" type="image/vnd.android.heic" >
|
||||
<Alias name="OMX.qcom.video.encoder.heic"/>
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<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="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="frame-rate" range="1-20" />
|
||||
<Limit name="concurrent-instances" max="6" />
|
||||
<Limit name="quality" range="0-100" default="80" />
|
||||
<Feature name="bitrate-modes" value="CQ" />
|
||||
<Limit name="performance-point-8192x4320" value="3" />
|
||||
<Limit name="performance-point-1920x1080" value="6" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.vp8.encoder" type="video/x-vnd.on2.vp8">
|
||||
<Limit name="size" min="128x128" max="4096x2304" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-70000000" />
|
||||
<Limit name="frame-rate" range="1-480" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-4096x2304" value="24" />
|
||||
<Limit name="performance-point-3840x2160" value="30" />
|
||||
<Limit name="performance-point-1920x1080" value="120" />
|
||||
<Limit name="performance-point-1280x720" value="240" />
|
||||
</MediaCodec>
|
||||
|
||||
<!-- OMX alias encoders (Codec2 encoders with OMX names) -->
|
||||
<MediaCodec name="OMX.qcom.video.encoder.avc" type="video/avc" >
|
||||
<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="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="3916800" />
|
||||
<Limit name="bitrate" range="1-220000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-1920x1080" value="240" />
|
||||
<Limit name="performance-point-3840x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" >
|
||||
<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="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-70000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2160" value="60" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.hevc" type="video/hevc" >
|
||||
<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="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="3916800" />
|
||||
<Limit name="bitrate" range="1-160000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Feature name="bitrate-modes" value="VBR,CBR" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-1920x1080" value="240" />
|
||||
<Limit name="performance-point-3840x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="30" />
|
||||
</MediaCodec>
|
||||
</Encoders>
|
||||
<Include href="media_codecs_google_c2.xml" />
|
||||
</Included>
|
491
media/media_codecs_kona.xml
Normal file
491
media/media_codecs_kona.xml
Normal file
@ -0,0 +1,491 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Copyright (C) 2012-2020 The Linux Foundation. All rights reserved.
|
||||
Not a contribution.
|
||||
Copyright (C) 2012-2013 The Android Open Source Project
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<!--
|
||||
<!DOCTYPE MediaCodecs [
|
||||
<!ELEMENT Include EMPTY>
|
||||
<!ATTLIST Include href CDATA #REQUIRED>
|
||||
<!ELEMENT MediaCodecs (Decoders|Encoders|Include)*>
|
||||
<!ELEMENT Decoders (MediaCodec|Include)*>
|
||||
<!ELEMENT Encoders (MediaCodec|Include)*>
|
||||
<!ELEMENT MediaCodec (Type|Quirk|Include)*>
|
||||
<!ATTLIST MediaCodec name CDATA #REQUIRED>
|
||||
<!ATTLIST MediaCodec type CDATA>
|
||||
<!ELEMENT Type EMPTY>
|
||||
<!ATTLIST Type name CDATA #REQUIRED>
|
||||
<!ELEMENT Quirk EMPTY>
|
||||
<!ATTLIST Quirk name CDATA #REQUIRED>
|
||||
]>
|
||||
|
||||
There's a simple and a complex syntax to declare the availability of a
|
||||
media codec:
|
||||
|
||||
A codec that properly follows the OpenMax spec and therefore doesn't have any
|
||||
quirks and that only supports a single content type can be declared like so:
|
||||
|
||||
<MediaCodec name="OMX.foo.bar" type="something/interesting" />
|
||||
|
||||
If a codec has quirks OR supports multiple content types, the following syntax
|
||||
can be used:
|
||||
|
||||
<MediaCodec name="OMX.foo.bar" >
|
||||
<Type name="something/interesting" />
|
||||
<Type name="something/else" />
|
||||
...
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Quirk name="output-buffers-are-unreadable" />
|
||||
</MediaCodec>
|
||||
|
||||
Only the three quirks included above are recognized at this point:
|
||||
|
||||
"requires-allocate-on-input-ports"
|
||||
must be advertised if the component does not properly support specification
|
||||
of input buffers using the OMX_UseBuffer(...) API but instead requires
|
||||
OMX_AllocateBuffer to be used.
|
||||
|
||||
"requires-allocate-on-output-ports"
|
||||
must be advertised if the component does not properly support specification
|
||||
of output buffers using the OMX_UseBuffer(...) API but instead requires
|
||||
OMX_AllocateBuffer to be used.
|
||||
|
||||
"output-buffers-are-unreadable"
|
||||
must be advertised if the emitted output buffers of a decoder component
|
||||
are not readable, i.e. use a custom format even though abusing one of
|
||||
the official OMX colorspace constants.
|
||||
Clients of such decoders will not be able to access the decoded data,
|
||||
naturally making the component much less useful. The only use for
|
||||
a component with this quirk is to render the output to the screen.
|
||||
Audio decoders MUST NOT advertise this quirk.
|
||||
Video decoders that advertise this quirk must be accompanied by a
|
||||
corresponding color space converter for thumbnail extraction,
|
||||
matching surfaceflinger support that can render the custom format to
|
||||
a texture and possibly other code, so just DON'T USE THIS QUIRK.
|
||||
|
||||
|
||||
-->
|
||||
<!--
|
||||
"performance-point"
|
||||
Vendor-guaranteed performance advertised to the applications
|
||||
<Limit name="performance-point-widthxheight" value="fps" />
|
||||
|
||||
-For each of the resolutions, the advertised fps is the max supported,
|
||||
with HW-friendly color format and considering video-only.
|
||||
-Performance for any intermediate resolution will be that of the
|
||||
next-higher-advertised-resolution.
|
||||
|
||||
standard sizes: 480p/576p (SD), 720p (HD), 1080p (FHD), 2160p (UHD)
|
||||
standard frame rates: 24, 25, 30, 48+, 50, 60, 100*, 120*, 200*, 240* fps
|
||||
* HD+ only
|
||||
+ SD only
|
||||
- All supported standard performance points are listed (unless they are
|
||||
covered by another listed standard performance point)
|
||||
- Non-standard performance points are listed along with all the standard
|
||||
performance points covered by them.
|
||||
-->
|
||||
<!--
|
||||
"block-count"
|
||||
Used by following MediaCodecInfo apis:
|
||||
getSupportedWidthsFor(height) and
|
||||
getSupportedHeightsFor(width)
|
||||
-->
|
||||
<!--
|
||||
Non-Secure decoder capabilities
|
||||
(MB is defined as 16x16)
|
||||
_____________________________________________________________________
|
||||
| Codec | W H fps Mbps MB/s Max MB/s|
|
||||
|_____________|_____________________________________________________|
|
||||
| h264 | 1920 1088 480 220 3916800 7776000 |
|
||||
| | 3820 2160 240 220 7735500 |
|
||||
| | 4096 2160 120 220 4147200 |
|
||||
| | 7680 4320 60 220 7776000 |
|
||||
| hevc | 1920 1088 480 220 3916800 7776000 |
|
||||
| | 3820 2160 240 220 7735500 |
|
||||
| | 4096 2160 120 220 4147200 |
|
||||
| | 7680 4320 60 220 7776000 |
|
||||
| mpeg4-sw | 1920 1088 30 40 244800 244800 |
|
||||
| | 1280 720 30 40 108000 |
|
||||
| vp8 | 1280 720 120 220 432000 1036800 |
|
||||
| | 1920 1088 120 220 979200 |
|
||||
| | 3840 2160 30 220 972000 |
|
||||
| | 4096 2160 30 220 1036800 |
|
||||
| vp9 | 1920 1088 480 220 3916800 7776000 |
|
||||
| | 3820 2160 240 220 7735500 |
|
||||
| | 4096 2160 120 220 4147200 |
|
||||
| | 7680 4320 60 220 7776000 |
|
||||
| h263-sw | 864 480 30 16 48600 48600 |
|
||||
| mpeg2 | 1020 1088 60i 40 130050 244800 |
|
||||
| | 1920 1088 30 40 244800 |
|
||||
|_____________|_____________________________________________________|
|
||||
|
||||
Secure decoder capabilities
|
||||
(MB is defined as 16x16)
|
||||
__________________________________________________________________
|
||||
| Codec | W H fps Mbps MB/s Max MB/s|
|
||||
|__________|_____________________________________________________|
|
||||
| h264 | 1280 720 60 40 216000 2073600 |
|
||||
| | 1920 1088 60 40 489600 |
|
||||
| | 3840 2160 60 40 1944000 |
|
||||
| | 4096 2160 60 40 2073600 |
|
||||
| | 4096 2304 30 40 1105920 |
|
||||
| hevc | 1280 720 60 40 216000 2073600 |
|
||||
| | 1920 1088 60 40 489600 |
|
||||
| | 3840 2160 60 40 1944000 |
|
||||
| | 4096 2160 60 40 2073600 |
|
||||
| | 4096 2304 30 40 1105920 |
|
||||
| vp9 | 1280 720 60 40 216000 2073600 |
|
||||
| | 1920 1088 60 40 489600 |
|
||||
| | 3840 2160 60 40 1944000 |
|
||||
| | 4096 2160 60 40 2073600 |
|
||||
| | 4096 2304 30 40 1105920 |
|
||||
| mpeg2 | 1920 1088 30 40 244800 244800 |
|
||||
|__________|_____________________________________________________|
|
||||
|
||||
Non-Secure encoder capabilities (Secure not supported)
|
||||
(MB is defined as 16x16)
|
||||
__________________________________________________________________
|
||||
| Codec | W H fps Mbps MB/s Max MB/s|
|
||||
|__________|_____________________________________________________|
|
||||
| h264 | 1280 720 960 220 3456000 3916800 |
|
||||
| | 1920 1088 480 220 3916800 |
|
||||
| | 3840 2160 120 220 3888000 |
|
||||
| | 4096 2160 60 220 2073600 |
|
||||
| | 8192 4320 24 220 3317760 |
|
||||
| hevc | 1280 720 960 220 3456000 3916800 |
|
||||
| | 1920 1088 480 220 3916800 |
|
||||
| | 3840 2160 120 220 3888000 |
|
||||
| | 4096 2160 60 220 2073600 |
|
||||
| | 8192 4320 24 220 3317760 |
|
||||
| hevc.cq | 512 512 3825 220 3916800 3916800 |
|
||||
| mpeg4-sw | 1280 720 30 4 108000 108000 |
|
||||
| vp8 | 1280 720 60 70 216000 2073600 |
|
||||
| | 1920 1088 60 70 489600 |
|
||||
| | 3840 2160 60 70 1944000 |
|
||||
| | 4096 2160 60 70 2073600 |
|
||||
| h263-sw | 864 480 30 2 48600 48600 |
|
||||
|__________|_____________________________________________________|
|
||||
-->
|
||||
|
||||
<MediaCodecs>
|
||||
<Include href="media_codecs_google_audio.xml" />
|
||||
<Include href="media_codecs_vendor_audio.xml" />
|
||||
<Include href="media_codecs_google_telephony.xml" />
|
||||
<Settings>
|
||||
<Setting name="max-video-encoder-input-buffers" value="11" />
|
||||
</Settings>
|
||||
<Encoders>
|
||||
<!-- Video Hardware -->
|
||||
<MediaCodec name="OMX.qcom.video.encoder.avc" type="video/avc" >
|
||||
<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="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="3916800" />
|
||||
<Limit name="bitrate" range="1-220000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-1920x1080" value="240" />
|
||||
<Limit name="performance-point-3840x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" >
|
||||
<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="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-70000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2160" value="60" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.hevc" type="video/hevc" >
|
||||
<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="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="3916800" />
|
||||
<Limit name="bitrate" range="1-160000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Feature name="bitrate-modes" value="VBR,CBR" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-1920x1080" value="240" />
|
||||
<Limit name="performance-point-3840x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.hevc.cq" type="video/hevc" >
|
||||
<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="128x128" max="512x512" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="frame-rate" range="1-20" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="quality" range="0-100" default="80" />
|
||||
<Feature name="bitrate-modes" value="CQ" />
|
||||
<Limit name="performance-point-512x512" value="3825" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.heic" type="image/vnd.android.heic" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<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="16384x16384" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="frame-rate" range="1-20" />
|
||||
<Limit name="concurrent-instances" max="6" />
|
||||
<Limit name="quality" range="0-100" default="80" />
|
||||
<Feature name="bitrate-modes" value="CQ" />
|
||||
<Limit name="performance-point-16384x8192" value="3" />
|
||||
<Limit name="performance-point-1920x1080" value="6" />
|
||||
</MediaCodec>
|
||||
<!-- Video Software -->
|
||||
<MediaCodec name="OMX.qcom.video.encoder.h263sw" type="video/3gpp" >
|
||||
<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="96x96" max="864x864" />
|
||||
<Limit name="alignment" value="4x4" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="36-1620" />
|
||||
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||
<Limit name="bitrate" range="1-2000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-720x576" value="25" />
|
||||
<Limit name="performance-point-720x480" value="30" />
|
||||
<Limit name="performance-point-864x480" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" type="video/mp4v-es" >
|
||||
<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="96x96" max="864x864" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="36-1620" />
|
||||
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||
<Limit name="bitrate" range="1-8000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-720x576" value="25" />
|
||||
<Limit name="performance-point-720x480" value="30" />
|
||||
<Limit name="performance-point-864x480" value="30" />
|
||||
</MediaCodec>
|
||||
</Encoders>
|
||||
<Decoders>
|
||||
<!-- Video Hardware -->
|
||||
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="7776000" />
|
||||
<Limit name="bitrate" range="1-220000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-3840x2160" value="240" />
|
||||
<Limit name="performance-point-4096x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="60" />
|
||||
<Limit name="performance-point-8192x4320" value="48" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.avc.secure" type="video/avc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2304" value="60" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.mpeg2" type="video/mpeg2" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="1920x1920" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-8160" />
|
||||
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1920x1080" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.mpeg2.secure" type="video/mpeg2" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="1920x1920" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-8160" />
|
||||
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-1920x1080" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="1036800" />
|
||||
<Limit name="bitrate" range="1-100000000" />
|
||||
<Limit name="frame-rate" range="1-120" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1920x1080" value="120" />
|
||||
<Limit name="performance-point-3840x2160" value="30" />
|
||||
<Limit name="performance-point-4096x2160" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="7776000" />
|
||||
<Limit name="bitrate" range="1-100000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="6" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-3840x2160" value="240" />
|
||||
<Limit name="performance-point-4096x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="60" />
|
||||
<Limit name="performance-point-8192x4320" value="48" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp9.secure" type="video/x-vnd.on2.vp9" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2304" value="60" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="7776000" />
|
||||
<Limit name="bitrate" range="1-160000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-3840x2160" value="240" />
|
||||
<Limit name="performance-point-4096x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="60" />
|
||||
<Limit name="performance-point-8192x4320" value="48" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.hevc.secure" type="video/hevc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2304" value="60" />
|
||||
</MediaCodec>
|
||||
<!-- Video Software -->
|
||||
<MediaCodec name="OMX.qti.video.decoder.h263sw" type="video/3gpp" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="96x96" max="864x864" />
|
||||
<Limit name="alignment" value="4x4" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="36-1620" />
|
||||
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||
<Limit name="bitrate" range="1-16000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="4" />
|
||||
<Limit name="performance-point-720x480" value="30" />
|
||||
<Limit name="performance-point-720x576" value="25" />
|
||||
<Limit name="performance-point-864x480" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es">
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="96x96" max="1920x1920" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="36-8160" />
|
||||
<Limit name="blocks-per-second" min="36" max="244800" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Limit name="concurrent-instances" max="4" />
|
||||
<Limit name="performance-point-1920x1080" value="30" />
|
||||
</MediaCodec>
|
||||
</Decoders>
|
||||
<Include href="media_codecs_google_video.xml" />
|
||||
</MediaCodecs>
|
491
media/media_codecs_kona_vendor.xml
Normal file
491
media/media_codecs_kona_vendor.xml
Normal file
@ -0,0 +1,491 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Copyright (C) 2012-2020 The Linux Foundation. All rights reserved.
|
||||
Not a contribution.
|
||||
Copyright (C) 2012-2013 The Android Open Source Project
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<!--
|
||||
<!DOCTYPE MediaCodecs [
|
||||
<!ELEMENT Include EMPTY>
|
||||
<!ATTLIST Include href CDATA #REQUIRED>
|
||||
<!ELEMENT MediaCodecs (Decoders|Encoders|Include)*>
|
||||
<!ELEMENT Decoders (MediaCodec|Include)*>
|
||||
<!ELEMENT Encoders (MediaCodec|Include)*>
|
||||
<!ELEMENT MediaCodec (Type|Quirk|Include)*>
|
||||
<!ATTLIST MediaCodec name CDATA #REQUIRED>
|
||||
<!ATTLIST MediaCodec type CDATA>
|
||||
<!ELEMENT Type EMPTY>
|
||||
<!ATTLIST Type name CDATA #REQUIRED>
|
||||
<!ELEMENT Quirk EMPTY>
|
||||
<!ATTLIST Quirk name CDATA #REQUIRED>
|
||||
]>
|
||||
|
||||
There's a simple and a complex syntax to declare the availability of a
|
||||
media codec:
|
||||
|
||||
A codec that properly follows the OpenMax spec and therefore doesn't have any
|
||||
quirks and that only supports a single content type can be declared like so:
|
||||
|
||||
<MediaCodec name="OMX.foo.bar" type="something/interesting" />
|
||||
|
||||
If a codec has quirks OR supports multiple content types, the following syntax
|
||||
can be used:
|
||||
|
||||
<MediaCodec name="OMX.foo.bar" >
|
||||
<Type name="something/interesting" />
|
||||
<Type name="something/else" />
|
||||
...
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Quirk name="output-buffers-are-unreadable" />
|
||||
</MediaCodec>
|
||||
|
||||
Only the three quirks included above are recognized at this point:
|
||||
|
||||
"requires-allocate-on-input-ports"
|
||||
must be advertised if the component does not properly support specification
|
||||
of input buffers using the OMX_UseBuffer(...) API but instead requires
|
||||
OMX_AllocateBuffer to be used.
|
||||
|
||||
"requires-allocate-on-output-ports"
|
||||
must be advertised if the component does not properly support specification
|
||||
of output buffers using the OMX_UseBuffer(...) API but instead requires
|
||||
OMX_AllocateBuffer to be used.
|
||||
|
||||
"output-buffers-are-unreadable"
|
||||
must be advertised if the emitted output buffers of a decoder component
|
||||
are not readable, i.e. use a custom format even though abusing one of
|
||||
the official OMX colorspace constants.
|
||||
Clients of such decoders will not be able to access the decoded data,
|
||||
naturally making the component much less useful. The only use for
|
||||
a component with this quirk is to render the output to the screen.
|
||||
Audio decoders MUST NOT advertise this quirk.
|
||||
Video decoders that advertise this quirk must be accompanied by a
|
||||
corresponding color space converter for thumbnail extraction,
|
||||
matching surfaceflinger support that can render the custom format to
|
||||
a texture and possibly other code, so just DON'T USE THIS QUIRK.
|
||||
|
||||
|
||||
-->
|
||||
<!--
|
||||
"performance-point"
|
||||
Vendor-guaranteed performance advertised to the applications
|
||||
<Limit name="performance-point-widthxheight" value="fps" />
|
||||
|
||||
-For each of the resolutions, the advertised fps is the max supported,
|
||||
with HW-friendly color format and considering video-only.
|
||||
-Performance for any intermediate resolution will be that of the
|
||||
next-higher-advertised-resolution.
|
||||
|
||||
standard sizes: 480p/576p (SD), 720p (HD), 1080p (FHD), 2160p (UHD)
|
||||
standard frame rates: 24, 25, 30, 48+, 50, 60, 100*, 120*, 200*, 240* fps
|
||||
* HD+ only
|
||||
+ SD only
|
||||
- All supported standard performance points are listed (unless they are
|
||||
covered by another listed standard performance point)
|
||||
- Non-standard performance points are listed along with all the standard
|
||||
performance points covered by them.
|
||||
-->
|
||||
<!--
|
||||
"block-count"
|
||||
Used by following MediaCodecInfo apis:
|
||||
getSupportedWidthsFor(height) and
|
||||
getSupportedHeightsFor(width)
|
||||
-->
|
||||
<!--
|
||||
Non-Secure decoder capabilities
|
||||
(MB is defined as 16x16)
|
||||
_____________________________________________________________________
|
||||
| Codec | W H fps Mbps MB/s Max MB/s|
|
||||
|_____________|_____________________________________________________|
|
||||
| h264 | 1920 1088 480 220 3916800 7776000 |
|
||||
| | 3820 2160 240 220 7735500 |
|
||||
| | 4096 2160 120 220 4147200 |
|
||||
| | 7680 4320 60 220 7776000 |
|
||||
| hevc | 1920 1088 480 220 3916800 7776000 |
|
||||
| | 3820 2160 240 220 7735500 |
|
||||
| | 4096 2160 120 220 4147200 |
|
||||
| | 7680 4320 60 220 7776000 |
|
||||
| mpeg4-sw | 1920 1088 30 40 244800 244800 |
|
||||
| | 1280 720 30 40 108000 |
|
||||
| vp8 | 1280 720 120 220 432000 1036800 |
|
||||
| | 1920 1088 120 220 979200 |
|
||||
| | 3840 2160 30 220 972000 |
|
||||
| | 4096 2160 30 220 1036800 |
|
||||
| vp9 | 1920 1088 480 220 3916800 7776000 |
|
||||
| | 3820 2160 240 220 7735500 |
|
||||
| | 4096 2160 120 220 4147200 |
|
||||
| | 7680 4320 60 220 7776000 |
|
||||
| h263-sw | 864 480 30 16 48600 48600 |
|
||||
| mpeg2 | 1020 1088 60i 40 130050 244800 |
|
||||
| | 1920 1088 30 40 244800 |
|
||||
|_____________|_____________________________________________________|
|
||||
|
||||
Secure decoder capabilities
|
||||
(MB is defined as 16x16)
|
||||
__________________________________________________________________
|
||||
| Codec | W H fps Mbps MB/s Max MB/s|
|
||||
|__________|_____________________________________________________|
|
||||
| h264 | 1280 720 60 40 216000 2073600 |
|
||||
| | 1920 1088 60 40 489600 |
|
||||
| | 3840 2160 60 40 1944000 |
|
||||
| | 4096 2160 60 40 2073600 |
|
||||
| | 4096 2304 30 40 1105920 |
|
||||
| hevc | 1280 720 60 40 216000 2073600 |
|
||||
| | 1920 1088 60 40 489600 |
|
||||
| | 3840 2160 60 40 1944000 |
|
||||
| | 4096 2160 60 40 2073600 |
|
||||
| | 4096 2304 30 40 1105920 |
|
||||
| vp9 | 1280 720 60 40 216000 2073600 |
|
||||
| | 1920 1088 60 40 489600 |
|
||||
| | 3840 2160 60 40 1944000 |
|
||||
| | 4096 2160 60 40 2073600 |
|
||||
| | 4096 2304 30 40 1105920 |
|
||||
| mpeg2 | 1920 1088 30 40 244800 244800 |
|
||||
|__________|_____________________________________________________|
|
||||
|
||||
Non-Secure encoder capabilities (Secure not supported)
|
||||
(MB is defined as 16x16)
|
||||
__________________________________________________________________
|
||||
| Codec | W H fps Mbps MB/s Max MB/s|
|
||||
|__________|_____________________________________________________|
|
||||
| h264 | 1280 720 960 220 3456000 3916800 |
|
||||
| | 1920 1088 480 220 3916800 |
|
||||
| | 3840 2160 120 220 3888000 |
|
||||
| | 4096 2160 60 220 2073600 |
|
||||
| | 8192 4320 24 220 3317760 |
|
||||
| hevc | 1280 720 960 220 3456000 3916800 |
|
||||
| | 1920 1088 480 220 3916800 |
|
||||
| | 3840 2160 120 220 3888000 |
|
||||
| | 4096 2160 60 220 2073600 |
|
||||
| | 8192 4320 24 220 3317760 |
|
||||
| hevc.cq | 512 512 3825 220 3916800 3916800 |
|
||||
| mpeg4-sw | 1280 720 30 4 108000 108000 |
|
||||
| vp8 | 1280 720 60 70 216000 2073600 |
|
||||
| | 1920 1088 60 70 489600 |
|
||||
| | 3840 2160 60 70 1944000 |
|
||||
| | 4096 2160 60 70 2073600 |
|
||||
| h263-sw | 864 480 30 2 48600 48600 |
|
||||
|__________|_____________________________________________________|
|
||||
-->
|
||||
|
||||
<MediaCodecs>
|
||||
<Include href="media_codecs_google_audio.xml" />
|
||||
<Include href="media_codecs_vendor_audio.xml" />
|
||||
<Include href="media_codecs_google_telephony.xml" />
|
||||
<Settings>
|
||||
<Setting name="max-video-encoder-input-buffers" value="11" />
|
||||
</Settings>
|
||||
<Encoders>
|
||||
<!-- Video Hardware -->
|
||||
<MediaCodec name="OMX.qcom.video.encoder.avc" type="video/avc" >
|
||||
<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="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="3916800" />
|
||||
<Limit name="bitrate" range="1-220000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-1920x1080" value="240" />
|
||||
<Limit name="performance-point-3840x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" >
|
||||
<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="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-70000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2160" value="60" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.hevc" type="video/hevc" >
|
||||
<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="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="3916800" />
|
||||
<Limit name="bitrate" range="1-160000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Feature name="bitrate-modes" value="VBR,CBR" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-1920x1080" value="240" />
|
||||
<Limit name="performance-point-3840x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.hevc.cq" type="video/hevc" >
|
||||
<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="128x128" max="512x512" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="frame-rate" range="1-20" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="quality" range="0-100" default="80" />
|
||||
<Feature name="bitrate-modes" value="CQ" />
|
||||
<Limit name="performance-point-512x512" value="3825" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.heic" type="image/vnd.android.heic" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<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="16384x16384" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="frame-rate" range="1-20" />
|
||||
<Limit name="concurrent-instances" max="6" />
|
||||
<Limit name="quality" range="0-100" default="80" />
|
||||
<Feature name="bitrate-modes" value="CQ" />
|
||||
<Limit name="performance-point-16384x8192" value="3" />
|
||||
<Limit name="performance-point-1920x1080" value="6" />
|
||||
</MediaCodec>
|
||||
<!-- Video Software -->
|
||||
<MediaCodec name="OMX.qcom.video.encoder.h263sw" type="video/3gpp" >
|
||||
<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="96x96" max="864x864" />
|
||||
<Limit name="alignment" value="4x4" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="36-1620" />
|
||||
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||
<Limit name="bitrate" range="1-2000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-720x576" value="25" />
|
||||
<Limit name="performance-point-720x480" value="30" />
|
||||
<Limit name="performance-point-864x480" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" type="video/mp4v-es" >
|
||||
<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="96x96" max="864x864" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="36-1620" />
|
||||
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||
<Limit name="bitrate" range="1-8000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-720x576" value="25" />
|
||||
<Limit name="performance-point-720x480" value="30" />
|
||||
<Limit name="performance-point-864x480" value="30" />
|
||||
</MediaCodec>
|
||||
</Encoders>
|
||||
<Decoders>
|
||||
<!-- Video Hardware -->
|
||||
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="7776000" />
|
||||
<Limit name="bitrate" range="1-220000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-3840x2160" value="240" />
|
||||
<Limit name="performance-point-4096x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="60" />
|
||||
<Limit name="performance-point-8192x4320" value="48" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.avc.secure" type="video/avc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2304" value="60" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.mpeg2" type="video/mpeg2" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="1920x1920" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-8160" />
|
||||
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1920x1080" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.mpeg2.secure" type="video/mpeg2" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="1920x1920" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-8160" />
|
||||
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-1920x1080" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="1036800" />
|
||||
<Limit name="bitrate" range="1-100000000" />
|
||||
<Limit name="frame-rate" range="1-120" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1920x1080" value="120" />
|
||||
<Limit name="performance-point-3840x2160" value="30" />
|
||||
<Limit name="performance-point-4096x2160" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="7776000" />
|
||||
<Limit name="bitrate" range="1-100000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="6" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-3840x2160" value="240" />
|
||||
<Limit name="performance-point-4096x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="60" />
|
||||
<Limit name="performance-point-8192x4320" value="48" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp9.secure" type="video/x-vnd.on2.vp9" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2304" value="60" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="8192x8192" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-138240" />
|
||||
<Limit name="blocks-per-second" min="64" max="7776000" />
|
||||
<Limit name="bitrate" range="1-160000000" />
|
||||
<Limit name="frame-rate" range="1-960" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="16" />
|
||||
<Limit name="performance-point-1280x720" value="960" />
|
||||
<Limit name="performance-point-1920x1080" value="480" />
|
||||
<Limit name="performance-point-3840x2160" value="240" />
|
||||
<Limit name="performance-point-4096x2160" value="120" />
|
||||
<Limit name="performance-point-7680x4320" value="60" />
|
||||
<Limit name="performance-point-8192x4320" value="48" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.hevc.secure" type="video/hevc" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="128x128" max="4096x4096" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="64-34560" />
|
||||
<Limit name="blocks-per-second" min="64" max="2073600" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-60" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Feature name="secure-playback" required="true" />
|
||||
<Limit name="concurrent-instances" max="3" />
|
||||
<Limit name="performance-point-3840x2160" value="60" />
|
||||
<Limit name="performance-point-4096x2304" value="60" />
|
||||
</MediaCodec>
|
||||
<!-- Video Software -->
|
||||
<MediaCodec name="OMX.qti.video.decoder.h263sw" type="video/3gpp" >
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="96x96" max="864x864" />
|
||||
<Limit name="alignment" value="4x4" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="36-1620" />
|
||||
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||
<Limit name="bitrate" range="1-16000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Feature name="adaptive-playback" />
|
||||
<Limit name="concurrent-instances" max="4" />
|
||||
<Limit name="performance-point-720x480" value="30" />
|
||||
<Limit name="performance-point-720x576" value="25" />
|
||||
<Limit name="performance-point-864x480" value="30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es">
|
||||
<Quirk name="requires-allocate-on-input-ports" />
|
||||
<Quirk name="requires-allocate-on-output-ports" />
|
||||
<Limit name="size" min="96x96" max="1920x1920" />
|
||||
<Limit name="alignment" value="2x2" />
|
||||
<Limit name="block-size" value="16x16" />
|
||||
<Limit name="block-count" range="36-8160" />
|
||||
<Limit name="blocks-per-second" min="36" max="244800" />
|
||||
<Limit name="bitrate" range="1-40000000" />
|
||||
<Limit name="frame-rate" range="1-30" />
|
||||
<Limit name="concurrent-instances" max="4" />
|
||||
<Limit name="performance-point-1920x1080" value="30" />
|
||||
</MediaCodec>
|
||||
</Decoders>
|
||||
<Include href="media_codecs_google_video.xml" />
|
||||
</MediaCodecs>
|
209
media/media_codecs_performance_c2.xml
Normal file
209
media/media_codecs_performance_c2.xml
Normal file
@ -0,0 +1,209 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!--
|
||||
Copyright (c) 2018-2020 Qualcomm Technologies, Inc.
|
||||
All Rights Reserved.
|
||||
Confidential and Proprietary - Qualcomm Technologies, Inc.
|
||||
|
||||
Not a Contribution.
|
||||
|
||||
Copyright (C) 2012-2017 The Linux Foundation. All rights reserved.
|
||||
Copyright (C) 2012-2013 The Android Open Source Project
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<MediaCodecs>
|
||||
<Decoders>
|
||||
<!-- C2 HW decoders -->
|
||||
<MediaCodec name="c2.qti.avc.decoder" type="video/avc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="567-1298" />
|
||||
<Limit name="measured-frame-rate-720x480" range="720-740" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="200-420" />
|
||||
<Limit name="measured-frame-rate-1920x1088" range="76-167" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.hevc.decoder" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-352x288" range="800-850" />
|
||||
<Limit name="measured-frame-rate-720x480" range="440-600" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="215-425" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="118-259" />
|
||||
<Limit name="measured-frame-rate-3840x2160" range="30-66" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="800-900" />
|
||||
<Limit name="measured-frame-rate-640x360" range="700-750" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="131-289" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="83-183" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="800-900" />
|
||||
<Limit name="measured-frame-rate-640x360" range="700-800" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="94-207" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="87-190" />
|
||||
<Limit name="measured-frame-rate-3840x2160" range="20-44" />
|
||||
</MediaCodec>
|
||||
|
||||
<!-- C2 HW decoders with OMX aliases -->
|
||||
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="101-221" />
|
||||
<Limit name="measured-frame-rate-720x480" range="720-740" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="200-420" />
|
||||
<Limit name="measured-frame-rate-1920x1088" range="76-167" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-352x288" range="800-850" />
|
||||
<Limit name="measured-frame-rate-720x480" range="440-600" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="215-425" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="118-259" />
|
||||
<Limit name="measured-frame-rate-3840x2160" range="30-66" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="800-900" />
|
||||
<Limit name="measured-frame-rate-640x360" range="700-750" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="131-289" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="83-183" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="800-900" />
|
||||
<Limit name="measured-frame-rate-640x360" range="700-800" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="94-207" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="87-190" />
|
||||
<Limit name="measured-frame-rate-3840x2160" range="20-44" />
|
||||
</MediaCodec>
|
||||
<!-- TODO: add C2 mpeg2 decoder performance data -->
|
||||
|
||||
<!-- C2 SW codecs -->
|
||||
<MediaCodec name="c2.android.avc.decoder" type="video/avc" update="true">
|
||||
<!-- measured 98%:153-414 med:193/192 FLAKY(mn=61.7 < 96 - 414 < mx=423.7) -->
|
||||
<Limit name="measured-frame-rate-320x240" range="192-207" /> <!-- N=266 v98%=1.6 -->
|
||||
<Limit name="measured-frame-rate-720x480" range="72-73" /> <!-- N=266 v98%=1.5 -->
|
||||
<Limit name="measured-frame-rate-1280x720" range="27-27" /> <!-- N=236 v98%=1.5 (-PD1A.180712.003) -->
|
||||
<Limit name="measured-frame-rate-1920x1080" range="15-16" /> <!-- N=272 v98%=1.4 -->
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-352x288" range="259-262" /> <!-- N=270 v98%=1.6 -->
|
||||
<!-- measured 98%:77-220 med:165/169 FLAKY(mn=74.9 < 75 - 338) -->
|
||||
<Limit name="measured-frame-rate-640x360" range="149-169" /> <!-- TWEAKED N=269 v98%=1.7 -->
|
||||
<!-- measured 98%:85-223 med:194/186 FLAKY(mn=80.8 < 85 - 372) -->
|
||||
<Limit name="measured-frame-rate-720x480" range="161-186" /> <!-- TWEAKED N=270 v98%=1.6 -->
|
||||
<Limit name="measured-frame-rate-1280x720" range="81-81" /> <!-- N=270 v98%=1.4 -->
|
||||
<Limit name="measured-frame-rate-1920x1080" range="46-46" /> <!-- N=230 v98%=1.2 (-PD1A.180706.000) -->
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
|
||||
<!-- measured 98%:191-657 med:617/613 FLAKY(mn=183.9 < 191 - 1226) -->
|
||||
<Limit name="measured-frame-rate-320x180" range="367-613" /> <!-- TWEAKED N=270 v98%=1.9 (-PD1A.180717.001) -->
|
||||
<Limit name="measured-frame-rate-640x360" range="235-235" /> <!-- N=230 v98%=1.3 -->
|
||||
<!-- measured 98%:35-54 med:36/36 N=64 -->
|
||||
<Limit name="measured-frame-rate-1280x720" range="36-36" /> <!-- v98%=1.2 (PD1A.180706.000-) -->
|
||||
<Limit name="measured-frame-rate-1920x1080" range="21-21" /> <!-- N=270 v98%=1.3 (-PD1A.180717.001) -->
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
||||
<!-- measured 98%:173-698 med:670/668 FLAKY(mn=161.4 < 162 - 1336) variance:2.0 -->
|
||||
<Limit name="measured-frame-rate-320x180" range="322-668" /> <!-- TWEAKED N=228 -->
|
||||
<Limit name="measured-frame-rate-640x360" range="162-259" /> <!-- N=272 v98%=1.9 (-PD1A.180717.001) -->
|
||||
<Limit name="measured-frame-rate-1280x720" range="72-73" /> <!-- N=270 v98%=1.3 (-PD1A.180717.001) -->
|
||||
<Limit name="measured-frame-rate-1920x1080" range="47-47" /> <!-- N=230 v98%=1.2 -->
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.h263.decoder" type="video/3gpp" update="true">
|
||||
<!-- measured 98%:151-1143 med:437/432 FLAKY(111 - 972 < mx=1146.8) variance:2.8 -->
|
||||
<Limit name="measured-frame-rate-176x144" range="800-1000" /> <!-- N=270 -->
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.mpeg4.decoder" type="video/mp4v-es" update="true">
|
||||
<!-- measured 90%:149-1332 med:379/360 FLAKY(109 - 958 < mx=1400.6) RG.VARIANCE:2.1 -->
|
||||
<Limit name="measured-frame-rate-176x144" range="450-850" /> <!-- N=272 v90%=3.0 -->
|
||||
</MediaCodec>
|
||||
</Decoders>
|
||||
|
||||
<Encoders>
|
||||
<!-- C2 HW encoders -->
|
||||
<MediaCodec name="c2.qti.avc.encoder" type="video/avc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="355-437" />
|
||||
<Limit name="measured-frame-rate-720x480" range="64-140" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="26-56" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="20-44" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.hevc.encoder" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="126-278" />
|
||||
<Limit name="measured-frame-rate-720x480" range="48-106" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="19-41" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="17-37" />
|
||||
<Limit name="measured-frame-rate-3840x2160" range="11-25" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.hevc.encoder.cq" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="340-400" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.qti.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="107-236" />
|
||||
<Limit name="measured-frame-rate-640x360" range="67-147" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="21-46" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="18-41" />
|
||||
</MediaCodec>
|
||||
<!-- C2 HW encoders with OMX aliases -->
|
||||
<MediaCodec name="OMX.qcom.video.encoder.avc" type="video/avc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="106-234" />
|
||||
<Limit name="measured-frame-rate-720x480" range="64-140" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="26-56" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="20-44" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.hevc" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="126-278" />
|
||||
<Limit name="measured-frame-rate-720x480" range="48-106" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="19-41" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="17-37" />
|
||||
<Limit name="measured-frame-rate-3840x2160" range="11-25" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="107-236" />
|
||||
<Limit name="measured-frame-rate-640x360" range="67-147" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="21-46" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="18-41" />
|
||||
</MediaCodec>
|
||||
|
||||
<!-- C2 SW encoders -->
|
||||
<MediaCodec name="c2.android.h263.encoder" type="video/3gpp" update="true">
|
||||
<!-- measured 95%:144-637 med:343/343 FLAKY(mn=40.8 < 144 - 808 < mx=916.6) variance:2.1 -->
|
||||
<Limit name="measured-frame-rate-176x144" range="287-459" /> <!-- TWEAKED N=224 -->
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.avc.encoder" type="video/avc" update="true">
|
||||
<!-- measured 90%:42-420 med:146/160 FLAKY(mn=39.0 < 42 - 368 < mx=569.5) RG.VARIANCE:2.2 -->
|
||||
<Limit name="measured-frame-rate-320x240" range="82-212" /> <!-- SHOULDN'T HAVE TWEAKED N=266 v90%=3.2 -->
|
||||
<!-- measured 98%:29-166 med:66/63 FLAKY(24 - 166 < mx=166.5) variance:2.4 -->
|
||||
<Limit name="measured-frame-rate-720x480" range="47-83" /> <!-- N=262 -->
|
||||
<!-- measured 98%:11-68 med:30/30 FLAKY(mn=10.5 < 11 - 68 < mx=82.1) variance:2.5 -->
|
||||
<Limit name="measured-frame-rate-1280x720" range="22-42" /> <!-- TWEAKED N=236 -->
|
||||
<!-- measured 98%:10-38 med:18/18 FLAKY(mn=5.2 < 9 - 38 < mx=38.8) -->
|
||||
<Limit name="measured-frame-rate-1920x1080" range="18-19" /> <!-- N=288 v98%=2.0 -->
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.mpeg4.encoder" type="video/mp4v-es" update="true">
|
||||
<!-- measured 90%:29-451 med:208/206 FLAKY(mn=19.2 < 47 - 412 < mx=888.9) RG.VARIANCE:2.5 -->
|
||||
<Limit name="measured-frame-rate-176x144" range="203-445" /> <!-- SHOULDN'T HAVE TWEAKED N=220 v90%=4.0 -->
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
|
||||
<!-- measured 90%:6-36 med:30/29 FLAKY(mn=0.0 < 7 - 58) variance:2.5 -->
|
||||
<Limit name="measured-frame-rate-320x180" range="7-16" /> <!-- SHOULDN'T HAVE TWEAKED N=214 -->
|
||||
<!-- measured 98%:3-24 med:12/12 FLAKY(mn=2.8 < 3 - 24 < mx=26.6) variance:2.8 -->
|
||||
<Limit name="measured-frame-rate-640x360" range="6-12" /> <!-- N=220 -->
|
||||
<!-- measured 98%:3-11 med:6/6 FLAKY(mn=0.0 < 3 - 12) -->
|
||||
<Limit name="measured-frame-rate-1280x720" range="5-6" /> <!-- N=202 v98%=2.0 -->
|
||||
<!-- measured 98%:3-7 med:5/5 FLAKY(mn=0.0 < 2 - 10 < mx=11.2) -->
|
||||
<Limit name="measured-frame-rate-1920x1080" range="4-5" /> <!-- N=212 v98%=1.5 -->
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.vp9.encoder" type="video/x-vnd.on2.vp9" update="true">
|
||||
<!-- measured 93%:99-156 med:109/109 N=24 -->
|
||||
<Limit name="measured-frame-rate-320x180" range="109-109" /> <!-- v93%=1.3 -->
|
||||
<!-- measured 95%:54-67 med:61/61 N=36 -->
|
||||
<Limit name="measured-frame-rate-640x360" range="61-61" /> <!-- v95%=1.1 -->
|
||||
<!-- measured 95%:16-26 med:20/20 N=32 -->
|
||||
<Limit name="measured-frame-rate-1280x720" range="20-20" /> <!-- v95%=1.3 -->
|
||||
</MediaCodec>
|
||||
</Encoders>
|
||||
</MediaCodecs>
|
207
media/media_codecs_performance_kona.xml
Normal file
207
media/media_codecs_performance_kona.xml
Normal file
@ -0,0 +1,207 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!--
|
||||
Copyright (c) 2015-2020, The Linux Foundation. All rights reserved.
|
||||
|
||||
Not a Contribution.
|
||||
|
||||
Copyright 2015 The Android Open Source Project
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
u may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<MediaCodecs>
|
||||
<Encoders>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.avc" type="video/avc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="310-450" />
|
||||
<Limit name="measured-frame-rate-720x480" range="277-287" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="200-204" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="116-118" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.hevc" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="295-435" />
|
||||
<Limit name="measured-frame-rate-720x480" range="336-339" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="183-194" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="91-104" />
|
||||
<Limit name="measured-frame-rate-3840x2160" range="37-40" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.hevc.cq" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="340-400" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.h263sw" type="video/3gpp" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="303-303" />
|
||||
<Limit name="measured-frame-rate-352x288" range="259-259" />
|
||||
<Limit name="measured-frame-rate-704x576" range="87-155" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" type="video/mp4v-es" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="299-299" />
|
||||
<Limit name="measured-frame-rate-352x288" range="120-170" />
|
||||
<Limit name="measured-frame-rate-640x480" range="148-148" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="355-520" />
|
||||
<Limit name="measured-frame-rate-640x360" range="236-302" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="123-125" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="16-40" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.h264.encoder" type="video/avc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="215-215" />
|
||||
<Limit name="measured-frame-rate-720x480" range="100-100" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="56-56" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="30-30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.h263.encoder" type="video/3gpp" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="200-200" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.mpeg4.encoder" type="video/mp4v-es" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="180-180" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="93-94" />
|
||||
<Limit name="measured-frame-rate-640x360" range="32-32" />
|
||||
<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="151-208" />
|
||||
<Limit name="measured-frame-rate-720x480" range="61-84" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="41-57" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="28-39" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.h263.encoder" type="video/3gpp" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="287-459" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.mpeg4.encoder" type="video/mp4v-es" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="251-350" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="228-318" />
|
||||
<Limit name="measured-frame-rate-640x360" range="150-233" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="43-61" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="19-27" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.vp9.encoder" type="video/x-vnd.on2.vp9" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="109-109" />
|
||||
<Limit name="measured-frame-rate-640x360" range="61-61" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="20-20" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.hevc.encoder" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="22-35" />
|
||||
<Limit name="measured-frame-rate-720x480" range="6-22" />
|
||||
</MediaCodec>
|
||||
</Encoders>
|
||||
<Decoders>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="960-1268" />
|
||||
<Limit name="measured-frame-rate-720x480" range="857-1104" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="312-316" />
|
||||
<Limit name="measured-frame-rate-1920x1088" range="246-250" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-352x288" range="756-1179" />
|
||||
<Limit name="measured-frame-rate-720x480" range="576-634" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="318-319" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="316-318" />
|
||||
<Limit name="measured-frame-rate-3840x2160" range="148-149" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qti.video.decoder.h263sw" type="video/3gpp" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="782-1581" />
|
||||
<Limit name="measured-frame-rate-352x288" range="380-920" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="775-2064" />
|
||||
<Limit name="measured-frame-rate-480x360" range="695-915" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="369-529" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="745-1111" />
|
||||
<Limit name="measured-frame-rate-640x360" range="571-883" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="337-337" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="248-248" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="806-1245" />
|
||||
<Limit name="measured-frame-rate-640x360" range="832-1285" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="485-600" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="435-495" />
|
||||
<Limit name="measured-frame-rate-3840x2160" range="83-98" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.h264.decoder" type="video/avc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="122-370" />
|
||||
<Limit name="measured-frame-rate-720x480" range="68-68" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="32-32" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="24-26" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.h263.decoder" type="video/3gpp" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="104-279" />
|
||||
<Limit name="measured-frame-rate-352x288" range="200-200" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.hevc.decoder" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-352x288" range="502-550" />
|
||||
<Limit name="measured-frame-rate-640x360" range="267-271" />
|
||||
<Limit name="measured-frame-rate-720x480" range="254-257" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="94-95" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="47-49" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.mpeg4.decoder" update="true">
|
||||
<Type name="video/mp4v-es">
|
||||
<Limit name="measured-frame-rate-176x144" range="430-450" />
|
||||
</Type>
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="1103-1170" />
|
||||
<Limit name="measured-frame-rate-320x240" range="330-381" />
|
||||
<Limit name="measured-frame-rate-640x360" range="487-490" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="22-38" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="39-40" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="861-909" />
|
||||
<Limit name="measured-frame-rate-320x240" range="200-230" />
|
||||
<Limit name="measured-frame-rate-640x360" range="265-268" />
|
||||
<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="350-469" />
|
||||
<Limit name="measured-frame-rate-720x480" range="80-100" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="21-155" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="12-17" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-352x288" range="355-960" />
|
||||
<Limit name="measured-frame-rate-640x360" range="308-526" />
|
||||
<Limit name="measured-frame-rate-720x480" range="370-455" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="105-210" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="92-143" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.mpeg4.decoder" type="video/mp4v-es" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="550-1200" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.h263.decoder" type="video/3gpp" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="322-630" />
|
||||
<Limit name="measured-frame-rate-352x288" range="653-822" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="573-1136" />
|
||||
<Limit name="measured-frame-rate-640x360" range="200-450" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="80-100" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="19-31" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="601-1177" />
|
||||
<Limit name="measured-frame-rate-640x360" range="460-560" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="107-145" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="31-43" />
|
||||
</MediaCodec>
|
||||
</Decoders>
|
||||
</MediaCodecs>
|
207
media/media_codecs_performance_kona_vendor.xml
Normal file
207
media/media_codecs_performance_kona_vendor.xml
Normal file
@ -0,0 +1,207 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!--
|
||||
Copyright (c) 2015-2020, The Linux Foundation. All rights reserved.
|
||||
|
||||
Not a Contribution.
|
||||
|
||||
Copyright 2015 The Android Open Source Project
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
u may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<MediaCodecs>
|
||||
<Encoders>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.avc" type="video/avc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="310-450" />
|
||||
<Limit name="measured-frame-rate-720x480" range="277-287" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="200-204" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="116-118" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.hevc" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="295-435" />
|
||||
<Limit name="measured-frame-rate-720x480" range="336-339" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="183-194" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="91-104" />
|
||||
<Limit name="measured-frame-rate-3840x2160" range="37-40" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.hevc.cq" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="340-400" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.h263sw" type="video/3gpp" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="303-303" />
|
||||
<Limit name="measured-frame-rate-352x288" range="259-259" />
|
||||
<Limit name="measured-frame-rate-704x576" range="87-155" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" type="video/mp4v-es" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="299-299" />
|
||||
<Limit name="measured-frame-rate-352x288" range="120-170" />
|
||||
<Limit name="measured-frame-rate-640x480" range="148-148" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="355-520" />
|
||||
<Limit name="measured-frame-rate-640x360" range="236-302" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="123-125" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="16-40" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.h264.encoder" type="video/avc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="215-215" />
|
||||
<Limit name="measured-frame-rate-720x480" range="100-100" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="56-56" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="30-30" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.h263.encoder" type="video/3gpp" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="200-200" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.mpeg4.encoder" type="video/mp4v-es" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="180-180" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="93-94" />
|
||||
<Limit name="measured-frame-rate-640x360" range="32-32" />
|
||||
<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="151-208" />
|
||||
<Limit name="measured-frame-rate-720x480" range="61-84" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="41-57" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="28-39" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.h263.encoder" type="video/3gpp" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="287-459" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.mpeg4.encoder" type="video/mp4v-es" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="251-350" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="228-318" />
|
||||
<Limit name="measured-frame-rate-640x360" range="150-233" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="43-61" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="19-27" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.vp9.encoder" type="video/x-vnd.on2.vp9" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="109-109" />
|
||||
<Limit name="measured-frame-rate-640x360" range="61-61" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="20-20" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.hevc.encoder" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="22-35" />
|
||||
<Limit name="measured-frame-rate-720x480" range="6-22" />
|
||||
</MediaCodec>
|
||||
</Encoders>
|
||||
<Decoders>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="960-1268" />
|
||||
<Limit name="measured-frame-rate-720x480" range="857-1104" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="312-316" />
|
||||
<Limit name="measured-frame-rate-1920x1088" range="246-250" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-352x288" range="756-1179" />
|
||||
<Limit name="measured-frame-rate-720x480" range="576-634" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="318-319" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="316-318" />
|
||||
<Limit name="measured-frame-rate-3840x2160" range="148-149" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qti.video.decoder.h263sw" type="video/3gpp" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="782-1581" />
|
||||
<Limit name="measured-frame-rate-352x288" range="380-920" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="775-2064" />
|
||||
<Limit name="measured-frame-rate-480x360" range="695-915" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="369-529" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="745-1111" />
|
||||
<Limit name="measured-frame-rate-640x360" range="571-883" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="337-337" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="248-248" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="806-1245" />
|
||||
<Limit name="measured-frame-rate-640x360" range="832-1285" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="485-600" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="435-495" />
|
||||
<Limit name="measured-frame-rate-3840x2160" range="83-98" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.h264.decoder" type="video/avc" update="true">
|
||||
<Limit name="measured-frame-rate-320x240" range="122-370" />
|
||||
<Limit name="measured-frame-rate-720x480" range="68-68" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="32-32" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="24-26" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.h263.decoder" type="video/3gpp" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="104-279" />
|
||||
<Limit name="measured-frame-rate-352x288" range="200-200" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.hevc.decoder" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-352x288" range="502-550" />
|
||||
<Limit name="measured-frame-rate-640x360" range="267-271" />
|
||||
<Limit name="measured-frame-rate-720x480" range="254-257" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="94-95" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="47-49" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.mpeg4.decoder" update="true">
|
||||
<Type name="video/mp4v-es">
|
||||
<Limit name="measured-frame-rate-176x144" range="430-450" />
|
||||
</Type>
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="1103-1170" />
|
||||
<Limit name="measured-frame-rate-320x240" range="330-381" />
|
||||
<Limit name="measured-frame-rate-640x360" range="487-490" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="22-38" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="39-40" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="OMX.google.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="861-909" />
|
||||
<Limit name="measured-frame-rate-320x240" range="200-230" />
|
||||
<Limit name="measured-frame-rate-640x360" range="265-268" />
|
||||
<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="350-469" />
|
||||
<Limit name="measured-frame-rate-720x480" range="80-100" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="21-155" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="12-17" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true">
|
||||
<Limit name="measured-frame-rate-352x288" range="355-960" />
|
||||
<Limit name="measured-frame-rate-640x360" range="308-526" />
|
||||
<Limit name="measured-frame-rate-720x480" range="370-455" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="105-210" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="92-143" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.mpeg4.decoder" type="video/mp4v-es" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="550-1200" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.h263.decoder" type="video/3gpp" update="true">
|
||||
<Limit name="measured-frame-rate-176x144" range="322-630" />
|
||||
<Limit name="measured-frame-rate-352x288" range="653-822" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="573-1136" />
|
||||
<Limit name="measured-frame-rate-640x360" range="200-450" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="80-100" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="19-31" />
|
||||
</MediaCodec>
|
||||
<MediaCodec name="c2.android.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
|
||||
<Limit name="measured-frame-rate-320x180" range="601-1177" />
|
||||
<Limit name="measured-frame-rate-640x360" range="460-560" />
|
||||
<Limit name="measured-frame-rate-1280x720" range="107-145" />
|
||||
<Limit name="measured-frame-rate-1920x1080" range="31-43" />
|
||||
</MediaCodec>
|
||||
</Decoders>
|
||||
</MediaCodecs>
|
23
media/media_codecs_vendor_audio.xml
Normal file
23
media/media_codecs_vendor_audio.xml
Normal file
@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!-- Copyright (C) 2015-2020 The Linux Foundation. All rights reserved.
|
||||
Not a contribution.
|
||||
Copyright (C) 2012 The Android Open Source Project
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<Included>
|
||||
<Decoders>
|
||||
<MediaCodec name="OMX.google.opus.decoder" type="audio/opus" update="true" rank="100"/>
|
||||
<!-- SimpleOMXComponet based software decoder-->
|
||||
</Decoders>
|
||||
</Included>
|
643
media/media_profiles.xml
Normal file
643
media/media_profiles.xml
Normal file
@ -0,0 +1,643 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Copyright (C) 2010 The Android Open Source Project
|
||||
Copyright (C) 2012-2013 The Linux Foundation. All rights reserved.
|
||||
Not a contribution.
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!DOCTYPE MediaSettings [
|
||||
<!ELEMENT MediaSettings (CamcorderProfiles,
|
||||
EncoderOutputFileFormat+,
|
||||
VideoEncoderCap+,
|
||||
AudioEncoderCap+,
|
||||
VideoDecoderCap,
|
||||
AudioDecoderCap)>
|
||||
<!ELEMENT CamcorderProfiles (EncoderProfile+, ImageEncoding+, ImageDecoding, Camera)>
|
||||
<!ELEMENT EncoderProfile (Video, Audio)>
|
||||
<!ATTLIST EncoderProfile quality (high|low) #REQUIRED>
|
||||
<!ATTLIST EncoderProfile fileFormat (mp4|3gp) #REQUIRED>
|
||||
<!ATTLIST EncoderProfile duration (30|60) #REQUIRED>
|
||||
<!ATTLIST EncoderProfile cameraId (0|1) #REQUIRED>
|
||||
<!ELEMENT Video EMPTY>
|
||||
<!ATTLIST Video codec (h264|h263|m4v) #REQUIRED>
|
||||
<!ATTLIST Video bitRate CDATA #REQUIRED>
|
||||
<!ATTLIST Video width CDATA #REQUIRED>
|
||||
<!ATTLIST Video height CDATA #REQUIRED>
|
||||
<!ATTLIST Video frameRate CDATA #REQUIRED>
|
||||
<!ELEMENT Audio EMPTY>
|
||||
<!ATTLIST Audio codec (amrnb|amrwb|aac) #REQUIRED>
|
||||
<!ATTLIST Audio bitRate CDATA #REQUIRED>
|
||||
<!ATTLIST Audio sampleRate CDATA #REQUIRED>
|
||||
<!ATTLIST Audio channels (1|2|6) #REQUIRED>
|
||||
<!ELEMENT ImageEncoding EMPTY>
|
||||
<!ATTLIST ImageEncoding quality (90|80|70|60|50|40) #REQUIRED>
|
||||
<!ELEMENT ImageDecoding EMPTY>
|
||||
<!ATTLIST ImageDecoding memCap CDATA #REQUIRED>
|
||||
<!ELEMENT Camera EMPTY>
|
||||
<!ELEMENT EncoderOutputFileFormat EMPTY>
|
||||
<!ATTLIST EncoderOutputFileFormat name (mp4|3gp) #REQUIRED>
|
||||
<!ELEMENT VideoEncoderCap EMPTY>
|
||||
<!ATTLIST VideoEncoderCap name (h264|h263|m4v|wmv) #REQUIRED>
|
||||
<!ATTLIST VideoEncoderCap enabled (true|false) #REQUIRED>
|
||||
<!ATTLIST VideoEncoderCap minBitRate CDATA #REQUIRED>
|
||||
<!ATTLIST VideoEncoderCap maxBitRate CDATA #REQUIRED>
|
||||
<!ATTLIST VideoEncoderCap minFrameWidth CDATA #REQUIRED>
|
||||
<!ATTLIST VideoEncoderCap maxFrameWidth CDATA #REQUIRED>
|
||||
<!ATTLIST VideoEncoderCap minFrameHeight CDATA #REQUIRED>
|
||||
<!ATTLIST VideoEncoderCap maxFrameHeight CDATA #REQUIRED>
|
||||
<!ATTLIST VideoEncoderCap minFrameRate CDATA #REQUIRED>
|
||||
<!ATTLIST VideoEncoderCap maxFrameRate CDATA #REQUIRED>
|
||||
<!ELEMENT AudioEncoderCap EMPTY>
|
||||
<!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac|heaac|aaceld|wma) #REQUIRED>
|
||||
<!ATTLIST AudioEncoderCap enabled (true|false) #REQUIRED>
|
||||
<!ATTLIST AudioEncoderCap minBitRate CDATA #REQUIRED>
|
||||
<!ATTLIST AudioEncoderCap maxBitRate CDATA #REQUIRED>
|
||||
<!ATTLIST AudioEncoderCap minSampleRate CDATA #REQUIRED>
|
||||
<!ATTLIST AudioEncoderCap maxSampleRate CDATA #REQUIRED>
|
||||
<!ATTLIST AudioEncoderCap minChannels (1|2|6) #REQUIRED>
|
||||
<!ATTLIST AudioEncoderCap maxChannels (1|2|6) #REQUIRED>
|
||||
<!ELEMENT VideoDecoderCap EMPTY>
|
||||
<!ATTLIST VideoDecoderCap name (wmv) #REQUIRED>
|
||||
<!ATTLIST VideoDecoderCap enabled (true|false) #REQUIRED>
|
||||
<!ELEMENT AudioDecoderCap EMPTY>
|
||||
<!ATTLIST AudioDecoderCap name (wma) #REQUIRED>
|
||||
<!ATTLIST AudioDecoderCap enabled (true|false) #REQUIRED>
|
||||
]>
|
||||
<!--
|
||||
This file is used to declare the multimedia profiles and capabilities
|
||||
on an android-powered device.
|
||||
-->
|
||||
<MediaSettings>
|
||||
<!-- Each camcorder profile defines a set of predefined configuration parameters -->
|
||||
<!-- Back Camera -->
|
||||
<CamcorderProfiles cameraId="0">
|
||||
|
||||
<EncoderProfile quality="low" fileFormat="3gp" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="128000"
|
||||
width="320"
|
||||
height="240"
|
||||
frameRate="15" />
|
||||
|
||||
<Audio codec="amrnb"
|
||||
bitRate="12200"
|
||||
sampleRate="8000"
|
||||
channels="1" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="high" fileFormat="mp4" duration="10">
|
||||
<Video codec="h264"
|
||||
bitRate="50000000"
|
||||
width="3840"
|
||||
height="2160"
|
||||
frameRate="30" />
|
||||
|
||||
<Audio codec="aac"
|
||||
bitRate="320000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="qvga" fileFormat="3gp" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="128000"
|
||||
width="320"
|
||||
height="240"
|
||||
frameRate="15" />
|
||||
|
||||
<Audio codec="amrnb"
|
||||
bitRate="12200"
|
||||
sampleRate="8000"
|
||||
channels="1" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="480p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="6000000"
|
||||
width="720"
|
||||
height="480"
|
||||
frameRate="30" />
|
||||
|
||||
<Audio codec="aac"
|
||||
bitRate="128000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="14000000"
|
||||
width="1280"
|
||||
height="720"
|
||||
frameRate="30" />
|
||||
|
||||
<Audio codec="aac"
|
||||
bitRate="320000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="1080p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="20000000"
|
||||
width="1920"
|
||||
height="1080"
|
||||
frameRate="30" />
|
||||
|
||||
<Audio codec="aac"
|
||||
bitRate="320000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="anamorphic1920" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="20000000"
|
||||
width="1920"
|
||||
height="816"
|
||||
frameRate="30" />
|
||||
|
||||
<Audio codec="aac"
|
||||
bitRate="320000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<!-- CAMCORDER_QUALITY_HIGH_SPEED_LOW/720P : 720p@240fps; 56.0 Mbps -->
|
||||
<EncoderProfile quality="highspeedlow" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="56000000"
|
||||
width="1280"
|
||||
height="720"
|
||||
frameRate="240" />
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="aac"
|
||||
bitRate="96000"
|
||||
sampleRate="48000"
|
||||
channels="1" />
|
||||
</EncoderProfile>
|
||||
|
||||
<!-- CAMCORDER_QUALITY_HIGH_SPEED_HIGH/1080P : 1080p@120fps; 50.0 Mbps -->
|
||||
<EncoderProfile quality="highspeedhigh" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="50000000"
|
||||
width="1920"
|
||||
height="1080"
|
||||
frameRate="120" />
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="aac"
|
||||
bitRate="96000"
|
||||
sampleRate="48000"
|
||||
channels="1" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="highspeed720p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="56000000"
|
||||
width="1280"
|
||||
height="720"
|
||||
frameRate="240" />
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="aac"
|
||||
bitRate="96000"
|
||||
sampleRate="48000"
|
||||
channels="1" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="highspeed1080p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="50000000"
|
||||
width="1920"
|
||||
height="1080"
|
||||
frameRate="120" />
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="aac"
|
||||
bitRate="96000"
|
||||
sampleRate="48000"
|
||||
channels="1" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="2160p" fileFormat="mp4" duration="10">
|
||||
<Video codec="h264"
|
||||
bitRate="50000000"
|
||||
width="3840"
|
||||
height="2160"
|
||||
frameRate="30" />
|
||||
|
||||
<Audio codec="aac"
|
||||
bitRate="320000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="anamorphic3840" fileFormat="mp4" duration="10">
|
||||
<Video codec="h264"
|
||||
bitRate="50000000"
|
||||
width="3840"
|
||||
height="1632"
|
||||
frameRate="30" />
|
||||
|
||||
<Audio codec="aac"
|
||||
bitRate="320000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="timelapselow" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="512000"
|
||||
width="320"
|
||||
height="240"
|
||||
frameRate="30" />
|
||||
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="amrnb"
|
||||
bitRate="12200"
|
||||
sampleRate="8000"
|
||||
channels="1" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="timelapsehigh" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="50000000"
|
||||
width="3840"
|
||||
height="2160"
|
||||
frameRate="30" />
|
||||
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="aac"
|
||||
bitRate="128000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="timelapseqvga" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="512000"
|
||||
width="320"
|
||||
height="240"
|
||||
frameRate="30" />
|
||||
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="amrnb"
|
||||
bitRate="12200"
|
||||
sampleRate="8000"
|
||||
channels="1" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="6000000"
|
||||
width="640"
|
||||
height="480"
|
||||
frameRate="30" />
|
||||
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="aac"
|
||||
bitRate="128000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="10000000"
|
||||
width="1280"
|
||||
height="720"
|
||||
frameRate="30" />
|
||||
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="aac"
|
||||
bitRate="128000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="20000000"
|
||||
width="1920"
|
||||
height="1080"
|
||||
frameRate="30" />
|
||||
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="aac"
|
||||
bitRate="128000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="timelapse2160p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="50000000"
|
||||
width="3840"
|
||||
height="2160"
|
||||
frameRate="30" />
|
||||
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="aac"
|
||||
bitRate="128000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
|
||||
<ImageEncoding quality="95" />
|
||||
<ImageEncoding quality="80" />
|
||||
<ImageEncoding quality="70" />
|
||||
<ImageDecoding memCap="20000000" />
|
||||
|
||||
</CamcorderProfiles>
|
||||
<!-- Front Camera -->
|
||||
<CamcorderProfiles cameraId="1">
|
||||
|
||||
<EncoderProfile quality="low" fileFormat="3gp" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="128000"
|
||||
width="320"
|
||||
height="240"
|
||||
frameRate="15" />
|
||||
|
||||
<Audio codec="amrnb"
|
||||
bitRate="12200"
|
||||
sampleRate="8000"
|
||||
channels="1" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="high" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="17000000"
|
||||
width="1920"
|
||||
height="1080"
|
||||
frameRate="30" />
|
||||
|
||||
<Audio codec="aac"
|
||||
bitRate="320000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="qvga" fileFormat="3gp" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="128000"
|
||||
width="320"
|
||||
height="240"
|
||||
frameRate="15" />
|
||||
|
||||
<Audio codec="amrnb"
|
||||
bitRate="12200"
|
||||
sampleRate="8000"
|
||||
channels="1" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="480p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="6000000"
|
||||
width="720"
|
||||
height="480"
|
||||
frameRate="30" />
|
||||
|
||||
<Audio codec="aac"
|
||||
bitRate="128000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="10000000"
|
||||
width="1280"
|
||||
height="720"
|
||||
frameRate="30" />
|
||||
|
||||
<Audio codec="aac"
|
||||
bitRate="320000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="1080p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="17000000"
|
||||
width="1920"
|
||||
height="1080"
|
||||
frameRate="30" />
|
||||
|
||||
<Audio codec="aac"
|
||||
bitRate="320000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="anamorphic1920" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="20000000"
|
||||
width="1920"
|
||||
height="816"
|
||||
frameRate="30" />
|
||||
|
||||
<Audio codec="aac"
|
||||
bitRate="320000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="highspeedlow" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="17000000"
|
||||
width="640"
|
||||
height="480"
|
||||
frameRate="120" />
|
||||
<Audio codec="aac"
|
||||
bitRate="96000"
|
||||
sampleRate="48000"
|
||||
channels="1" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="highspeedhigh" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="17000000"
|
||||
width="640"
|
||||
height="480"
|
||||
frameRate="120" />
|
||||
<Audio codec="aac"
|
||||
bitRate="96000"
|
||||
sampleRate="48000"
|
||||
channels="1" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="highspeed480p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="17000000"
|
||||
width="640"
|
||||
height="480"
|
||||
frameRate="120" />
|
||||
<Audio codec="aac"
|
||||
bitRate="96000"
|
||||
sampleRate="48000"
|
||||
channels="1" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="timelapselow" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="512000"
|
||||
width="320"
|
||||
height="240"
|
||||
frameRate="30" />
|
||||
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="amrnb"
|
||||
bitRate="12200"
|
||||
sampleRate="8000"
|
||||
channels="1" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="timelapsehigh" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="17000000"
|
||||
width="1920"
|
||||
height="1080"
|
||||
frameRate="30" />
|
||||
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="aac"
|
||||
bitRate="128000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="timelapseqvga" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="512000"
|
||||
width="320"
|
||||
height="240"
|
||||
frameRate="30" />
|
||||
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="amrnb"
|
||||
bitRate="12200"
|
||||
sampleRate="8000"
|
||||
channels="1" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="6000000"
|
||||
width="640"
|
||||
height="480"
|
||||
frameRate="30" />
|
||||
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="aac"
|
||||
bitRate="128000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="10000000"
|
||||
width="1280"
|
||||
height="720"
|
||||
frameRate="30" />
|
||||
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="aac"
|
||||
bitRate="128000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
<EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30">
|
||||
<Video codec="h264"
|
||||
bitRate="17000000"
|
||||
width="1920"
|
||||
height="1080"
|
||||
frameRate="30" />
|
||||
|
||||
<!-- audio setting is ignored -->
|
||||
<Audio codec="aac"
|
||||
bitRate="128000"
|
||||
sampleRate="48000"
|
||||
channels="2" />
|
||||
</EncoderProfile>
|
||||
|
||||
|
||||
<ImageEncoding quality="95" />
|
||||
<ImageEncoding quality="80" />
|
||||
<ImageEncoding quality="70" />
|
||||
<ImageDecoding memCap="20000000" />
|
||||
|
||||
</CamcorderProfiles>
|
||||
|
||||
<EncoderOutputFileFormat name="3gp" />
|
||||
<EncoderOutputFileFormat name="mp4" />
|
||||
|
||||
<!--
|
||||
If a codec is not enabled, it is invisible to the applications
|
||||
In other words, the applications won't be able to use the codec
|
||||
or query the capabilities of the codec at all if it is disabled
|
||||
-->
|
||||
<VideoEncoderCap name="h264" enabled="true"
|
||||
minBitRate="64000" maxBitRate="60000000"
|
||||
minFrameWidth="176" maxFrameWidth="3840"
|
||||
minFrameHeight="144" maxFrameHeight="2160"
|
||||
minFrameRate="15" maxFrameRate="60" />
|
||||
|
||||
<VideoEncoderCap name="h263" enabled="true"
|
||||
minBitRate="64000" maxBitRate="2000000"
|
||||
minFrameWidth="176" maxFrameWidth="720"
|
||||
minFrameHeight="144" maxFrameHeight="480"
|
||||
minFrameRate="15" maxFrameRate="30" />
|
||||
|
||||
<VideoEncoderCap name="m4v" enabled="true"
|
||||
minBitRate="64000" maxBitRate="20000000"
|
||||
minFrameWidth="176" maxFrameWidth="1920"
|
||||
minFrameHeight="144" maxFrameHeight="1080"
|
||||
minFrameRate="15" maxFrameRate="30" />
|
||||
|
||||
<AudioEncoderCap name="aac" enabled="true"
|
||||
minBitRate="8000" maxBitRate="512000"
|
||||
minSampleRate="8000" maxSampleRate="48000"
|
||||
minChannels="1" maxChannels="4" />
|
||||
|
||||
<AudioEncoderCap name="heaac" enabled="true"
|
||||
minBitRate="8000" maxBitRate="128000"
|
||||
minSampleRate="16000" maxSampleRate="48000"
|
||||
minChannels="1" maxChannels="2" />
|
||||
|
||||
<AudioEncoderCap name="aaceld" enabled="true"
|
||||
minBitRate="16000" maxBitRate="384000"
|
||||
minSampleRate="16000" maxSampleRate="48000"
|
||||
minChannels="1" maxChannels="2" />
|
||||
|
||||
<AudioEncoderCap name="amrwb" enabled="true"
|
||||
minBitRate="6600" maxBitRate="23850"
|
||||
minSampleRate="16000" maxSampleRate="16000"
|
||||
minChannels="1" maxChannels="1" />
|
||||
|
||||
<AudioEncoderCap name="amrnb" enabled="true"
|
||||
minBitRate="5525" maxBitRate="12200"
|
||||
minSampleRate="8000" maxSampleRate="8000"
|
||||
minChannels="1" maxChannels="1" />
|
||||
<!--
|
||||
FIXME:
|
||||
We do not check decoder capabilities at present
|
||||
At present, we only check whether windows media is visible
|
||||
for TEST applications. For other applications, we do
|
||||
not perform any checks at all.
|
||||
-->
|
||||
<!-- IKVPREL2KK-2424 Disable WMV and WMA support -->
|
||||
<VideoDecoderCap name="wmv" enabled="false"/>
|
||||
<AudioDecoderCap name="wma" enabled="false"/>
|
||||
</MediaSettings>
|
18
sm8250.mk
18
sm8250.mk
@ -84,4 +84,22 @@ PRODUCT_PACKAGES += \
|
||||
vendor.qti.hardware.btconfigstore@1.0.vendor
|
||||
vendor.qti.hardware.btconfigstore@2.0.vendor
|
||||
|
||||
# Media
|
||||
PRODUCT_COPY_FILES += \
|
||||
$(LOCAL_PATH)/media/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
|
||||
$(LOCAL_PATH)/media/media_codecs_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_c2.xml \
|
||||
$(LOCAL_PATH)/media/media_codecs_kona.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_kona.xml \
|
||||
$(LOCAL_PATH)/media/media_codecs_performance_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_c2.xml \
|
||||
$(LOCAL_PATH)/media/media_codecs_performance_kona.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_kona.xml \
|
||||
$(LOCAL_PATH)/media/media_codecs_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor.xml \
|
||||
$(LOCAL_PATH)/media/media_codecs_vendor_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_audio.xml \
|
||||
$(LOCAL_PATH)/media/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles.xml \
|
||||
|
||||
PRODUCT_COPY_FILES += \
|
||||
frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
|
||||
frameworks/av/media/libstagefright/data/media_codecs_google_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2.xml \
|
||||
frameworks/av/media/libstagefright/data/media_codecs_google_c2_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2_audio.xml \
|
||||
frameworks/av/media/libstagefright/data/media_codecs_google_c2_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2_video.xml \
|
||||
frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \
|
||||
frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \
|
||||
frameworks/av/media/libstagefright/data/media_codecs_google_video_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video_le.xml
|
||||
|
Loading…
x
Reference in New Issue
Block a user