Offset 10, 42 lines modifiedOffset 10, 212 lines modified
10 ·····Unless·required·by·applicable·law·or·agreed·to·in·writing,·software10 ·····Unless·required·by·applicable·law·or·agreed·to·in·writing,·software
11 ·····distributed·under·the·License·is·distributed·on·an·"AS·IS"·BASIS,11 ·····distributed·under·the·License·is·distributed·on·an·"AS·IS"·BASIS,
12 ·····WITHOUT·WARRANTIES·OR·CONDITIONS·OF·ANY·KIND,·either·express·or·implied.12 ·····WITHOUT·WARRANTIES·OR·CONDITIONS·OF·ANY·KIND,·either·express·or·implied.
13 ·····See·the·License·for·the·specific·language·governing·permissions·and13 ·····See·the·License·for·the·specific·language·governing·permissions·and
14 ·····limitations·under·the·License.14 ·····limitations·under·the·License.
15 -->15 -->
16 <MediaCodecs>16 <MediaCodecs>
17 ··<Include·href="media_codecs_aosp_c2.xml"/>17 ··<Settings>
 18 ····<Setting·name="supports-multiple-secure-codecs"·value="true"/>
 19 ····<Setting·name="supports-secure-with-non-secure-codec"·value="true"/>
 20 ··</Settings>
18 ··<Decoders>21 ··<Decoders>
19 ····<MediaCodec·name="c2.google.av1.decoder"·type="video/av01">22 ····<MediaCodec·name="c2.exynos.h264.decoder"·type="video/avc">
20 ······<Limit·name="size"·min="96x96"·max="3840x2160"/>23 ······<Limit·name="size"·min="32x32"·max="3840x2160"/>
21 ······<Limit·name="alignment"·value="2x2"/>24 ······<Limit·name="alignment"·value="2x2"/>
22 ······<Limit·name="block-size"·value="16x16"/>25 ······<Limit·name="block-size"·value="16x16"/>
23 ······<Limit·name="block-count"·range="36-32400"/>26 ······<Limit·name="block-count"·range="1-32400"/>
24 ······<Limit·name="blocks-per-second"·min="24"·max="1944000"/>27 ······<Limit·name="blocks-per-second"·min="1"·max="3888000"/>
25 ······<Limit·name="bitrate"·range="1-120000000"/>28 ······<Limit·name="bitrate"·range="1-120000000"/>
26 ······<Limit·name="frame-rate"·range="1-180"/>29 ······<Limit·name="performance-point-1280x720"·range="240"/>
 30 ······<Limit·name="performance-point-3840x2160"·range="120"/>
27 ······<Limit·name="concurrent-instances"·max="16"/>31 ······<Limit·name="concurrent-instances"·max="16"/>
28 ······<Limit·name="performance-point-1280x720"·value="180"/> 
29 ······<Limit·name="performance-point-1920x1080"·value="120"/> 
30 ······<Limit·name="performance-point-3840x2160"·value="60"/> 
31 ······<Feature·name="adaptive-playback"/>32 ······<Feature·name="adaptive-playback"/>
32 ······<Feature·name="can-swap-width-height"·value="1"/>33 ······<Feature·name="can-swap-width-height"·value="1"/>
33 ····</MediaCodec>34 ····</MediaCodec>
34 ····<MediaCodec·name="c2.google.av1.decoder.secure"·type="video/av01">35 ····<MediaCodec·name="c2.exynos.h264.decoder.secure"·type="video/avc">
35 ······<Limit·name="size"·min="96x96"·max="3840x2160"/>36 ······<Limit·name="size"·min="32x32"·max="3840x2160"/>
36 ······<Limit·name="alignment"·value="2x2"/>37 ······<Limit·name="alignment"·value="2x2"/>
37 ······<Limit·name="block-size"·value="16x16"/>38 ······<Limit·name="block-size"·value="16x16"/>
38 ······<Limit·name="block-count"·range="36-32400"/>39 ······<Limit·name="block-count"·range="1-32400"/>
39 ······<Limit·name="blocks-per-second"·min="24"·max="1944000"/>40 ······<Limit·name="blocks-per-second"·min="1"·max="3888000"/>
40 ······<Limit·name="bitrate"·range="1-120000000"/>41 ······<Limit·name="bitrate"·range="1-120000000"/>
 42 ······<Limit·name="performance-point-1280x720"·range="240"/>
 43 ······<Limit·name="performance-point-3840x2160"·range="120"/>
 44 ······<Limit·name="concurrent-instances"·max="2"/>
 45 ······<Feature·name="adaptive-playback"/>
 46 ······<Feature·name="secure-playback"·required="true"/>
 47 ······<Feature·name="can-swap-width-height"·value="1"/>
 48 ····</MediaCodec>
 49 ····<MediaCodec·name="c2.exynos.hevc.decoder"·type="video/hevc">
 50 ······<Limit·name="size"·min="64x64"·max="3840x2160"/>
 51 ······<Limit·name="alignment"·value="2x2"/>
 52 ······<Limit·name="block-size"·value="16x16"/>
 53 ······<Limit·name="block-count"·range="1-32400"/>
 54 ······<Limit·name="blocks-per-second"·min="1"·max="3888000"/>
