Home | History | Annotate | Download | only in flounder
      1 <?xml version="1.0" encoding="utf-8"?>
      2 <!-- Copyright (C) 2010 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                          VideoEditorCap,
     24                          ExportVideoProfile+)>
     25   <!ELEMENT CamcorderProfiles (EncoderProfile+, ImageEncoding+, ImageDecoding, Camera)>
     26   <!ELEMENT EncoderProfile (Video, Audio)>
     27   <!ATTLIST EncoderProfile quality (timelapse1080p|timelapse720p|timelapse480p|timelapsehigh|timelapselow|480p|qcif|high|low|1080p) #REQUIRED>
     28   <!ATTLIST EncoderProfile fileFormat (mp4|3gp) #REQUIRED>
     29   <!ATTLIST EncoderProfile duration (30|60) #REQUIRED>
     30   <!ELEMENT Video EMPTY>
     31   <!ATTLIST Video codec (h264|h263|m4v) #REQUIRED>
     32   <!ATTLIST Video bitRate CDATA #REQUIRED>
     33   <!ATTLIST Video width CDATA #REQUIRED>
     34   <!ATTLIST Video height CDATA #REQUIRED>
     35   <!ATTLIST Video frameRate CDATA #REQUIRED>
     36   <!ELEMENT Audio EMPTY>
     37   <!ATTLIST Audio codec (amrnb|amrwb|aac) #REQUIRED>
     38   <!ATTLIST Audio bitRate CDATA #REQUIRED>
     39   <!ATTLIST Audio sampleRate CDATA #REQUIRED>
     40   <!ATTLIST Audio channels (1|2) #REQUIRED>
     41   <!ELEMENT ImageEncoding EMPTY>
     42   <!ATTLIST ImageEncoding quality (90|80|70|60|50|40) #REQUIRED>
     43   <!ELEMENT ImageDecoding EMPTY>
     44   <!ATTLIST ImageDecoding memCap CDATA #REQUIRED>
     45   <!ELEMENT Camera EMPTY>
     46   <!ATTLIST Camera previewFrameRate CDATA #REQUIRED>
     47   <!ELEMENT EncoderOutputFileFormat EMPTY>
     48   <!ATTLIST EncoderOutputFileFormat name (mp4|3gp) #REQUIRED>
     49   <!ELEMENT VideoEncoderCap EMPTY>
     50   <!ATTLIST VideoEncoderCap name (h264|h263|m4v|wmv) #REQUIRED>
     51   <!ATTLIST VideoEncoderCap enabled (true|false) #REQUIRED>
     52   <!ATTLIST VideoEncoderCap minBitRate CDATA #REQUIRED>
     53   <!ATTLIST VideoEncoderCap maxBitRate CDATA #REQUIRED>
     54   <!ATTLIST VideoEncoderCap minFrameWidth CDATA #REQUIRED>
     55   <!ATTLIST VideoEncoderCap maxFrameWidth CDATA #REQUIRED>
     56   <!ATTLIST VideoEncoderCap minFrameHeight CDATA #REQUIRED>
     57   <!ATTLIST VideoEncoderCap maxFrameHeight CDATA #REQUIRED>
     58   <!ATTLIST VideoEncoderCap minFrameRate CDATA #REQUIRED>
     59   <!ATTLIST VideoEncoderCap maxFrameRate CDATA #REQUIRED>
     60   <!ELEMENT AudioEncoderCap EMPTY>
     61   <!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac|wma) #REQUIRED>
     62   <!ATTLIST AudioEncoderCap enabled (true|false) #REQUIRED>
     63   <!ATTLIST AudioEncoderCap minBitRate CDATA #REQUIRED>
     64   <!ATTLIST AudioEncoderCap maxBitRate CDATA #REQUIRED>
     65   <!ATTLIST AudioEncoderCap minSampleRate CDATA #REQUIRED>
     66   <!ATTLIST AudioEncoderCap maxSampleRate CDATA #REQUIRED>
     67   <!ATTLIST AudioEncoderCap minChannels (1|2) #REQUIRED>
     68   <!ATTLIST AudioEncoderCap maxChannels (1|2) #REQUIRED>
     69   <!ELEMENT VideoDecoderCap EMPTY>
     70   <!ATTLIST VideoDecoderCap name (wmv) #REQUIRED>
     71   <!ATTLIST VideoDecoderCap enabled (true|false) #REQUIRED>
     72   <!ELEMENT AudioDecoderCap EMPTY>
     73   <!ATTLIST AudioDecoderCap name (wma) #REQUIRED>
     74   <!ATTLIST AudioDecoderCap enabled (true|false) #REQUIRED>
     75   <!ATTLIST VideoEditorCap maxInputFrameWidth CDATA #REQUIRED>
     76   <!ATTLIST VideoEditorCap maxInputFrameHeight CDATA #REQUIRED>
     77   <!ATTLIST VideoEditorCap maxOutputFrameWidth CDATA #REQUIRED>
     78   <!ATTLIST VideoEditorCap maxOutputFrameHeight CDATA #REQUIRED>
     79   <!ATTLIST VideoEditorCap maxPrefetchYUVFrames CDATA #REQUIRED>
     80   <!ELEMENT ExportVideoProfile EMPTY>
     81   <!ATTLIST ExportVideoProfile name (h264|h263|m4v) #REQUIRED>
     82   <!ATTLIST ExportVideoProfile profile CDATA #REQUIRED>
     83   <!ATTLIST ExportVideoProfile level CDATA #REQUIRED>
     84 ]>
     85 <!--
     86      This file is used to declare the multimedia profiles and capabilities
     87      on an android-powered device.
     88 -->
     89 <MediaSettings>
     90   <!-- Each camcorder profile defines a set of predefined configuration parameters -->
     91   <!-- Back Camera -->
     92   <CamcorderProfiles cameraId="0">
     93 
     94     <EncoderProfile quality="low" fileFormat="3gp" duration="30">
     95       <Video codec="h264"
     96              bitRate="384000"
     97              width="176"
     98              height="144"
     99              frameRate="30" />
    100 
    101       <Audio codec="amrnb"
    102              bitRate="12200"
    103              sampleRate="8000"
    104              channels="1" />
    105     </EncoderProfile>
    106 
    107     <EncoderProfile quality="high" fileFormat="3gp" duration="30">
    108       <Video codec="h264"
    109              bitRate="14000000"
    110              width="1920"
    111              height="1080"
    112              frameRate="30" />
    113 
    114       <Audio codec="aac"
    115              bitRate="96000"
    116              sampleRate="48000"
    117              channels="2" />
    118     </EncoderProfile>
    119 
    120     <EncoderProfile quality="qcif" fileFormat="3gp" duration="30">
    121       <Video codec="h264"
    122              bitRate="384000"
    123              width="176"
    124              height="144"
    125              frameRate="30" />
    126 
    127       <Audio codec="amrnb"
    128              bitRate="12200"
    129              sampleRate="8000"
    130              channels="1" />
    131     </EncoderProfile>
    132 
    133     <EncoderProfile quality="cif" fileFormat="3gp" duration="30">
    134       <Video codec="h264"
    135              bitRate="1536000"
    136              width="352"
    137              height="288"
    138              frameRate="30" />
    139 
    140       <Audio codec="amrnb"
    141              bitRate="12200"
    142              sampleRate="8000"
    143              channels="1" />
    144     </EncoderProfile>
    145 
    146     <EncoderProfile quality="480p" fileFormat="3gp" duration="30">
    147       <Video codec="h264"
    148              bitRate="4000000"
    149              width="640"
    150              height="480"
    151              frameRate="30" />
    152 
    153       <Audio codec="aac"
    154              bitRate="96000"
    155              sampleRate="48000"
    156              channels="2" />
    157     </EncoderProfile>
    158 
    159     <EncoderProfile quality="720p" fileFormat="3gp" duration="30">
    160       <Video codec="h264"
    161              bitRate="8000000"
    162              width="1280"
    163              height="720"
    164              frameRate="30" />
    165 
    166       <Audio codec="aac"
    167              bitRate="96000"
    168              sampleRate="48000"
    169              channels="2" />
    170     </EncoderProfile>
    171 
    172     <EncoderProfile quality="1080p" fileFormat="3gp" duration="30">
    173       <Video codec="h264"
    174              bitRate="14000000"
    175              width="1920"
    176              height="1080"
    177              frameRate="30" />
    178 
    179       <Audio codec="aac"
    180              bitRate="96000"
    181              sampleRate="48000"
    182              channels="2" />
    183     </EncoderProfile>
    184 
    185     <EncoderProfile quality="timelapselow" fileFormat="3gp" duration="30">
    186       <Video codec="h264"
    187              bitRate="384000"
    188              width="176"
    189              height="144"
    190              frameRate="30" />
    191 
    192       <!--
    193             The Audio part of the profile will not be used since time lapse mode
    194             does not capture audio
    195       -->
    196       <Audio codec="amrnb"
    197              bitRate="12200"
    198              sampleRate="8000"
    199              channels="1" />
    200     </EncoderProfile>
    201 
    202     <EncoderProfile quality="timelapsehigh" fileFormat="3gp" duration="30">
    203       <Video codec="h264"
    204              bitRate="14000000"
    205              width="1920"
    206              height="1080"
    207              frameRate="30" />
    208 
    209       <!--
    210             The Audio part of the profile will not be used since time lapse mode
    211             does not capture audio
    212       -->
    213       <Audio codec="aac"
    214              bitRate="96000"
    215              sampleRate="48000"
    216              channels="2" />
    217     </EncoderProfile>
    218 
    219     <EncoderProfile quality="timelapseqcif" fileFormat="3gp" duration="30">
    220       <Video codec="h264"
    221              bitRate="384000"
    222              width="176"
    223              height="144"
    224              frameRate="30" />
    225 
    226       <!--
    227             The Audio part of the profile will not be used since time lapse mode
    228             does not capture audio
    229       -->
    230       <Audio codec="amrnb"
    231              bitRate="12200"
    232              sampleRate="8000"
    233              channels="1" />
    234     </EncoderProfile>
    235 
    236     <EncoderProfile quality="timelapsecif" fileFormat="3gp" duration="30">
    237       <Video codec="h264"
    238              bitRate="1536000"
    239              width="352"
    240              height="288"
    241              frameRate="30" />
    242 
    243       <!--
    244             The Audio part of the profile will not be used since time lapse mode
    245             does not capture audio
    246       -->
    247       <Audio codec="amrnb"
    248              bitRate="12200"
    249              sampleRate="8000"
    250              channels="1" />
    251     </EncoderProfile>
    252 
    253     <EncoderProfile quality="timelapse480p" fileFormat="3gp" duration="30">
    254       <Video codec="h264"
    255              bitRate="4000000"
    256              width="640"
    257              height="480"
    258              frameRate="30" />
    259 
    260       <!--
    261             The Audio part of the profile will not be used since time lapse mode
    262             does not capture audio
    263       -->
    264       <Audio codec="aac"
    265              bitRate="96000"
    266              sampleRate="48000"
    267              channels="2" />
    268     </EncoderProfile>
    269 
    270     <EncoderProfile quality="timelapse720p" fileFormat="3gp" duration="30">
    271       <Video codec="h264"
    272              bitRate="8000000"
    273              width="1280"
    274              height="720"
    275              frameRate="30" />
    276 
    277       <!--
    278             The Audio part of the profile will not be used since time lapse mode
    279             does not capture audio
    280       -->
    281       <Audio codec="aac"
    282              bitRate="96000"
    283              sampleRate="48000"
    284              channels="2" />
    285     </EncoderProfile>
    286 
    287     <EncoderProfile quality="timelapse1080p" fileFormat="3gp" duration="30">
    288       <Video codec="h264"
    289              bitRate="14000000"
    290              width="1920"
    291              height="1080"
    292              frameRate="30" />
    293 
    294       <!--
    295             The Audio part of the profile will not be used since time lapse mode
    296             does not capture audio
    297       -->
    298       <Audio codec="aac"
    299              bitRate="96000"
    300              sampleRate="48000"
    301              channels="2" />
    302     </EncoderProfile>
    303 
    304     <ImageEncoding quality="90" />
    305     <ImageEncoding quality="80" />
    306     <ImageEncoding quality="70" />
    307     <ImageDecoding memCap="20000000" />
    308 
    309   </CamcorderProfiles>
    310 
    311   <!-- Front Camera -->
    312   <CamcorderProfiles cameraId="1">
    313 
    314     <EncoderProfile quality="low" fileFormat="3gp" duration="30">
    315       <Video codec="h264"
    316              bitRate="384000"
    317              width="176"
    318              height="144"
    319              frameRate="30" />
    320 
    321       <Audio codec="amrnb"
    322              bitRate="12200"
    323              sampleRate="8000"
    324              channels="1" />
    325     </EncoderProfile>
    326 
    327     <EncoderProfile quality="high" fileFormat="3gp" duration="30">
    328       <Video codec="h264"
    329              bitRate="8000000"
    330              width="1280"
    331              height="720"
    332              frameRate="30" />
    333 
    334       <Audio codec="aac"
    335              bitRate="96000"
    336              sampleRate="48000"
    337              channels="2" />
    338     </EncoderProfile>
    339 
    340     <EncoderProfile quality="720p" fileFormat="3gp" duration="30">
    341       <Video codec="h264"
    342              bitRate="8000000"
    343              width="1280"
    344              height="720"
    345              frameRate="30" />
    346 
    347       <Audio codec="aac"
    348              bitRate="96000"
    349              sampleRate="48000"
    350              channels="2" />
    351     </EncoderProfile>
    352 
    353     <EncoderProfile quality="qcif" fileFormat="3gp" duration="30">
    354       <Video codec="h264"
    355              bitRate="384000"
    356              width="176"
    357              height="144"
    358              frameRate="30" />
    359 
    360       <Audio codec="amrnb"
    361              bitRate="12200"
    362              sampleRate="8000"
    363              channels="1" />
    364     </EncoderProfile>
    365 
    366     <EncoderProfile quality="cif" fileFormat="3gp" duration="30">
    367       <Video codec="h264"
    368              bitRate="1536000"
    369              width="352"
    370              height="288"
    371              frameRate="30" />
    372 
    373       <Audio codec="amrnb"
    374              bitRate="12200"
    375              sampleRate="8000"
    376              channels="1" />
    377     </EncoderProfile>
    378 
    379     <EncoderProfile quality="480p" fileFormat="3gp" duration="30">
    380       <Video codec="h264"
    381              bitRate="4000000"
    382              width="640"
    383              height="480"
    384              frameRate="30" />
    385 
    386       <Audio codec="aac"
    387              bitRate="96000"
    388              sampleRate="48000"
    389              channels="2" />
    390     </EncoderProfile>
    391 
    392     <EncoderProfile quality="timelapselow" fileFormat="3gp" duration="30">
    393       <Video codec="h264"
    394              bitRate="384000"
    395              width="176"
    396              height="144"
    397              frameRate="30" />
    398 
    399       <!--
    400             The Audio part of the profile will not be used since time lapse mode
    401             does not capture audio
    402       -->
    403       <Audio codec="amrnb"
    404              bitRate="12200"
    405              sampleRate="8000"
    406              channels="1" />
    407     </EncoderProfile>
    408 
    409     <EncoderProfile quality="timelapsehigh" fileFormat="3gp" duration="30">
    410       <Video codec="h264"
    411              bitRate="4000000"
    412              width="640"
    413              height="480"
    414              frameRate="30" />
    415 
    416       <!--
    417             The Audio part of the profile will not be used since time lapse mode
    418             does not capture audio
    419       -->
    420       <Audio codec="aac"
    421              bitRate="96000"
    422              sampleRate="48000"
    423              channels="2" />
    424     </EncoderProfile>
    425 
    426     <EncoderProfile quality="timelapseqcif" fileFormat="3gp" duration="30">
    427       <Video codec="h264"
    428              bitRate="384000"
    429              width="176"
    430              height="144"
    431              frameRate="30" />
    432 
    433       <!--
    434             The Audio part of the profile will not be used since time lapse mode
    435             does not capture audio
    436       -->
    437       <Audio codec="amrnb"
    438              bitRate="12200"
    439              sampleRate="8000"
    440              channels="1" />
    441     </EncoderProfile>
    442 
    443     <EncoderProfile quality="timelapsecif" fileFormat="3gp" duration="30">
    444       <Video codec="h264"
    445              bitRate="1536000"
    446              width="352"
    447              height="288"
    448              frameRate="30" />
    449 
    450       <!--
    451             The Audio part of the profile will not be used since time lapse mode
    452             does not capture audio
    453       -->
    454       <Audio codec="amrnb"
    455              bitRate="12200"
    456              sampleRate="8000"
    457              channels="1" />
    458     </EncoderProfile>
    459 
    460     <EncoderProfile quality="timelapse480p" fileFormat="3gp" duration="30">
    461       <Video codec="h264"
    462              bitRate="4000000"
    463              width="640"
    464              height="480"
    465              frameRate="30" />
    466 
    467       <!--
    468             The Audio part of the profile will not be used since time lapse mode
    469             does not capture audio
    470       -->
    471       <Audio codec="aac"
    472              bitRate="96000"
    473              sampleRate="48000"
    474              channels="2" />
    475     </EncoderProfile>
    476 
    477     <ImageEncoding quality="90" />
    478     <ImageEncoding quality="80" />
    479     <ImageEncoding quality="70" />
    480     <ImageDecoding memCap="20000000" />
    481 
    482   </CamcorderProfiles>
    483 
    484   <EncoderOutputFileFormat name="3gp" />
    485 
    486   <!--
    487          If a codec is not enabled, it is invisible to the applications
    488          In other words, the applications won't be able to use the codec
    489          or query the capabilities of the codec at all if it is disabled
    490     -->
    491   <VideoEncoderCap name="h264" enabled="true"
    492       minBitRate="64000" maxBitRate="20000000"
    493       minFrameWidth="176" maxFrameWidth="1920"
    494       minFrameHeight="144" maxFrameHeight="1080"
    495       minFrameRate="1" maxFrameRate="30" />
    496 
    497   <VideoEncoderCap name="h263" enabled="true"
    498       minBitRate="64000" maxBitRate="8000000"
    499       minFrameWidth="176" maxFrameWidth="704"
    500       minFrameHeight="144" maxFrameHeight="576"
    501       minFrameRate="1" maxFrameRate="30" />
    502 
    503   <VideoEncoderCap name="m4v" enabled="true"
    504       minBitRate="64000" maxBitRate="10000000"
    505       minFrameWidth="176" maxFrameWidth="1280"
    506       minFrameHeight="144" maxFrameHeight="720"
    507       minFrameRate="1" maxFrameRate="30" />
    508 
    509   <AudioEncoderCap name="aac" enabled="true"
    510       minBitRate="8000" maxBitRate="320000"
    511       minSampleRate="8000" maxSampleRate="48000"
    512       minChannels="1" maxChannels="2" />
    513 
    514   <AudioEncoderCap name="amrwb" enabled="true"
    515         minBitRate="6600" maxBitRate="23050"
    516         minSampleRate="16000" maxSampleRate="16000"
    517         minChannels="1" maxChannels="1" />
    518 
    519   <AudioEncoderCap name="amrnb" enabled="true"
    520       minBitRate="4750" maxBitRate="12200"
    521       minSampleRate="8000" maxSampleRate="8000"
    522       minChannels="1" maxChannels="1" />
    523 
    524   <VideoDecoderCap name="wmv" enabled="true"/>
    525   <AudioDecoderCap name="wma" enabled="true"/>
    526   <VideoEditorCap maxInputFrameWidth="1920"
    527     maxInputFrameHeight="1080"
    528     maxOutputFrameWidth="1920"
    529     maxOutputFrameHeight="1080"
    530     maxPrefetchYUVFrames="10" />
    531   <!--
    532       The VideoEditor Export codec profile and level values
    533       correspond to the values in OMX_Video.h.
    534       E.g. for h264, profile value 1 means OMX_VIDEO_AVCProfileBaseline
    535       and  level 512 means OMX_VIDEO_AVCLevel31.
    536       Please note that the values are in decimal.
    537       These values are for video encoder.
    538   -->
    539   <!--
    540       Codec = h.263, Baseline profile, level 1
    541   -->
    542   <ExportVideoProfile name="h263" profile="1"
    543    level="1" />
    544   <!--
    545       Codec = h.264, Baseline profile, level 4
    546   -->
    547   <ExportVideoProfile name="h264" profile="1"
    548    level="2048" />
    549   <!--
    550       Codec = mpeg4, Simple profile, level 5
    551   -->
    552   <ExportVideoProfile name="m4v" profile="1"
    553    level="128" />
    554 </MediaSettings>
    555