Source
1
+
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
+
17
+
18
+
19
+
20
+
21
+
22
+
23
+
24
+
25
+
26
+
27
+
28
+
29
+
30
+
31
+
32
+
33
+
34
+
35
+
36
+
37
+
38
+
39
+
40
+
41
+
42
+
43
+
44
+
45
+
46
+
47
+
48
+
49
+
50
+
51
+
52
+
53
+
54
+
55
+
56
+
57
+
58
+
59
+
60
+
61
+
62
+
63
+
64
+
65
+
66
+
67
+
68
+
69
+
70
+
71
+
72
+
73
+
74
+
75
+
76
+
77
+
78
+
79
+
80
+
81
+
82
+
83
+
84
+
<!--
85
+
This file is used to declare the multimedia profiles and capabilities
86
+
on an android-powered device.
87
+
-->
88
+
<MediaSettings>
89
+
<!-- Each camcorder profile defines a set of predefined configuration parameters -->
90
+
<CamcorderProfiles cameraId="0">
91
+
92
+
<EncoderProfile quality="qcif" fileFormat="mp4" duration="30">
93
+
<Video codec="h264"
94
+
bitRate="384000"
95
+
width="176"
96
+
height="144"
97
+
frameRate="30" />
98
+
<Audio codec="aac"
99
+
bitRate="12200"
100
+
sampleRate="8000"
101
+
channels="1" />
102
+
</EncoderProfile>
103
+
104
+
<EncoderProfile quality="cif" fileFormat="mp4" duration="30">
105
+
<Video codec="h264"
106
+
bitRate="2000000"
107
+
width="352"
108
+
height="288"
109
+
frameRate="30" />
110
+
<Audio codec="aac"
111
+
bitRate="12200"
112
+
sampleRate="8000"
113
+
channels="1" />
114
+
</EncoderProfile>
115
+
116
+
<EncoderProfile quality="480p" fileFormat="mp4" duration="30">
117
+
<Video codec="h264"
118
+
bitRate="8000000"
119
+
width="720"
120
+
height="480"
121
+
frameRate="30" />
122
+
<Audio codec="aac"
123
+
bitRate="12200"
124
+
sampleRate="8000"
125
+
channels="1" />
126
+
</EncoderProfile>
127
+
128
+
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
129
+
<Video codec="h264"
130
+
bitRate="12000000"
131
+
width="1280"
132
+
height="720"
133
+
frameRate="30" />
134
+
<Audio codec="aac"
135
+
bitRate="96000"
136
+
sampleRate="48000"
137
+
channels="1" />
138
+
</EncoderProfile>
139
+
140
+
<EncoderProfile quality="1080p" fileFormat="mp4" duration="30">
141
+
<Video codec="h264"
142
+
bitRate="20000000"
143
+
width="1920"
144
+
height="1080"
145
+
frameRate="30" />
146
+
<Audio codec="aac"
147
+
bitRate="96000"
148
+
sampleRate="48000"
149
+
channels="1" />
150
+
</EncoderProfile>
151
+
152
+
<EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
153
+
<Video codec="h264"
154
+
bitRate="384000"
155
+
width="176"
156
+
height="144"
157
+
frameRate="30" />
158
+
<Audio codec="aac"
159
+
bitRate="12200"
160
+
sampleRate="8000"
161
+
channels="1" />
162
+
</EncoderProfile>
163
+
164
+
<EncoderProfile quality="timelapsecif" fileFormat="mp4" duration="30">
165
+
<Video codec="h264"
166
+
bitRate="2000000"
167
+
width="352"
168
+
height="288"
169
+
frameRate="30" />
170
+
<Audio codec="aac"
171
+
bitRate="12200"
172
+
sampleRate="8000"
173
+
channels="1" />
174
+
</EncoderProfile>
175
+
176
+
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
177
+
<Video codec="h264"
178
+
bitRate="8000000"
179
+
width="720"
180
+
height="480"
181
+
frameRate="30" />
182
+
<Audio codec="aac"
183
+
bitRate="12200"
184
+
sampleRate="8000"
185
+
channels="1" />
186
+
</EncoderProfile>
187
+
188
+
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
189
+
<Video codec="h264"
190
+
bitRate="12000000"
191
+
width="1280"
192
+
height="720"
193
+
frameRate="30" />
194
+
<!-- audio setting is ignored -->
195
+
<Audio codec="aac"
196
+
bitRate="96000"
197
+
sampleRate="48000"
198
+
channels="1" />
199
+
</EncoderProfile>
200
+
201
+
<EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30">
202
+
<Video codec="h264"
203
+
bitRate="20000000"
204
+
width="1920"
205
+
height="1080"
206
+
frameRate="30" />
207
+
<Audio codec="aac"
208
+
bitRate="96000"
209
+
sampleRate="48000"
210
+
channels="1" />
211
+
</EncoderProfile>
212
+
213
+
<ImageEncoding quality="95" />
214
+
<ImageEncoding quality="80" />
215
+
<ImageEncoding quality="70" />
216
+
<ImageDecoding memCap="20000000" />
217
+
218
+
</CamcorderProfiles>
219
+
220
+
<CamcorderProfiles cameraId="1">
221
+
222
+
<EncoderProfile quality="qcif" fileFormat="mp4" duration="30">
223
+
<Video codec="h264"
224
+
bitRate="384000"
225
+
width="176"
226
+
height="144"
227
+
frameRate="30" />
228
+
<Audio codec="aac"
229
+
bitRate="12200"
230
+
sampleRate="8000"
231
+
channels="1" />
232
+
</EncoderProfile>
233
+
234
+
<EncoderProfile quality="cif" fileFormat="mp4" duration="30">
235
+
<Video codec="h264"
236
+
bitRate="2000000"
237
+
width="352"
238
+
height="288"
239
+
frameRate="30" />
240
+
<Audio codec="aac"
241
+
bitRate="12200"
242
+
sampleRate="8000"
243
+
channels="1" />
244
+
</EncoderProfile>
245
+
246
+
<EncoderProfile quality="480p" fileFormat="mp4" duration="30">
247
+
<Video codec="h264"
248
+
bitRate="8000000"
249
+
width="720"
250
+
height="480"
251
+
frameRate="30" />
252
+
<Audio codec="aac"
253
+
bitRate="12200"
254
+
sampleRate="8000"
255
+
channels="1" />
256
+
</EncoderProfile>
257
+
258
+
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
259
+
<Video codec="h264"
260
+
bitRate="12000000"
261
+
width="1280"
262
+
height="720"
263
+
frameRate="30" />
264
+
<Audio codec="aac"
265
+
bitRate="96000"
266
+
sampleRate="48000"
267
+
channels="1" />
268
+
</EncoderProfile>
269
+
270
+
<EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
271
+
<Video codec="h264"
272
+
bitRate="384000"
273
+
width="176"
274
+
height="144"
275
+
frameRate="30" />
276
+
<Audio codec="aac"
277
+
bitRate="12200"
278
+
sampleRate="8000"
279
+
channels="1" />
280
+
</EncoderProfile>
281
+
282
+
<EncoderProfile quality="timelapsecif" fileFormat="mp4" duration="30">
283
+
<Video codec="h264"
284
+
bitRate="2000000"
285
+
width="352"
286
+
height="288"
287
+
frameRate="30" />
288
+
<Audio codec="aac"
289
+
bitRate="12200"
290
+
sampleRate="8000"
291
+
channels="1" />
292
+
</EncoderProfile>
293
+
294
+
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
295
+
<Video codec="h264"
296
+
bitRate="8000000"
297
+
width="720"
298
+
height="480"
299
+
frameRate="30" />
300
+
<Audio codec="aac"
301
+
bitRate="12200"
302
+
sampleRate="8000"
303
+
channels="1" />
304
+
</EncoderProfile>
305
+
306
+
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
307
+
<Video codec="h264"
308
+
bitRate="12000000"
309
+
width="1280"
310
+
height="720"
311
+
frameRate="30" />
312
+
<Audio codec="aac"
313
+
bitRate="96000"
314
+
sampleRate="48000"
315
+
channels="1" />
316
+
</EncoderProfile>
317
+
318
+
<ImageEncoding quality="95" />
319
+
<ImageEncoding quality="80" />
320
+
<ImageEncoding quality="70" />
321
+
<ImageDecoding memCap="20000000" />
322
+
323
+
</CamcorderProfiles>
324
+
325
+
<CamcorderProfiles cameraId="2">
326
+
327
+
<EncoderProfile quality="qcif" fileFormat="mp4" duration="30">
328
+
<Video codec="h264"
329
+
bitRate="384000"
330
+
width="176"
331
+
height="144"
332
+
frameRate="30" />
333
+
<Audio codec="aac"
334
+
bitRate="12200"
335
+
sampleRate="8000"
336
+
channels="1" />
337
+
</EncoderProfile>
338
+
339
+
<EncoderProfile quality="cif" fileFormat="mp4" duration="30">
340
+
<Video codec="h264"
341
+
bitRate="2000000"
342
+
width="352"
343
+
height="288"
344
+
frameRate="30" />
345
+
<Audio codec="aac"
346
+
bitRate="12200"
347
+
sampleRate="8000"
348
+
channels="1" />
349
+
</EncoderProfile>
350
+
351
+
<EncoderProfile quality="480p" fileFormat="mp4" duration="30">
352
+
<Video codec="h264"
353
+
bitRate="8000000"
354
+
width="720"
355
+
height="480"
356
+
frameRate="30" />
357
+
<Audio codec="aac"
358
+
bitRate="12200"
359
+
sampleRate="8000"
360
+
channels="1" />
361
+
</EncoderProfile>
362
+
363
+
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
364
+
<Video codec="h264"
365
+
bitRate="12000000"
366
+
width="1280"
367
+
height="720"
368
+
frameRate="30" />
369
+
<Audio codec="aac"
370
+
bitRate="96000"
371
+
sampleRate="48000"
372
+
channels="1" />
373
+
</EncoderProfile>
374
+
375
+
<EncoderProfile quality="1080p" fileFormat="mp4" duration="30">
376
+
<Video codec="h264"
377
+
bitRate="20000000"
378
+
width="1920"
379
+
height="1080"
380
+
frameRate="30" />
381
+
<Audio codec="aac"
382
+
bitRate="96000"
383
+
sampleRate="48000"
384
+
channels="1" />
385
+
</EncoderProfile>
386
+
387
+
<EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
388
+
<Video codec="h264"
389
+
bitRate="384000"
390
+
width="176"
391
+
height="144"
392
+
frameRate="30" />
393
+
<Audio codec="aac"
394
+
bitRate="12200"
395
+
sampleRate="8000"
396
+
channels="1" />
397
+
</EncoderProfile>
398
+
399
+
<EncoderProfile quality="timelapsecif" fileFormat="mp4" duration="30">
400
+
<Video codec="h264"
401
+
bitRate="2000000"
402
+
width="352"
403
+
height="288"
404
+
frameRate="30" />
405
+
<Audio codec="aac"
406
+
bitRate="12200"
407
+
sampleRate="8000"
408
+
channels="1" />
409
+
</EncoderProfile>
410
+
411
+
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
412
+
<Video codec="h264"
413
+
bitRate="8000000"
414
+
width="720"
415
+
height="480"
416
+
frameRate="30" />
417
+
<Audio codec="aac"
418
+
bitRate="12200"
419
+
sampleRate="8000"
420
+
channels="1" />
421
+
</EncoderProfile>
422
+
423
+
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
424
+
<Video codec="h264"
425
+
bitRate="12000000"
426
+
width="1280"
427
+
height="720"
428
+
frameRate="30" />
429
+
<!-- audio setting is ignored -->
430
+
<Audio codec="aac"
431
+
bitRate="96000"
432
+
sampleRate="48000"
433
+
channels="1" />
434
+
</EncoderProfile>
435
+
436
+
<EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30">
437
+
<Video codec="h264"
438
+
bitRate="20000000"
439
+
width="1920"
440
+
height="1080"
441
+
frameRate="30" />
442
+
<Audio codec="aac"
443
+
bitRate="96000"
444
+
sampleRate="48000"
445
+
channels="1" />
446
+
</EncoderProfile>
447
+
448
+
<ImageEncoding quality="95" />
449
+
<ImageEncoding quality="80" />
450
+
<ImageEncoding quality="70" />
451
+
<ImageDecoding memCap="20000000" />
452
+
453
+
</CamcorderProfiles>
454
+
455
+
<CamcorderProfiles cameraId="3">
456
+
457
+
<EncoderProfile quality="qcif" fileFormat="mp4" duration="30">
458
+
<Video codec="h264"
459
+
bitRate="384000"
460
+
width="176"
461
+
height="144"
462
+
frameRate="30" />
463
+
<Audio codec="aac"
464
+
bitRate="12200"
465
+
sampleRate="8000"
466
+
channels="1" />
467
+
</EncoderProfile>
468
+
469
+
<EncoderProfile quality="cif" fileFormat="mp4" duration="30">
470
+
<Video codec="h264"
471
+
bitRate="2000000"
472
+
width="352"
473
+
height="288"
474
+
frameRate="30" />
475
+
<Audio codec="aac"
476
+
bitRate="12200"
477
+
sampleRate="8000"
478
+
channels="1" />
479
+
</EncoderProfile>
480
+
481
+
<EncoderProfile quality="480p" fileFormat="mp4" duration="30">
482
+
<Video codec="h264"
483
+
bitRate="8000000"
484
+
width="720"
485
+
height="480"
486
+
frameRate="30" />
487
+
<Audio codec="aac"
488
+
bitRate="12200"
489
+
sampleRate="8000"
490
+
channels="1" />
491
+
</EncoderProfile>
492
+
493
+
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
494
+
<Video codec="h264"
495
+
bitRate="12000000"
496
+
width="1280"
497
+
height="720"
498
+
frameRate="30" />
499
+
<Audio codec="aac"
500
+
bitRate="96000"
501
+
sampleRate="48000"
502
+
channels="1" />
503
+
</EncoderProfile>
504
+
505
+
<EncoderProfile quality="1080p" fileFormat="mp4" duration="30">
506
+
<Video codec="h264"
507
+
bitRate="20000000"
508
+
width="1920"
509
+
height="1080"
510
+
frameRate="30" />
511
+
<Audio codec="aac"
512
+
bitRate="96000"
513
+
sampleRate="48000"
514
+
channels="1" />
515
+
</EncoderProfile>
516
+
517
+
<EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
518
+
<Video codec="h264"
519
+
bitRate="384000"
520
+
width="176"
521
+
height="144"
522
+
frameRate="30" />
523
+
<Audio codec="aac"
524
+
bitRate="12200"
525
+
sampleRate="8000"
526
+
channels="1" />
527
+
</EncoderProfile>
528
+
529
+
<EncoderProfile quality="timelapsecif" fileFormat="mp4" duration="30">
530
+
<Video codec="h264"
531
+
bitRate="2000000"
532
+
width="352"
533
+
height="288"
534
+
frameRate="30" />
535
+
<Audio codec="aac"
536
+
bitRate="12200"
537
+
sampleRate="8000"
538
+
channels="1" />
539
+
</EncoderProfile>
540
+
541
+
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
542
+
<Video codec="h264"
543
+
bitRate="8000000"
544
+
width="720"
545
+
height="480"
546
+
frameRate="30" />
547
+
<Audio codec="aac"
548
+
bitRate="12200"
549
+
sampleRate="8000"
550
+
channels="1" />
551
+
</EncoderProfile>
552
+
553
+
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
554
+
<Video codec="h264"
555
+
bitRate="12000000"
556
+
width="1280"
557
+
height="720"
558
+
frameRate="30" />
559
+
<!-- audio setting is ignored -->
560
+
<Audio codec="aac"
561
+
bitRate="96000"
562
+
sampleRate="48000"
563
+
channels="1" />
564
+
</EncoderProfile>
565
+
566
+
<EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30">
567
+
<Video codec="h264"
568
+
bitRate="20000000"
569
+
width="1920"
570
+
height="1080"
571
+
frameRate="30" />
572
+
<Audio codec="aac"
573
+
bitRate="96000"
574
+
sampleRate="48000"
575
+
channels="1" />
576
+
</EncoderProfile>
577
+
578
+
<ImageEncoding quality="95" />
579
+
<ImageEncoding quality="80" />
580
+
<ImageEncoding quality="70" />
581
+
<ImageDecoding memCap="20000000" />
582
+
583
+
</CamcorderProfiles>
584
+
585
+
<EncoderOutputFileFormat name="3gp" />
586
+
<EncoderOutputFileFormat name="mp4" />
587
+
588
+
<!--
589
+
If a codec is not enabled, it is invisible to the applications
590
+
In other words, the applications won't be able to use the codec
591
+
or query the capabilities of the codec at all if it is disabled
592
+
-->
593
+
<VideoEncoderCap name="h264" enabled="true"
594
+
minBitRate="64000" maxBitRate="20000000"
595
+
minFrameWidth="96" maxFrameWidth="1920"
596
+
minFrameHeight="96" maxFrameHeight="1920"
597
+
minFrameRate="5" maxFrameRate="60" />
598
+
599
+
<VideoEncoderCap name="h263" enabled="true"
600
+
minBitRate="64000" maxBitRate="20000000"
601
+
minFrameWidth="96" maxFrameWidth="1920"
602
+
minFrameHeight="96" maxFrameHeight="1920"
603
+
minFrameRate="5" maxFrameRate="60" />
604
+
605
+
<VideoEncoderCap name="m4v" enabled="true"
606
+
minBitRate="64000" maxBitRate="20000000"
607
+
minFrameWidth="96" maxFrameWidth="1920"
608
+
minFrameHeight="96" maxFrameHeight="1920"
609
+
minFrameRate="5" maxFrameRate="60" />
610
+
611
+
<AudioEncoderCap name="aac" enabled="true"
612
+
minBitRate="8000" maxBitRate="96000"
613
+
minSampleRate="8000" maxSampleRate="48000"
614
+
minChannels="1" maxChannels="2" />
615
+
616
+
<AudioEncoderCap name="amrwb" enabled="true"
617
+
minBitRate="6600" maxBitRate="23050"
618
+
minSampleRate="16000" maxSampleRate="16000"
619
+
minChannels="1" maxChannels="1" />
620
+
621
+
<AudioEncoderCap name="amrnb" enabled="true"
622
+
minBitRate="5525" maxBitRate="12200"
623
+
minSampleRate="8000" maxSampleRate="8000"
624
+
minChannels="1" maxChannels="1" />
625
+
626
+
<!--
627
+
FIXME:
628
+
We do not check decoder capabilities at present
629
+
At present, we only check whether windows media is visible
630
+
for TEST applications. For other applications, we do
631
+
not perform any checks at all.
632
+
-->
633
+
<VideoDecoderCap name="wmv" enabled="false"/>
634
+
<AudioDecoderCap name="wma" enabled="false"/>
635
+
<!--
636
+
FIXME: AV team should port next patch from ICS in order to
637
+
Re-enable the mpeg2 decoder:
638
+
"Adding MPEG2 Decoder support to Stagefright and media"
639
+
<VideoDecoderCap name="mpeg2" enabled="true" />
640
+
-->
641
+
<VideoEditorCap maxInputFrameWidth="1920"
642
+
maxInputFrameHeight="1920" maxOutputFrameWidth="1920"
643
+
maxOutputFrameHeight="1080" maxPrefetchYUVFrames="10"/>
644
+
<!--
645
+
The VideoEditor Export codec profile and level values
646
+
correspond to the values in OMX_Video.h.
647
+
E.g. for h264, profile value 1 means OMX_VIDEO_AVCProfileBaseline
648
+
and level 4096 means OMX_VIDEO_AVCLevel41.
649
+
Please note that the values are in decimal.
650
+
These values are for video encoder.
651
+
-->
652
+
<!--
653
+
Codec = h.264, Baseline profile, level 4.1
654
+
-->
655
+
<ExportVideoProfile name="h264" profile= "1" level="4096"/>
656
+
<!--
657
+
Codec = h.263, Baseline profile, level 0
658
+
-->
659
+
<ExportVideoProfile name="h263" profile= "1" level="1"/>
660
+
<!--
661
+
Codec = mpeg4, Simple profile, level 5
662
+
-->
663
+
<ExportVideoProfile name="m4v" profile= "1" level="128"/>
664
+
</MediaSettings>