gts3l-common: media: Remove media directory by a step to migrate into configs
Signed-off-by: Deokgyu Yang <secugyu@gmail.com> Change-Id: I843f7046552e3d0aa29fc8106aab6476f110be70
This commit is contained in:
parent
3bc8e6628e
commit
7424e389a0
8 changed files with 1 additions and 2791 deletions
9
gts3l.mk
9
gts3l.mk
|
@ -254,14 +254,7 @@ PRODUCT_PACKAGES += \
|
||||||
vendor.lineage.livedisplay@2.0-service.gts3l
|
vendor.lineage.livedisplay@2.0-service.gts3l
|
||||||
|
|
||||||
# Media
|
# Media
|
||||||
PRODUCT_COPY_FILES += \
|
# PRODUCT_COPY_FILES += \
|
||||||
$(LOCAL_PATH)/media/media_codecs_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \
|
|
||||||
$(LOCAL_PATH)/media/media_codecs_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor.xml \
|
|
||||||
$(LOCAL_PATH)/media/media_codecs_vendor_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_audio.xml \
|
|
||||||
$(LOCAL_PATH)/media/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
|
|
||||||
$(LOCAL_PATH)/media/media_profiles_V1_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml \
|
|
||||||
$(LOCAL_PATH)/media/media_profiles_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_vendor.xml \
|
|
||||||
$(LOCAL_PATH)/media/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles.xml
|
|
||||||
|
|
||||||
PRODUCT_COPY_FILES += \
|
PRODUCT_COPY_FILES += \
|
||||||
frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
|
frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
|
||||||
|
|
|
@ -1,406 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!-- Copyright (C) 2012-2017 The Linux Foundation. All rights reserved.
|
|
||||||
Not a contribution.
|
|
||||||
|
|
||||||
Copyright (C) 2012-2013 The Android Open Source Project
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<!--
|
|
||||||
<!DOCTYPE MediaCodecs [
|
|
||||||
<!ELEMENT Include EMPTY>
|
|
||||||
<!ATTLIST Include href CDATA #REQUIRED>
|
|
||||||
<!ELEMENT MediaCodecs (Decoders|Encoders|Include)*>
|
|
||||||
<!ELEMENT Decoders (MediaCodec|Include)*>
|
|
||||||
<!ELEMENT Encoders (MediaCodec|Include)*>
|
|
||||||
<!ELEMENT MediaCodec (Type|Quirk|Include)*>
|
|
||||||
<!ATTLIST MediaCodec name CDATA #REQUIRED>
|
|
||||||
<!ATTLIST MediaCodec type CDATA>
|
|
||||||
<!ELEMENT Type EMPTY>
|
|
||||||
<!ATTLIST Type name CDATA #REQUIRED>
|
|
||||||
<!ELEMENT Quirk EMPTY>
|
|
||||||
<!ATTLIST Quirk name CDATA #REQUIRED>
|
|
||||||
]>
|
|
||||||
|
|
||||||
There's a simple and a complex syntax to declare the availability of a
|
|
||||||
media codec:
|
|
||||||
|
|
||||||
A codec that properly follows the OpenMax spec and therefore doesn't have any
|
|
||||||
quirks and that only supports a single content type can be declared like so:
|
|
||||||
|
|
||||||
<MediaCodec name="OMX.foo.bar" type="something/interesting" />
|
|
||||||
|
|
||||||
If a codec has quirks OR supports multiple content types, the following syntax
|
|
||||||
can be used:
|
|
||||||
|
|
||||||
<MediaCodec name="OMX.foo.bar" >
|
|
||||||
<Type name="something/interesting" />
|
|
||||||
<Type name="something/else" />
|
|
||||||
...
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Quirk name="output-buffers-are-unreadable" />
|
|
||||||
</MediaCodec>
|
|
||||||
|
|
||||||
Only the three quirks included above are recognized at this point:
|
|
||||||
|
|
||||||
"requires-allocate-on-input-ports"
|
|
||||||
must be advertised if the component does not properly support specification
|
|
||||||
of input buffers using the OMX_UseBuffer(...) API but instead requires
|
|
||||||
OMX_AllocateBuffer to be used.
|
|
||||||
|
|
||||||
"requires-allocate-on-output-ports"
|
|
||||||
must be advertised if the component does not properly support specification
|
|
||||||
of output buffers using the OMX_UseBuffer(...) API but instead requires
|
|
||||||
OMX_AllocateBuffer to be used.
|
|
||||||
|
|
||||||
"output-buffers-are-unreadable"
|
|
||||||
must be advertised if the emitted output buffers of a decoder component
|
|
||||||
are not readable, i.e. use a custom format even though abusing one of
|
|
||||||
the official OMX colorspace constants.
|
|
||||||
Clients of such decoders will not be able to access the decoded data,
|
|
||||||
naturally making the component much less useful. The only use for
|
|
||||||
a component with this quirk is to render the output to the screen.
|
|
||||||
Audio decoders MUST NOT advertise this quirk.
|
|
||||||
Video decoders that advertise this quirk must be accompanied by a
|
|
||||||
corresponding color space converter for thumbnail extraction,
|
|
||||||
matching surfaceflinger support that can render the custom format to
|
|
||||||
a texture and possibly other code, so just DON'T USE THIS QUIRK.
|
|
||||||
|
|
||||||
|
|
||||||
-->
|
|
||||||
|
|
||||||
<!--
|
|
||||||
8996 Decoder capabilities
|
|
||||||
__________________________________________________________________
|
|
||||||
| Codec | W H fps Mbps MB/s | Secure-dec |
|
|
||||||
|__________|_________________________________________|____________|
|
|
||||||
| h264 | 3840 2160 60 100 1958400 | Y |
|
|
||||||
| | (4096) (2160) (56) (100) | |
|
|
||||||
| hevc | 3840 2160 60 100 1958400 | Y |
|
|
||||||
| | (4096) (2160) (56) (100) | |
|
|
||||||
| mpeg4 | 1920 1088 60 60 489600 | N |
|
|
||||||
| vc1 | 1920 1088 60 60 489600 | Y |
|
|
||||||
| vp8 | 3840 2160 30 100 979200 | N |
|
|
||||||
| vp9 | 3840 2160 30 100 979200 | Y |
|
|
||||||
| divx3 | 720 480 30 2 40500 | N |
|
|
||||||
| div4/5/6 | 1920 1088 30 10 244800 | N |
|
|
||||||
| h263 | 864 480 30 2 48600 | N |
|
|
||||||
| mpeg2 | 1920 1088 30 40 244800 | Y |
|
|
||||||
|__________|_________________________________________|____________|
|
|
||||||
|
|
||||||
|
|
||||||
8996 Encoder capabilities
|
|
||||||
______________________________________________________
|
|
||||||
| Codec | W H fps Mbps MB/s |
|
|
||||||
|__________|_________________________________________|
|
|
||||||
| h264 | 3840 2160 30 100 979200 |
|
|
||||||
| hevc | 3840 2160 30 100 979200 |
|
|
||||||
| mpeg4 | 1920 1088 60 60 489600 |
|
|
||||||
| vp8 | 3840 2160 30 100 979200 |
|
|
||||||
| h263 | 864 480 30 2 48600 |
|
|
||||||
|__________|_________________________________________|
|
|
||||||
-->
|
|
||||||
|
|
||||||
<MediaCodecs>
|
|
||||||
<Settings>
|
|
||||||
<Setting name="max-video-encoder-input-buffers" value="11" />
|
|
||||||
</Settings>
|
|
||||||
<Encoders>
|
|
||||||
<!-- Audio Hardware -->
|
|
||||||
<!-- Audio Software -->
|
|
||||||
<!-- Video Hardware -->
|
|
||||||
<MediaCodec name="OMX.qcom.video.encoder.avc" type="video/avc" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Quirk name="requires-loaded-to-idle-after-allocation" />
|
|
||||||
<Limit name="size" min="96x96" max="4096x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="979200" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
<Feature name="intra-refresh" />
|
|
||||||
<Feature name="can-swap-width-height" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.encoder.mpeg4" type="video/mp4v-es" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Quirk name="requires-loaded-to-idle-after-allocation"/>
|
|
||||||
<Limit name="size" min="96x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="489600" />
|
|
||||||
<Limit name="bitrate" range="1-60000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.encoder.h263" type="video/3gpp" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Quirk name="requires-loaded-to-idle-after-allocation" />
|
|
||||||
<Limit name="size" min="96x64" max="864x480" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="48600" />
|
|
||||||
<Limit name="bitrate" range="1-2000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Quirk name="requires-loaded-to-idle-after-allocation" />
|
|
||||||
<Limit name="size" min="96x64" max="3840x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="979200" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
<Feature name="intra-refresh" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.encoder.hevc" type="video/hevc" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Quirk name="requires-loaded-to-idle-after-allocation" />
|
|
||||||
<Limit name="size" min="162x64" max="4096x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="979200" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
<Feature name="intra-refresh" />
|
|
||||||
</MediaCodec>
|
|
||||||
</Encoders>
|
|
||||||
<Decoders>
|
|
||||||
<!-- Video Hardware -->
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="4096x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="1958400" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
<Feature name="can-swap-width-height" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.avc.secure" type="video/avc" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="4096x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="1958400" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Feature name="secure-playback" required="true" />
|
|
||||||
<Limit name="concurrent-instances" max="6" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.mpeg4" type="video/mp4v-es" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports"/>
|
|
||||||
<Limit name="size" min="64x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="489600" />
|
|
||||||
<Limit name="bitrate" range="1-60000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<!-- QCom MPEG2 Components are not used -->
|
|
||||||
<!--
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.mpeg2" type="video/mpeg2" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="96x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="244800" />
|
|
||||||
<Limit name="bitrate" range="1-40000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.mpeg2.secure" type="video/mpeg2" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="96x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="244800" />
|
|
||||||
<Limit name="bitrate" range="1-40000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Feature name="secure-playback" required="true" />
|
|
||||||
<Limit name="concurrent-instances" max="6" />
|
|
||||||
</MediaCodec>
|
|
||||||
-->
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.h263" type="video/3gpp" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="864x480" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="489600" />
|
|
||||||
<Limit name="bitrate" range="1-2000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.vc1" >
|
|
||||||
<Type name="video/x-ms-wmv"/>
|
|
||||||
<Type name="video/wvc1"/>
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="489600" />
|
|
||||||
<Limit name="bitrate" range="1-60000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<!-- QCom VC1 secure Components are not used -->
|
|
||||||
<!--
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.vc1.secure">
|
|
||||||
<Type name="video/x-ms-wmv"/>
|
|
||||||
<Type name="video/wvc1"/>
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="489600" />
|
|
||||||
<Limit name="bitrate" range="1-60000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Feature name="secure-playback" required="true" />
|
|
||||||
<Limit name="concurrent-instances" max="6" />
|
|
||||||
</MediaCodec>
|
|
||||||
-->
|
|
||||||
<!-- QCom DivX Components are not used -->
|
|
||||||
<!--
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.divx" type="video/divx" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="244800" />
|
|
||||||
<Limit name="bitrate" range="1-10000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.divx311" type="video/divx311" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="720x480" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="40500" />
|
|
||||||
<Limit name="bitrate" range="1-2000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.divx4" type="video/divx4" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="244800" />
|
|
||||||
<Limit name="bitrate" range="1-10000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
-->
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="3840x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="979200" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="3840x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="979200" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.vp9.secure" type="video/x-vnd.on2.vp9" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="3840x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="979200" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Feature name="secure-playback" required="true" />
|
|
||||||
<Limit name="concurrent-instances" max="6" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="4096x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="1958400" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.hevc.secure" type="video/hevc" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="4096x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="1958400" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Feature name="secure-playback" required="true" />
|
|
||||||
<Limit name="concurrent-instances" max="6" />
|
|
||||||
</MediaCodec>
|
|
||||||
</Decoders>
|
|
||||||
<Include href="media_codecs_google_video.xml" />
|
|
||||||
<Include href="media_codecs_google_audio.xml" />
|
|
||||||
<Include href="media_codecs_google_telephony.xml" />
|
|
||||||
</MediaCodecs>
|
|
|
@ -1,168 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8" ?>
|
|
||||||
<!--
|
|
||||||
Copyright (c) 2015, The Linux Foundation. All rights reserved.
|
|
||||||
|
|
||||||
Not a Contribution.
|
|
||||||
|
|
||||||
Copyright 2015 The Android Open Source Project
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<MediaCodecs>
|
|
||||||
<Encoders>
|
|
||||||
<MediaCodec name="OMX.qcom.video.encoder.avc" type="video/avc" update="true">
|
|
||||||
<Limit name="measured-frame-rate-320x240" range="238-238" />
|
|
||||||
<Limit name="measured-frame-rate-720x480" range="123-123" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="50-50" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1080" range="16-40" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.encoder.hevc" type="video/hevc" update="true">
|
|
||||||
<Limit name="measured-frame-rate-320x240" range="226-226" />
|
|
||||||
<Limit name="measured-frame-rate-720x480" range="121-121" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="49-49" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1080" range="16-45" />
|
|
||||||
<Limit name="measured-frame-rate-3840x2160" range="6-24" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.encoder.h263" type="video/3gpp" update="true">
|
|
||||||
<Limit name="measured-frame-rate-176x144" range="303-303" />
|
|
||||||
<Limit name="measured-frame-rate-352x288" range="259-259" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.encoder.mpeg4" type="video/mp4v-es" update="true">
|
|
||||||
<Limit name="measured-frame-rate-176x144" range="299-299" />
|
|
||||||
<Limit name="measured-frame-rate-352x288" range="245-245" />
|
|
||||||
<Limit name="measured-frame-rate-640x480" range="148-148" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" update="true">
|
|
||||||
<Limit name="measured-frame-rate-320x180" range="266-266" />
|
|
||||||
<Limit name="measured-frame-rate-640x360" range="165-165" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="49-49" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1080" range="16-40" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.h264.encoder" type="video/avc" update="true">
|
|
||||||
<Limit name="measured-frame-rate-320x240" range="375-430" />
|
|
||||||
<Limit name="measured-frame-rate-720x480" range="156-193" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="84-112" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1080" range="42-57" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.h263.encoder" type="video/3gpp" update="true">
|
|
||||||
<Limit name="measured-frame-rate-176x144" range="200-200" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.mpeg4.encoder" type="video/mp4v-es" update="true">
|
|
||||||
<Limit name="measured-frame-rate-176x144" range="411-524" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
|
|
||||||
<Limit name="measured-frame-rate-320x180" range="240-250" />
|
|
||||||
<Limit name="measured-frame-rate-640x360" range="50-57" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="17-24" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1080" range="8-12" />
|
|
||||||
</MediaCodec>
|
|
||||||
</Encoders>
|
|
||||||
<Decoders>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" update="true">
|
|
||||||
<Limit name="measured-frame-rate-320x240" range="180-360" />
|
|
||||||
<Limit name="measured-frame-rate-720x480" range="180-360" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="180-360" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1088" range="150-300" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.h263" type="video/3gpp" update="true">
|
|
||||||
<Limit name="measured-frame-rate-176x144" range="120-240" />
|
|
||||||
<Limit name="measured-frame-rate-352x288" range="120-240" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" update="true">
|
|
||||||
<Limit name="measured-frame-rate-352x288" range="180-360" />
|
|
||||||
<Limit name="measured-frame-rate-720x480" range="160-320" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="160-320" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1080" range="150-300" />
|
|
||||||
<Limit name="measured-frame-rate-3840x2160" range="50-100" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.mpeg4" type="video/mp4v-es" update="true">
|
|
||||||
<Limit name="measured-frame-rate-176x144" range="120-240" />
|
|
||||||
<Limit name="measured-frame-rate-480x360" range="120-240" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" update="true">
|
|
||||||
<Limit name="measured-frame-rate-320x240" range="220-440" />
|
|
||||||
<Limit name="measured-frame-rate-640x360" range="200-400" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="200-400" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1080" range="200-400" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" update="true">
|
|
||||||
<Limit name="measured-frame-rate-320x240" range="200-377" />
|
|
||||||
<Limit name="measured-frame-rate-640x360" range="180-323" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="180-262" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1080" range="170-220" />
|
|
||||||
<Limit name="measured-frame-rate-3840x2160" range="40-51" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.h264.decoder" type="video/avc" update="true">
|
|
||||||
<Limit name="measured-frame-rate-320x240" range="110-200" />
|
|
||||||
<Limit name="measured-frame-rate-720x480" range="100-170" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="40-60" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1080" range="15-30" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.h263.decoder" type="video/3gpp" update="true">
|
|
||||||
<Limit name="measured-frame-rate-176x144" range="150-300" />
|
|
||||||
<Limit name="measured-frame-rate-352x288" range="120-240" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.hevc.decoder" type="video/hevc" update="true">
|
|
||||||
<Limit name="measured-frame-rate-352x288" range="160-320" />
|
|
||||||
<Limit name="measured-frame-rate-640x360" range="100-200" />
|
|
||||||
<Limit name="measured-frame-rate-720x480" range="60-120" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="20-40" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1080" range="30-60" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.mpeg4.decoder" update="true">
|
|
||||||
<Type name="video/mp4v-es">
|
|
||||||
<Limit name="measured-frame-rate-176x144" range="140-280" />
|
|
||||||
</Type>
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
|
|
||||||
<Limit name="measured-frame-rate-320x240" range="300-600" />
|
|
||||||
<Limit name="measured-frame-rate-640x360" range="150-300" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="35-70" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1080" range="15-30" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
|
||||||
<Limit name="measured-frame-rate-320x240" range="200-400" />
|
|
||||||
<Limit name="measured-frame-rate-640x360" range="100-200" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="45-90" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1080" range="25-50" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.SEC.avc.sw.dec" type="video/avc" update="true" >
|
|
||||||
<Limit name="measured-frame-rate-320x240" range="200-400" />
|
|
||||||
<Limit name="measured-frame-rate-720x480" range="80-160" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="25-50" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1080" range="13-26" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.SEC.h263.sw.dec" type="video/3gpp" update="true" >
|
|
||||||
<Limit name="measured-frame-rate-176x144" range="400-800" />
|
|
||||||
<Limit name="measured-frame-rate-352x288" range="300-600" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.SEC.hevc.sw.dec" type="video/hevc" update="true" >
|
|
||||||
<Limit name="measured-frame-rate-352x288" range="200-400" />
|
|
||||||
<Limit name="measured-frame-rate-640x360" range="100-200" />
|
|
||||||
<Limit name="measured-frame-rate-720x480" range="80-160" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="30-60" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1080" range="20-40" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.SEC.mpeg4.sw.dec" type="video/mp4v-es" update="true" >
|
|
||||||
<Limit name="measured-frame-rate-176x144" range="400-800" />
|
|
||||||
<Limit name="measured-frame-rate-480x360" range="400-800" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.SEC.vp8.dec" type="video/x-vnd.on2.vp8" update="true" >
|
|
||||||
<Limit name="measured-frame-rate-320x180" range="300-600" />
|
|
||||||
<Limit name="measured-frame-rate-640x360" range="120-240" />
|
|
||||||
<Limit name="measured-frame-rate-1280x720" range="30-60" />
|
|
||||||
<Limit name="measured-frame-rate-1920x1080" range="15-30" />
|
|
||||||
</MediaCodec>
|
|
||||||
</Decoders>
|
|
||||||
</MediaCodecs>
|
|
|
@ -1,393 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!-- Copyright (C) 2012-2018 The Linux Foundation. All rights reserved.
|
|
||||||
Not a contribution.
|
|
||||||
|
|
||||||
Copyright (C) 2012-2013 The Android Open Source Project
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<!--
|
|
||||||
<!DOCTYPE MediaCodecs [
|
|
||||||
<!ELEMENT Include EMPTY>
|
|
||||||
<!ATTLIST Include href CDATA #REQUIRED>
|
|
||||||
<!ELEMENT MediaCodecs (Decoders|Encoders|Include)*>
|
|
||||||
<!ELEMENT Decoders (MediaCodec|Include)*>
|
|
||||||
<!ELEMENT Encoders (MediaCodec|Include)*>
|
|
||||||
<!ELEMENT MediaCodec (Type|Quirk|Include)*>
|
|
||||||
<!ATTLIST MediaCodec name CDATA #REQUIRED>
|
|
||||||
<!ATTLIST MediaCodec type CDATA>
|
|
||||||
<!ELEMENT Type EMPTY>
|
|
||||||
<!ATTLIST Type name CDATA #REQUIRED>
|
|
||||||
<!ELEMENT Quirk EMPTY>
|
|
||||||
<!ATTLIST Quirk name CDATA #REQUIRED>
|
|
||||||
]>
|
|
||||||
|
|
||||||
There's a simple and a complex syntax to declare the availability of a
|
|
||||||
media codec:
|
|
||||||
|
|
||||||
A codec that properly follows the OpenMax spec and therefore doesn't have any
|
|
||||||
quirks and that only supports a single content type can be declared like so:
|
|
||||||
|
|
||||||
<MediaCodec name="OMX.foo.bar" type="something/interesting" />
|
|
||||||
|
|
||||||
If a codec has quirks OR supports multiple content types, the following syntax
|
|
||||||
can be used:
|
|
||||||
|
|
||||||
<MediaCodec name="OMX.foo.bar" >
|
|
||||||
<Type name="something/interesting" />
|
|
||||||
<Type name="something/else" />
|
|
||||||
...
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Quirk name="output-buffers-are-unreadable" />
|
|
||||||
</MediaCodec>
|
|
||||||
|
|
||||||
Only the three quirks included above are recognized at this point:
|
|
||||||
|
|
||||||
"requires-allocate-on-input-ports"
|
|
||||||
must be advertised if the component does not properly support specification
|
|
||||||
of input buffers using the OMX_UseBuffer(...) API but instead requires
|
|
||||||
OMX_AllocateBuffer to be used.
|
|
||||||
|
|
||||||
"requires-allocate-on-output-ports"
|
|
||||||
must be advertised if the component does not properly support specification
|
|
||||||
of output buffers using the OMX_UseBuffer(...) API but instead requires
|
|
||||||
OMX_AllocateBuffer to be used.
|
|
||||||
|
|
||||||
"output-buffers-are-unreadable"
|
|
||||||
must be advertised if the emitted output buffers of a decoder component
|
|
||||||
are not readable, i.e. use a custom format even though abusing one of
|
|
||||||
the official OMX colorspace constants.
|
|
||||||
Clients of such decoders will not be able to access the decoded data,
|
|
||||||
naturally making the component much less useful. The only use for
|
|
||||||
a component with this quirk is to render the output to the screen.
|
|
||||||
Audio decoders MUST NOT advertise this quirk.
|
|
||||||
Video decoders that advertise this quirk must be accompanied by a
|
|
||||||
corresponding color space converter for thumbnail extraction,
|
|
||||||
matching surfaceflinger support that can render the custom format to
|
|
||||||
a texture and possibly other code, so just DON'T USE THIS QUIRK.
|
|
||||||
|
|
||||||
|
|
||||||
-->
|
|
||||||
|
|
||||||
<!--
|
|
||||||
8996 Decoder capabilities
|
|
||||||
__________________________________________________________________
|
|
||||||
| Codec | W H fps Mbps MB/s | Secure-dec |
|
|
||||||
|__________|_________________________________________|____________|
|
|
||||||
| h264 | 3840 2160 60 100 1958400 | Y |
|
|
||||||
| | (4096) (2160) (56) (100) | |
|
|
||||||
| hevc | 3840 2160 60 100 1958400 | Y |
|
|
||||||
| | (4096) (2160) (56) (100) | |
|
|
||||||
| mpeg4 | 1920 1088 60 60 489600 | N |
|
|
||||||
| vc1 | 1920 1088 60 60 489600 | Y |
|
|
||||||
| vp8 | 3840 2160 30 100 979200 | N |
|
|
||||||
| vp9 | 3840 2160 30 100 979200 | Y |
|
|
||||||
| divx3 | 720 480 30 2 40500 | N |
|
|
||||||
| div4/5/6 | 1920 1088 30 10 244800 | N |
|
|
||||||
| h263 | 864 480 30 2 48600 | N |
|
|
||||||
| mpeg2 | 1920 1088 30 40 244800 | Y |
|
|
||||||
|__________|_________________________________________|____________|
|
|
||||||
|
|
||||||
|
|
||||||
8996 Encoder capabilities
|
|
||||||
______________________________________________________
|
|
||||||
| Codec | W H fps Mbps MB/s |
|
|
||||||
|__________|_________________________________________|
|
|
||||||
| h264 | 3840 2160 30 100 979200 |
|
|
||||||
| hevc | 3840 2160 30 100 979200 |
|
|
||||||
| mpeg4 | 1920 1088 60 60 489600 |
|
|
||||||
| vp8 | 3840 2160 30 100 979200 |
|
|
||||||
| h263 | 864 480 30 2 48600 |
|
|
||||||
|__________|_________________________________________|
|
|
||||||
-->
|
|
||||||
|
|
||||||
<MediaCodecs>
|
|
||||||
<Include href="media_codecs_vendor_audio.xml" />
|
|
||||||
<Include href="media_codecs_google_telephony.xml" />
|
|
||||||
<Settings>
|
|
||||||
<Setting name="max-video-encoder-input-buffers" value="11" />
|
|
||||||
</Settings>
|
|
||||||
<Encoders>
|
|
||||||
<!-- Audio Hardware -->
|
|
||||||
<!-- Audio Software -->
|
|
||||||
<!-- Video Hardware -->
|
|
||||||
<MediaCodec name="OMX.qcom.video.encoder.avc" type="video/avc" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Quirk name="requires-loaded-to-idle-after-allocation" />
|
|
||||||
<Limit name="size" min="96x96" max="4096x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="979200" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
<Feature name="intra-refresh" />
|
|
||||||
<Feature name="can-swap-width-height" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.encoder.mpeg4" type="video/mp4v-es" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Quirk name="requires-loaded-to-idle-after-allocation"/>
|
|
||||||
<Limit name="size" min="96x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="489600" />
|
|
||||||
<Limit name="bitrate" range="1-60000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.encoder.h263" type="video/3gpp" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Quirk name="requires-loaded-to-idle-after-allocation" />
|
|
||||||
<Limit name="size" min="96x64" max="864x480" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="48600" />
|
|
||||||
<Limit name="bitrate" range="1-2000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Quirk name="requires-loaded-to-idle-after-allocation" />
|
|
||||||
<Limit name="size" min="96x64" max="3840x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="979200" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
<Feature name="intra-refresh" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.encoder.hevc" type="video/hevc" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Quirk name="requires-loaded-to-idle-after-allocation" />
|
|
||||||
<Limit name="size" min="162x64" max="4096x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="979200" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
<Feature name="intra-refresh" />
|
|
||||||
</MediaCodec>
|
|
||||||
</Encoders>
|
|
||||||
<Decoders>
|
|
||||||
<!-- Video Hardware -->
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="4096x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="1958400" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
<Feature name="can-swap-width-height" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.avc.secure" type="video/avc" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="4096x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="1958400" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Feature name="secure-playback" required="true" />
|
|
||||||
<Limit name="concurrent-instances" max="6" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.mpeg4" type="video/mp4v-es" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports"/>
|
|
||||||
<Limit name="size" min="64x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="489600" />
|
|
||||||
<Limit name="bitrate" range="1-60000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.mpeg2" type="video/mpeg2" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="96x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="244800" />
|
|
||||||
<Limit name="bitrate" range="1-40000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.mpeg2.secure" type="video/mpeg2" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="96x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="244800" />
|
|
||||||
<Limit name="bitrate" range="1-40000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Feature name="secure-playback" required="true" />
|
|
||||||
<Limit name="concurrent-instances" max="6" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.h263" type="video/3gpp" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="864x480" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="489600" />
|
|
||||||
<Limit name="bitrate" range="1-2000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.vc1" type="video/x-ms-wmv" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="489600" />
|
|
||||||
<Limit name="bitrate" range="1-60000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.vc1.secure" type="video/x-ms-wmv" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="489600" />
|
|
||||||
<Limit name="bitrate" range="1-60000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Feature name="secure-playback" required="true" />
|
|
||||||
<Limit name="concurrent-instances" max="6" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.divx" type="video/divx" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="244800" />
|
|
||||||
<Limit name="bitrate" range="1-10000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.divx311" type="video/divx311" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="720x480" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="40500" />
|
|
||||||
<Limit name="bitrate" range="1-2000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.divx4" type="video/divx4" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="1920x1088" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="244800" />
|
|
||||||
<Limit name="bitrate" range="1-10000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="3840x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="979200" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="3840x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="979200" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.vp9.secure" type="video/x-vnd.on2.vp9" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="3840x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="979200" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Feature name="secure-playback" required="true" />
|
|
||||||
<Limit name="concurrent-instances" max="6" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="4096x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="1958400" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Limit name="concurrent-instances" max="16" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.qcom.video.decoder.hevc.secure" type="video/hevc" >
|
|
||||||
<Quirk name="requires-allocate-on-input-ports" />
|
|
||||||
<Quirk name="requires-allocate-on-output-ports" />
|
|
||||||
<Limit name="size" min="64x64" max="4096x2160" />
|
|
||||||
<Limit name="alignment" value="2x2" />
|
|
||||||
<Limit name="block-size" value="16x16" />
|
|
||||||
<Limit name="blocks-per-second" min="1" max="1958400" />
|
|
||||||
<Limit name="bitrate" range="1-100000000" />
|
|
||||||
<Limit name="frame-rate" range="1-240" />
|
|
||||||
<Feature name="adaptive-playback" />
|
|
||||||
<Feature name="secure-playback" required="true" />
|
|
||||||
<Limit name="concurrent-instances" max="6" />
|
|
||||||
</MediaCodec>
|
|
||||||
</Decoders>
|
|
||||||
<Include href="media_codecs_google_video.xml" />
|
|
||||||
</MediaCodecs>
|
|
|
@ -1,98 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8" ?>
|
|
||||||
<!-- Copyright (C) 2012-2017, 2018 The Linux Foundation. All rights reserved.
|
|
||||||
Not a contribution.
|
|
||||||
|
|
||||||
Copyright (C) 2012-2013 The Android Open Source Project
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
-->
|
|
||||||
<Included>
|
|
||||||
<Decoders>
|
|
||||||
<MediaCodec name="OMX.google.mp3.decoder" type="audio/mpeg">
|
|
||||||
<Limit name="channel-count" max="2" />
|
|
||||||
<Limit name="sample-rate" ranges="8000,11025,12000,16000,22050,24000,32000,44100,48000" />
|
|
||||||
<Limit name="bitrate" range="8000-320000" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.amrnb.decoder" type="audio/3gpp">
|
|
||||||
<Limit name="channel-count" max="1" />
|
|
||||||
<Limit name="sample-rate" ranges="8000" />
|
|
||||||
<Limit name="bitrate" range="4750-12200" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.amrwb.decoder" type="audio/amr-wb">
|
|
||||||
<Limit name="channel-count" max="1" />
|
|
||||||
<Limit name="sample-rate" ranges="16000" />
|
|
||||||
<Limit name="bitrate" range="6600-23850" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.aac.decoder" type="audio/mp4a-latm">
|
|
||||||
<Limit name="channel-count" max="8" />
|
|
||||||
<Limit name="sample-rate" ranges="7350,8000,11025,12000,16000,22050,24000,32000,44100,48000" />
|
|
||||||
<Limit name="bitrate" range="8000-960000" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.g711.alaw.decoder" type="audio/g711-alaw">
|
|
||||||
<Limit name="channel-count" max="1" />
|
|
||||||
<Limit name="sample-rate" ranges="8000-48000" />
|
|
||||||
<Limit name="bitrate" range="64000" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.g711.mlaw.decoder" type="audio/g711-mlaw">
|
|
||||||
<Limit name="channel-count" max="1" />
|
|
||||||
<Limit name="sample-rate" ranges="8000-48000" />
|
|
||||||
<Limit name="bitrate" range="64000" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.vorbis.decoder" type="audio/vorbis">
|
|
||||||
<Limit name="channel-count" max="8" />
|
|
||||||
<Limit name="sample-rate" ranges="8000-96000" />
|
|
||||||
<Limit name="bitrate" range="32000-500000" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.opus.decoder" type="audio/opus">
|
|
||||||
<Limit name="channel-count" max="8" />
|
|
||||||
<Limit name="sample-rate" ranges="48000" />
|
|
||||||
<Limit name="bitrate" range="6000-510000" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.raw.decoder" type="audio/raw">
|
|
||||||
<Limit name="channel-count" max="8" />
|
|
||||||
<Limit name="sample-rate" ranges="8000-96000" />
|
|
||||||
<Limit name="bitrate" range="1-10000000" />
|
|
||||||
</MediaCodec>
|
|
||||||
<!-- SimpleOMXComponet based software decoder-->
|
|
||||||
<MediaCodec name="OMX.qti.audio.decoder.flac" type="audio/flac" >
|
|
||||||
<Limit name="concurrent-instances" max="10" />
|
|
||||||
</MediaCodec>
|
|
||||||
</Decoders>
|
|
||||||
<Encoders>
|
|
||||||
<MediaCodec name="OMX.google.aac.encoder" type="audio/mp4a-latm">
|
|
||||||
<Limit name="channel-count" max="6" />
|
|
||||||
<Limit name="sample-rate" ranges="8000,11025,12000,16000,22050,24000,32000,44100,48000" />
|
|
||||||
<!-- also may support 64000, 88200 and 96000 Hz -->
|
|
||||||
<Limit name="bitrate" range="8000-960000" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.amrnb.encoder" type="audio/3gpp">
|
|
||||||
<Limit name="channel-count" max="1" />
|
|
||||||
<Limit name="sample-rate" ranges="8000" />
|
|
||||||
<Limit name="bitrate" range="4750-12200" />
|
|
||||||
<Feature name="bitrate-modes" value="CBR" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.amrwb.encoder" type="audio/amr-wb">
|
|
||||||
<Limit name="channel-count" max="1" />
|
|
||||||
<Limit name="sample-rate" ranges="16000" />
|
|
||||||
<Limit name="bitrate" range="6600-23850" />
|
|
||||||
<Feature name="bitrate-modes" value="CBR" />
|
|
||||||
</MediaCodec>
|
|
||||||
<MediaCodec name="OMX.google.flac.encoder" type="audio/flac">
|
|
||||||
<Limit name="channel-count" max="2" />
|
|
||||||
<Limit name="sample-rate" ranges="1-655350" />
|
|
||||||
<Limit name="bitrate" range="1-21000000" />
|
|
||||||
<Limit name="complexity" range="0-8" default="5" />
|
|
||||||
<Feature name="bitrate-modes" value="CQ" />
|
|
||||||
</MediaCodec>
|
|
||||||
</Encoders>
|
|
||||||
</Included>
|
|
|
@ -1,428 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!-- Copyright 2013 The Android Open Source Project
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
-->
|
|
||||||
<!DOCTYPE MediaSettings [
|
|
||||||
<!ELEMENT MediaSettings (CamcorderProfiles,
|
|
||||||
EncoderOutputFileFormat+,
|
|
||||||
VideoEncoderCap+,
|
|
||||||
AudioEncoderCap+,
|
|
||||||
VideoDecoderCap,
|
|
||||||
AudioDecoderCap)>
|
|
||||||
<!ELEMENT CamcorderProfiles (EncoderProfile+, ImageEncoding+, ImageDecoding, Camera)>
|
|
||||||
<!ELEMENT EncoderProfile (Video, Audio)>
|
|
||||||
<!ATTLIST EncoderProfile quality (high|low) #REQUIRED>
|
|
||||||
<!ATTLIST EncoderProfile fileFormat (mp4|3gp) #REQUIRED>
|
|
||||||
<!ATTLIST EncoderProfile duration (30|60) #REQUIRED>
|
|
||||||
<!ATTLIST EncoderProfile cameraId (0|1) #REQUIRED>
|
|
||||||
<!ELEMENT Video EMPTY>
|
|
||||||
<!ATTLIST Video codec (h264|h263|m4v) #REQUIRED>
|
|
||||||
<!ATTLIST Video bitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST Video width CDATA #REQUIRED>
|
|
||||||
<!ATTLIST Video height CDATA #REQUIRED>
|
|
||||||
<!ATTLIST Video frameRate CDATA #REQUIRED>
|
|
||||||
<!ELEMENT Audio EMPTY>
|
|
||||||
<!ATTLIST Audio codec (amrnb|amrwb|aac) #REQUIRED>
|
|
||||||
<!ATTLIST Audio bitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST Audio sampleRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST Audio channels (1|2) #REQUIRED>
|
|
||||||
<!ELEMENT ImageEncoding EMPTY>
|
|
||||||
<!ATTLIST ImageEncoding quality (90|80|70|60|50|40) #REQUIRED>
|
|
||||||
<!ELEMENT ImageDecoding EMPTY>
|
|
||||||
<!ATTLIST ImageDecoding memCap CDATA #REQUIRED>
|
|
||||||
<!ELEMENT Camera EMPTY>
|
|
||||||
<!ELEMENT EncoderOutputFileFormat EMPTY>
|
|
||||||
<!ATTLIST EncoderOutputFileFormat name (mp4|3gp) #REQUIRED>
|
|
||||||
<!ELEMENT VideoEncoderCap EMPTY>
|
|
||||||
<!ATTLIST VideoEncoderCap name (h264|h263|m4v|wmv) #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap enabled (true|false) #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap minBitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxBitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap minFrameWidth CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxFrameWidth CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap minFrameHeight CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxFrameHeight CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap minFrameRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxFrameRate CDATA #REQUIRED>
|
|
||||||
<!ELEMENT AudioEncoderCap EMPTY>
|
|
||||||
<!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac|wma) #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap enabled (true|false) #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap minBitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap maxBitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap minSampleRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap maxSampleRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap minChannels (1|2) #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap maxChannels (1|2) #REQUIRED>
|
|
||||||
<!ELEMENT VideoDecoderCap EMPTY>
|
|
||||||
<!ATTLIST VideoDecoderCap name (wmv) #REQUIRED>
|
|
||||||
<!ATTLIST VideoDecoderCap enabled (true|false) #REQUIRED>
|
|
||||||
<!ELEMENT AudioDecoderCap EMPTY>
|
|
||||||
<!ATTLIST AudioDecoderCap name (wma) #REQUIRED>
|
|
||||||
<!ATTLIST AudioDecoderCap enabled (true|false) #REQUIRED>
|
|
||||||
<!ELEMENT VideoEditorCap EMPTY>
|
|
||||||
<!ATTLIST VideoEditorCap maxInputFrameWidth CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEditorCap maxInputFrameHeight CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEditorCap maxOutputFrameWidth CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEditorCap maxOutputFrameHeight CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEditorCap maxPrefetchYUVFrames CDATA #REQUIRED>
|
|
||||||
<!ELEMENT ExportVideoProfile EMPTY>
|
|
||||||
<!ATTLIST ExportVideoProfile name (h264|h263|m4v) #REQUIRED>
|
|
||||||
<!ATTLIST ExportVideoProfile profile CDATA #REQUIRED>
|
|
||||||
<!ATTLIST ExportVideoProfile level CDATA #REQUIRED>
|
|
||||||
]>
|
|
||||||
<!--
|
|
||||||
This file is used to declare the multimedia profiles and capabilities
|
|
||||||
on an android-powered device.
|
|
||||||
-->
|
|
||||||
<MediaSettings>
|
|
||||||
<!-- Each camcorder profile defines a set of predefined configuration parameters -->
|
|
||||||
<CamcorderProfiles cameraId="0">
|
|
||||||
|
|
||||||
<EncoderProfile quality="qvga" fileFormat="3gp" duration="60">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="128000"
|
|
||||||
width="320"
|
|
||||||
height="240"
|
|
||||||
frameRate="15" />
|
|
||||||
<Audio codec="amrnb"
|
|
||||||
bitRate="12200"
|
|
||||||
sampleRate="8000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="cif" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="1200000"
|
|
||||||
width="352"
|
|
||||||
height="288"
|
|
||||||
frameRate="30" />
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="96000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="480p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="6000000"
|
|
||||||
width="720"
|
|
||||||
height="480"
|
|
||||||
frameRate="30" />
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="96000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="12000000"
|
|
||||||
width="1280"
|
|
||||||
height="720"
|
|
||||||
frameRate="30" />
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="96000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="1080p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="96000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="192000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
<!-- audio setting is ignored -->
|
|
||||||
<Audio codec="amrnb"
|
|
||||||
bitRate="12200"
|
|
||||||
sampleRate="8000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapsecif" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="1200000"
|
|
||||||
width="352"
|
|
||||||
height="288"
|
|
||||||
frameRate="30" />
|
|
||||||
<!-- audio setting is ignored -->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="96000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="6000000"
|
|
||||||
width="720"
|
|
||||||
height="480"
|
|
||||||
frameRate="30" />
|
|
||||||
<!-- audio setting is ignored -->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="96000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="12000000"
|
|
||||||
width="1280"
|
|
||||||
height="720"
|
|
||||||
frameRate="30" />
|
|
||||||
<!-- audio setting is ignored -->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="96000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
<!-- audio setting is ignored -->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="96000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<ImageEncoding quality="95" />
|
|
||||||
<ImageEncoding quality="80" />
|
|
||||||
<ImageEncoding quality="70" />
|
|
||||||
<ImageDecoding memCap="20000000" />
|
|
||||||
|
|
||||||
</CamcorderProfiles>
|
|
||||||
|
|
||||||
<CamcorderProfiles cameraId="1">
|
|
||||||
|
|
||||||
<EncoderProfile quality="qvga" fileFormat="3gp" duration="60">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="128000"
|
|
||||||
width="320"
|
|
||||||
height="240"
|
|
||||||
frameRate="15" />
|
|
||||||
<Audio codec="amrnb"
|
|
||||||
bitRate="12200"
|
|
||||||
sampleRate="8000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="cif" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="1200000"
|
|
||||||
width="352"
|
|
||||||
height="288"
|
|
||||||
frameRate="30" />
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="96000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="480p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="6000000"
|
|
||||||
width="720"
|
|
||||||
height="480"
|
|
||||||
frameRate="30" />
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="96000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="12000000"
|
|
||||||
width="1280"
|
|
||||||
height="720"
|
|
||||||
frameRate="30" />
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="96000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="192000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
<!-- audio setting is ignored -->
|
|
||||||
<Audio codec="amrnb"
|
|
||||||
bitRate="12200"
|
|
||||||
sampleRate="8000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapsecif" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="1200000"
|
|
||||||
width="352"
|
|
||||||
height="288"
|
|
||||||
frameRate="30" />
|
|
||||||
<!-- audio setting is ignored -->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="96000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="6000000"
|
|
||||||
width="720"
|
|
||||||
height="480"
|
|
||||||
frameRate="30" />
|
|
||||||
<!-- audio setting is ignored -->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="96000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="12000000"
|
|
||||||
width="1280"
|
|
||||||
height="720"
|
|
||||||
frameRate="30" />
|
|
||||||
<!-- audio setting is ignored -->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="96000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="1" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<ImageEncoding quality="95" />
|
|
||||||
<ImageEncoding quality="80" />
|
|
||||||
<ImageEncoding quality="70" />
|
|
||||||
<ImageDecoding memCap="20000000" />
|
|
||||||
|
|
||||||
</CamcorderProfiles>
|
|
||||||
|
|
||||||
<EncoderOutputFileFormat name="3gp" />
|
|
||||||
<EncoderOutputFileFormat name="mp4" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
If a codec is not enabled, it is invisible to the applications
|
|
||||||
In other words, the applications won't be able to use the codec
|
|
||||||
or query the capabilities of the codec at all if it is disabled
|
|
||||||
-->
|
|
||||||
<VideoEncoderCap name="h264" enabled="true"
|
|
||||||
minBitRate="64000" maxBitRate="40000000"
|
|
||||||
minFrameWidth="176" maxFrameWidth="1920"
|
|
||||||
minFrameHeight="144" maxFrameHeight="1080"
|
|
||||||
minFrameRate="15" maxFrameRate="30" />
|
|
||||||
|
|
||||||
<VideoEncoderCap name="h263" enabled="true"
|
|
||||||
minBitRate="64000" maxBitRate="2000000"
|
|
||||||
minFrameWidth="176" maxFrameWidth="800"
|
|
||||||
minFrameHeight="144" maxFrameHeight="480"
|
|
||||||
minFrameRate="15" maxFrameRate="30" />
|
|
||||||
|
|
||||||
<VideoEncoderCap name="m4v" enabled="true"
|
|
||||||
minBitRate="64000" maxBitRate="40000000"
|
|
||||||
minFrameWidth="176" maxFrameWidth="1920"
|
|
||||||
minFrameHeight="144" maxFrameHeight="1080"
|
|
||||||
minFrameRate="15" maxFrameRate="30" />
|
|
||||||
|
|
||||||
<AudioEncoderCap name="aac" enabled="true"
|
|
||||||
minBitRate="758" maxBitRate="288000"
|
|
||||||
minSampleRate="8000" maxSampleRate="48000"
|
|
||||||
minChannels="1" maxChannels="2" />
|
|
||||||
|
|
||||||
<AudioEncoderCap name="heaac" enabled="true"
|
|
||||||
minBitRate="8000" maxBitRate="64000"
|
|
||||||
minSampleRate="16000" maxSampleRate="48000"
|
|
||||||
minChannels="1" maxChannels="2" />
|
|
||||||
|
|
||||||
<AudioEncoderCap name="aaceld" enabled="true"
|
|
||||||
minBitRate="16000" maxBitRate="192000"
|
|
||||||
minSampleRate="16000" maxSampleRate="48000"
|
|
||||||
minChannels="1" maxChannels="2" />
|
|
||||||
|
|
||||||
<AudioEncoderCap name="amrwb" enabled="true"
|
|
||||||
minBitRate="6600" maxBitRate="23050"
|
|
||||||
minSampleRate="16000" maxSampleRate="16000"
|
|
||||||
minChannels="1" maxChannels="1" />
|
|
||||||
|
|
||||||
<AudioEncoderCap name="amrnb" enabled="true"
|
|
||||||
minBitRate="5525" maxBitRate="12200"
|
|
||||||
minSampleRate="8000" maxSampleRate="8000"
|
|
||||||
minChannels="1" maxChannels="1" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
FIXME:
|
|
||||||
We do not check decoder capabilities at present
|
|
||||||
At present, we only check whether windows media is visible
|
|
||||||
for TEST applications. For other applications, we do
|
|
||||||
not perform any checks at all.
|
|
||||||
-->
|
|
||||||
<VideoDecoderCap name="wmv" enabled="false"/>
|
|
||||||
<AudioDecoderCap name="wma" enabled="false"/>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The VideoEditor Capability configuration:
|
|
||||||
- maxInputFrameWidth: maximum video width of imported video clip.
|
|
||||||
- maxInputFrameHeight: maximum video height of imported video clip.
|
|
||||||
- maxOutputFrameWidth: maximum video width of exported video clip.
|
|
||||||
- maxOutputFrameHeight: maximum video height of exported video clip.
|
|
||||||
- maxPrefetchYUVFrames: maximum prefetch YUV frames for encoder,
|
|
||||||
used to limit the amount of memory for prefetched YUV frames.
|
|
||||||
For this platform, it allows maximum 30MB(3MB per 1080p frame x 10
|
|
||||||
frames) memory.
|
|
||||||
-->
|
|
||||||
<VideoEditorCap maxInputFrameWidth="1920"
|
|
||||||
maxInputFrameHeight="1080" maxOutputFrameWidth="1920"
|
|
||||||
maxOutputFrameHeight="1080" maxPrefetchYUVFrames="10"/>
|
|
||||||
<!--
|
|
||||||
The VideoEditor Export codec profile and level values
|
|
||||||
correspond to the values in OMX_Video.h.
|
|
||||||
E.g. for h264, profile value 1 means OMX_VIDEO_AVCProfileBaseline
|
|
||||||
and level 4096 means OMX_VIDEO_AVCLevel41.
|
|
||||||
Please note that the values are in decimal.
|
|
||||||
These values are for video encoder.
|
|
||||||
-->
|
|
||||||
<!--
|
|
||||||
Codec = h.264, Baseline profile, level 4.0
|
|
||||||
-->
|
|
||||||
<ExportVideoProfile name="h264" profile= "1" level="2048"/>
|
|
||||||
<!--
|
|
||||||
Codec = h.263, Baseline profile, level 70
|
|
||||||
-->
|
|
||||||
<ExportVideoProfile name="h263" profile= "1" level="128"/>
|
|
||||||
<!--
|
|
||||||
Codec = mpeg4, Simple profile, level 5
|
|
||||||
-->
|
|
||||||
<ExportVideoProfile name="m4v" profile= "1" level="128"/>
|
|
||||||
</MediaSettings>
|
|
|
@ -1,645 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!-- Copyright (C) 2010 The Android Open Source Project
|
|
||||||
Copyright (C) 2012-2015 The Linux Foundation. All rights reserved.
|
|
||||||
Not a contribution.
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
-->
|
|
||||||
<!DOCTYPE MediaSettings [
|
|
||||||
<!ELEMENT MediaSettings (CamcorderProfiles,
|
|
||||||
EncoderOutputFileFormat+,
|
|
||||||
VideoEncoderCap+,
|
|
||||||
AudioEncoderCap+,
|
|
||||||
VideoDecoderCap,
|
|
||||||
AudioDecoderCap)>
|
|
||||||
<!ELEMENT CamcorderProfiles (EncoderProfile+, ImageEncoding+, ImageDecoding, Camera)>
|
|
||||||
<!ELEMENT EncoderProfile (Video, Audio)>
|
|
||||||
<!ATTLIST EncoderProfile quality (low|high|qcif|qvga|480p|720p|1080p|2160p|timelapselow|timelapsehigh|timelapseqcif|timelapseqvga|timelapse480p|timelapse720p|timelapse1080p|timelapse2160p) #REQUIRED>
|
|
||||||
<!ATTLIST EncoderProfile fileFormat (mp4|3gp) #REQUIRED>
|
|
||||||
<!ATTLIST EncoderProfile duration (30|60) #REQUIRED>
|
|
||||||
<!ATTLIST EncoderProfile cameraId (0|1) #REQUIRED>
|
|
||||||
<!ELEMENT Video EMPTY>
|
|
||||||
<!ATTLIST Video codec (h264|h263|m4v) #REQUIRED>
|
|
||||||
<!ATTLIST Video bitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST Video width CDATA #REQUIRED>
|
|
||||||
<!ATTLIST Video height CDATA #REQUIRED>
|
|
||||||
<!ATTLIST Video frameRate CDATA #REQUIRED>
|
|
||||||
<!ELEMENT Audio EMPTY>
|
|
||||||
<!ATTLIST Audio codec (amrnb|amrwb|aac|lpcm) #REQUIRED>
|
|
||||||
<!ATTLIST Audio bitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST Audio sampleRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST Audio channels (1|2) #REQUIRED>
|
|
||||||
<!ELEMENT ImageEncoding EMPTY>
|
|
||||||
<!ATTLIST ImageEncoding quality (90|80|70|60|50|40) #REQUIRED>
|
|
||||||
<!ELEMENT ImageDecoding EMPTY>
|
|
||||||
<!ATTLIST ImageDecoding memCap CDATA #REQUIRED>
|
|
||||||
<!ELEMENT Camera EMPTY>
|
|
||||||
<!ELEMENT EncoderOutputFileFormat EMPTY>
|
|
||||||
<!ATTLIST EncoderOutputFileFormat name (mp4|3gp) #REQUIRED>
|
|
||||||
<!ELEMENT VideoEncoderCap EMPTY>
|
|
||||||
<!ATTLIST VideoEncoderCap name (hevc|h264|h263|m4v|wmv) #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap enabled (true|false) #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap minBitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxBitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap minFrameWidth CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxFrameWidth CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap minFrameHeight CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxFrameHeight CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap minFrameRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxFrameRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxHFRFrameWidth CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxHFRFrameHeight CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxHFRMode CDATA #REQUIRED>
|
|
||||||
<!ELEMENT AudioEncoderCap EMPTY>
|
|
||||||
<!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac|wma|lpcm) #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap enabled (true|false) #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap minBitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap maxBitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap minSampleRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap maxSampleRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap minChannels (1|2) #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap maxChannels (1|2) #REQUIRED>
|
|
||||||
<!ELEMENT VideoDecoderCap EMPTY>
|
|
||||||
<!ATTLIST VideoDecoderCap name (wmv) #REQUIRED>
|
|
||||||
<!ATTLIST VideoDecoderCap enabled (true|false) #REQUIRED>
|
|
||||||
<!ELEMENT AudioDecoderCap EMPTY>
|
|
||||||
<!ATTLIST AudioDecoderCap name (wma) #REQUIRED>
|
|
||||||
<!ATTLIST AudioDecoderCap enabled (true|false) #REQUIRED>
|
|
||||||
<!ELEMENT VideoEditorCap EMPTY>
|
|
||||||
<!ATTLIST VideoEditorCap maxInputFrameWidth CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEditorCap maxInputFrameHeight CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEditorCap maxOutputFrameWidth CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEditorCap maxOutputFrameHeight CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEditorCap maxPrefetchYUVFrames CDATA #REQUIRED>
|
|
||||||
<!ELEMENT ExportVideoProfile EMPTY>
|
|
||||||
<!ATTLIST ExportVideoProfile name (h264|h263|m4v) #REQUIRED>
|
|
||||||
<!ATTLIST ExportVideoProfile profile CDATA #REQUIRED>
|
|
||||||
<!ATTLIST ExportVideoProfile level CDATA #REQUIRED>
|
|
||||||
]>
|
|
||||||
<!--
|
|
||||||
This file is used to declare the multimedia profiles and capabilities
|
|
||||||
on an android-powered device.
|
|
||||||
-->
|
|
||||||
<MediaSettings>
|
|
||||||
<!-- Each camcorder profile defines a set of predefined configuration parameters -->
|
|
||||||
<!-- Back Camera -->
|
|
||||||
<CamcorderProfiles cameraId="0" startOffsetMs="700">
|
|
||||||
|
|
||||||
<EncoderProfile quality="low" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="high" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="qcif" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="qvga" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="767000"
|
|
||||||
width="320"
|
|
||||||
height="240"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="480p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="3449000"
|
|
||||||
width="720"
|
|
||||||
height="480"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="12000000"
|
|
||||||
width="1280"
|
|
||||||
height="720"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="1080p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapselow" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapsehigh" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapseqvga" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="767000"
|
|
||||||
width="320"
|
|
||||||
height="240"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="3449000"
|
|
||||||
width="720"
|
|
||||||
height="480"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="12000000"
|
|
||||||
width="1280"
|
|
||||||
height="720"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<ImageEncoding quality="95" />
|
|
||||||
<ImageEncoding quality="80" />
|
|
||||||
<ImageEncoding quality="70" />
|
|
||||||
<ImageDecoding memCap="20000000" />
|
|
||||||
|
|
||||||
</CamcorderProfiles>
|
|
||||||
|
|
||||||
<!-- Front Camera -->
|
|
||||||
<CamcorderProfiles cameraId="1" startOffsetMs="700">
|
|
||||||
|
|
||||||
<EncoderProfile quality="low" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="high" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="qcif" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="qvga" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="767000"
|
|
||||||
width="320"
|
|
||||||
height="240"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="480p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="3449000"
|
|
||||||
width="720"
|
|
||||||
height="480"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="12000000"
|
|
||||||
width="1280"
|
|
||||||
height="720"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="1080p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapselow" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapsehigh" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapseqvga" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="767000"
|
|
||||||
width="320"
|
|
||||||
height="240"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="3449000"
|
|
||||||
width="720"
|
|
||||||
height="480"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="12000000"
|
|
||||||
width="1280"
|
|
||||||
height="720"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<ImageEncoding quality="95" />
|
|
||||||
<ImageEncoding quality="80" />
|
|
||||||
<ImageEncoding quality="70" />
|
|
||||||
<ImageDecoding memCap="20000000" />
|
|
||||||
|
|
||||||
</CamcorderProfiles>
|
|
||||||
|
|
||||||
<EncoderOutputFileFormat name="3gp" />
|
|
||||||
<EncoderOutputFileFormat name="mp4" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
If a codec is not enabled, it is invisible to the applications
|
|
||||||
In other words, the applications won't be able to use the codec
|
|
||||||
or query the capabilities of the codec at all if it is disabled
|
|
||||||
-->
|
|
||||||
<VideoEncoderCap name="h264" enabled="true"
|
|
||||||
minBitRate="64000" maxBitRate="50000000"
|
|
||||||
minFrameWidth="176" maxFrameWidth="3840"
|
|
||||||
minFrameHeight="144" maxFrameHeight="2160"
|
|
||||||
minFrameRate="1" maxFrameRate="30"
|
|
||||||
maxHFRFrameWidth="1920" maxHFRFrameHeight="1080"
|
|
||||||
maxHFRMode="120" />
|
|
||||||
|
|
||||||
<VideoEncoderCap name="h263" enabled="true"
|
|
||||||
minBitRate="64000" maxBitRate="2000000"
|
|
||||||
minFrameWidth="176" maxFrameWidth="800"
|
|
||||||
minFrameHeight="144" maxFrameHeight="480"
|
|
||||||
minFrameRate="1" maxFrameRate="30"
|
|
||||||
maxHFRFrameWidth="0" maxHFRFrameHeight="0"
|
|
||||||
maxHFRMode="0" />
|
|
||||||
|
|
||||||
<VideoEncoderCap name="m4v" enabled="true"
|
|
||||||
minBitRate="64000" maxBitRate="40000000"
|
|
||||||
minFrameWidth="176" maxFrameWidth="1920"
|
|
||||||
minFrameHeight="144" maxFrameHeight="1080"
|
|
||||||
minFrameRate="1" maxFrameRate="30"
|
|
||||||
maxHFRFrameWidth="0" maxHFRFrameHeight="0"
|
|
||||||
maxHFRMode="0" />
|
|
||||||
|
|
||||||
<VideoEncoderCap name="hevc" enabled="true"
|
|
||||||
minBitRate="64000" maxBitRate="50000000"
|
|
||||||
minFrameWidth="176" maxFrameWidth="3840"
|
|
||||||
minFrameHeight="144" maxFrameHeight="2160"
|
|
||||||
minFrameRate="1" maxFrameRate="30"
|
|
||||||
maxHFRFrameWidth="0" maxHFRFrameHeight="0"
|
|
||||||
maxHFRMode="0" />
|
|
||||||
|
|
||||||
<AudioEncoderCap name="aac" enabled="true"
|
|
||||||
minBitRate="8192" maxBitRate="256000"
|
|
||||||
minSampleRate="8000" maxSampleRate="48000"
|
|
||||||
minChannels="1" maxChannels="2" />
|
|
||||||
|
|
||||||
<AudioEncoderCap name="heaac" enabled="true"
|
|
||||||
minBitRate="8000" maxBitRate="64000"
|
|
||||||
minSampleRate="16000" maxSampleRate="48000"
|
|
||||||
minChannels="1" maxChannels="1" />
|
|
||||||
|
|
||||||
<AudioEncoderCap name="aaceld" enabled="true"
|
|
||||||
minBitRate="16000" maxBitRate="192000"
|
|
||||||
minSampleRate="16000" maxSampleRate="48000"
|
|
||||||
minChannels="1" maxChannels="1" />
|
|
||||||
|
|
||||||
<AudioEncoderCap name="amrwb" enabled="true"
|
|
||||||
minBitRate="6600" maxBitRate="23850"
|
|
||||||
minSampleRate="16000" maxSampleRate="16000"
|
|
||||||
minChannels="1" maxChannels="1" />
|
|
||||||
|
|
||||||
<AudioEncoderCap name="amrnb" enabled="true"
|
|
||||||
minBitRate="5525" maxBitRate="12200"
|
|
||||||
minSampleRate="8000" maxSampleRate="8000"
|
|
||||||
minChannels="1" maxChannels="1" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
FIXME:
|
|
||||||
We do not check decoder capabilities at present
|
|
||||||
At present, we only check whether windows media is visible
|
|
||||||
for TEST applications. For other applications, we do
|
|
||||||
not perform any checks at all.
|
|
||||||
-->
|
|
||||||
<VideoDecoderCap name="wmv" enabled="true"/>
|
|
||||||
<AudioDecoderCap name="wma" enabled="true"/>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The VideoEditor Capability configuration:
|
|
||||||
- maxInputFrameWidth: maximum video width of imported video clip.
|
|
||||||
- maxInputFrameHeight: maximum video height of imported video clip.
|
|
||||||
- maxOutputFrameWidth: maximum video width of exported video clip.
|
|
||||||
- maxOutputFrameHeight: maximum video height of exported video clip.
|
|
||||||
- maxPrefetchYUVFrames: maximum prefetch YUV frames for encoder,
|
|
||||||
used to limit the amount of memory for prefetched YUV frames.
|
|
||||||
For this platform, it allows maximum 30MB(3MB per 1080p frame x 10
|
|
||||||
frames) memory.
|
|
||||||
-->
|
|
||||||
<VideoEditorCap maxInputFrameWidth="1920"
|
|
||||||
maxInputFrameHeight="1088" maxOutputFrameWidth="1920"
|
|
||||||
maxOutputFrameHeight="1088" maxPrefetchYUVFrames="10"/>
|
|
||||||
<!--
|
|
||||||
The VideoEditor Export codec profile and level values
|
|
||||||
correspond to the values in OMX_Video.h.
|
|
||||||
E.g. for h264, profile value 1 means OMX_VIDEO_AVCProfileBaseline
|
|
||||||
and level 4096 means OMX_VIDEO_AVCLevel41.
|
|
||||||
Please note that the values are in decimal.
|
|
||||||
These values are for video encoder.
|
|
||||||
-->
|
|
||||||
<!--
|
|
||||||
Codec = h.264, Baseline profile, level 4.0
|
|
||||||
-->
|
|
||||||
<ExportVideoProfile name="h264" profile= "1" level="2048"/>
|
|
||||||
<!--
|
|
||||||
Codec = h.263, Baseline profile, level 70
|
|
||||||
-->
|
|
||||||
<ExportVideoProfile name="h263" profile= "1" level="128"/>
|
|
||||||
<!--
|
|
||||||
Codec = mpeg4, Simple profile, level 5
|
|
||||||
-->
|
|
||||||
<ExportVideoProfile name="m4v" profile= "1" level="128"/>
|
|
||||||
</MediaSettings>
|
|
|
@ -1,645 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!-- Copyright (C) 2010 The Android Open Source Project
|
|
||||||
Copyright (C) 2012-2015 The Linux Foundation. All rights reserved.
|
|
||||||
Not a contribution.
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
-->
|
|
||||||
<!DOCTYPE MediaSettings [
|
|
||||||
<!ELEMENT MediaSettings (CamcorderProfiles,
|
|
||||||
EncoderOutputFileFormat+,
|
|
||||||
VideoEncoderCap+,
|
|
||||||
AudioEncoderCap+,
|
|
||||||
VideoDecoderCap,
|
|
||||||
AudioDecoderCap)>
|
|
||||||
<!ELEMENT CamcorderProfiles (EncoderProfile+, ImageEncoding+, ImageDecoding, Camera)>
|
|
||||||
<!ELEMENT EncoderProfile (Video, Audio)>
|
|
||||||
<!ATTLIST EncoderProfile quality (low|high|qcif|qvga|480p|720p|1080p|2160p|timelapselow|timelapsehigh|timelapseqcif|timelapseqvga|timelapse480p|timelapse720p|timelapse1080p|timelapse2160p) #REQUIRED>
|
|
||||||
<!ATTLIST EncoderProfile fileFormat (mp4|3gp) #REQUIRED>
|
|
||||||
<!ATTLIST EncoderProfile duration (30|60) #REQUIRED>
|
|
||||||
<!ATTLIST EncoderProfile cameraId (0|1) #REQUIRED>
|
|
||||||
<!ELEMENT Video EMPTY>
|
|
||||||
<!ATTLIST Video codec (h264|h263|m4v) #REQUIRED>
|
|
||||||
<!ATTLIST Video bitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST Video width CDATA #REQUIRED>
|
|
||||||
<!ATTLIST Video height CDATA #REQUIRED>
|
|
||||||
<!ATTLIST Video frameRate CDATA #REQUIRED>
|
|
||||||
<!ELEMENT Audio EMPTY>
|
|
||||||
<!ATTLIST Audio codec (amrnb|amrwb|aac|lpcm) #REQUIRED>
|
|
||||||
<!ATTLIST Audio bitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST Audio sampleRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST Audio channels (1|2) #REQUIRED>
|
|
||||||
<!ELEMENT ImageEncoding EMPTY>
|
|
||||||
<!ATTLIST ImageEncoding quality (90|80|70|60|50|40) #REQUIRED>
|
|
||||||
<!ELEMENT ImageDecoding EMPTY>
|
|
||||||
<!ATTLIST ImageDecoding memCap CDATA #REQUIRED>
|
|
||||||
<!ELEMENT Camera EMPTY>
|
|
||||||
<!ELEMENT EncoderOutputFileFormat EMPTY>
|
|
||||||
<!ATTLIST EncoderOutputFileFormat name (mp4|3gp) #REQUIRED>
|
|
||||||
<!ELEMENT VideoEncoderCap EMPTY>
|
|
||||||
<!ATTLIST VideoEncoderCap name (hevc|h264|h263|m4v|wmv) #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap enabled (true|false) #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap minBitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxBitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap minFrameWidth CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxFrameWidth CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap minFrameHeight CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxFrameHeight CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap minFrameRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxFrameRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxHFRFrameWidth CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxHFRFrameHeight CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEncoderCap maxHFRMode CDATA #REQUIRED>
|
|
||||||
<!ELEMENT AudioEncoderCap EMPTY>
|
|
||||||
<!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac|wma|lpcm) #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap enabled (true|false) #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap minBitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap maxBitRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap minSampleRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap maxSampleRate CDATA #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap minChannels (1|2) #REQUIRED>
|
|
||||||
<!ATTLIST AudioEncoderCap maxChannels (1|2) #REQUIRED>
|
|
||||||
<!ELEMENT VideoDecoderCap EMPTY>
|
|
||||||
<!ATTLIST VideoDecoderCap name (wmv) #REQUIRED>
|
|
||||||
<!ATTLIST VideoDecoderCap enabled (true|false) #REQUIRED>
|
|
||||||
<!ELEMENT AudioDecoderCap EMPTY>
|
|
||||||
<!ATTLIST AudioDecoderCap name (wma) #REQUIRED>
|
|
||||||
<!ATTLIST AudioDecoderCap enabled (true|false) #REQUIRED>
|
|
||||||
<!ELEMENT VideoEditorCap EMPTY>
|
|
||||||
<!ATTLIST VideoEditorCap maxInputFrameWidth CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEditorCap maxInputFrameHeight CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEditorCap maxOutputFrameWidth CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEditorCap maxOutputFrameHeight CDATA #REQUIRED>
|
|
||||||
<!ATTLIST VideoEditorCap maxPrefetchYUVFrames CDATA #REQUIRED>
|
|
||||||
<!ELEMENT ExportVideoProfile EMPTY>
|
|
||||||
<!ATTLIST ExportVideoProfile name (h264|h263|m4v) #REQUIRED>
|
|
||||||
<!ATTLIST ExportVideoProfile profile CDATA #REQUIRED>
|
|
||||||
<!ATTLIST ExportVideoProfile level CDATA #REQUIRED>
|
|
||||||
]>
|
|
||||||
<!--
|
|
||||||
This file is used to declare the multimedia profiles and capabilities
|
|
||||||
on an android-powered device.
|
|
||||||
-->
|
|
||||||
<MediaSettings>
|
|
||||||
<!-- Each camcorder profile defines a set of predefined configuration parameters -->
|
|
||||||
<!-- Back Camera -->
|
|
||||||
<CamcorderProfiles cameraId="0" startOffsetMs="700">
|
|
||||||
|
|
||||||
<EncoderProfile quality="low" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="high" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="qcif" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="qvga" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="767000"
|
|
||||||
width="320"
|
|
||||||
height="240"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="480p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="3449000"
|
|
||||||
width="720"
|
|
||||||
height="480"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="12000000"
|
|
||||||
width="1280"
|
|
||||||
height="720"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="1080p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapselow" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapsehigh" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapseqvga" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="767000"
|
|
||||||
width="320"
|
|
||||||
height="240"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="3449000"
|
|
||||||
width="720"
|
|
||||||
height="480"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="12000000"
|
|
||||||
width="1280"
|
|
||||||
height="720"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<ImageEncoding quality="95" />
|
|
||||||
<ImageEncoding quality="80" />
|
|
||||||
<ImageEncoding quality="70" />
|
|
||||||
<ImageDecoding memCap="20000000" />
|
|
||||||
|
|
||||||
</CamcorderProfiles>
|
|
||||||
|
|
||||||
<!-- Front Camera -->
|
|
||||||
<CamcorderProfiles cameraId="1" startOffsetMs="700">
|
|
||||||
|
|
||||||
<EncoderProfile quality="low" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="high" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="qcif" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="qvga" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="767000"
|
|
||||||
width="320"
|
|
||||||
height="240"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="480p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="3449000"
|
|
||||||
width="720"
|
|
||||||
height="480"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="12000000"
|
|
||||||
width="1280"
|
|
||||||
height="720"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="1080p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapselow" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapsehigh" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="384000"
|
|
||||||
width="176"
|
|
||||||
height="144"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapseqvga" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="767000"
|
|
||||||
width="320"
|
|
||||||
height="240"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="128000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="3449000"
|
|
||||||
width="720"
|
|
||||||
height="480"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="12000000"
|
|
||||||
width="1280"
|
|
||||||
height="720"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30">
|
|
||||||
<Video codec="h264"
|
|
||||||
bitRate="17000000"
|
|
||||||
width="1920"
|
|
||||||
height="1080"
|
|
||||||
frameRate="30" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The Audio part of the profile will not be used since time lapse mode
|
|
||||||
does not capture audio
|
|
||||||
-->
|
|
||||||
<Audio codec="aac"
|
|
||||||
bitRate="256000"
|
|
||||||
sampleRate="48000"
|
|
||||||
channels="2" />
|
|
||||||
</EncoderProfile>
|
|
||||||
|
|
||||||
<ImageEncoding quality="95" />
|
|
||||||
<ImageEncoding quality="80" />
|
|
||||||
<ImageEncoding quality="70" />
|
|
||||||
<ImageDecoding memCap="20000000" />
|
|
||||||
|
|
||||||
</CamcorderProfiles>
|
|
||||||
|
|
||||||
<EncoderOutputFileFormat name="3gp" />
|
|
||||||
<EncoderOutputFileFormat name="mp4" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
If a codec is not enabled, it is invisible to the applications
|
|
||||||
In other words, the applications won't be able to use the codec
|
|
||||||
or query the capabilities of the codec at all if it is disabled
|
|
||||||
-->
|
|
||||||
<VideoEncoderCap name="h264" enabled="true"
|
|
||||||
minBitRate="64000" maxBitRate="50000000"
|
|
||||||
minFrameWidth="176" maxFrameWidth="3840"
|
|
||||||
minFrameHeight="144" maxFrameHeight="2160"
|
|
||||||
minFrameRate="1" maxFrameRate="30"
|
|
||||||
maxHFRFrameWidth="1920" maxHFRFrameHeight="1080"
|
|
||||||
maxHFRMode="120" />
|
|
||||||
|
|
||||||
<VideoEncoderCap name="h263" enabled="true"
|
|
||||||
minBitRate="64000" maxBitRate="2000000"
|
|
||||||
minFrameWidth="176" maxFrameWidth="800"
|
|
||||||
minFrameHeight="144" maxFrameHeight="480"
|
|
||||||
minFrameRate="1" maxFrameRate="30"
|
|
||||||
maxHFRFrameWidth="0" maxHFRFrameHeight="0"
|
|
||||||
maxHFRMode="0" />
|
|
||||||
|
|
||||||
<VideoEncoderCap name="m4v" enabled="true"
|
|
||||||
minBitRate="64000" maxBitRate="40000000"
|
|
||||||
minFrameWidth="176" maxFrameWidth="1920"
|
|
||||||
minFrameHeight="144" maxFrameHeight="1080"
|
|
||||||
minFrameRate="1" maxFrameRate="30"
|
|
||||||
maxHFRFrameWidth="0" maxHFRFrameHeight="0"
|
|
||||||
maxHFRMode="0" />
|
|
||||||
|
|
||||||
<VideoEncoderCap name="hevc" enabled="true"
|
|
||||||
minBitRate="64000" maxBitRate="50000000"
|
|
||||||
minFrameWidth="176" maxFrameWidth="3840"
|
|
||||||
minFrameHeight="144" maxFrameHeight="2160"
|
|
||||||
minFrameRate="1" maxFrameRate="30"
|
|
||||||
maxHFRFrameWidth="0" maxHFRFrameHeight="0"
|
|
||||||
maxHFRMode="0" />
|
|
||||||
|
|
||||||
<AudioEncoderCap name="aac" enabled="true"
|
|
||||||
minBitRate="8192" maxBitRate="256000"
|
|
||||||
minSampleRate="8000" maxSampleRate="48000"
|
|
||||||
minChannels="1" maxChannels="2" />
|
|
||||||
|
|
||||||
<AudioEncoderCap name="heaac" enabled="true"
|
|
||||||
minBitRate="8000" maxBitRate="64000"
|
|
||||||
minSampleRate="16000" maxSampleRate="48000"
|
|
||||||
minChannels="1" maxChannels="1" />
|
|
||||||
|
|
||||||
<AudioEncoderCap name="aaceld" enabled="true"
|
|
||||||
minBitRate="16000" maxBitRate="192000"
|
|
||||||
minSampleRate="16000" maxSampleRate="48000"
|
|
||||||
minChannels="1" maxChannels="1" />
|
|
||||||
|
|
||||||
<AudioEncoderCap name="amrwb" enabled="true"
|
|
||||||
minBitRate="6600" maxBitRate="23850"
|
|
||||||
minSampleRate="16000" maxSampleRate="16000"
|
|
||||||
minChannels="1" maxChannels="1" />
|
|
||||||
|
|
||||||
<AudioEncoderCap name="amrnb" enabled="true"
|
|
||||||
minBitRate="5525" maxBitRate="12200"
|
|
||||||
minSampleRate="8000" maxSampleRate="8000"
|
|
||||||
minChannels="1" maxChannels="1" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
FIXME:
|
|
||||||
We do not check decoder capabilities at present
|
|
||||||
At present, we only check whether windows media is visible
|
|
||||||
for TEST applications. For other applications, we do
|
|
||||||
not perform any checks at all.
|
|
||||||
-->
|
|
||||||
<VideoDecoderCap name="wmv" enabled="true"/>
|
|
||||||
<AudioDecoderCap name="wma" enabled="true"/>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
The VideoEditor Capability configuration:
|
|
||||||
- maxInputFrameWidth: maximum video width of imported video clip.
|
|
||||||
- maxInputFrameHeight: maximum video height of imported video clip.
|
|
||||||
- maxOutputFrameWidth: maximum video width of exported video clip.
|
|
||||||
- maxOutputFrameHeight: maximum video height of exported video clip.
|
|
||||||
- maxPrefetchYUVFrames: maximum prefetch YUV frames for encoder,
|
|
||||||
used to limit the amount of memory for prefetched YUV frames.
|
|
||||||
For this platform, it allows maximum 30MB(3MB per 1080p frame x 10
|
|
||||||
frames) memory.
|
|
||||||
-->
|
|
||||||
<VideoEditorCap maxInputFrameWidth="1920"
|
|
||||||
maxInputFrameHeight="1088" maxOutputFrameWidth="1920"
|
|
||||||
maxOutputFrameHeight="1088" maxPrefetchYUVFrames="10"/>
|
|
||||||
<!--
|
|
||||||
The VideoEditor Export codec profile and level values
|
|
||||||
correspond to the values in OMX_Video.h.
|
|
||||||
E.g. for h264, profile value 1 means OMX_VIDEO_AVCProfileBaseline
|
|
||||||
and level 4096 means OMX_VIDEO_AVCLevel41.
|
|
||||||
Please note that the values are in decimal.
|
|
||||||
These values are for video encoder.
|
|
||||||
-->
|
|
||||||
<!--
|
|
||||||
Codec = h.264, Baseline profile, level 4.0
|
|
||||||
-->
|
|
||||||
<ExportVideoProfile name="h264" profile= "1" level="2048"/>
|
|
||||||
<!--
|
|
||||||
Codec = h.263, Baseline profile, level 70
|
|
||||||
-->
|
|
||||||
<ExportVideoProfile name="h263" profile= "1" level="128"/>
|
|
||||||
<!--
|
|
||||||
Codec = mpeg4, Simple profile, level 5
|
|
||||||
-->
|
|
||||||
<ExportVideoProfile name="m4v" profile= "1" level="128"/>
|
|
||||||
</MediaSettings>
|
|
Loading…
Reference in a new issue