1<?xml version="1.0" encoding="utf-8" ?>
2<!-- Copyright 2019 The Android Open Source Project
3
4     Licensed under the Apache License, Version 2.0 (the "License");
5     you may not use this file except in compliance with the License.
6     You may obtain a copy of the License at
7
8          http://www.apache.org/licenses/LICENSE-2.0
9
10     Unless required by applicable law or agreed to in writing, software
11     distributed under the License is distributed on an "AS IS" BASIS,
12     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13     See the License for the specific language governing permissions and
14     limitations under the License.
15-->
16
17<MediaCodecs>
18    <Encoders>
19        <MediaCodec name="c2.android.h263.encoder" type="video/3gpp" update="true">
20            <Limit name="measured-frame-rate-176x144" range="412-412" /> <!-- N=128 v98%=1.5 -->
21        </MediaCodec>
22        <MediaCodec name="OMX.qcom.video.encoder.avc" type="video/avc" update="true">
23            <Limit name="measured-frame-rate-320x240" range="360-360" /> <!-- N=126 v98%=1.5 -->
24            <Limit name="measured-frame-rate-720x480" range="159-160" /> <!-- N=128 v98%=1.0 -->
25            <Limit name="measured-frame-rate-1280x720" range="62-62" /> <!-- N=124 v98%=1.0 -->
26            <Limit name="measured-frame-rate-1920x1080" range="51-51" /> <!-- N=126 v98%=1.1 -->
27        </MediaCodec>
28        <MediaCodec name="c2.android.avc.encoder" type="video/avc" update="true">
29            <Limit name="measured-frame-rate-320x240" range="256-256" /> <!-- N=128 v98%=1.4 -->
30            <!-- measured 98%:82-115 med:87 SLOW -->
31            <Limit name="measured-frame-rate-720x480" range="87-97" /> <!-- N=128 v98%=1.2 -->
32            <Limit name="measured-frame-rate-1280x720" range="52-52" /> <!-- N=128 v98%=1.0 -->
33            <Limit name="measured-frame-rate-1920x1080" range="31-32" /> <!-- N=128 v98%=1.0 -->
34        </MediaCodec>
35        <MediaCodec name="c2.qti.avc.encoder" type="video/avc" update="true">
36            <Limit name="measured-frame-rate-320x240" range="377-377" /> <!-- N=128 v98%=1.4 -->
37            <Limit name="measured-frame-rate-720x480" range="159-159" /> <!-- N=126 v98%=1.0 -->
38            <Limit name="measured-frame-rate-1280x720" range="62-62" /> <!-- N=128 v98%=1.0 -->
39            <Limit name="measured-frame-rate-1920x1080" range="51-51" /> <!-- N=128 v98%=1.1 -->
40        </MediaCodec>
41        <MediaCodec name="OMX.qcom.video.encoder.hevc" type="video/hevc" update="true">
42            <Limit name="measured-frame-rate-320x240" range="371-371" /> <!-- N=128 v98%=1.2 -->
43            <Limit name="measured-frame-rate-720x480" range="117-118" /> <!-- N=126 v98%=1.0 -->
44            <Limit name="measured-frame-rate-1280x720" range="45-45" /> <!-- N=126 v98%=1.0 -->
45            <Limit name="measured-frame-rate-1920x1080" range="41-41" /> <!-- N=128 v98%=1.0 -->
46            <Limit name="measured-frame-rate-3840x2160" range="20-22" /> <!-- N=110 v98%=1.1 -->
47        </MediaCodec>
48        <MediaCodec name="c2.android.hevc.encoder" type="video/hevc" update="true">
49            <Limit name="measured-frame-rate-320x240" range="49-49" /> <!-- N=128 v98%=1.0 -->
50        </MediaCodec>
51        <MediaCodec name="c2.qti.hevc.encoder" type="video/hevc" update="true">
52            <Limit name="measured-frame-rate-320x240" range="333-333" /> <!-- N=126 v98%=1.3 -->
53            <Limit name="measured-frame-rate-720x480" range="117-118" /> <!-- N=128 v98%=1.0 -->
54            <Limit name="measured-frame-rate-1280x720" range="45-45" /> <!-- N=128 v98%=1.0 -->
55            <Limit name="measured-frame-rate-1920x1080" range="41-41" /> <!-- N=126 v98%=1.0 -->
56            <Limit name="measured-frame-rate-3840x2160" range="20-22" /> <!-- N=124 v98%=1.1 -->
57        </MediaCodec>
58        <MediaCodec name="c2.android.mpeg4.encoder" type="video/mp4v-es" update="true">
59            <Limit name="measured-frame-rate-176x144" range="370-396" /> <!-- N=128 v98%=1.5 -->
60        </MediaCodec>
61        <MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" update="true">
62            <Limit name="measured-frame-rate-320x180" range="340-340" /> <!-- N=126 v98%=1.2 -->
63            <Limit name="measured-frame-rate-640x360" range="189-189" /> <!-- N=126 v98%=1.0 -->
64            <Limit name="measured-frame-rate-1280x720" range="51-51" /> <!-- N=122 v98%=1.0 -->
65            <Limit name="measured-frame-rate-1920x1080" range="45-45" /> <!-- N=126 v98%=1.0 -->
66        </MediaCodec>
67        <MediaCodec name="c2.android.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
68            <Limit name="measured-frame-rate-320x180" range="275-275" /> <!-- N=128 v98%=1.2 -->
69            <Limit name="measured-frame-rate-640x360" range="120-120" /> <!-- N=128 v98%=1.1 -->
70            <Limit name="measured-frame-rate-1280x720" range="35-36" /> <!-- N=128 v98%=1.1 -->
71            <Limit name="measured-frame-rate-1920x1080" range="15-15" /> <!-- N=128 v98%=1.0 -->
72        </MediaCodec>
73        <MediaCodec name="c2.qti.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
74            <Limit name="measured-frame-rate-320x180" range="328-328" /> <!-- N=128 v98%=1.2 -->
75            <Limit name="measured-frame-rate-640x360" range="188-188" /> <!-- N=128 v98%=1.0 -->
76            <Limit name="measured-frame-rate-1280x720" range="51-51" /> <!-- N=128 v98%=1.0 -->
77            <Limit name="measured-frame-rate-1920x1080" range="45-45" /> <!-- N=128 v98%=1.0 -->
78        </MediaCodec>
79    </Encoders>
80    <Decoders>
81        <MediaCodec name="c2.android.h263.decoder" type="video/3gpp" update="true">
82            <Limit name="measured-frame-rate-176x144" range="587-587" /> <!-- N=132 v98%=1.5 -->
83        </MediaCodec>
84        <MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" update="true">
85            <Limit name="measured-frame-rate-320x240" range="488-493" /> <!-- N=132 v98%=1.5 -->
86            <Limit name="measured-frame-rate-720x480" range="375-392" /> <!-- N=132 v98%=1.2 -->
87            <Limit name="measured-frame-rate-1280x720" range="342-342" /> <!-- N=132 v98%=1.0 -->
88            <Limit name="measured-frame-rate-1920x1088" range="175-175" /> <!-- N=132 v98%=1.0 -->
89        </MediaCodec>
90        <MediaCodec name="c2.android.avc.decoder" type="video/avc" update="true">
91            <Limit name="measured-frame-rate-320x240" range="367-380" /> <!-- N=132 v98%=1.1 -->
92            <Limit name="measured-frame-rate-768x480" range="97-97" /> <!-- N=132 v98%=1.1 -->
93            <Limit name="measured-frame-rate-1280x720" range="38-38" /> <!-- N=132 v98%=1.0 -->
94            <Limit name="measured-frame-rate-1920x1080" range="18-18" /> <!-- N=132 v98%=1.0 -->
95        </MediaCodec>
96        <MediaCodec name="c2.qti.avc.decoder" type="video/avc" update="true">
97            <Limit name="measured-frame-rate-320x240" range="494-498" /> <!-- N=132 v98%=1.5 -->
98            <Limit name="measured-frame-rate-720x480" range="367-389" /> <!-- N=132 v98%=1.2 -->
99            <Limit name="measured-frame-rate-1280x720" range="338-338" /> <!-- N=132 v98%=1.1 -->
100            <Limit name="measured-frame-rate-1920x1088" range="175-175" /> <!-- N=132 v98%=1.0 -->
101        </MediaCodec>
102        <MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" update="true">
103            <Limit name="measured-frame-rate-352x288" range="527-527" /> <!-- N=132 v98%=1.6 -->
104            <Limit name="measured-frame-rate-640x360" range="453-453" /> <!-- N=132 v98%=1.3 -->
105            <Limit name="measured-frame-rate-720x480" range="411-411" /> <!-- N=132 v98%=1.2 -->
106            <Limit name="measured-frame-rate-1280x720" range="362-367" /> <!-- N=132 v98%=1.1 -->
107            <Limit name="measured-frame-rate-1920x1080" range="209-210" /> <!-- N=132 v98%=1.0 -->
108            <Limit name="measured-frame-rate-3840x2160" range="23-23" /> <!-- N=132 v98%=1.1 -->
109        </MediaCodec>
110        <MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true">
111            <Limit name="measured-frame-rate-384x288" range="336-352" /> <!-- N=132 v98%=1.1 -->
112            <Limit name="measured-frame-rate-640x360" range="201-210" /> <!-- N=132 v98%=1.1 -->
113            <Limit name="measured-frame-rate-768x480" range="209-209" /> <!-- N=132 v98%=1.0 -->
114            <Limit name="measured-frame-rate-1280x720" range="91-91" /> <!-- N=132 v98%=1.0 -->
115            <Limit name="measured-frame-rate-1920x1080" range="49-50" /> <!-- N=132 v98%=1.0 -->
116        </MediaCodec>
117        <MediaCodec name="c2.qti.hevc.decoder" type="video/hevc" update="true">
118            <Limit name="measured-frame-rate-352x288" range="532-532" /> <!-- N=132 v98%=1.6 -->
119            <Limit name="measured-frame-rate-640x360" range="452-452" /> <!-- N=132 v98%=1.4 -->
120            <Limit name="measured-frame-rate-720x480" range="412-412" /> <!-- N=132 v98%=1.2 -->
121            <Limit name="measured-frame-rate-1280x720" range="362-366" /> <!-- N=132 v98%=1.1 -->
122            <Limit name="measured-frame-rate-1920x1080" range="209-210" /> <!-- N=132 v98%=1.0 -->
123            <Limit name="measured-frame-rate-3840x2160" range="23-23" /> <!-- N=132 v98%=1.1 -->
124        </MediaCodec>
125        <MediaCodec name="c2.android.mpeg4.decoder" type="video/mp4v-es" update="true">
126            <Limit name="measured-frame-rate-176x144" range="388-425" /> <!-- N=132 v93%=1.1 -->
127        </MediaCodec>
128        <MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" update="true">
129            <Limit name="measured-frame-rate-320x192" range="340-368" /> <!-- N=132 v98%=1.1 -->
130            <Limit name="measured-frame-rate-640x368" range="340-358" /> <!-- N=132 v95%=1.1 -->
131            <Limit name="measured-frame-rate-1280x720" range="340-342" /> <!-- N=132 v98%=1.1 -->
132            <Limit name="measured-frame-rate-1920x1088" range="199-199" /> <!-- N=132 v98%=1.0 -->
133        </MediaCodec>
134        <MediaCodec name="c2.android.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
135            <Limit name="measured-frame-rate-320x180" range="562-562" /> <!-- N=132 v98%=1.1 -->
136            <Limit name="measured-frame-rate-640x360" range="256-256" /> <!-- N=132 v98%=1.1 -->
137            <Limit name="measured-frame-rate-1920x1080" range="30-31" /> <!-- N=132 v98%=1.0 -->
138        </MediaCodec>
139        <MediaCodec name="c2.qti.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
140            <Limit name="measured-frame-rate-320x192" range="341-347" /> <!-- N=132 v98%=1.1 -->
141            <Limit name="measured-frame-rate-640x368" range="339-351" /> <!-- N=132 v98%=1.1 -->
142            <Limit name="measured-frame-rate-1280x720" range="337-337" /> <!-- N=132 v98%=1.0 -->
143            <Limit name="measured-frame-rate-1920x1088" range="199-199" /> <!-- N=132 v98%=1.0 -->
144        </MediaCodec>
145        <MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" update="true">
146            <Limit name="measured-frame-rate-320x184" range="346-377" /> <!-- N=132 v97%=1.1 -->
147            <Limit name="measured-frame-rate-640x360" range="350-375" /> <!-- N=132 v95%=1.1 -->
148            <Limit name="measured-frame-rate-1280x720" range="336-336" /> <!-- N=132 v98%=1.0 -->
149            <Limit name="measured-frame-rate-1920x1080" range="199-200" /> <!-- N=132 v98%=1.0 -->
150            <Limit name="measured-frame-rate-3840x2160" range="18-18" /> <!-- N=132 v98%=1.1 -->
151        </MediaCodec>
152        <MediaCodec name="c2.android.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
153            <Limit name="measured-frame-rate-320x180" range="483-483" /> <!-- N=132 v98%=1.1 -->
154            <Limit name="measured-frame-rate-640x360" range="143-144" /> <!-- N=132 v98%=1.1 -->
155            <Limit name="measured-frame-rate-1280x720" range="78-78" /> <!-- N=132 v98%=1.0 -->
156            <Limit name="measured-frame-rate-1920x1080" range="47-47" /> <!-- N=132 v98%=1.0 -->
157        </MediaCodec>
158        <MediaCodec name="c2.qti.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
159            <!-- measured 93%:331-404 med:349 FLAKY(174 - 732 < mx=952.4) WIDEN(174 - 954) -->
160            <Limit name="measured-frame-rate-320x184" range="348-477" /> <!-- N=132 v93%=1.1 -->
161            <Limit name="measured-frame-rate-640x360" range="347-372" /> <!-- N=132 v98%=1.1 -->
162            <Limit name="measured-frame-rate-1280x720" range="335-335" /> <!-- N=132 v98%=1.0 -->
163            <Limit name="measured-frame-rate-1920x1080" range="199-200" /> <!-- N=132 v98%=1.0 -->
164            <Limit name="measured-frame-rate-3840x2160" range="18-18" /> <!-- N=132 v98%=1.1 -->
165        </MediaCodec>
166    </Decoders>
167</MediaCodecs>
168