diff options
author | Lajos Molnar <lajos@google.com> | 2019-05-08 17:55:21 -0700 |
---|---|---|
committer | Lajos Molnar <lajos@google.com> | 2019-05-08 18:16:15 -0700 |
commit | 5f65a0d1e3929adce78e0fd962786e2510652002 (patch) | |
tree | b6fc6cbf93b1779a8d584c39673381f7cf0a2094 | |
parent | f089a7669e38e8ba4eaa6d1ce41145a7bc52ad40 (diff) | |
download | bonito-5f65a0d1e3929adce78e0fd962786e2510652002.tar.gz |
media: combine media_codecs.xml files
Bug: 129710438
Change-Id: Iaeb4b1c5ef16e378e772dd77522163730c77b3e8
-rw-r--r-- | device.mk | 5 | ||||
-rw-r--r-- | media_codecs.xml | 297 | ||||
-rw-r--r-- | media_codecs_c2.xml | 211 | ||||
-rw-r--r-- | media_codecs_omx.xml | 275 | ||||
-rw-r--r-- | media_codecs_performance.xml | 235 | ||||
-rw-r--r-- | media_codecs_performance_c2.xml | 181 |
6 files changed, 566 insertions, 638 deletions
@@ -605,10 +605,7 @@ PRODUCT_COPY_FILES += \ 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 \ $(LOCAL_PATH)/media_profiles_V1_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml \ - $(LOCAL_PATH)/media_codecs_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_c2.xml \ - $(LOCAL_PATH)/media_codecs_performance_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_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 \ + $(LOCAL_PATH)/media_codecs_omx.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_omx.xml # configures both aac and xaac decoders PRODUCT_COPY_FILES += \ diff --git a/media_codecs.xml b/media_codecs.xml index 1c38779c..062b94d4 100644 --- a/media_codecs.xml +++ b/media_codecs.xml @@ -1,143 +1,97 @@ <?xml version="1.0" encoding="utf-8" ?> -<!-- Copyright 2016 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: + Copyright (C) 2018 The Android Open Source Project -"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. + 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. --> <!-- - SDM670 Decoder capabilities - __________________________________________________________________ - | Codec | W H fps Mbps MB/s | Secure-dec | - |__________|_________________________________________|____________| - | h264 | 4096 2160 24 100 829440 | Y | - | hevc | 4096 2160 60 100 829440 | Y | - | vp8 | 3840 2160 30 100 979200 | N | - | vp9 | 4096 2160 24 100 829440 | Y | - |__________|_________________________________________|____________| - + 670 Non-Secure decoder capabilities + _________________________________________________________ + | Codec | W H fps Mbps MB/s | + |_____________|_________________________________________| + | h264 | 4096 2160 24 100 829440 | + | hevc | 4096 2160 24 100 829440 | + | mpeg4-sw | 1920 1088 30 40 244800 | + | vp8 | 3840 2160 30 100 972000 | + | vp9 | 4096 2160 24 100 829440 | + | vc1 | 1920 1088 30 20 244800 | + | div4/5/6-sw | 1920 1088 30 10 244800 | + | h263-sw | 864 480 30 16 48600 | + | mpeg2 | 1920 1088 30 40 244800 | + |_____________|_________________________________________| + + 670 Secure decoder capabilities + ______________________________________________________ + | Codec | W H fps Mbps MB/s | + |__________|_________________________________________| + | h264 | 3840 2160 30 35 972000 | + | vp9 | 3840 2160 30 35 972000 | + | hevc | 3840 2160 30 35 972000 | + | mpeg2 | 1920 1088 30 35 244800 | + |__________|_________________________________________| - SDM670 Encoder capabilities + 670 Non-Secure encoder capabilities (Secure not supported) ______________________________________________________ | Codec | W H fps Mbps MB/s | |__________|_________________________________________| | h264 | 4096 2160 24 100 829440 | | hevc | 4096 2160 24 100 829440 | - | vp8 | 3840 2160 30 100 979200 | + | mpeg4-sw | 1280 720 30 4 108000 | + | vp8 | 3840 2160 30 100 972000 | + | h263-sw | 864 480 30 2 48600 | |__________|_________________________________________| --> <MediaCodecs> - <Include href="media_codecs_google_audio.xml" /> - <Include href="media_codecs_google_telephony.xml" /> + <Include href="media_codecs_omx.xml" /> <Settings> <Setting name="max-video-encoder-input-buffers" value="11" /> + <Domain name="telephony" enabled="true" /> </Settings> - <Encoders> - <!-- Audio Hardware --> - <!-- Audio Software --> - <!-- 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" /> + <Decoders> + <!-- C2 decoders --> + <MediaCodec name="c2.qti.avc.decoder" type="video/avc"> + <Alias name="OMX.qcom.video.decoder.avc" /> <Limit name="size" min="96x96" max="4096x2160" /> <Limit name="alignment" value="2x2" /> <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" min="24" max="979200" /> + <Limit name="blocks-per-second" range="24-979200" /> <Limit name="bitrate" range="1-100000000" /> <Limit name="frame-rate" range="1-240" /> <Limit name="concurrent-instances" max="16" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> + <Feature name="adaptive-playback" /> </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" /> + <MediaCodec name="c2.qti.avc.decoder.secure" type="video/avc" > + <Alias name="OMX.qcom.video.decoder.avc.secure" /> <Limit name="size" min="96x96" max="3840x2160" /> <Limit name="alignment" value="2x2" /> <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" min="24" max="979200" /> - <Limit name="bitrate" range="1-20000000" /> - <Limit name="frame-rate" range="1-240" /> - <Limit name="concurrent-instances" max="16" /> + <Limit name="blocks-per-second" min="1" max="972000" /> + <Limit name="bitrate" range="1-35000000" /> + <Limit name="frame-rate" range="1-30" /> + <Limit name="concurrent-instances" max="6" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> + <Feature name="adaptive-playback" /> + <Feature name="secure-playback" required="true" /> </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" /> + <MediaCodec name="c2.qti.hevc.decoder" type="video/hevc" > + <Alias name="OMX.qcom.video.decoder.hevc" /> <Limit name="size" min="96x96" max="4096x2160" /> <Limit name="alignment" value="2x2" /> <Limit name="block-size" value="16x16" /> @@ -145,99 +99,114 @@ Only the three quirks included above are recognized at this point: <Limit name="bitrate" range="1-100000000" /> <Limit name="frame-rate" range="1-240" /> <Limit name="concurrent-instances" max="16" /> - <Limit name="quality" range="0-100" default="80" /> - <Feature name="bitrate-modes" value="VBR,CQ" /> - </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="96x96" max="4096x2160" /> - <Limit name="alignment" value="2x2" /> - <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" min="24" max="979200" /> - <Limit name="bitrate" range="1-100000000" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> <Feature name="adaptive-playback" /> - <Limit name="concurrent-instances" max="16" /> </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" /> + <MediaCodec name="c2.qti.hevc.decoder.secure" type="video/hevc" > + <Alias name="OMX.qcom.video.decoder.hevc.secure" /> <Limit name="size" min="96x96" max="4096x2160" /> <Limit name="alignment" value="2x2" /> <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" min="24" max="972000" /> + <Limit name="blocks-per-second" min="24" max="979200" /> <Limit name="bitrate" range="1-100000000" /> - <Limit name="frame-rate" range="1-30" /> + <Limit name="frame-rate" range="1-240" /> + <Limit name="concurrent-instances" max="6" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> <Feature name="adaptive-playback" /> <Feature name="secure-playback" required="true" /> - <Limit name="concurrent-instances" max="6" /> </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" /> + <MediaCodec name="c2.qti.vp8.decoder" type="video/x-vnd.on2.vp8" > + <Alias name="OMX.qcom.video.decoder.vp8" /> <Limit name="size" min="96x96" max="3840x2160" /> <Limit name="alignment" value="2x2" /> <Limit name="block-size" value="16x16" /> <Limit name="blocks-per-second" min="24" max="979200" /> - <Limit name="bitrate" range="1-20000000" /> + <Limit name="bitrate" range="1-100000000" /> <Limit name="frame-rate" range="1-240" /> - <Feature name="adaptive-playback" /> <Limit name="concurrent-instances" max="16" /> + <Limit name="performance-point-4096x2304" value="28" /> + <Limit name="performance-point-3840x2160" value="30" /> + <Limit name="performance-point-1920x1080" value="120" /> + <Limit name="performance-point-1280x720" value="240" /> + <Feature name="adaptive-playback" /> </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="96x96" max="3840x2160" /> + <MediaCodec name="c2.qti.vp9.decoder" type="video/x-vnd.on2.vp9" > + <Alias name="OMX.qcom.video.decoder.vp9" /> + <Limit name="size" min="96x96" max="4096x2160" /> <Limit name="alignment" value="2x2" /> <Limit name="block-size" value="16x16" /> <Limit name="blocks-per-second" min="24" max="979200" /> - <Limit name="bitrate" range="1-20000000" /> + <Limit name="bitrate" range="1-120000000" /> <Limit name="frame-rate" range="1-240" /> - <Feature name="adaptive-playback" /> <Limit name="concurrent-instances" max="6" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> + <Feature name="adaptive-playback" /> </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="96x96" max="3840x2160" /> + <MediaCodec name="c2.qti.vp9.decoder.secure" type="video/x-vnd.on2.vp9" > + <Alias name="OMX.qcom.video.decoder.vp9.secure" /> + <Limit name="size" min="96x96" max="4096x2160" /> <Limit name="alignment" value="2x2" /> <Limit name="block-size" value="16x16" /> <Limit name="blocks-per-second" min="24" max="979200" /> - <Limit name="bitrate" range="1-20000000" /> - <Limit name="frame-rate" range="1-30" /> + <Limit name="bitrate" range="1-120000000" /> + <Limit name="frame-rate" range="1-240" /> + <Limit name="concurrent-instances" max="6" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> <Feature name="adaptive-playback" /> <Feature name="secure-playback" required="true" /> - <Limit name="concurrent-instances" max="6" /> </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" /> + </Decoders> + <Encoders> + <!-- C2 encoders --> + <MediaCodec name="c2.qti.avc.encoder" type="video/avc"> + <Alias name="OMX.qcom.video.encoder.avc" /> <Limit name="size" min="96x96" max="4096x2160" /> <Limit name="alignment" value="2x2" /> <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" min="1" max="979200" /> + <Limit name="blocks-per-second" min="24" max="979200" /> <Limit name="bitrate" range="1-100000000" /> <Limit name="frame-rate" range="1-240" /> - <Feature name="adaptive-playback" /> <Limit name="concurrent-instances" max="16" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> </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" /> + <MediaCodec name="c2.qti.hevc.encoder" type="video/hevc"> + <Alias name="OMX.qcom.video.encoder.hevc" /> <Limit name="size" min="96x96" max="4096x2160" /> <Limit name="alignment" value="2x2" /> <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" min="1" max="972000" /> - <Limit name="bitrate" range="1-100000000" /> - <Limit name="frame-rate" range="1-30" /> - <Feature name="adaptive-playback" /> - <Feature name="secure-playback" required="true" /> - <Limit name="concurrent-instances" max="6" /> + <Limit name="blocks-per-second" min="24" max="979200" /> + <Limit name="bitrate" range="1-120000000" /> + <Limit name="frame-rate" range="1-240" /> + <Limit name="concurrent-instances" max="16" /> + <Limit name="quality" range="0-100" default="80" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> + <Feature name="bitrate-modes" value="VBR,CQ" /> </MediaCodec> - <!-- Audio Software --> - </Decoders> - <Include href="media_codecs_google_video.xml" /> + <MediaCodec name="c2.qti.vp8.encoder" type="video/x-vnd.on2.vp8"> + <Alias name="OMX.qcom.video.encoder.vp8" /> + <Limit name="size" min="96x96" max="3840x2160" /> + <Limit name="alignment" value="2x2" /> + <Limit name="block-size" value="16x16" /> + <Limit name="blocks-per-second" min="24" max="979200" /> + <Limit name="bitrate" range="1-120000000" /> + <Limit name="frame-rate" range="1-240" /> + <Limit name="concurrent-instances" max="16" /> + <Limit name="performance-point-4096x2304" value="28" /> + <Limit name="performance-point-3840x2160" value="30" /> + <Limit name="performance-point-1920x1080" value="120" /> + <Limit name="performance-point-1280x720" value="240" /> + </MediaCodec> + </Encoders> </MediaCodecs> diff --git a/media_codecs_c2.xml b/media_codecs_c2.xml deleted file mode 100644 index 27bebb67..00000000 --- a/media_codecs_c2.xml +++ /dev/null @@ -1,211 +0,0 @@ -<?xml version="1.0" encoding="utf-8" ?> -<!-- - Copyright (C) 2018 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. ---> - -<!-- - 670 Non-Secure decoder capabilities - _________________________________________________________ - | Codec | W H fps Mbps MB/s | - |_____________|_________________________________________| - | h264 | 4096 2160 24 100 829440 | - | hevc | 4096 2160 24 100 829440 | - | mpeg4-sw | 1920 1088 30 40 244800 | - | vp8 | 3840 2160 30 100 972000 | - | vp9 | 4096 2160 24 100 829440 | - | vc1 | 1920 1088 30 20 244800 | - | div4/5/6-sw | 1920 1088 30 10 244800 | - | h263-sw | 864 480 30 16 48600 | - | mpeg2 | 1920 1088 30 40 244800 | - |_____________|_________________________________________| - - 670 Secure decoder capabilities - ______________________________________________________ - | Codec | W H fps Mbps MB/s | - |__________|_________________________________________| - | h264 | 3840 2160 30 35 972000 | - | vp9 | 3840 2160 30 35 972000 | - | hevc | 3840 2160 30 35 972000 | - | mpeg2 | 1920 1088 30 35 244800 | - |__________|_________________________________________| - - 670 Non-Secure encoder capabilities (Secure not supported) - ______________________________________________________ - | Codec | W H fps Mbps MB/s | - |__________|_________________________________________| - | h264 | 4096 2160 24 100 829440 | - | hevc | 4096 2160 24 100 829440 | - | mpeg4-sw | 1280 720 30 4 108000 | - | vp8 | 3840 2160 30 100 972000 | - | h263-sw | 864 480 30 2 48600 | - |__________|_________________________________________| ---> - -<Included> - <Decoders> - <!-- C2 decoders --> - <MediaCodec name="c2.qti.avc.decoder" type="video/avc"> - <Alias name="OMX.qcom.video.decoder.avc" /> - <Limit name="size" min="96x96" max="4096x2160" /> - <Limit name="alignment" value="2x2" /> - <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" range="24-979200" /> - <Limit name="bitrate" range="1-100000000" /> - <Limit name="frame-rate" range="1-240" /> - <Limit name="concurrent-instances" max="16" /> - <Limit name="performance-point-4096x2304" value="56" /> - <Limit name="performance-point-3840x2160" value="60" /> - <Limit name="performance-point-1920x1080" value="240" /> - <Feature name="adaptive-playback" /> - </MediaCodec> - <MediaCodec name="c2.qti.avc.decoder.secure" type="video/avc" > - <Alias name="OMX.qcom.video.decoder.avc.secure" /> - <Limit name="size" min="96x96" max="3840x2160" /> - <Limit name="alignment" value="2x2" /> - <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" min="1" max="972000" /> - <Limit name="bitrate" range="1-35000000" /> - <Limit name="frame-rate" range="1-30" /> - <Limit name="concurrent-instances" max="6" /> - <Limit name="performance-point-4096x2304" value="56" /> - <Limit name="performance-point-3840x2160" value="60" /> - <Limit name="performance-point-1920x1080" value="240" /> - <Feature name="adaptive-playback" /> - <Feature name="secure-playback" required="true" /> - </MediaCodec> - <MediaCodec name="c2.qti.hevc.decoder" type="video/hevc" > - <Alias name="OMX.qcom.video.decoder.hevc" /> - <Limit name="size" min="96x96" max="4096x2160" /> - <Limit name="alignment" value="2x2" /> - <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" min="24" max="979200" /> - <Limit name="bitrate" range="1-100000000" /> - <Limit name="frame-rate" range="1-240" /> - <Limit name="concurrent-instances" max="16" /> - <Limit name="performance-point-4096x2304" value="56" /> - <Limit name="performance-point-3840x2160" value="60" /> - <Limit name="performance-point-1920x1080" value="240" /> - <Feature name="adaptive-playback" /> - </MediaCodec> - <MediaCodec name="c2.qti.hevc.decoder.secure" type="video/hevc" > - <Alias name="OMX.qcom.video.decoder.hevc.secure" /> - <Limit name="size" min="96x96" max="4096x2160" /> - <Limit name="alignment" value="2x2" /> - <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" min="24" max="979200" /> - <Limit name="bitrate" range="1-100000000" /> - <Limit name="frame-rate" range="1-240" /> - <Limit name="concurrent-instances" max="6" /> - <Limit name="performance-point-4096x2304" value="56" /> - <Limit name="performance-point-3840x2160" value="60" /> - <Limit name="performance-point-1920x1080" value="240" /> - <Feature name="adaptive-playback" /> - <Feature name="secure-playback" required="true" /> - </MediaCodec> - <MediaCodec name="c2.qti.vp8.decoder" type="video/x-vnd.on2.vp8" > - <Alias name="OMX.qcom.video.decoder.vp8" /> - <Limit name="size" min="96x96" max="3840x2160" /> - <Limit name="alignment" value="2x2" /> - <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" min="24" max="979200" /> - <Limit name="bitrate" range="1-100000000" /> - <Limit name="frame-rate" range="1-240" /> - <Limit name="concurrent-instances" max="16" /> - <Limit name="performance-point-4096x2304" value="28" /> - <Limit name="performance-point-3840x2160" value="30" /> - <Limit name="performance-point-1920x1080" value="120" /> - <Limit name="performance-point-1280x720" value="240" /> - <Feature name="adaptive-playback" /> - </MediaCodec> - <MediaCodec name="c2.qti.vp9.decoder" type="video/x-vnd.on2.vp9" > - <Alias name="OMX.qcom.video.decoder.vp9" /> - <Limit name="size" min="96x96" max="4096x2160" /> - <Limit name="alignment" value="2x2" /> - <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" min="24" max="979200" /> - <Limit name="bitrate" range="1-120000000" /> - <Limit name="frame-rate" range="1-240" /> - <Limit name="concurrent-instances" max="6" /> - <Limit name="performance-point-4096x2304" value="56" /> - <Limit name="performance-point-3840x2160" value="60" /> - <Limit name="performance-point-1920x1080" value="240" /> - <Feature name="adaptive-playback" /> - </MediaCodec> - <MediaCodec name="c2.qti.vp9.decoder.secure" type="video/x-vnd.on2.vp9" > - <Alias name="OMX.qcom.video.decoder.vp9.secure" /> - <Limit name="size" min="96x96" max="4096x2160" /> - <Limit name="alignment" value="2x2" /> - <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" min="24" max="979200" /> - <Limit name="bitrate" range="1-120000000" /> - <Limit name="frame-rate" range="1-240" /> - <Limit name="concurrent-instances" max="6" /> - <Limit name="performance-point-4096x2304" value="56" /> - <Limit name="performance-point-3840x2160" value="60" /> - <Limit name="performance-point-1920x1080" value="240" /> - <Feature name="adaptive-playback" /> - <Feature name="secure-playback" required="true" /> - </MediaCodec> - - </Decoders> - - <Encoders> - <!-- C2 encoders --> - <MediaCodec name="c2.qti.avc.encoder" type="video/avc"> - <Alias name="OMX.qcom.video.encoder.avc" /> - <Limit name="size" min="96x96" max="4096x2160" /> - <Limit name="alignment" value="2x2" /> - <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" min="24" max="979200" /> - <Limit name="bitrate" range="1-100000000" /> - <Limit name="frame-rate" range="1-240" /> - <Limit name="concurrent-instances" max="16" /> - <Limit name="performance-point-4096x2304" value="56" /> - <Limit name="performance-point-3840x2160" value="60" /> - <Limit name="performance-point-1920x1080" value="240" /> - </MediaCodec> - <MediaCodec name="c2.qti.hevc.encoder" type="video/hevc"> - <Alias name="OMX.qcom.video.encoder.hevc" /> - <Limit name="size" min="96x96" max="4096x2160" /> - <Limit name="alignment" value="2x2" /> - <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" min="24" max="979200" /> - <Limit name="bitrate" range="1-120000000" /> - <Limit name="frame-rate" range="1-240" /> - <Limit name="concurrent-instances" max="16" /> - <Limit name="quality" range="0-100" default="80" /> - <Limit name="performance-point-4096x2304" value="56" /> - <Limit name="performance-point-3840x2160" value="60" /> - <Limit name="performance-point-1920x1080" value="240" /> - <Feature name="bitrate-modes" value="VBR,CQ" /> - </MediaCodec> - <MediaCodec name="c2.qti.vp8.encoder" type="video/x-vnd.on2.vp8"> - <Alias name="OMX.qcom.video.encoder.vp8" /> - <Limit name="size" min="96x96" max="3840x2160" /> - <Limit name="alignment" value="2x2" /> - <Limit name="block-size" value="16x16" /> - <Limit name="blocks-per-second" min="24" max="979200" /> - <Limit name="bitrate" range="1-120000000" /> - <Limit name="frame-rate" range="1-240" /> - <Limit name="concurrent-instances" max="16" /> - <Limit name="performance-point-4096x2304" value="28" /> - <Limit name="performance-point-3840x2160" value="30" /> - <Limit name="performance-point-1920x1080" value="120" /> - <Limit name="performance-point-1280x720" value="240" /> - </MediaCodec> - </Encoders> - <Include href="media_codecs_google_c2_audio.xml" /> - <Include href="media_codecs_google_c2_video.xml" /> -</Included> diff --git a/media_codecs_omx.xml b/media_codecs_omx.xml new file mode 100644 index 00000000..da791c04 --- /dev/null +++ b/media_codecs_omx.xml @@ -0,0 +1,275 @@ +<?xml version="1.0" encoding="utf-8" ?> +<!-- Copyright 2016 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. + + +--> + +<!-- + SDM670 Decoder capabilities + __________________________________________________________________ + | Codec | W H fps Mbps MB/s | Secure-dec | + |__________|_________________________________________|____________| + | h264 | 4096 2160 24 100 829440 | Y | + | hevc | 4096 2160 60 100 829440 | Y | + | vp8 | 3840 2160 30 100 979200 | N | + | vp9 | 4096 2160 24 100 829440 | Y | + |__________|_________________________________________|____________| + + + SDM670 Encoder capabilities + ______________________________________________________ + | Codec | W H fps Mbps MB/s | + |__________|_________________________________________| + | h264 | 4096 2160 24 100 829440 | + | hevc | 4096 2160 24 100 829440 | + | vp8 | 3840 2160 30 100 979200 | + |__________|_________________________________________| +--> + +<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> + <!-- 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="96x96" max="4096x2160" /> + <Limit name="alignment" value="2x2" /> + <Limit name="block-size" value="16x16" /> + <Limit name="blocks-per-second" min="24" max="979200" /> + <Limit name="bitrate" range="1-100000000" /> + <Limit name="concurrent-instances" max="16" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> + <Feature name="adaptive-playback" /> + </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="96x96" max="4096x2160" /> + <Limit name="alignment" value="2x2" /> + <Limit name="block-size" value="16x16" /> + <Limit name="blocks-per-second" min="24" max="972000" /> + <Limit name="bitrate" range="1-100000000" /> + <Limit name="frame-rate" range="1-30" /> + <Limit name="concurrent-instances" max="6" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> + <Feature name="adaptive-playback" /> + <Feature name="secure-playback" required="true" /> + </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="96x96" max="4096x2160" /> + <Limit name="alignment" value="2x2" /> + <Limit name="block-size" value="16x16" /> + <Limit name="blocks-per-second" min="1" max="979200" /> + <Limit name="bitrate" range="1-100000000" /> + <Limit name="frame-rate" range="1-240" /> + <Limit name="concurrent-instances" max="16" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> + <Feature name="adaptive-playback" /> + </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="96x96" max="4096x2160" /> + <Limit name="alignment" value="2x2" /> + <Limit name="block-size" value="16x16" /> + <Limit name="blocks-per-second" min="1" max="972000" /> + <Limit name="bitrate" range="1-100000000" /> + <Limit name="frame-rate" range="1-30" /> + <Limit name="concurrent-instances" max="6" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> + <Feature name="adaptive-playback" /> + <Feature name="secure-playback" required="true" /> + </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="96x96" max="3840x2160" /> + <Limit name="alignment" value="2x2" /> + <Limit name="block-size" value="16x16" /> + <Limit name="blocks-per-second" min="24" max="979200" /> + <Limit name="bitrate" range="1-20000000" /> + <Limit name="frame-rate" range="1-240" /> + <Limit name="concurrent-instances" max="16" /> + <Limit name="performance-point-4096x2304" value="28" /> + <Limit name="performance-point-3840x2160" value="30" /> + <Limit name="performance-point-1920x1080" value="120" /> + <Limit name="performance-point-1280x720" value="240" /> + <Feature name="adaptive-playback" /> + </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="96x96" max="3840x2160" /> + <Limit name="alignment" value="2x2" /> + <Limit name="block-size" value="16x16" /> + <Limit name="blocks-per-second" min="24" max="979200" /> + <Limit name="bitrate" range="1-20000000" /> + <Limit name="frame-rate" range="1-240" /> + <Limit name="concurrent-instances" max="6" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> + <Feature name="adaptive-playback" /> + </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="96x96" max="3840x2160" /> + <Limit name="alignment" value="2x2" /> + <Limit name="block-size" value="16x16" /> + <Limit name="blocks-per-second" min="24" max="979200" /> + <Limit name="bitrate" range="1-20000000" /> + <Limit name="frame-rate" range="1-30" /> + <Limit name="concurrent-instances" max="6" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> + <Feature name="adaptive-playback" /> + <Feature name="secure-playback" required="true" /> + </MediaCodec> + <!-- Audio Software --> + </Decoders> + <Encoders> + <!-- Audio Hardware --> + <!-- Audio Software --> + <!-- 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="96x96" max="4096x2160" /> + <Limit name="alignment" value="2x2" /> + <Limit name="block-size" value="16x16" /> + <Limit name="blocks-per-second" min="24" max="979200" /> + <Limit name="bitrate" range="1-100000000" /> + <Limit name="frame-rate" range="1-240" /> + <Limit name="concurrent-instances" max="16" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> + </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="96x96" max="4096x2160" /> + <Limit name="alignment" value="2x2" /> + <Limit name="block-size" value="16x16" /> + <Limit name="blocks-per-second" min="24" max="979200" /> + <Limit name="bitrate" range="1-100000000" /> + <Limit name="frame-rate" range="1-240" /> + <Limit name="concurrent-instances" max="16" /> + <Limit name="quality" range="0-100" default="80" /> + <Limit name="performance-point-4096x2304" value="56" /> + <Limit name="performance-point-3840x2160" value="60" /> + <Limit name="performance-point-1920x1080" value="240" /> + <Feature name="bitrate-modes" value="VBR,CQ" /> + </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="96x96" max="3840x2160" /> + <Limit name="alignment" value="2x2" /> + <Limit name="block-size" value="16x16" /> + <Limit name="blocks-per-second" min="24" max="979200" /> + <Limit name="bitrate" range="1-20000000" /> + <Limit name="frame-rate" range="1-240" /> + <Limit name="concurrent-instances" max="16" /> + <Limit name="performance-point-4096x2304" value="28" /> + <Limit name="performance-point-3840x2160" value="30" /> + <Limit name="performance-point-1920x1080" value="120" /> + <Limit name="performance-point-1280x720" value="240" /> + </MediaCodec> + </Encoders> + <Include href="media_codecs_google_video.xml" /> +</Included> diff --git a/media_codecs_performance.xml b/media_codecs_performance.xml index ea7b8a5b..87ef858f 100644 --- a/media_codecs_performance.xml +++ b/media_codecs_performance.xml @@ -14,45 +14,36 @@ limitations under the License. --> -<!-- Generated file for sargo using measurements between PPR1.180419.002 and PPR1.180514.002 --> +<!-- Generated file for b4s4 using measurements on PD2A.190102.002 by get_achievable_rates.py--> <MediaCodecs> <Encoders> - <MediaCodec name="OMX.qcom.video.encoder.avc" type="video/avc" update="true"> - <!-- measured 98%:178-558 med:223/223 N=90 FLAKY(112 - 558 < mx=558.7) --> - <Limit name="measured-frame-rate-320x240" range="223-279" /> <!-- v98%=1.8 (-PPR1.180510.004) --> - <!-- measured 97%:94-204 med:151/154 N=52 --> - <Limit name="measured-frame-rate-720x480" range="151-154" /> <!-- v97%=1.5 --> - <Limit name="measured-frame-rate-1280x720" range="85-85" /> <!-- N=100 v98%=1.5 --> - <!-- measured 98%:43-84 med:61/60 N=82 --> - <Limit name="measured-frame-rate-1920x1080" range="60-64" /> <!-- v98%=1.4 --> - </MediaCodec> - <MediaCodec name="OMX.qcom.video.encoder.hevc" type="video/hevc" update="true"> - <!-- measured 98%:172-518 med:224/224 N=90 FLAKY(112 - 518 < mx=546.7) --> - <Limit name="measured-frame-rate-320x240" range="224-274" /> <!-- TWEAKED v98%=1.7 (-PPR1.180510.004) --> - <!-- measured 98%:95-190 med:158/158 N=82 --> - <Limit name="measured-frame-rate-720x480" range="158-158" /> <!-- v98%=1.4 --> - <!-- measured 98%:52-88 med:81/81 N=80 --> - <Limit name="measured-frame-rate-1280x720" range="81-81" /> <!-- v98%=1.3 --> - <!-- measured 97%:45-64 med:53/53 N=52 --> - <Limit name="measured-frame-rate-1920x1080" range="53-53" /> <!-- v97%=1.2 --> - <!-- measured 98%:17-46 med:19/25 N=80 --> - <Limit name="measured-frame-rate-3840x2160" range="19-28" /> <!-- v98%=1.6 --> - </MediaCodec> - <!-- Measurements between PPR1.180419.002 and PPR1.180510.004 --> - <MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" update="true"> - <!-- measured 98%:144-500 med:230/230 N=92 --> - <Limit name="measured-frame-rate-320x180" range="230-337" /> <!-- v98%=1.9 (-PPR1.180514.002) --> - <!-- measured 98%:125-268 med:181/182 N=90 --> - <Limit name="measured-frame-rate-640x360" range="181-182" /> <!-- v98%=1.5 --> - <!-- measured 98%:52-97 med:82/81 N=92 --> - <Limit name="measured-frame-rate-1280x720" range="81-81" /> <!-- v98%=1.4 (-PPR1.180514.002) --> - <!-- measured 97%:45-72 med:51/51 N=58 --> - <Limit name="measured-frame-rate-1920x1080" range="51-51" /> <!-- v97%=1.3 --> + <MediaCodec name="c2.android.h263.encoder" type="video/3gpp" update="true"> + <Limit name="measured-frame-rate-176x144" range="392-406" /> <!-- N=22 v90%=1.4 --> </MediaCodec> <MediaCodec name="OMX.google.h263.encoder" type="video/3gpp" update="true"> <!-- measured 98%:216-758 med:553/552 FLAKY(mn=213.5 < 216 - 1104) --> <Limit name="measured-frame-rate-176x144" range="427-552" /> <!-- TWEAKED N=100 v98%=1.9 --> </MediaCodec> + <MediaCodec name="OMX.qcom.video.encoder.avc" type="video/avc" update="true"> + <Limit name="measured-frame-rate-320x240" range="204-220" /> <!-- N=22 v90%=1.3 --> + <Limit name="measured-frame-rate-720x480" range="126-129" /> <!-- N=22 v90%=1.1 --> + <Limit name="measured-frame-rate-1280x720" range="52-53" /> <!-- N=22 v90%=1.1 --> + <Limit name="measured-frame-rate-1920x1080" range="38-40" /> <!-- N=22 v90%=1.2 --> + </MediaCodec> + <MediaCodec name="c2.android.avc.encoder" type="video/avc" update="true"> + <Limit name="measured-frame-rate-320x240" range="205-219" /> <!-- N=22 v90%=1.7 --> + <Limit name="measured-frame-rate-720x480" range="82-103" /> <!-- N=22 v90%=1.1 --> + <Limit name="measured-frame-rate-1280x720" range="53-53" /> <!-- N=22 v90%=1.6 --> + <!-- measured 90%:14-24 med:15 SLOW --> + <Limit name="measured-frame-rate-1920x1080" range="23-28" /> <!-- N=22 v90%=1.3 --> + </MediaCodec> + <MediaCodec name="c2.qti.avc.encoder" type="video/avc" update="true"> + <Limit name="measured-frame-rate-320x240" range="205-224" /> <!-- N=22 v90%=1.6 --> + <Limit name="measured-frame-rate-720x480" range="125-125" /> <!-- N=22 v90%=1.7 --> + <Limit name="measured-frame-rate-1280x720" range="52-53" /> <!-- N=22 v90%=1.5 --> + <!-- measured 90%:6-33 med:13 variance:2.2 --> + <Limit name="measured-frame-rate-1920x1080" range="41-41" /> <!-- N=22 --> + </MediaCodec> <MediaCodec name="OMX.google.h264.encoder" type="video/avc" update="true"> <!-- measured 98%:211-388 med:262/262 N=80 --> <Limit name="measured-frame-rate-320x240" range="262-262" /> <!-- v98%=1.4 --> @@ -62,10 +53,48 @@ <!-- measured 98%:39-51 med:44/45 N=82 --> <Limit name="measured-frame-rate-1920x1080" range="44-45" /> <!-- v98%=1.1 --> </MediaCodec> + <MediaCodec name="OMX.qcom.video.encoder.hevc" type="video/hevc" update="true"> + <Limit name="measured-frame-rate-320x240" range="227-238" /> <!-- N=22 v90%=1.3 --> + <Limit name="measured-frame-rate-720x480" range="117-117" /> <!-- N=22 v90%=1.1 --> + <Limit name="measured-frame-rate-1280x720" range="45-45" /> <!-- N=22 v90%=1.1 --> + <Limit name="measured-frame-rate-1920x1080" range="38-38" /> <!-- N=22 v90%=1.1 --> + <Limit name="measured-frame-rate-3840x2160" range="12-16" /> <!-- N=22 v90%=1.4 --> + </MediaCodec> + <MediaCodec name="c2.qti.hevc.encoder" type="video/hevc" update="true"> + <Limit name="measured-frame-rate-320x240" range="203-203" /> <!-- N=22 v90%=1.7 --> + <Limit name="measured-frame-rate-720x480" range="116-116" /> <!-- N=22 v90%=1.7 --> + <Limit name="measured-frame-rate-1280x720" range="45-45" /> <!-- N=22 v90%=1.5 --> + <!-- measured 90%:7-33 med:13 variance:2.1 --> + <Limit name="measured-frame-rate-1920x1080" range="39-39" /> <!-- N=22 --> + <Limit name="measured-frame-rate-3840x2160" range="16-16" /> <!-- N=22 v90%=1.4 --> + </MediaCodec> + <MediaCodec name="c2.android.mpeg4.encoder" type="video/mp4v-es" update="true"> + <!-- measured 90%:159-355 med:227 FLAKY(113 - 476 < mx=643.5) --> + <Limit name="measured-frame-rate-176x144" range="374-391" /> <!-- N=22 v90%=1.5 --> + </MediaCodec> <MediaCodec name="OMX.google.mpeg4.encoder" type="video/mp4v-es" update="true"> <!-- measured 98%:213-786 med:531/540 N=98 FLAKY(mn=209.9 < 213 - 1080) --> <Limit name="measured-frame-rate-176x144" range="419-540" /> <!-- TWEAKED v98%=1.9 --> </MediaCodec> + <MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" update="true"> + <Limit name="measured-frame-rate-320x180" range="179-179" /> <!-- N=22 v90%=1.1 --> + <Limit name="measured-frame-rate-640x360" range="165-173" /> <!-- N=22 v90%=1.3 --> + <Limit name="measured-frame-rate-1280x720" range="51-51" /> <!-- N=22 v90%=1.1 --> + <Limit name="measured-frame-rate-1920x1080" range="34-40" /> <!-- N=22 v90%=1.1 --> + </MediaCodec> + <MediaCodec name="c2.android.vp8.encoder" type="video/x-vnd.on2.vp8" update="true"> + <Limit name="measured-frame-rate-320x180" range="332-332" /> <!-- N=22 v90%=1.5 --> + <Limit name="measured-frame-rate-640x360" range="119-122" /> <!-- N=22 v90%=1.5 --> + <Limit name="measured-frame-rate-1280x720" range="36-37" /> <!-- N=22 v90%=1.6 --> + <Limit name="measured-frame-rate-1920x1080" range="13-14" /> <!-- N=22 v90%=1.3 --> + </MediaCodec> + <MediaCodec name="c2.qti.vp8.encoder" type="video/x-vnd.on2.vp8" update="true"> + <Limit name="measured-frame-rate-320x180" range="182-182" /> <!-- N=22 v90%=1.6 --> + <Limit name="measured-frame-rate-640x360" range="170-170" /> <!-- N=22 v90%=1.5 --> + <Limit name="measured-frame-rate-1280x720" range="51-51" /> <!-- N=22 v90%=1.6 --> + <!-- measured 90%:7-16 med:13 FLAKY(5 - 20 < mx=32.2) --> + <Limit name="measured-frame-rate-1920x1080" range="38-39" /> <!-- N=22 v90%=1.5 --> + </MediaCodec> <!-- Measurements between PPR1.180419.002 and PPR1.180510.004 --> <MediaCodec name="OMX.google.vp8.encoder" type="video/x-vnd.on2.vp8" update="true"> <!-- measured 98%:37-66 med:59/58 N=92 --> @@ -77,59 +106,39 @@ <!-- measured 97%:11-15 med:12/12 N=58 --> <Limit name="measured-frame-rate-1920x1080" range="12-12" /> <!-- v97%=1.1 --> </MediaCodec> + <MediaCodec name="c2.android.vp9.encoder" type="video/x-vnd.on2.vp9" update="true"> + <Limit name="measured-frame-rate-320x180" range="140-195" /> + <Limit name="measured-frame-rate-640x360" range="61-61" /> + <Limit name="measured-frame-rate-1280x720" range="20-20" /> + </MediaCodec> </Encoders> - <!-- Measurements between PPR1.180419.002 and PPR1.180510.004 --> <Decoders> - <MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" update="true"> - <!-- measured 97%:160-656 med:291/301 N=56 variance:2.0 --> - <Limit name="measured-frame-rate-320x240" range="291-388" /> - <!-- measured 98%:170-465 med:340/338 N=64 --> - <Limit name="measured-frame-rate-720x480" range="321-354" /> <!-- v98%=1.7 --> - <!-- measured 98%:165-224 med:220/220 N=62 --> - <Limit name="measured-frame-rate-1280x720" range="220-220" /> <!-- v98%=1.2 --> - <!-- measured 97%:179-268 med:245/245 N=56 --> - <Limit name="measured-frame-rate-1920x1080" range="245-245" /> <!-- v97%=1.2 --> - </MediaCodec> - <MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" update="true"> - <!-- measured 98%:164-752 med:273/284 N=62 variance:2.1 --> - <Limit name="measured-frame-rate-352x288" range="273-408" /> <!-- (-PPR1.180514.002) --> - <!-- measured 97%:161-578 med:368/399 N=56 FLAKY(mn=159.7 < 161 - 858) --> - <Limit name="measured-frame-rate-640x360" range="322-429" /> <!-- v97%=1.9 --> - <!-- measured 97%:163-486 med:340/322 N=56 --> - <Limit name="measured-frame-rate-720x480" range="322-365" /> <!-- v97%=1.7 --> - <!-- measured 95%:169-399 med:356/358 N=38 --> - <Limit name="measured-frame-rate-1280x720" range="324-358" /> <!-- v95%=1.5 (-PPR1.180514.002) --> - <!-- measured 98%:167-308 med:283/283 N=64 --> - <Limit name="measured-frame-rate-1920x1080" range="283-283" /> <!-- v98%=1.4 --> - <!-- measured 97%:68-72 med:70/70 N=56 --> - <Limit name="measured-frame-rate-3840x2160" range="20-20" /> <!-- v97%=1.0 --> - </MediaCodec> - <MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" update="true"> - <!-- measured 98%:162-996 med:242/253 N=62 FLAKY(121 - 996 < mx=1008.1) variance:2.5 --> - <Limit name="measured-frame-rate-320x180" range="242-498" /> <!-- (-PPR1.180514.002) --> - <!-- measured 98%:170-701 med:351/348 N=64 FLAKY(mn=168.8 < 170 - 856) variance:2.0 --> - <Limit name="measured-frame-rate-640x360" range="339-428" /> - <!-- measured 98%:234-405 med:392/389 N=62 --> - <Limit name="measured-frame-rate-1280x720" range="321-389" /> <!-- v98%=1.3 --> - <!-- measured 97%:200-205 med:203/203 N=56 --> - <Limit name="measured-frame-rate-1920x1080" range="203-203" /> <!-- v97%=1.0 --> - </MediaCodec> - <MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" update="true"> - <!-- measured 98%:162-489 med:246/247 N=62 FLAKY(123 - 594 < mx=860.6) --> - <Limit name="measured-frame-rate-320x180" range="246-297" /> <!-- v98%=1.7 --> - <!-- measured 98%:164-639 med:344/335 N=62 --> - <Limit name="measured-frame-rate-640x360" range="303-397" /> <!-- v98%=2.0 --> - <!-- measured 98%:174-367 med:331/336 N=64 --> - <Limit name="measured-frame-rate-1280x720" range="331-336" /> <!-- v98%=1.5 --> - <!-- measured 95%:141-241 med:206/206 N=38 --> - <Limit name="measured-frame-rate-1920x1080" range="206-206" /> <!-- v95%=1.3 (-PPR1.180514.002) --> - <!-- measured 98%:33-49 med:45/45 N=62 --> - <Limit name="measured-frame-rate-3840x2160" range="25-25" /> <!-- v98%=1.2 --> + <MediaCodec name="c2.android.h263.decoder" type="video/3gpp" update="true"> + <Limit name="measured-frame-rate-176x144" range="713-713" /> <!-- N=22 v90%=1.4 --> </MediaCodec> <MediaCodec name="OMX.google.h263.decoder" type="video/3gpp" update="true"> <!-- measured 97%:166-611 med:238/236 N=56 FLAKY(118 - 612 < mx=626.6) --> <Limit name="measured-frame-rate-176x144" range="236-306" /> <!-- v97%=1.9 --> </MediaCodec> + <MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" update="true"> + <Limit name="measured-frame-rate-320x240" range="768-787" /> <!-- N=22 v90%=1.5 --> + <Limit name="measured-frame-rate-720x480" range="534-536" /> <!-- N=22 v90%=1.6 --> + <!-- measured 90%:97-218 med:109 SLOW --> + <Limit name="measured-frame-rate-1280x720" range="377-378" /> <!-- N=22 v90%=1.5 --> + <Limit name="measured-frame-rate-1920x1080" range="179-180" /> <!-- N=22 v90%=1.1 --> + </MediaCodec> + <MediaCodec name="c2.android.avc.decoder" type="video/avc" update="true"> + <Limit name="measured-frame-rate-320x240" range="305-305" /> <!-- N=22 v90%=1.5 --> + <Limit name="measured-frame-rate-720x480" range="63-64" /> <!-- v90%=1.1 --> + <Limit name="measured-frame-rate-1280x720" range="23-23" /> <!-- N=22 v90%=1.1 --> + <Limit name="measured-frame-rate-1920x1080" range="11-11" /> <!-- N=22 v90%=1.0 --> + </MediaCodec> + <MediaCodec name="c2.qti.avc.decoder" type="video/avc" update="true"> + <Limit name="measured-frame-rate-320x240" range="768-832" /> <!-- N=22 v90%=1.1 --> + <Limit name="measured-frame-rate-720x480" range="536-536" /> <!-- N=22 v90%=1.0 --> + <Limit name="measured-frame-rate-1280x720" range="377-377" /> <!-- N=22 v90%=1.0 --> + <Limit name="measured-frame-rate-1920x1080" range="179-180" /> <!-- N=22 v90%=1.0 --> + </MediaCodec> <!-- Measurements between PPR1.180419.002 and PPR1.180514.002 --> <MediaCodec name="OMX.google.h264.decoder" type="video/avc" update="true"> <!-- measured 98%:166-778 med:251/255 N=62 FLAKY(126 - 778 < mx=781.3) variance:2.2 --> @@ -141,6 +150,29 @@ <!-- measured 95%:23-31 med:26/26 N=38 --> <Limit name="measured-frame-rate-1920x1080" range="26-26" /> <!-- v95%=1.2 --> </MediaCodec> + <MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" update="true"> + <Limit name="measured-frame-rate-352x288" range="838-838" /> <!-- N=22 v90%=1.3 --> + <Limit name="measured-frame-rate-640x360" range="606-606" /> <!-- N=22 v90%=1.3 --> + <Limit name="measured-frame-rate-720x480" range="505-505" /> <!-- N=22 v90%=1.2 --> + <Limit name="measured-frame-rate-1280x720" range="398-399" /> <!-- N=22 v90%=1.1 --> + <Limit name="measured-frame-rate-1920x1080" range="209-209" /> <!-- N=22 v90%=1.0 --> + <Limit name="measured-frame-rate-3840x2160" range="51-51" /> <!-- N=22 v90%=1.0 --> + </MediaCodec> + <MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true"> + <Limit name="measured-frame-rate-352x288" range="317-331" /> <!-- N=22 v90%=1.3 --> + <Limit name="measured-frame-rate-640x360" range="150-160" /> <!-- N=22 v90%=1.1 --> + <Limit name="measured-frame-rate-720x480" range="140-150" /> <!-- N=22 v90%=1.1--> + <Limit name="measured-frame-rate-1280x720" range="61-61" /> <!-- N=22 v90%=1.1 --> + <Limit name="measured-frame-rate-1920x1080" range="38-39" /> <!-- N=22 v90%=1.1 --> + </MediaCodec> + <MediaCodec name="c2.qti.hevc.decoder" type="video/hevc" update="true"> + <Limit name="measured-frame-rate-352x288" range="837-837" /> <!-- N=22 v90%=1.1 --> + <Limit name="measured-frame-rate-640x360" range="596-601" /> <!-- N=22 v90%=1.0 --> + <Limit name="measured-frame-rate-720x480" range="503-503" /> <!-- N=22 v90%=1.0 --> + <Limit name="measured-frame-rate-1280x720" range="397-398" /> <!-- N=22 v90%=1.0 --> + <Limit name="measured-frame-rate-1920x1080" range="209-209" /> <!-- N=22 v90%=1.0 --> + <Limit name="measured-frame-rate-3840x2160" range="51-51" /> <!-- N=22 v90%=1.0 --> + </MediaCodec> <MediaCodec name="OMX.google.hevc.decoder" type="video/hevc" update="true"> <!-- measured 97%:176-462 med:362/363 N=56 FLAKY(mn=175.5 < 176 - 726) --> <Limit name="measured-frame-rate-352x288" range="351-363" /> <!-- v97%=1.6 --> @@ -153,10 +185,31 @@ <!-- measured 98%:58-69 med:66/66 N=62 --> <Limit name="measured-frame-rate-1920x1080" range="66-66" /> <!-- v98%=1.1 --> </MediaCodec> + <MediaCodec name="c2.android.mpeg4.decoder" type="video/mp4v-es" update="true"> + <Limit name="measured-frame-rate-176x144" range="623-728" /> <!-- N=22 v90%=1.5 --> + </MediaCodec> <MediaCodec name="OMX.google.mpeg4.decoder" type="video/mp4v-es" update="true"> <!-- measured 97%:165-732 med:231/230 N=56 variance:2.1 --> <Limit name="measured-frame-rate-176x144" range="230-405" /> </MediaCodec> + <MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" update="true"> + <Limit name="measured-frame-rate-320x180" range="683-683" /> <!-- N=22 v90%=1.8 --> + <Limit name="measured-frame-rate-640x360" range="354-509" /> <!-- N=22 v90%=1.4 --> + <Limit name="measured-frame-rate-1280x720" range="395-396" /> <!-- N=22 v90%=1.2 --> + <Limit name="measured-frame-rate-1920x1080" range="198-199" /> <!-- N=22 v90%=1.0 --> + </MediaCodec> + <MediaCodec name="c2.android.vp8.decoder" type="video/x-vnd.on2.vp8" update="true"> + <Limit name="measured-frame-rate-320x180" range="422-422" /> <!-- N=22 v90%=1.0 --> + <Limit name="measured-frame-rate-640x360" range="158-159" /> <!-- N=22 v90%=1.0 --> + <Limit name="measured-frame-rate-1280x720" range="36-36" /> <!-- v98%=1.2 --> + <Limit name="measured-frame-rate-1920x1080" range="13-13" /> <!-- N=22 v90%=1.0 --> + </MediaCodec> + <MediaCodec name="c2.qti.vp8.decoder" type="video/x-vnd.on2.vp8" update="true"> + <Limit name="measured-frame-rate-320x180" range="593-593" /> <!-- N=22 v90%=1.8 --> + <Limit name="measured-frame-rate-640x360" range="505-505" /> <!-- N=22 v90%=1.5 --> + <Limit name="measured-frame-rate-1280x720" range="396-396" /> <!-- N=22 v90%=1.0 --> + <Limit name="measured-frame-rate-1920x1080" range="198-199" /> <!-- N=22 v90%=1.0 --> + </MediaCodec> <MediaCodec name="OMX.google.vp8.decoder" type="video/x-vnd.on2.vp8" update="true"> <!-- measured 95%:172-515 med:323/322 N=38 --> <Limit name="measured-frame-rate-320x180" range="1173-1174" /> <!-- v95%=1.7 (-PPB1.181031.001) --> @@ -165,6 +218,32 @@ <!-- measured 98%:43-45 med:43/43 N=62 --> <Limit name="measured-frame-rate-1920x1080" range="43-43" /> <!-- v98%=1.0 (-PPR1.180514.002) --> </MediaCodec> + <MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" update="true"> + <Limit name="measured-frame-rate-320x180" range="587-587" /> <!-- N=22 v90%=1.6 --> + <Limit name="measured-frame-rate-640x360" range="472-472" /> <!-- N=22 v90%=1.3 --> + <Limit name="measured-frame-rate-1280x720" range="339-340" /> <!-- N=22 v90%=1.1 --> + <Limit name="measured-frame-rate-1920x1080" range="190-200" /> <!-- N=22 v90%=1.0 --> + <Limit name="measured-frame-rate-3840x2160" range="48-48" /> <!-- N=22 v90%=1.0 --> + </MediaCodec> + <MediaCodec name="c2.android.vp9.decoder" type="video/x-vnd.on2.vp9" update="true"> + <Limit name="measured-frame-rate-320x180" range="435-436" /> <!-- N=22 v90%=1.0 --> + <!-- measured 90%:63-157 med:102 FLAKY(50 - 200 < mx=223.5) --> + <Limit name="measured-frame-rate-640x360" range="129-130" /> <!-- N=22 v90%=1.6 --> + <Limit name="measured-frame-rate-1280x720" range="70-71" /> <!-- N=22 v90%=1.3 --> + <Limit name="measured-frame-rate-1920x1080" range="42-43" /> <!-- N=22 v90%=1.3 --> + </MediaCodec> + <MediaCodec name="c2.qti.vp9.decoder" type="video/x-vnd.on2.vp9" update="true"> + <!-- measured 90%:437-632 med:536 N=16 --> + <Limit name="measured-frame-rate-320x184" range="578-578" /> <!-- v90%=1.2 --> + <!-- measured 90%:494-634 med:560 N=16 --> + <Limit name="measured-frame-rate-640x360" range="474-475" /> <!-- v90%=1.1 --> + <!-- measured 90%:339-342 med:340 N=16 --> + <Limit name="measured-frame-rate-1280x720" range="339-340" /> <!-- v90%=1.0 --> + <!-- measured 90%:199-201 med:200 N=16 --> + <Limit name="measured-frame-rate-1920x1080" range="200-200" /> <!-- v90%=1.0 --> + <!-- measured 90%:20-22 med:21 N=16 --> + <Limit name="measured-frame-rate-3840x2160" range="48-48" /> <!-- v90%=1.0 --> + </MediaCodec> <MediaCodec name="OMX.google.vp9.decoder" type="video/x-vnd.on2.vp9" update="true"> <!-- measured 98%:172-1171 med:382/381 N=62 FLAKY(143 - 1172 < mx=1176.5) variance:2.6 --> <Limit name="measured-frame-rate-320x180" range="286-586" /> diff --git a/media_codecs_performance_c2.xml b/media_codecs_performance_c2.xml deleted file mode 100644 index 6d780434..00000000 --- a/media_codecs_performance_c2.xml +++ /dev/null @@ -1,181 +0,0 @@ -<?xml version="1.0" encoding="utf-8" ?> -<!-- Copyright 2018 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. ---> - -<!-- Generated file for b4s4 using measurements on PD2A.190102.002 by get_achievable_rates.py--> -<MediaCodecs> - <Encoders> - <MediaCodec name="c2.android.h263.encoder" type="video/3gpp" update="true"> - <Limit name="measured-frame-rate-176x144" range="392-406" /> <!-- N=22 v90%=1.4 --> - </MediaCodec> - <MediaCodec name="OMX.qcom.video.encoder.avc" type="video/avc" update="true"> - <Limit name="measured-frame-rate-320x240" range="204-220" /> <!-- N=22 v90%=1.3 --> - <Limit name="measured-frame-rate-720x480" range="126-129" /> <!-- N=22 v90%=1.1 --> - <Limit name="measured-frame-rate-1280x720" range="52-53" /> <!-- N=22 v90%=1.1 --> - <Limit name="measured-frame-rate-1920x1080" range="38-40" /> <!-- N=22 v90%=1.2 --> - </MediaCodec> - <MediaCodec name="c2.android.avc.encoder" type="video/avc" update="true"> - <Limit name="measured-frame-rate-320x240" range="205-219" /> <!-- N=22 v90%=1.7 --> - <Limit name="measured-frame-rate-720x480" range="82-103" /> <!-- N=22 v90%=1.1 --> - <Limit name="measured-frame-rate-1280x720" range="53-53" /> <!-- N=22 v90%=1.6 --> - <!-- measured 90%:14-24 med:15 SLOW --> - <Limit name="measured-frame-rate-1920x1080" range="23-28" /> <!-- N=22 v90%=1.3 --> - </MediaCodec> - <MediaCodec name="c2.qti.avc.encoder" type="video/avc" update="true"> - <Limit name="measured-frame-rate-320x240" range="205-224" /> <!-- N=22 v90%=1.6 --> - <Limit name="measured-frame-rate-720x480" range="125-125" /> <!-- N=22 v90%=1.7 --> - <Limit name="measured-frame-rate-1280x720" range="52-53" /> <!-- N=22 v90%=1.5 --> - <!-- measured 90%:6-33 med:13 variance:2.2 --> - <Limit name="measured-frame-rate-1920x1080" range="41-41" /> <!-- N=22 --> - </MediaCodec> - <MediaCodec name="OMX.qcom.video.encoder.hevc" type="video/hevc" update="true"> - <Limit name="measured-frame-rate-320x240" range="227-238" /> <!-- N=22 v90%=1.3 --> - <Limit name="measured-frame-rate-720x480" range="117-117" /> <!-- N=22 v90%=1.1 --> - <Limit name="measured-frame-rate-1280x720" range="45-45" /> <!-- N=22 v90%=1.1 --> - <Limit name="measured-frame-rate-1920x1080" range="38-38" /> <!-- N=22 v90%=1.1 --> - <Limit name="measured-frame-rate-3840x2160" range="12-16" /> <!-- N=22 v90%=1.4 --> - </MediaCodec> - <MediaCodec name="c2.qti.hevc.encoder" type="video/hevc" update="true"> - <Limit name="measured-frame-rate-320x240" range="203-203" /> <!-- N=22 v90%=1.7 --> - <Limit name="measured-frame-rate-720x480" range="116-116" /> <!-- N=22 v90%=1.7 --> - <Limit name="measured-frame-rate-1280x720" range="45-45" /> <!-- N=22 v90%=1.5 --> - <!-- measured 90%:7-33 med:13 variance:2.1 --> - <Limit name="measured-frame-rate-1920x1080" range="39-39" /> <!-- N=22 --> - <Limit name="measured-frame-rate-3840x2160" range="16-16" /> <!-- N=22 v90%=1.4 --> - </MediaCodec> - <MediaCodec name="c2.android.mpeg4.encoder" type="video/mp4v-es" update="true"> - <!-- measured 90%:159-355 med:227 FLAKY(113 - 476 < mx=643.5) --> - <Limit name="measured-frame-rate-176x144" range="374-391" /> <!-- N=22 v90%=1.5 --> - </MediaCodec> - <MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" update="true"> - <Limit name="measured-frame-rate-320x180" range="179-179" /> <!-- N=22 v90%=1.1 --> - <Limit name="measured-frame-rate-640x360" range="165-173" /> <!-- N=22 v90%=1.3 --> - <Limit name="measured-frame-rate-1280x720" range="51-51" /> <!-- N=22 v90%=1.1 --> - <Limit name="measured-frame-rate-1920x1080" range="34-40" /> <!-- N=22 v90%=1.1 --> - </MediaCodec> - <MediaCodec name="c2.android.vp8.encoder" type="video/x-vnd.on2.vp8" update="true"> - <Limit name="measured-frame-rate-320x180" range="332-332" /> <!-- N=22 v90%=1.5 --> - <Limit name="measured-frame-rate-640x360" range="119-122" /> <!-- N=22 v90%=1.5 --> - <Limit name="measured-frame-rate-1280x720" range="36-37" /> <!-- N=22 v90%=1.6 --> - <Limit name="measured-frame-rate-1920x1080" range="13-14" /> <!-- N=22 v90%=1.3 --> - </MediaCodec> - <MediaCodec name="c2.qti.vp8.encoder" type="video/x-vnd.on2.vp8" update="true"> - <Limit name="measured-frame-rate-320x180" range="182-182" /> <!-- N=22 v90%=1.6 --> - <Limit name="measured-frame-rate-640x360" range="170-170" /> <!-- N=22 v90%=1.5 --> - <Limit name="measured-frame-rate-1280x720" range="51-51" /> <!-- N=22 v90%=1.6 --> - <!-- measured 90%:7-16 med:13 FLAKY(5 - 20 < mx=32.2) --> - <Limit name="measured-frame-rate-1920x1080" range="38-39" /> <!-- N=22 v90%=1.5 --> - </MediaCodec> - <MediaCodec name="c2.android.vp9.encoder" type="video/x-vnd.on2.vp9" update="true"> - <Limit name="measured-frame-rate-320x180" range="140-195" /> - <Limit name="measured-frame-rate-640x360" range="61-61" /> - <Limit name="measured-frame-rate-1280x720" range="20-20" /> - </MediaCodec> - </Encoders> - <Decoders> - <MediaCodec name="c2.android.h263.decoder" type="video/3gpp" update="true"> - <Limit name="measured-frame-rate-176x144" range="713-713" /> <!-- N=22 v90%=1.4 --> - </MediaCodec> - <MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" update="true"> - <Limit name="measured-frame-rate-320x240" range="768-787" /> <!-- N=22 v90%=1.5 --> - <Limit name="measured-frame-rate-720x480" range="534-536" /> <!-- N=22 v90%=1.6 --> - <!-- measured 90%:97-218 med:109 SLOW --> - <Limit name="measured-frame-rate-1280x720" range="377-378" /> <!-- N=22 v90%=1.5 --> - <Limit name="measured-frame-rate-1920x1080" range="179-180" /> <!-- N=22 v90%=1.1 --> - </MediaCodec> - <MediaCodec name="c2.android.avc.decoder" type="video/avc" update="true"> - <Limit name="measured-frame-rate-320x240" range="305-305" /> <!-- N=22 v90%=1.5 --> - <Limit name="measured-frame-rate-720x480" range="63-64" /> <!-- v90%=1.1 --> - <Limit name="measured-frame-rate-1280x720" range="23-23" /> <!-- N=22 v90%=1.1 --> - <Limit name="measured-frame-rate-1920x1080" range="11-11" /> <!-- N=22 v90%=1.0 --> - </MediaCodec> - <MediaCodec name="c2.qti.avc.decoder" type="video/avc" update="true"> - <Limit name="measured-frame-rate-320x240" range="768-832" /> <!-- N=22 v90%=1.1 --> - <Limit name="measured-frame-rate-720x480" range="536-536" /> <!-- N=22 v90%=1.0 --> - <Limit name="measured-frame-rate-1280x720" range="377-377" /> <!-- N=22 v90%=1.0 --> - <Limit name="measured-frame-rate-1920x1080" range="179-180" /> <!-- N=22 v90%=1.0 --> - </MediaCodec> - <MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" update="true"> - <Limit name="measured-frame-rate-352x288" range="838-838" /> <!-- N=22 v90%=1.3 --> - <Limit name="measured-frame-rate-640x360" range="606-606" /> <!-- N=22 v90%=1.3 --> - <Limit name="measured-frame-rate-720x480" range="505-505" /> <!-- N=22 v90%=1.2 --> - <Limit name="measured-frame-rate-1280x720" range="398-399" /> <!-- N=22 v90%=1.1 --> - <Limit name="measured-frame-rate-1920x1080" range="209-209" /> <!-- N=22 v90%=1.0 --> - <Limit name="measured-frame-rate-3840x2160" range="51-51" /> <!-- N=22 v90%=1.0 --> - </MediaCodec> - <MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true"> - <Limit name="measured-frame-rate-352x288" range="317-331" /> <!-- N=22 v90%=1.3 --> - <Limit name="measured-frame-rate-640x360" range="150-160" /> <!-- N=22 v90%=1.1 --> - <Limit name="measured-frame-rate-720x480" range="140-150" /> <!-- N=22 v90%=1.1--> - <Limit name="measured-frame-rate-1280x720" range="61-61" /> <!-- N=22 v90%=1.1 --> - <Limit name="measured-frame-rate-1920x1080" range="38-39" /> <!-- N=22 v90%=1.1 --> - </MediaCodec> - <MediaCodec name="c2.qti.hevc.decoder" type="video/hevc" update="true"> - <Limit name="measured-frame-rate-352x288" range="837-837" /> <!-- N=22 v90%=1.1 --> - <Limit name="measured-frame-rate-640x360" range="596-601" /> <!-- N=22 v90%=1.0 --> - <Limit name="measured-frame-rate-720x480" range="503-503" /> <!-- N=22 v90%=1.0 --> - <Limit name="measured-frame-rate-1280x720" range="397-398" /> <!-- N=22 v90%=1.0 --> - <Limit name="measured-frame-rate-1920x1080" range="209-209" /> <!-- N=22 v90%=1.0 --> - <Limit name="measured-frame-rate-3840x2160" range="51-51" /> <!-- N=22 v90%=1.0 --> - </MediaCodec> - <MediaCodec name="c2.android.mpeg4.decoder" type="video/mp4v-es" update="true"> - <Limit name="measured-frame-rate-176x144" range="623-728" /> <!-- N=22 v90%=1.5 --> - </MediaCodec> - <MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" update="true"> - <Limit name="measured-frame-rate-320x180" range="683-683" /> <!-- N=22 v90%=1.8 --> - <Limit name="measured-frame-rate-640x360" range="354-509" /> <!-- N=22 v90%=1.4 --> - <Limit name="measured-frame-rate-1280x720" range="395-396" /> <!-- N=22 v90%=1.2 --> - <Limit name="measured-frame-rate-1920x1080" range="198-199" /> <!-- N=22 v90%=1.0 --> - </MediaCodec> - <MediaCodec name="c2.android.vp8.decoder" type="video/x-vnd.on2.vp8" update="true"> - <Limit name="measured-frame-rate-320x180" range="422-422" /> <!-- N=22 v90%=1.0 --> - <Limit name="measured-frame-rate-640x360" range="158-159" /> <!-- N=22 v90%=1.0 --> - <Limit name="measured-frame-rate-1280x720" range="36-36" /> <!-- v98%=1.2 --> - <Limit name="measured-frame-rate-1920x1080" range="13-13" /> <!-- N=22 v90%=1.0 --> - </MediaCodec> - <MediaCodec name="c2.qti.vp8.decoder" type="video/x-vnd.on2.vp8" update="true"> - <Limit name="measured-frame-rate-320x180" range="593-593" /> <!-- N=22 v90%=1.8 --> - <Limit name="measured-frame-rate-640x360" range="505-505" /> <!-- N=22 v90%=1.5 --> - <Limit name="measured-frame-rate-1280x720" range="396-396" /> <!-- N=22 v90%=1.0 --> - <Limit name="measured-frame-rate-1920x1080" range="198-199" /> <!-- N=22 v90%=1.0 --> - </MediaCodec> - <MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" update="true"> - <Limit name="measured-frame-rate-320x180" range="587-587" /> <!-- N=22 v90%=1.6 --> - <Limit name="measured-frame-rate-640x360" range="472-472" /> <!-- N=22 v90%=1.3 --> - <Limit name="measured-frame-rate-1280x720" range="339-340" /> <!-- N=22 v90%=1.1 --> - <Limit name="measured-frame-rate-1920x1080" range="190-200" /> <!-- N=22 v90%=1.0 --> - <Limit name="measured-frame-rate-3840x2160" range="48-48" /> <!-- N=22 v90%=1.0 --> - </MediaCodec> - <MediaCodec name="c2.android.vp9.decoder" type="video/x-vnd.on2.vp9" update="true"> - <Limit name="measured-frame-rate-320x180" range="435-436" /> <!-- N=22 v90%=1.0 --> - <!-- measured 90%:63-157 med:102 FLAKY(50 - 200 < mx=223.5) --> - <Limit name="measured-frame-rate-640x360" range="129-130" /> <!-- N=22 v90%=1.6 --> - <Limit name="measured-frame-rate-1280x720" range="70-71" /> <!-- N=22 v90%=1.3 --> - <Limit name="measured-frame-rate-1920x1080" range="42-43" /> <!-- N=22 v90%=1.3 --> - </MediaCodec> - <MediaCodec name="c2.qti.vp9.decoder" type="video/x-vnd.on2.vp9" update="true"> - <!-- measured 90%:437-632 med:536 N=16 --> - <Limit name="measured-frame-rate-320x184" range="578-578" /> <!-- v90%=1.2 --> - <!-- measured 90%:494-634 med:560 N=16 --> - <Limit name="measured-frame-rate-640x360" range="474-475" /> <!-- v90%=1.1 --> - <!-- measured 90%:339-342 med:340 N=16 --> - <Limit name="measured-frame-rate-1280x720" range="339-340" /> <!-- v90%=1.0 --> - <!-- measured 90%:199-201 med:200 N=16 --> - <Limit name="measured-frame-rate-1920x1080" range="200-200" /> <!-- v90%=1.0 --> - <!-- measured 90%:20-22 med:21 N=16 --> - <Limit name="measured-frame-rate-3840x2160" range="48-48" /> <!-- v90%=1.0 --> - </MediaCodec> - </Decoders> -</MediaCodecs> |