Files
device_google_gs201/media_codecs_performance_c2.xml
Jerry Huang b4cd7bf619 gs201: add c2.android.av1-dav1d.decoder in media_codecs_performance_c2.xml
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: Idc841e76425f333e16cc701869f450f126b2d72d
2023-11-16 12:26:34 +00:00

265 lines
17 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">
<!-- measured 90%:521-541 med:521 N=2 -->
<Limit name="measured-frame-rate-176x144" range="1300-1400" /> <!-- v90%=1.0 -->
<!-- measured 90%:528-540 med:528 N=2 -->
<Limit name="measured-frame-rate-352x288" range="528-534" /> <!-- v90%=1.0 -->
</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="1504-2256" />
<Limit name="measured-frame-rate-352x288" range="893-1339" />
</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">
<Limit name="measured-frame-rate-352x288" range="583-674" />
<!-- 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="1215-1823" />
<Limit name="measured-frame-rate-480x360" range="830-1246" />
<Limit name="measured-frame-rate-1280x720" range="265-397" />
</MediaCodec>
<MediaCodec name="c2.android.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
<Limit name="measured-frame-rate-320x180" range="847-1271" />
<Limit name="measured-frame-rate-640x360" range="412-618" />
<Limit name="measured-frame-rate-1280x720" range="119-178" />
<Limit name="measured-frame-rate-1920x1080" range="47-70" />
</MediaCodec>
<MediaCodec name="c2.android.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
<Limit name="measured-frame-rate-320x180" range="622-934" />
<Limit name="measured-frame-rate-640x360" range="418-627" />
<Limit name="measured-frame-rate-1280x720" range="123-185" />
<Limit name="measured-frame-rate-1920x1080" range="75-112" />
</MediaCodec>
<MediaCodec name="c2.google.av1.decoder" type="video/av01" update="true">
<Limit name="measured-frame-rate-352x288" range="630-748" />
<Limit name="measured-frame-rate-640x360" range="586-700" />
<Limit name="measured-frame-rate-720x480" range="575-690" />
<Limit name="measured-frame-rate-1280x720" range="247-460" />
<Limit name="measured-frame-rate-1920x1080" range="219-252" />
</MediaCodec>
<MediaCodec name="c2.google.av1.decoder.secure" type="video/av01" update="true">
<Limit name="measured-frame-rate-352x288" range="630-748" />
<Limit name="measured-frame-rate-640x360" range="586-700" />
<Limit name="measured-frame-rate-720x480" range="575-690" />
<Limit name="measured-frame-rate-1280x720" range="247-460" />
<Limit name="measured-frame-rate-1920x1080" range="219-252" />
</MediaCodec>
<MediaCodec name="c2.android.av1.decoder" type="video/av01" update="true">
<Limit name="measured-frame-rate-352x288" range="358-383" />
<Limit name="measured-frame-rate-640x360" range="207-221" />
<Limit name="measured-frame-rate-720x480" range="106-148" />
<Limit name="measured-frame-rate-1280x720" range="65-71" />
</MediaCodec>
<MediaCodec name="c2.android.av1-dav1d.decoder" type="video/av01" update="true">
<Limit name="measured-frame-rate-352x288" range="358-383" />
<Limit name="measured-frame-rate-640x360" range="207-221" />
<Limit name="measured-frame-rate-720x480" range="106-148" />
<Limit name="measured-frame-rate-1280x720" range="65-71" />
</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">
<Limit name="measured-frame-rate-176x144" range="380-566" />
<Limit name="measured-frame-rate-352x288" range="222-250" />
<Limit name="measured-frame-rate-640x480" range="103-124" />
</MediaCodec>
<MediaCodec name="c2.exynos.h263.encoder" type="video/3gpp" update="true">
<Limit name="measured-frame-rate-176x144" range="500-751" />
<Limit name="measured-frame-rate-352x288" range="236-355" />
<Limit name="measured-frame-rate-704x576" range="76-114" />
</MediaCodec>
<MediaCodec name="c2.exynos.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
<Limit name="measured-frame-rate-320x180" range="378-488" />
<Limit name="measured-frame-rate-640x360" range="267-351" />
<Limit name="measured-frame-rate-1280x720" range="113-170" />
<Limit name="measured-frame-rate-1920x1080" range="55-82" />
</MediaCodec>
<MediaCodec name="c2.exynos.vp9.encoder" type="video/x-vnd.on2.vp9" update="true">
<Limit name="measured-frame-rate-320x180" range="302-453" />
<Limit name="measured-frame-rate-640x360" range="188-283" />
<Limit name="measured-frame-rate-1280x720" range="160-240" />
<Limit name="measured-frame-rate-1920x1080" range="100-151" />
</MediaCodec>
<MediaCodec name="c2.android.h263.encoder" type="video/3gpp" update="true">
<Limit name="measured-frame-rate-176x144" range="1452-2178" />
</MediaCodec>
<MediaCodec name="c2.android.avc.encoder" type="video/avc" update="true">
<!-- measured 90%:345-350 med:345 N=2 -->
<Limit name="measured-frame-rate-320x240" range="345-347" /> <!-- v90%=1.0 -->
<!-- measured 90%:101-103 med:101 N=2 -->
<Limit name="measured-frame-rate-720x480" range="101-102" /> <!-- v90%=1.0 -->
<!-- measured 90%:54-55 med:54 N=2 -->
<Limit name="measured-frame-rate-1280x720" range="54-54" /> <!-- v90%=1.0 -->
<!-- measured 90%:28-30 med:29 N=2 -->
<Limit name="measured-frame-rate-1920x1080" range="28-29" /> <!-- v90%=1.0 -->
</MediaCodec>
<MediaCodec name="c2.android.hevc.encoder" type="video/hevc" update="true">
<!-- measured 90%:61-65 med:62 N=8 -->
<Limit name="measured-frame-rate-320x240" range="50-80" /> <!-- v90%=1.0 -->
</MediaCodec>
<MediaCodec name="c2.android.mpeg4.encoder" type="video/mp4v-es" update="true">
<Limit name="measured-frame-rate-176x144" range="1201-1801" />
</MediaCodec>
<MediaCodec name="c2.android.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
<!-- measured 90%:49-87 med:50 SLOW N=2 -->
<Limit name="measured-frame-rate-320x180" range="394-395" /> <!-- v90%=1.3 -->
<!-- measured 90%:55-57 med:56 N=2 -->
<Limit name="measured-frame-rate-640x360" range="196-197" /> <!-- v90%=1.0 -->
<!-- measured 90%:34-35 med:34 N=2 -->
<Limit name="measured-frame-rate-1280x720" range="34-34" /> <!-- v90%=1.0 -->
<!-- measured 90%:29-31 med:30 N=2 -->
<Limit name="measured-frame-rate-1920x1080" range="29-30" /> <!-- v90%=1.0 -->
</MediaCodec>
<MediaCodec name="c2.android.vp9.encoder" type="video/x-vnd.on2.vp9" update="true">
<Limit name="measured-frame-rate-320x180" range="345-518" />
<Limit name="measured-frame-rate-640x360" range="91-136" />
<Limit name="measured-frame-rate-1280x720" range="24-36" />
</MediaCodec>
<MediaCodec name="c2.android.av1.encoder" type="video/av01" update="true">
<!-- measured 90%:354-361 med:355 N=2 -->
<Limit name="measured-frame-rate-320x240" range="354-358" /> <!-- v90%=1.0 -->
<!-- measured 90%:81-85 med:81 N=2 -->
<Limit name="measured-frame-rate-720x480" range="81-83" /> <!-- v90%=1.0 -->
<!-- measured 90%:32-33 med:33 N=2 -->
<Limit name="measured-frame-rate-1280x720" range="32-33" /> <!-- v90%=1.0 -->
</MediaCodec>
</Encoders>
</MediaCodecs>