blob: 38b075824a21d2e4e4ec37fdbe8aa3e60bf16bca [file] [log] [blame]
Yogesh Agrawal9240c1a2013-10-16 15:13:32 +05301<?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="16000"
117 channels="1" />
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="16000"
156 channels="1" />
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="16000"
169 channels="1" />
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="16000"
182 channels="1" />
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="16000"
216 channels="1" />
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="16000"
267 channels="1" />
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="16000"
284 channels="1" />
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="16000"
301 channels="1" />
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="4000000"
330 width="640"
331 height="480"
332 frameRate="30" />
333
334 <Audio codec="aac"
335 bitRate="96000"
336 sampleRate="16000"
337 channels="1" />
338 </EncoderProfile>
339
340 <EncoderProfile quality="qcif" fileFormat="3gp" duration="30">
341 <Video codec="h264"
342 bitRate="384000"
343 width="176"
344 height="144"
345 frameRate="30" />
346
347 <Audio codec="amrnb"
348 bitRate="12200"
349 sampleRate="8000"
350 channels="1" />
351 </EncoderProfile>
352
353 <EncoderProfile quality="cif" fileFormat="3gp" duration="30">
354 <Video codec="h264"
355 bitRate="1536000"
356 width="352"
357 height="288"
358 frameRate="30" />
359
360 <Audio codec="amrnb"
361 bitRate="12200"
362 sampleRate="8000"
363 channels="1" />
364 </EncoderProfile>
365
366 <EncoderProfile quality="480p" fileFormat="3gp" duration="30">
367 <Video codec="h264"
368 bitRate="4000000"
369 width="640"
370 height="480"
371 frameRate="30" />
372
373 <Audio codec="aac"
374 bitRate="96000"
375 sampleRate="16000"
376 channels="1" />
377 </EncoderProfile>
378
379 <EncoderProfile quality="timelapselow" fileFormat="3gp" duration="30">
380 <Video codec="h264"
381 bitRate="384000"
382 width="176"
383 height="144"
384 frameRate="30" />
385
386 <!--
387 The Audio part of the profile will not be used since time lapse mode
388 does not capture audio
389 -->
390 <Audio codec="amrnb"
391 bitRate="12200"
392 sampleRate="8000"
393 channels="1" />
394 </EncoderProfile>
395
396 <EncoderProfile quality="timelapsehigh" fileFormat="3gp" duration="30">
397 <Video codec="h264"
398 bitRate="4000000"
399 width="640"
400 height="480"
401 frameRate="30" />
402
403 <!--
404 The Audio part of the profile will not be used since time lapse mode
405 does not capture audio
406 -->
407 <Audio codec="aac"
408 bitRate="96000"
409 sampleRate="16000"
410 channels="1" />
411 </EncoderProfile>
412
413 <EncoderProfile quality="timelapseqcif" fileFormat="3gp" duration="30">
414 <Video codec="h264"
415 bitRate="384000"
416 width="176"
417 height="144"
418 frameRate="30" />
419
420 <!--
421 The Audio part of the profile will not be used since time lapse mode
422 does not capture audio
423 -->
424 <Audio codec="amrnb"
425 bitRate="12200"
426 sampleRate="8000"
427 channels="1" />
428 </EncoderProfile>
429
430 <EncoderProfile quality="timelapsecif" fileFormat="3gp" duration="30">
431 <Video codec="h264"
432 bitRate="1536000"
433 width="352"
434 height="288"
435 frameRate="30" />
436
437 <!--
438 The Audio part of the profile will not be used since time lapse mode
439 does not capture audio
440 -->
441 <Audio codec="amrnb"
442 bitRate="12200"
443 sampleRate="8000"
444 channels="1" />
445 </EncoderProfile>
446
447 <EncoderProfile quality="timelapse480p" fileFormat="3gp" duration="30">
448 <Video codec="h264"
449 bitRate="4000000"
450 width="640"
451 height="480"
452 frameRate="30" />
453
454 <!--
455 The Audio part of the profile will not be used since time lapse mode
456 does not capture audio
457 -->
458 <Audio codec="aac"
459 bitRate="96000"
460 sampleRate="16000"
461 channels="1" />
462 </EncoderProfile>
463
464 <ImageEncoding quality="90" />
465 <ImageEncoding quality="80" />
466 <ImageEncoding quality="70" />
467 <ImageDecoding memCap="20000000" />
468
469 </CamcorderProfiles>
470
471 <EncoderOutputFileFormat name="3gp" />
472
473 <!--
474 If a codec is not enabled, it is invisible to the applications
475 In other words, the applications won't be able to use the codec
476 or query the capabilities of the codec at all if it is disabled
477 -->
478 <VideoEncoderCap name="h264" enabled="true"
479 minBitRate="64000" maxBitRate="20000000"
480 minFrameWidth="176" maxFrameWidth="1920"
481 minFrameHeight="144" maxFrameHeight="1080"
482 minFrameRate="1" maxFrameRate="30" />
483
484 <VideoEncoderCap name="h263" enabled="true"
485 minBitRate="64000" maxBitRate="8000000"
486 minFrameWidth="176" maxFrameWidth="704"
487 minFrameHeight="144" maxFrameHeight="576"
488 minFrameRate="1" maxFrameRate="30" />
489
490 <VideoEncoderCap name="m4v" enabled="true"
491 minBitRate="64000" maxBitRate="10000000"
492 minFrameWidth="176" maxFrameWidth="1280"
493 minFrameHeight="144" maxFrameHeight="720"
494 minFrameRate="1" maxFrameRate="30" />
495
496 <AudioEncoderCap name="aac" enabled="true"
497 minBitRate="8000" maxBitRate="320000"
498 minSampleRate="8000" maxSampleRate="48000"
499 minChannels="1" maxChannels="1" />
500
501 <AudioEncoderCap name="amrwb" enabled="true"
502 minBitRate="6600" maxBitRate="23050"
503 minSampleRate="16000" maxSampleRate="16000"
504 minChannels="1" maxChannels="1" />
505
506 <AudioEncoderCap name="amrnb" enabled="true"
507 minBitRate="4750" maxBitRate="12200"
508 minSampleRate="8000" maxSampleRate="8000"
509 minChannels="1" maxChannels="1" />
510
511 <VideoDecoderCap name="wmv" enabled="true"/>
512 <AudioDecoderCap name="wma" enabled="true"/>
513 <VideoEditorCap maxInputFrameWidth="1920"
514 maxInputFrameHeight="1080"
515 maxOutputFrameWidth="1920"
516 maxOutputFrameHeight="1080"
517 maxPrefetchYUVFrames="10" />
518 <!--
519 The VideoEditor Export codec profile and level values
520 correspond to the values in OMX_Video.h.
521 E.g. for h264, profile value 1 means OMX_VIDEO_AVCProfileBaseline
522 and level 512 means OMX_VIDEO_AVCLevel31.
523 Please note that the values are in decimal.
524 These values are for video encoder.
525 -->
526 <!--
527 Codec = h.263, Baseline profile, level 1
528 -->
529 <ExportVideoProfile name="h263" profile="1"
530 level="1" />
531 <!--
532 Codec = h.264, Baseline profile, level 4
533 -->
534 <ExportVideoProfile name="h264" profile="1"
535 level="2048" />
536 <!--
537 Codec = mpeg4, Simple profile, level 5
538 -->
539 <ExportVideoProfile name="m4v" profile="1"
540 level="128" />
541</MediaSettings>