• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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<!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<!ELEMENT VideoEditorCap EMPTY>
74<!ATTLIST VideoEditorCap maxInputFrameWidth CDATA #REQUIRED>
75<!ATTLIST VideoEditorCap maxInputFrameHeight CDATA #REQUIRED>
76<!ATTLIST VideoEditorCap maxOutputFrameWidth CDATA #REQUIRED>
77<!ATTLIST VideoEditorCap maxOutputFrameHeight CDATA #REQUIRED>
78<!ELEMENT ExportVideoProfile EMPTY>
79<!ATTLIST ExportVideoProfile name (h264|h263|m4v) #REQUIRED>
80<!ATTLIST ExportVideoProfile profile CDATA #REQUIRED>
81<!ATTLIST ExportVideoProfile level CDATA #REQUIRED>
82]>
83<!--
84     This file is used to declare the multimedia profiles and capabilities
85     on an android-powered device.
86-->
87<MediaSettings>
88    <!-- Each camcorder profile defines a set of predefined configuration parameters -->
89    <CamcorderProfiles cameraId="0">
90
91        <EncoderProfile quality="qvga" fileFormat="mp4" duration="60">
92            <Video codec="m4v"
93                   bitRate="128000"
94                   width="320"
95                   height="240"
96                   frameRate="15" />
97            <Audio codec="amrnb"
98                   bitRate="12200"
99                   sampleRate="8000"
100                   channels="1" />
101        </EncoderProfile>
102
103        <EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
104            <Video codec="h264"
105                   bitRate="192000"
106                   width="176"
107                   height="144"
108                   frameRate="30" />
109            <!-- audio setting is ignored -->
110            <Audio codec="amrnb"
111                   bitRate="12200"
112                   sampleRate="8000"
113                   channels="1" />
114        </EncoderProfile>
115
116        <ImageEncoding quality="95" />
117        <ImageEncoding quality="80" />
118        <ImageEncoding quality="70" />
119        <ImageDecoding memCap="20000000" />
120
121    </CamcorderProfiles>
122
123    <CamcorderProfiles cameraId="1">
124
125        <EncoderProfile quality="qvga" fileFormat="mp4" duration="60">
126            <Video codec="m4v"
127                   bitRate="128000"
128                   width="320"
129                   height="240"
130                   frameRate="15" />
131            <Audio codec="amrnb"
132                   bitRate="12200"
133                   sampleRate="8000"
134                   channels="1" />
135        </EncoderProfile>
136
137        <EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
138            <Video codec="h264"
139                   bitRate="192000"
140                   width="176"
141                   height="144"
142                   frameRate="30" />
143            <!-- audio setting is ignored -->
144            <Audio codec="amrnb"
145                   bitRate="12200"
146                   sampleRate="8000"
147                   channels="1" />
148        </EncoderProfile>
149
150        <ImageEncoding quality="95" />
151        <ImageEncoding quality="80" />
152        <ImageEncoding quality="70" />
153        <ImageDecoding memCap="20000000" />
154
155    </CamcorderProfiles>
156
157    <CamcorderProfiles cameraId="2">
158
159        <EncoderProfile quality="qvga" fileFormat="mp4" duration="60">
160            <Video codec="m4v"
161                   bitRate="128000"
162                   width="320"
163                   height="240"
164                   frameRate="15" />
165            <Audio codec="amrnb"
166                   bitRate="12200"
167                   sampleRate="8000"
168                   channels="1" />
169        </EncoderProfile>
170
171        <EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
172            <Video codec="h264"
173                   bitRate="192000"
174                   width="176"
175                   height="144"
176                   frameRate="30" />
177            <!-- audio setting is ignored -->
178            <Audio codec="amrnb"
179                   bitRate="12200"
180                   sampleRate="8000"
181                   channels="1" />
182        </EncoderProfile>
183
184        <ImageEncoding quality="95" />
185        <ImageEncoding quality="80" />
186        <ImageEncoding quality="70" />
187        <ImageDecoding memCap="20000000" />
188
189    </CamcorderProfiles>
190
191    <CamcorderProfiles cameraId="3">
192
193        <EncoderProfile quality="qvga" fileFormat="mp4" duration="60">
194            <Video codec="m4v"
195                   bitRate="128000"
196                   width="320"
197                   height="240"
198                   frameRate="15" />
199            <Audio codec="amrnb"
200                   bitRate="12200"
201                   sampleRate="8000"
202                   channels="1" />
203        </EncoderProfile>
204
205        <EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
206            <Video codec="h264"
207                   bitRate="192000"
208                   width="176"
209                   height="144"
210                   frameRate="30" />
211            <!-- audio setting is ignored -->
212            <Audio codec="amrnb"
213                   bitRate="12200"
214                   sampleRate="8000"
215                   channels="1" />
216        </EncoderProfile>
217
218        <ImageEncoding quality="95" />
219        <ImageEncoding quality="80" />
220        <ImageEncoding quality="70" />
221        <ImageDecoding memCap="20000000" />
222
223    </CamcorderProfiles>
224
225    <CamcorderProfiles cameraId="4">
226
227        <EncoderProfile quality="qvga" fileFormat="mp4" duration="60">
228            <Video codec="m4v"
229                   bitRate="128000"
230                   width="320"
231                   height="240"
232                   frameRate="15" />
233            <Audio codec="amrnb"
234                   bitRate="12200"
235                   sampleRate="8000"
236                   channels="1" />
237        </EncoderProfile>
238
239        <EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
240            <Video codec="h264"
241                   bitRate="192000"
242                   width="176"
243                   height="144"
244                   frameRate="30" />
245            <!-- audio setting is ignored -->
246            <Audio codec="amrnb"
247                   bitRate="12200"
248                   sampleRate="8000"
249                   channels="1" />
250        </EncoderProfile>
251
252        <ImageEncoding quality="95" />
253        <ImageEncoding quality="80" />
254        <ImageEncoding quality="70" />
255        <ImageDecoding memCap="20000000" />
256
257    </CamcorderProfiles>
258
259    <CamcorderProfiles cameraId="5">
260
261        <EncoderProfile quality="qvga" fileFormat="mp4" duration="60">
262            <Video codec="m4v"
263                   bitRate="128000"
264                   width="320"
265                   height="240"
266                   frameRate="15" />
267            <Audio codec="amrnb"
268                   bitRate="12200"
269                   sampleRate="8000"
270                   channels="1" />
271        </EncoderProfile>
272
273        <EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
274            <Video codec="h264"
275                   bitRate="192000"
276                   width="176"
277                   height="144"
278                   frameRate="30" />
279            <!-- audio setting is ignored -->
280            <Audio codec="amrnb"
281                   bitRate="12200"
282                   sampleRate="8000"
283                   channels="1" />
284        </EncoderProfile>
285
286        <ImageEncoding quality="95" />
287        <ImageEncoding quality="80" />
288        <ImageEncoding quality="70" />
289        <ImageDecoding memCap="20000000" />
290
291    </CamcorderProfiles>
292
293    <CamcorderProfiles cameraId="6">
294
295        <EncoderProfile quality="qvga" fileFormat="mp4" duration="60">
296            <Video codec="m4v"
297                   bitRate="128000"
298                   width="320"
299                   height="240"
300                   frameRate="15" />
301            <Audio codec="amrnb"
302                   bitRate="12200"
303                   sampleRate="8000"
304                   channels="1" />
305        </EncoderProfile>
306
307        <EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
308            <Video codec="h264"
309                   bitRate="192000"
310                   width="176"
311                   height="144"
312                   frameRate="30" />
313            <!-- audio setting is ignored -->
314            <Audio codec="amrnb"
315                   bitRate="12200"
316                   sampleRate="8000"
317                   channels="1" />
318        </EncoderProfile>
319
320        <ImageEncoding quality="95" />
321        <ImageEncoding quality="80" />
322        <ImageEncoding quality="70" />
323        <ImageDecoding memCap="20000000" />
324
325    </CamcorderProfiles>
326
327    <EncoderOutputFileFormat name="3gp" />
328    <EncoderOutputFileFormat name="mp4" />
329
330    <!--
331         If a codec is not enabled, it is invisible to the applications
332         In other words, the applications won't be able to use the codec
333         or query the capabilities of the codec at all if it is disabled
334    -->
335    <VideoEncoderCap name="h264" enabled="true"
336        minBitRate="64000" maxBitRate="192000"
337        minFrameWidth="176" maxFrameWidth="320"
338        minFrameHeight="144" maxFrameHeight="240"
339        minFrameRate="15" maxFrameRate="30" />
340
341    <VideoEncoderCap name="h263" enabled="true"
342        minBitRate="64000" maxBitRate="192000"
343        minFrameWidth="176" maxFrameWidth="320"
344        minFrameHeight="144" maxFrameHeight="240"
345        minFrameRate="15" maxFrameRate="30" />
346
347    <VideoEncoderCap name="m4v" enabled="true"
348        minBitRate="64000" maxBitRate="192000"
349        minFrameWidth="176" maxFrameWidth="320"
350        minFrameHeight="144" maxFrameHeight="240"
351        minFrameRate="15" maxFrameRate="30" />
352
353    <AudioEncoderCap name="aac" enabled="true"
354        minBitRate="8000" maxBitRate="96000"
355        minSampleRate="8000" maxSampleRate="48000"
356        minChannels="1" maxChannels="1" />
357
358    <AudioEncoderCap name="amrwb" enabled="true"
359        minBitRate="6600" maxBitRate="23050"
360        minSampleRate="16000" maxSampleRate="16000"
361        minChannels="1" maxChannels="1" />
362
363    <AudioEncoderCap name="amrnb" enabled="true"
364        minBitRate="5525" maxBitRate="12200"
365        minSampleRate="8000" maxSampleRate="8000"
366        minChannels="1" maxChannels="1" />
367
368    <!--
369        FIXME:
370        We do not check decoder capabilities at present
371        At present, we only check whether windows media is visible
372        for TEST applications. For other applications, we do
373        not perform any checks at all.
374    -->
375    <VideoDecoderCap name="wmv" enabled="false"/>
376    <AudioDecoderCap name="wma" enabled="false"/>
377    <VideoEditorCap  maxInputFrameWidth="320"
378        maxInputFrameHeight="240" maxOutputFrameWidth="320"
379        maxOutputFrameHeight="240"/>
380    <!--
381        The VideoEditor Export codec profile and level values
382        correspond to the values in OMX_Video.h.
383        E.g. for h264, profile value 1 means OMX_VIDEO_AVCProfileBaseline
384        and  level 4096 means OMX_VIDEO_AVCLevel41.
385        Please note that the values are in decimal.
386        These values are for video encoder.
387    -->
388    <!--
389      Codec = h.264, Baseline profile, level 4.1
390    -->
391    <ExportVideoProfile name="h264" profile= "1" level="512"/>
392    <!--
393      Codec = h.263, Baseline profile, level 0
394    -->
395    <ExportVideoProfile name="h263" profile= "1" level="1"/>
396    <!--
397      Codec = mpeg4, Simple profile, level 3
398    -->
399    <ExportVideoProfile name="m4v" profile= "1" level="16"/>
400</MediaSettings>
401