41 ······<Limit·name="frame-rate"·range="1-180"/>55 ······<Limit·name="bitrate"·range="1-120000000"/>
 56 ······<Limit·name="performance-point-1280x720"·range="240"/>
 57 ······<Limit·name="performance-point-3840x2160"·range="120"/>
42 ······<Limit·name="concurrent-instances"·max="16"/>58 ······<Limit·name="concurrent-instances"·max="16"/>
 59 ······<Feature·name="adaptive-playback"/>
 60 ······<Feature·name="can-swap-width-height"·value="1"/>
 61 ····</MediaCodec>
 62 ····<MediaCodec·name="c2.exynos.hevc.decoder.secure"·type="video/hevc">
 63 ······<Limit·name="size"·min="64x64"·max="3840x2160"/>
 64 ······<Limit·name="alignment"·value="2x2"/>
 65 ······<Limit·name="block-size"·value="16x16"/>
 66 ······<Limit·name="block-count"·range="1-32400"/>
 67 ······<Limit·name="blocks-per-second"·min="1"·max="3888000"/>
 68 ······<Limit·name="bitrate"·range="1-120000000"/>
43 ······<Limit·name="performance-point-1280x720"·value="180"/>69 ······<Limit·name="performance-point-1280x720"·range="240"/>
 70 ······<Limit·name="performance-point-3840x2160"·range="120"/>
 71 ······<Limit·name="concurrent-instances"·max="2"/>
 72 ······<Feature·name="adaptive-playback"/>
 73 ······<Feature·name="secure-playback"·required="true"/>
 74 ······<Feature·name="can-swap-width-height"·value="1"/>
 75 ····</MediaCodec>
 76 ····<MediaCodec·name="c2.exynos.mpeg4.decoder"·type="video/mp4v-es">
 77 ······<Limit·name="size"·min="32x32"·max="2048x2048"/>
 78 ······<Limit·name="alignment"·value="2x2"/>
 79 ······<Limit·name="block-size"·value="16x16"/>
 80 ······<Limit·name="block-count"·range="1-16384"/>
 81 ······<Limit·name="blocks-per-second"·min="1"·max="979200"/>
 82 ······<Limit·name="bitrate"·range="1-80000000"/>
 83 ······<Limit·name="performance-point-1280x720"·range="240"/>
44 ······<Limit·name="performance-point-1920x1080"·value="120"/>84 ······<Limit·name="performance-point-1920x1080"·range="120"/>
 85 ······<Limit·name="concurrent-instances"·max="16"/>
 86 ······<Feature·name="adaptive-playback"/>
 87 ······<Feature·name="can-swap-width-height"·value="1"/>
 88 ····</MediaCodec>
 89 ····<MediaCodec·name="c2.exynos.h263.decoder"·type="video/3gpp">
 90 ······<Limit·name="size"·min="32x32"·max="2048x1152"/>
 91 ······<Limit·name="alignment"·value="4x4"/>
 92 ······<Limit·name="block-size"·value="16x16"/>
 93 ······<Limit·name="block-count"·range="1-9216"/>
 94 ······<Limit·name="blocks-per-second"·min="1"·max="979200"/>
 95 ······<Limit·name="bitrate"·range="1-80000000"/>
 96 ······<Limit·name="performance-point-1280x720"·range="240"/>
 97 ······<Limit·name="performance-point-1920x1080"·range="120"/>
 98 ······<Limit·name="concurrent-instances"·max="16"/>
 99 ······<Feature·name="adaptive-playback"/>
 100 ····</MediaCodec>
 101 ····<MediaCodec·name="c2.exynos.vp8.decoder"·type="video/x-vnd.on2.vp8">
 102 ······<Limit·name="size"·min="32x32"·max="3840x2160"/>
 103 ······<Limit·name="alignment"·value="2x2"/>
 104 ······<Limit·name="block-size"·value="16x16"/>
 105 ······<Limit·name="block-count"·range="1-32400"/>
 106 ······<Limit·name="blocks-per-second"·min="1"·max="3888000"/>
 107 ······<Limit·name="bitrate"·range="1-80000000"/>
 108 ······<Limit·name="performance-point-1280x720"·range="240"/>
