c2.android.av1-dav1d.decoder is based on dav1d implementation. This dav1d-based sw av1 decoder provides better decoding throughput than the default gav1-based av1 decoder on mid-to-low-tier devices. c2.android.av1.decoder will be deprecate eventually before that we keep both decoders. Bug: 309412792 Test: run cts -m CtsMediaDecoderTestCases -t android.media.decoder.cts.VideoDecoderPerfTest --module-arg CtsMediaDecoderTestCases:instrumentation-arg:codec-prefix:=c2.android.av1.decoder Change-Id: I7fa441b94127bcde45363d5445b97537358d6759
293 lines
18 KiB
XML
293 lines
18 KiB
XML
<?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.
|
|
-->
|
|
|
|
<MediaCodecs>
|
|
<Decoders>
|
|
<MediaCodec name="c2.exynos.h264.decoder" type="video/avc" update="true">
|
|
<!-- measured 90%:528-534 med:528 N=2 -->
|
|
<Limit name="measured-frame-rate-320x240" range="528-531" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:550-560 med:551 N=2 -->
|
|
<Limit name="measured-frame-rate-720x480" range="550-555" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:540-561 med:541 N=2 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="540-551" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:409-413 med:410 N=2 -->
|
|
<Limit name="measured-frame-rate-1920x1088" range="409-411" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.exynos.h264.decoder.secure" type="video/avc" update="true">
|
|
<!-- measured 90%:528-534 med:528 N=2 -->
|
|
<Limit name="measured-frame-rate-320x240" range="528-531" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:550-560 med:551 N=2 -->
|
|
<Limit name="measured-frame-rate-720x480" range="550-555" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:540-561 med:541 N=2 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="540-551" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:409-413 med:410 N=2 -->
|
|
<Limit name="measured-frame-rate-1920x1088" range="409-411" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.exynos.hevc.decoder" type="video/hevc" update="true">
|
|
<!-- measured 90%:529-530 med:529 N=2 -->
|
|
<Limit name="measured-frame-rate-352x288" range="1150-1250" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:528-530 med:529 N=2 -->
|
|
<Limit name="measured-frame-rate-640x360" range="528-529" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:546-549 med:546 N=2 -->
|
|
<Limit name="measured-frame-rate-720x480" range="546-548" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:547-560 med:547 N=2 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="547-553" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:569-574 med:570 N=2 -->
|
|
<Limit name="measured-frame-rate-1920x1080" range="569-572" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:159-160 med:159 N=2 -->
|
|
<Limit name="measured-frame-rate-3840x2160" range="159-159" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.exynos.hevc.decoder.secure" type="video/hevc" update="true">
|
|
<!-- measured 90%:529-530 med:529 N=2 -->
|
|
<Limit name="measured-frame-rate-352x288" range="1150-1250" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:528-530 med:529 N=2 -->
|
|
<Limit name="measured-frame-rate-640x360" range="528-529" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:546-549 med:546 N=2 -->
|
|
<Limit name="measured-frame-rate-720x480" range="546-548" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:547-560 med:547 N=2 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="547-553" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:569-574 med:570 N=2 -->
|
|
<Limit name="measured-frame-rate-1920x1080" range="569-572" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:159-160 med:159 N=2 -->
|
|
<Limit name="measured-frame-rate-3840x2160" range="159-159" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.exynos.mpeg4.decoder" type="video/mp4v-es" update="true">
|
|
<!-- measured 90%:527-537 med:528 N=2 -->
|
|
<Limit name="measured-frame-rate-176x144" range="527-532" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:387-391 med:387 N=2 -->
|
|
<Limit name="measured-frame-rate-480x360" range="387-389" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.exynos.h263.decoder" type="video/3gpp" update="true">
|
|
<Limit name="measured-frame-rate-176x144" range="507-1012" />
|
|
<Limit name="measured-frame-rate-352x288" range="380-612" />
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.exynos.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
|
|
<!-- measured 90%:451-555 med:452 SLOW N=2 -->
|
|
<Limit name="measured-frame-rate-320x180" range="451-500" /> <!-- v90%=1.1 -->
|
|
<!-- measured 90%:486-504 med:486 N=2 -->
|
|
<Limit name="measured-frame-rate-640x360" range="486-495" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:518-566 med:518 N=2 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="518-542" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:386-387 med:386 N=2 -->
|
|
<Limit name="measured-frame-rate-1920x1080" range="386-386" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.exynos.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
|
<!-- measured 90%:523-536 med:524 N=2 -->
|
|
<Limit name="measured-frame-rate-320x180" range="523-529" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:503-506 med:504 N=2 -->
|
|
<Limit name="measured-frame-rate-640x360" range="503-505" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:510-518 med:511 N=2 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="510-514" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:349-351 med:350 N=2 -->
|
|
<Limit name="measured-frame-rate-1920x1080" range="349-350" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:100-101 med:100 N=2 -->
|
|
<Limit name="measured-frame-rate-3840x2160" range="100-100" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.exynos.vp9.decoder.secure" type="video/x-vnd.on2.vp9" update="true">
|
|
<!-- measured 90%:523-536 med:524 N=2 -->
|
|
<Limit name="measured-frame-rate-320x180" range="523-529" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:503-506 med:504 N=2 -->
|
|
<Limit name="measured-frame-rate-640x360" range="503-505" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:510-518 med:511 N=2 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="510-514" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:349-351 med:350 N=2 -->
|
|
<Limit name="measured-frame-rate-1920x1080" range="349-350" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:100-101 med:100 N=2 -->
|
|
<Limit name="measured-frame-rate-3840x2160" range="100-100" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
|
|
<MediaCodec name="c2.android.h263.decoder" type="video/3gpp" update="true">
|
|
<Limit name="measured-frame-rate-176x144" range="993-1037" />
|
|
<Limit name="measured-frame-rate-352x288" range="847-906" />
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.android.avc.decoder" type="video/avc" update="true">
|
|
<!-- measured 90%:342-360 med:343 N=2 -->
|
|
<Limit name="measured-frame-rate-320x240" range="342-351" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:142-147 med:143 N=2 -->
|
|
<Limit name="measured-frame-rate-720x480" range="142-145" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:54-56 med:55 N=2 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="54-55" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:25-26 med:26 N=2 -->
|
|
<Limit name="measured-frame-rate-1920x1080" range="25-26" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true">
|
|
<!-- measured 90%:295-301 med:296 N=2 -->
|
|
<Limit name="measured-frame-rate-352x288" range="295-298" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:196-207 med:196 N=2 -->
|
|
<Limit name="measured-frame-rate-640x360" range="196-201" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:177-180 med:178 N=2 -->
|
|
<Limit name="measured-frame-rate-720x480" range="177-178" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:81-82 med:82 N=2 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="81-82" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:45-47 med:46 N=2 -->
|
|
<Limit name="measured-frame-rate-1920x1080" range="45-46" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.android.mpeg4.decoder" type="video/mp4v-es" update="true">
|
|
<Limit name="measured-frame-rate-176x144" range="1111-1176" />
|
|
<Limit name="measured-frame-rate-480x360" range="964-1042" />
|
|
<Limit name="measured-frame-rate-1280x720" range="294-300" />
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.android.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
|
|
<Limit name="measured-frame-rate-320x180" range="445-630" />
|
|
<Limit name="measured-frame-rate-640x360" range="270-537" />
|
|
<Limit name="measured-frame-rate-1280x720" range="75-147" />
|
|
<Limit name="measured-frame-rate-1920x1080" range="28-55" />
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.android.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
|
<Limit name="measured-frame-rate-320x180" range="440-630" />
|
|
<Limit name="measured-frame-rate-640x360" range="276-550" />
|
|
<Limit name="measured-frame-rate-1280x720" range="100-194" />
|
|
<Limit name="measured-frame-rate-1920x1080" range="64-124" />
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.google.av1.decoder" type="video/av01" update="true">
|
|
<Limit name="measured-frame-rate-352x288" range="301-600" />
|
|
<Limit name="measured-frame-rate-640x360" range="276-550" />
|
|
<Limit name="measured-frame-rate-720x480" range="258-511" />
|
|
<Limit name="measured-frame-rate-1280x720" range="182-358" />
|
|
<Limit name="measured-frame-rate-1920x1080" range="118-234" />
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.google.av1.decoder.secure" type="video/av01" update="true">
|
|
<Limit name="measured-frame-rate-352x288" range="301-600" />
|
|
<Limit name="measured-frame-rate-640x360" range="276-550" />
|
|
<Limit name="measured-frame-rate-720x480" range="258-511" />
|
|
<Limit name="measured-frame-rate-1280x720" range="182-358" />
|
|
<Limit name="measured-frame-rate-1920x1080" range="118-234" />
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.android.av1.decoder" type="video/av01" update="true">
|
|
<Limit name="measured-frame-rate-352x288" range="233-315" />
|
|
<Limit name="measured-frame-rate-640x360" range="114-247" />
|
|
<Limit name="measured-frame-rate-720x480" range="47-189" />
|
|
<Limit name="measured-frame-rate-1280x720" range="44-54" />
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.android.av1-dav1d.decoder" type="video/av01" update="true">
|
|
<Limit name="measured-frame-rate-352x288" range="233-315" />
|
|
<Limit name="measured-frame-rate-640x360" range="114-247" />
|
|
<Limit name="measured-frame-rate-720x480" range="47-189" />
|
|
<Limit name="measured-frame-rate-1280x720" range="44-54" />
|
|
</MediaCodec>
|
|
</Decoders>
|
|
|
|
<Encoders>
|
|
<MediaCodec name="c2.exynos.h264.encoder" type="video/avc" update="true">
|
|
<Limit name="measured-frame-rate-320x240" range="372-551" />
|
|
<Limit name="measured-frame-rate-720x480" range="221-308" />
|
|
<Limit name="measured-frame-rate-1280x720" range="151-190" />
|
|
<Limit name="measured-frame-rate-1920x1080" range="58-99" />
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.exynos.hevc.encoder" type="video/hevc" update="true">
|
|
<Limit name="measured-frame-rate-320x240" range="371-553" />
|
|
<Limit name="measured-frame-rate-720x480" range="214-305" />
|
|
<Limit name="measured-frame-rate-1280x720" range="154-198" />
|
|
<Limit name="measured-frame-rate-1920x1080" range="46-97" />
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.exynos.mpeg4.encoder" type="video/mp4v-es" update="true">
|
|
<!-- measured 90%:575-670 med:575 N=2 -->
|
|
<Limit name="measured-frame-rate-176x144" range="575-620" /> <!-- v90%=1.1 -->
|
|
<!-- measured 90%:222-283 med:222 SLOW N=2 -->
|
|
<Limit name="measured-frame-rate-352x288" range="222-250" /> <!-- v90%=1.1 -->
|
|
<!-- measured 90%:123-124 med:124 N=2 -->
|
|
<Limit name="measured-frame-rate-640x480" range="123-124" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.exynos.h263.encoder" type="video/3gpp" update="true">
|
|
<!-- measured 90%:626-686 med:627 N=2 -->
|
|
<Limit name="measured-frame-rate-176x144" range="626-656" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:295-300 med:296 N=2 -->
|
|
<Limit name="measured-frame-rate-352x288" range="295-298" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:95-97 med:96 N=2 -->
|
|
<Limit name="measured-frame-rate-704x576" range="95-96" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.exynos.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
|
|
<!-- measured 90%:478-498 med:479 N=2 -->
|
|
<Limit name="measured-frame-rate-320x180" range="478-488" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:334-347 med:334 N=2 -->
|
|
<Limit name="measured-frame-rate-640x360" range="334-341" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:142-143 med:142 N=2 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="142-142" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:69-70 med:69 N=2 -->
|
|
<Limit name="measured-frame-rate-1920x1080" range="69-69" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.exynos.vp9.encoder" type="video/x-vnd.on2.vp9" update="true">
|
|
<!-- measured 90%:474-485 med:474 N=2 -->
|
|
<Limit name="measured-frame-rate-320x180" range="474-479" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:192-267 med:193 SLOW N=2 -->
|
|
<Limit name="measured-frame-rate-640x360" range="192-227" /> <!-- v90%=1.2 -->
|
|
<!-- measured 90%:95-96 med:96 N=2 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="95-96" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:84-86 med:85 N=2 -->
|
|
<Limit name="measured-frame-rate-1920x1080" range="84-85" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.google.av1.encoder" type="video/av01" update="true">
|
|
<!-- measured 90%:292-307 med:292 N=2 -->
|
|
<Limit name="measured-frame-rate-320x240" range="292-299" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:162-164 med:162 N=2 -->
|
|
<Limit name="measured-frame-rate-720x480" range="162-163" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:79-80 med:79 N=2 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="79-79" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:40-41 med:41 N=2 -->
|
|
<Limit name="measured-frame-rate-1920x1080" range="40-41" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
|
|
<MediaCodec name="c2.android.h263.encoder" type="video/3gpp" update="true">
|
|
<!-- measured 90%:868-1433 med:869 SLOW N=2 -->
|
|
<Limit name="measured-frame-rate-176x144" range="868-1116" /> <!-- v90%=1.3 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.android.avc.encoder" type="video/avc" update="true">
|
|
<!-- measured 90%:357-443 med:427 N=4 -->
|
|
<Limit name="measured-frame-rate-320x240" range="398-398" /> <!-- v90%=1.1 -->
|
|
<!-- measured 90%:110-150 med:133 N=4 -->
|
|
<Limit name="measured-frame-rate-720x480" range="128-128" /> <!-- v90%=1.2 -->
|
|
<!-- measured 90%:57-87 med:78 N=4 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="70-70" /> <!-- v90%=1.2 -->
|
|
<!-- measured 90%:43-47 med:46 N=4 -->
|
|
<Limit name="measured-frame-rate-1920x1080" range="45-45" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.android.hevc.encoder" type="video/hevc" update="true">
|
|
<!-- measured 90%:43-46 med:44 N=4 -->
|
|
<Limit name="measured-frame-rate-320x240" range="43-44" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.android.mpeg4.encoder" type="video/mp4v-es" update="true">
|
|
<!-- measured 90%:1426-1471 med:1427 N=2 -->
|
|
<Limit name="measured-frame-rate-176x144" range="1426-1448" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.android.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
|
|
<!-- measured 90%:392-448 med:392 N=2 -->
|
|
<Limit name="measured-frame-rate-320x180" range="392-419" /> <!-- v90%=1.1 -->
|
|
<!-- measured 90%:213-226 med:214 N=2 -->
|
|
<Limit name="measured-frame-rate-640x360" range="213-219" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:48-54 med:49 N=2 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="48-51" /> <!-- v90%=1.1 -->
|
|
<!-- measured 90%:35-37 med:36 N=2 -->
|
|
<Limit name="measured-frame-rate-1920x1080" range="35-36" /> <!-- v90%=1.0 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.android.vp9.encoder" type="video/x-vnd.on2.vp9" update="true">
|
|
<!-- measured 90%:304-378 med:304 SLOW N=2 -->
|
|
<Limit name="measured-frame-rate-320x180" range="304-339" /> <!-- v90%=1.1 -->
|
|
<!-- measured 90%:103-106 med:104 N=2 -->
|
|
<Limit name="measured-frame-rate-640x360" range="103-104" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:20-24 med:21 N=2 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="20-22" /> <!-- v90%=1.1 -->
|
|
</MediaCodec>
|
|
<MediaCodec name="c2.android.av1.encoder" type="video/av01" update="true">
|
|
<!-- measured 90%:367-372 med:367 N=2 -->
|
|
<Limit name="measured-frame-rate-320x240" range="367-369" /> <!-- v90%=1.0 -->
|
|
<!-- measured 90%:66-78 med:67 N=2 -->
|
|
<Limit name="measured-frame-rate-720x480" range="66-72" /> <!-- v90%=1.1 -->
|
|
<!-- measured 90%:23-28 med:23 N=2 -->
|
|
<Limit name="measured-frame-rate-1280x720" range="23-25" /> <!-- v90%=1.1 -->
|
|
</MediaCodec>
|
|
|
|
</Encoders>
|
|
</MediaCodecs>
|