1<?xml version="1.0" encoding="utf-8"?> 2<!-- Copyright 2013 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<!DOCTYPE MediaSettings [ 17<!ELEMENT MediaSettings (CamcorderProfiles, 18 EncoderOutputFileFormat+, 19 VideoEncoderCap+, 20 AudioEncoderCap+, 21 VideoDecoderCap, 22 AudioDecoderCap)> 23<!ELEMENT CamcorderProfiles (EncoderProfile+, ImageEncoding+, ImageDecoding, Camera)> 24<!ELEMENT EncoderProfile (Video, Audio)> 25<!ATTLIST EncoderProfile quality (high|low) #REQUIRED> 26<!ATTLIST EncoderProfile fileFormat (mp4|3gp) #REQUIRED> 27<!ATTLIST EncoderProfile duration (30|60) #REQUIRED> 28<!ATTLIST EncoderProfile cameraId (0|1) #REQUIRED> 29<!ELEMENT Video EMPTY> 30<!ATTLIST Video codec (h264|h263|m4v) #REQUIRED> 31<!ATTLIST Video bitRate CDATA #REQUIRED> 32<!ATTLIST Video width CDATA #REQUIRED> 33<!ATTLIST Video height CDATA #REQUIRED> 34<!ATTLIST Video frameRate CDATA #REQUIRED> 35<!ELEMENT Audio EMPTY> 36<!ATTLIST Audio codec (amrnb|amrwb|aac) #REQUIRED> 37<!ATTLIST Audio bitRate CDATA #REQUIRED> 38<!ATTLIST Audio sampleRate CDATA #REQUIRED> 39<!ATTLIST Audio channels (1|2) #REQUIRED> 40<!ELEMENT ImageEncoding EMPTY> 41<!ATTLIST ImageEncoding quality (90|80|70|60|50|40) #REQUIRED> 42<!ELEMENT ImageDecoding EMPTY> 43<!ATTLIST ImageDecoding memCap CDATA #REQUIRED> 44<!ELEMENT Camera EMPTY> 45<!ELEMENT EncoderOutputFileFormat EMPTY> 46<!ATTLIST EncoderOutputFileFormat name (mp4|3gp) #REQUIRED> 47<!ELEMENT VideoEncoderCap EMPTY> 48<!ATTLIST VideoEncoderCap name (h264|h263|m4v|wmv) #REQUIRED> 49<!ATTLIST VideoEncoderCap enabled (true|false) #REQUIRED> 50<!ATTLIST VideoEncoderCap minBitRate CDATA #REQUIRED> 51<!ATTLIST VideoEncoderCap maxBitRate CDATA #REQUIRED> 52<!ATTLIST VideoEncoderCap minFrameWidth CDATA #REQUIRED> 53<!ATTLIST VideoEncoderCap maxFrameWidth CDATA #REQUIRED> 54<!ATTLIST VideoEncoderCap minFrameHeight CDATA #REQUIRED> 55<!ATTLIST VideoEncoderCap maxFrameHeight CDATA #REQUIRED> 56<!ATTLIST VideoEncoderCap minFrameRate CDATA #REQUIRED> 57<!ATTLIST VideoEncoderCap maxFrameRate CDATA #REQUIRED> 58<!ELEMENT AudioEncoderCap EMPTY> 59<!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac|wma) #REQUIRED> 60<!ATTLIST AudioEncoderCap enabled (true|false) #REQUIRED> 61<!ATTLIST AudioEncoderCap minBitRate CDATA #REQUIRED> 62<!ATTLIST AudioEncoderCap maxBitRate CDATA #REQUIRED> 63<!ATTLIST AudioEncoderCap minSampleRate CDATA #REQUIRED> 64<!ATTLIST AudioEncoderCap maxSampleRate CDATA #REQUIRED> 65<!ATTLIST AudioEncoderCap minChannels (1|2) #REQUIRED> 66<!ATTLIST AudioEncoderCap maxChannels (1|2) #REQUIRED> 67<!ELEMENT VideoDecoderCap EMPTY> 68<!ATTLIST VideoDecoderCap name (wmv) #REQUIRED> 69<!ATTLIST VideoDecoderCap enabled (true|false) #REQUIRED> 70<!ELEMENT AudioDecoderCap EMPTY> 71<!ATTLIST AudioDecoderCap name (wma) #REQUIRED> 72<!ATTLIST AudioDecoderCap enabled (true|false) #REQUIRED> 73]> 74<!-- 75 This file is used to declare the multimedia profiles and capabilities 76 on an android-powered device. 77--> 78<MediaSettings> 79 <!-- Each camcorder profile defines a set of predefined configuration parameters --> 80 <CamcorderProfiles cameraId="0"> 81 82 <EncoderProfile quality="low" fileFormat="3gp" duration="60"> 83 <Video codec="h264" 84 bitRate="128000" 85 width="176" 86 height="144" 87 frameRate="30" /> 88 89 <Audio codec="amrnb" 90 bitRate="12200" 91 sampleRate="8000" 92 channels="1" /> 93 </EncoderProfile> 94 95 <EncoderProfile quality="high" fileFormat="mp4" duration="30"> 96 <Video codec="h264" 97 bitRate="42000000" 98 width="3840" 99 height="2160" 100 frameRate="30" /> 101 <Audio codec="aac" 102 bitRate="96000" 103 sampleRate="48000" 104 channels="1" /> 105 </EncoderProfile> 106 107 <EncoderProfile quality="qcif" fileFormat="3gp" duration="60"> 108 <Video codec="h264" 109 bitRate="128000" 110 width="176" 111 height="144" 112 frameRate="30" /> 113 <Audio codec="amrnb" 114 bitRate="12200" 115 sampleRate="8000" 116 channels="1" /> 117 </EncoderProfile> 118 119 <EncoderProfile quality="qvga" fileFormat="mp4" duration="60"> 120 <Video codec="h264" 121 bitRate="512000" 122 width="320" 123 height="240" 124 frameRate="30" /> 125 <Audio codec="aac" 126 bitRate="156000" 127 sampleRate="48000" 128 channels="2" /> 129 </EncoderProfile> 130 131 <EncoderProfile quality="cif" fileFormat="mp4" duration="30"> 132 <Video codec="h264" 133 bitRate="1200000" 134 width="352" 135 height="288" 136 frameRate="30" /> 137 <Audio codec="aac" 138 bitRate="96000" 139 sampleRate="48000" 140 channels="1" /> 141 </EncoderProfile> 142 143 <EncoderProfile quality="480p" fileFormat="mp4" duration="30"> 144 <Video codec="h264" 145 bitRate="6000000" 146 width="720" 147 height="480" 148 frameRate="30" /> 149 <Audio codec="aac" 150 bitRate="96000" 151 sampleRate="48000" 152 channels="1" /> 153 </EncoderProfile> 154 155 <EncoderProfile quality="720p" fileFormat="mp4" duration="30"> 156 <Video codec="h264" 157 bitRate="12000000" 158 width="1280" 159 height="720" 160 frameRate="30" /> 161 <Audio codec="aac" 162 bitRate="96000" 163 sampleRate="48000" 164 channels="1" /> 165 </EncoderProfile> 166 167 <EncoderProfile quality="1080p" fileFormat="mp4" duration="30"> 168 <Video codec="h264" 169 bitRate="17000000" 170 width="1920" 171 height="1080" 172 frameRate="30" /> 173 <Audio codec="aac" 174 bitRate="96000" 175 sampleRate="48000" 176 channels="1" /> 177 </EncoderProfile> 178 179 <EncoderProfile quality="2160p" fileFormat="mp4" duration="30"> 180 <Video codec="h264" 181 bitRate="42000000" 182 width="3840" 183 height="2160" 184 frameRate="30" /> 185 <Audio codec="aac" 186 bitRate="96000" 187 sampleRate="48000" 188 channels="1" /> 189 </EncoderProfile> 190 191 <EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30"> 192 <Video codec="h264" 193 bitRate="192000" 194 width="176" 195 height="144" 196 frameRate="30" /> 197 <!-- audio setting is ignored --> 198 <Audio codec="amrnb" 199 bitRate="12200" 200 sampleRate="8000" 201 channels="1" /> 202 </EncoderProfile> 203 204 <EncoderProfile quality="timelapsecif" fileFormat="mp4" duration="30"> 205 <Video codec="h264" 206 bitRate="1200000" 207 width="352" 208 height="288" 209 frameRate="30" /> 210 <!-- audio setting is ignored --> 211 <Audio codec="aac" 212 bitRate="96000" 213 sampleRate="48000" 214 channels="1" /> 215 </EncoderProfile> 216 217 <EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30"> 218 <Video codec="h264" 219 bitRate="6000000" 220 width="720" 221 height="480" 222 frameRate="30" /> 223 <!-- audio setting is ignored --> 224 <Audio codec="aac" 225 bitRate="96000" 226 sampleRate="48000" 227 channels="1" /> 228 </EncoderProfile> 229 230 <EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30"> 231 <Video codec="h264" 232 bitRate="12000000" 233 width="1280" 234 height="720" 235 frameRate="30" /> 236 <!-- audio setting is ignored --> 237 <Audio codec="aac" 238 bitRate="96000" 239 sampleRate="48000" 240 channels="1" /> 241 </EncoderProfile> 242 243 <EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30"> 244 <Video codec="h264" 245 bitRate="17000000" 246 width="1920" 247 height="1080" 248 frameRate="30" /> 249 <!-- audio setting is ignored --> 250 <Audio codec="aac" 251 bitRate="96000" 252 sampleRate="48000" 253 channels="1" /> 254 </EncoderProfile> 255 256 <EncoderProfile quality="timelapse2160p" fileFormat="mp4" duration="30"> 257 <Video codec="h264" 258 bitRate="42000000" 259 width="3840" 260 height="2160" 261 frameRate="30" /> 262 <!-- audio setting is ignored --> 263 <Audio codec="aac" 264 bitRate="96000" 265 sampleRate="48000" 266 channels="1" /> 267 </EncoderProfile> 268 269 <ImageEncoding quality="95" /> 270 <ImageEncoding quality="80" /> 271 <ImageEncoding quality="70" /> 272 <ImageDecoding memCap="20000000" /> 273 274 </CamcorderProfiles> 275 276 <CamcorderProfiles cameraId="1"> 277 278 <EncoderProfile quality="low" fileFormat="3gp" duration="60"> 279 <Video codec="h264" 280 bitRate="128000" 281 width="176" 282 height="144" 283 frameRate="30" /> 284 285 <Audio codec="amrnb" 286 bitRate="12200" 287 sampleRate="8000" 288 channels="1" /> 289 </EncoderProfile> 290 291 <EncoderProfile quality="high" fileFormat="mp4" duration="30"> 292 <Video codec="h264" 293 bitRate="17000000" 294 width="1920" 295 height="1080" 296 frameRate="30" /> 297 <Audio codec="aac" 298 bitRate="96000" 299 sampleRate="48000" 300 channels="1" /> 301 </EncoderProfile> 302 303 <EncoderProfile quality="qcif" fileFormat="3gp" duration="60"> 304 <Video codec="h264" 305 bitRate="128000" 306 width="176" 307 height="144" 308 frameRate="30" /> 309 <Audio codec="amrnb" 310 bitRate="12200" 311 sampleRate="8000" 312 channels="1" /> 313 </EncoderProfile> 314 315 <EncoderProfile quality="qvga" fileFormat="mp4" duration="60"> 316 <Video codec="h264" 317 bitRate="512000" 318 width="320" 319 height="240" 320 frameRate="30" /> 321 <Audio codec="aac" 322 bitRate="156000" 323 sampleRate="48000" 324 channels="2" /> 325 </EncoderProfile> 326 327 <EncoderProfile quality="cif" fileFormat="mp4" duration="30"> 328 <Video codec="h264" 329 bitRate="1200000" 330 width="352" 331 height="288" 332 frameRate="30" /> 333 <Audio codec="aac" 334 bitRate="96000" 335 sampleRate="48000" 336 channels="1" /> 337 </EncoderProfile> 338 339 <EncoderProfile quality="480p" fileFormat="mp4" duration="30"> 340 <Video codec="h264" 341 bitRate="6000000" 342 width="720" 343 height="480" 344 frameRate="30" /> 345 <Audio codec="aac" 346 bitRate="96000" 347 sampleRate="48000" 348 channels="1" /> 349 </EncoderProfile> 350 351 <EncoderProfile quality="720p" fileFormat="mp4" duration="30"> 352 <Video codec="h264" 353 bitRate="12000000" 354 width="1280" 355 height="720" 356 frameRate="30" /> 357 <Audio codec="aac" 358 bitRate="96000" 359 sampleRate="48000" 360 channels="1" /> 361 </EncoderProfile> 362 363 <EncoderProfile quality="1080p" fileFormat="mp4" duration="30"> 364 <Video codec="h264" 365 bitRate="17000000" 366 width="1920" 367 height="1080" 368 frameRate="30" /> 369 <Audio codec="aac" 370 bitRate="96000" 371 sampleRate="48000" 372 channels="1" /> 373 </EncoderProfile> 374 375 <EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30"> 376 <Video codec="h264" 377 bitRate="192000" 378 width="176" 379 height="144" 380 frameRate="30" /> 381 <!-- audio setting is ignored --> 382 <Audio codec="amrnb" 383 bitRate="12200" 384 sampleRate="8000" 385 channels="1" /> 386 </EncoderProfile> 387 388 <EncoderProfile quality="timelapsecif" fileFormat="mp4" duration="30"> 389 <Video codec="h264" 390 bitRate="1200000" 391 width="352" 392 height="288" 393 frameRate="30" /> 394 <!-- audio setting is ignored --> 395 <Audio codec="aac" 396 bitRate="96000" 397 sampleRate="48000" 398 channels="1" /> 399 </EncoderProfile> 400 401 <EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30"> 402 <Video codec="h264" 403 bitRate="6000000" 404 width="720" 405 height="480" 406 frameRate="30" /> 407 <!-- audio setting is ignored --> 408 <Audio codec="aac" 409 bitRate="96000" 410 sampleRate="48000" 411 channels="1" /> 412 </EncoderProfile> 413 414 <EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30"> 415 <Video codec="h264" 416 bitRate="12000000" 417 width="1280" 418 height="720" 419 frameRate="30" /> 420 <!-- audio setting is ignored --> 421 <Audio codec="aac" 422 bitRate="96000" 423 sampleRate="48000" 424 channels="1" /> 425 </EncoderProfile> 426 427 <ImageEncoding quality="95" /> 428 <ImageEncoding quality="80" /> 429 <ImageEncoding quality="70" /> 430 <ImageDecoding memCap="20000000" /> 431 432 </CamcorderProfiles> 433 434 <EncoderOutputFileFormat name="3gp" /> 435 <EncoderOutputFileFormat name="mp4" /> 436 437 <!-- 438 If a codec is not enabled, it is invisible to the applications 439 In other words, the applications won't be able to use the codec 440 or query the capabilities of the codec at all if it is disabled 441 --> 442 <VideoEncoderCap name="h264" enabled="true" 443 minBitRate="64000" maxBitRate="100000000" 444 minFrameWidth="176" maxFrameWidth="3840" 445 minFrameHeight="144" maxFrameHeight="2160" 446 minFrameRate="15" maxFrameRate="30" /> 447 448 <VideoEncoderCap name="h263" enabled="true" 449 minBitRate="64000" maxBitRate="2000000" 450 minFrameWidth="176" maxFrameWidth="800" 451 minFrameHeight="144" maxFrameHeight="480" 452 minFrameRate="15" maxFrameRate="30" /> 453 454 <VideoEncoderCap name="m4v" enabled="true" 455 minBitRate="64000" maxBitRate="40000000" 456 minFrameWidth="176" maxFrameWidth="1920" 457 minFrameHeight="144" maxFrameHeight="1080" 458 minFrameRate="15" maxFrameRate="30" /> 459 460 <AudioEncoderCap name="aac" enabled="true" 461 minBitRate="758" maxBitRate="288000" 462 minSampleRate="8000" maxSampleRate="48000" 463 minChannels="1" maxChannels="1" /> 464 465 <AudioEncoderCap name="heaac" enabled="true" 466 minBitRate="8000" maxBitRate="64000" 467 minSampleRate="16000" maxSampleRate="48000" 468 minChannels="1" maxChannels="1" /> 469 470 <AudioEncoderCap name="aaceld" enabled="true" 471 minBitRate="16000" maxBitRate="192000" 472 minSampleRate="16000" maxSampleRate="48000" 473 minChannels="1" maxChannels="1" /> 474 475 <AudioEncoderCap name="amrwb" enabled="true" 476 minBitRate="6600" maxBitRate="23050" 477 minSampleRate="16000" maxSampleRate="16000" 478 minChannels="1" maxChannels="1" /> 479 480 <AudioEncoderCap name="amrnb" enabled="true" 481 minBitRate="5525" maxBitRate="12200" 482 minSampleRate="8000" maxSampleRate="8000" 483 minChannels="1" maxChannels="1" /> 484 485 <!-- 486 FIXME: 487 We do not check decoder capabilities at present 488 At present, we only check whether windows media is visible 489 for TEST applications. For other applications, we do 490 not perform any checks at all. 491 --> 492 <VideoDecoderCap name="wmv" enabled="false"/> 493 <AudioDecoderCap name="wma" enabled="false"/> 494</MediaSettings> 495