45 ······<Limit·name="performance-point-3840x2160"·value="60"/>109 ······<Limit·name="performance-point-3840x2160"·range="120"/>
 110 ······<Limit·name="concurrent-instances"·max="16"/>
 111 ······<Feature·name="adaptive-playback"/>
 112 ······<Feature·name="can-swap-width-height"·value="1"/>
 113 ····</MediaCodec>
 114 ····<MediaCodec·name="c2.exynos.vp9.decoder"·type="video/x-vnd.on2.vp9">
 115 ······<Limit·name="size"·min="64x64"·max="3840x2176"/>
 116 ······<Limit·name="alignment"·value="2x2"/>
 117 ······<Limit·name="block-size"·value="64x64"/>
 118 ······<Limit·name="block-count"·range="1-2025"/>
 119 ······<Limit·name="blocks-per-second"·min="1"·max="3888000"/>
 120 ······<Limit·name="bitrate"·range="1-80000000"/>
 121 ······<Limit·name="performance-point-1280x720"·range="240"/>
 122 ······<Limit·name="performance-point-3840x2160"·range="120"/>
 123 ······<Limit·name="concurrent-instances"·max="16"/>
 124 ······<Feature·name="adaptive-playback"/>
 125 ······<Feature·name="can-swap-width-height"·value="1"/>
 126 ····</MediaCodec>
 127 ····<MediaCodec·name="c2.exynos.vp9.decoder.secure"·type="video/x-vnd.on2.vp9">
 128 ······<Limit·name="size"·min="64x64"·max="3840x2176"/>
 129 ······<Limit·name="alignment"·value="2x2"/>
 130 ······<Limit·name="block-size"·value="64x64"/>
 131 ······<Limit·name="block-count"·range="1-2025"/>
 132 ······<Limit·name="blocks-per-second"·min="1"·max="3888000"/>
 133 ······<Limit·name="bitrate"·range="1-80000000"/>
 134 ······<Limit·name="performance-point-1280x720"·range="240"/>
 135 ······<Limit·name="performance-point-3840x2160"·range="120"/>
 136 ······<Limit·name="concurrent-instances"·max="2"/>
46 ······<Feature·name="adaptive-playback"/>137 ······<Feature·name="adaptive-playback"/>
47 ······<Feature·name="secure-playback"·required="true"/>138 ······<Feature·name="secure-playback"·required="true"/>
48 ······<Feature·name="can-swap-width-height"·value="1"/>139 ······<Feature·name="can-swap-width-height"·value="1"/>
49 ····</MediaCodec>140 ····</MediaCodec>
50 ··</Decoders>141 ··</Decoders>
 142 ··<Encoders>
 143 ····<MediaCodec·name="c2.exynos.h264.encoder"·type="video/avc">
 144 ······<Limit·name="size"·min="32x32"·max="3840x2160"/>
 145 ······<Limit·name="alignment"·value="2x2"/>
 146 ······<Limit·name="block-size"·value="16x16"/>
 147 ······<Limit·name="block-count"·range="1-32400"/>
 148 ······<Limit·name="blocks-per-second"·min="1"·max="3888000"/>
 149 ······<Limit·name="bitrate"·range="1-120000000"/>
 150 ······<Limit·name="performance-point-1280x720"·range="240"/>
 151 ······<Limit·name="performance-point-3840x2160"·range="120"/>
 152 ······<Limit·name="concurrent-instances"·max="16"/>
 153 ······<Feature·name="can-swap-width-height"·value="1"/>
 154 ······<Feature·name="vq-minimum-quality"/>
 155 ····</MediaCodec>
 156 ····<MediaCodec·name="c2.exynos.hevc.encoder"·type="video/hevc">
 157 ······<Limit·name="size"·min="64x64"·max="3840x2176"/>
 158 ······<Limit·name="alignment"·value="2x2"/>
 159 ······<Limit·name="block-size"·value="32x32"/>
 160 ······<Limit·name="block-count"·range="1-8100"/>
 161 ······<Limit·name="blocks-per-second"·min="1"·max="979200"/>
 162 ······<Limit·name="bitrate"·range="1-120000000"/>
 163 ······<Limit·name="performance-point-1280x720"·range="240"/>
 164 ······<Limit·name="performance-point-3840x2160"·range="120"/>
 165 ······<Limit·name="concurrent-instances"·max="16"/>
 166 ······<Feature·name="can-swap-width-height"·value="1"/>
 167 ······<Feature·name="vq-minimum-quality"/>
 168 ····</MediaCodec>
 169 ····<MediaCodec·name="c2.exynos.mpeg4.encoder"·type="video/mp4v-es">
 170 ······<Limit·name="size"·min="32x32"·max="2048x2048"/>
 171 ······<Limit·name="alignment"·value="2x2"/>
 172 ······<Limit·name="block-size"·value="16x16"/>
 173 ······<Limit·name="block-count"·range="1-16384"/>
 174 ······<Limit·name="blocks-per-second"·min="1"·max="979200"/>
 175 ······<Limit·name="bitrate"·range="1-80000000"/>
 176 ······<Limit·name="performance-point-1280x720"·range="240"/>
 177 ······<Limit·name="performance-point-1920x1080"·range="120"/>
 178 ······<Limit·name="concurrent-instances"·max="16"/>
 179 ······<Feature·name="can-swap-width-height"·value="1"/>
 180 ······<Feature·name="vq-minimum-quality"/>
 181 ····</MediaCodec>
 182 ····<MediaCodec·name="c2.exynos.h263.encoder"·type="video/3gpp">
 183 ······<Limit·name="size"·min="32x32"·max="2048x1152"/>
 184 ······<Limit·name="alignment"·value="4x4"/>
 185 ······<Limit·name="block-size"·value="16x16"/>
 186 ······<Limit·name="block-count"·range="1-9216"/>
 187 ······<Limit·name="blocks-per-second"·min="1"·max="979200"/>
 188 ······<Limit·name="bitrate"·range="1-80000000"/>
 189 ······<Limit·name="performance-point-1280x720"·range="240"/>
 190 ······<Limit·name="performance-point-1920x1080"·range="120"/>
 191 ······<Limit·name="concurrent-instances"·max="16"/>
 192 ······<Feature·name="vq-minimum-quality"/>
 193 ····</MediaCodec>
 194 ····<MediaCodec·name="c2.exynos.vp8.encoder"·type="video/x-vnd.on2.vp8">
 195 ······<Limit·name="size"·min="32x32"·max="3840x2160"/>
 196 ······<Limit·name="alignment"·value="2x2"/>
 197 ······<Limit·name="block-size"·value="16x16"/>
 198 ······<Limit·name="block-count"·range="1-32400"/>
 199 ······<Limit·name="blocks-per-second"·min="1"·max="3888000"/>
 200 ······<Limit·name="bitrate"·range="1-80000000"/>
 201 ······<Limit·name="performance-point-1280x720"·range="240"/>
 202 ······<Limit·name="performance-point-3840x2160"·range="120"/>
 203 ······<Limit·name="concurrent-instances"·max="16"/>
 204 ······<Feature·name="can-swap-width-height"·value="1"/>
 205 ······<Feature·name="vq-minimum-quality"/>
 206 ····</MediaCodec>
 207 ····<MediaCodec·name="c2.exynos.vp9.encoder"·type="video/x-vnd.on2.vp9">
 208 ······<Limit·name="size"·min="64x64"·max="3840x2176"/>
 209 ······<Limit·name="alignment"·value="2x2"/>
 210 ······<Limit·name="block-size"·value="64x64"/>
 211 ······<Limit·name="block-count"·range="1-2025"/>
 212 ······<Limit·name="blocks-per-second"·min="1"·max="243000"/>
 213 ······<Limit·name="bitrate"·range="1-80000000"/>
 214 ······<Limit·name="performance-point-1280x720"·range="240"/>
 215 ······<Limit·name="performance-point-3840x2160"·range="120"/>
 216 ······<Limit·name="concurrent-instances"·max="16"/>
 217 ······<Feature·name="can-swap-width-height"·value="1"/>
 218 ······<Feature·name="vq-minimum-quality"/>
 219 ····</MediaCodec>
 220 ··</Encoders>
51 </MediaCodecs>221 </MediaCodecs>