sm6225-common: Import media configs
- from hawao S2SE32.28-41-1 Change-Id: I352ad94c8157e02da676b592ca655ac285e5c051
This commit is contained in:
parent
046c6a0f55
commit
e0697d573b
16 changed files with 8687 additions and 0 deletions
28
bengal.mk
28
bengal.mk
|
@ -73,6 +73,34 @@ PRODUCT_PACKAGES += \
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
fs_config_files
|
fs_config_files
|
||||||
|
|
||||||
|
# Media - Configs
|
||||||
|
PRODUCT_COPY_FILES += \
|
||||||
|
$(LOCAL_PATH)/media/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
|
||||||
|
$(LOCAL_PATH)/media/media_codecs_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \
|
||||||
|
$(LOCAL_PATH)/media/media_codecs_performance_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_v1.xml \
|
||||||
|
$(LOCAL_PATH)/media/media_codecs_performance_v2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_v2.xml \
|
||||||
|
$(LOCAL_PATH)/media/media_codecs_performance_v3.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_v3.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_vendor_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_v1.xml \
|
||||||
|
$(LOCAL_PATH)/media/media_codecs_vendor_v2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_v2.xml \
|
||||||
|
$(LOCAL_PATH)/media/media_codecs_vendor_v3.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_v3.xml \
|
||||||
|
$(LOCAL_PATH)/media/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles.xml \
|
||||||
|
$(LOCAL_PATH)/media/media_profiles_V1_0.xml:$(TARGET_COPY_OUT_ODM)/etc/media_profiles_V1_0.xml \
|
||||||
|
$(LOCAL_PATH)/media/media_profiles_V1_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml \
|
||||||
|
$(LOCAL_PATH)/media/media_profiles_khaje.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_khaje.xml \
|
||||||
|
$(LOCAL_PATH)/media/media_profiles_scuba.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_scuba.xml \
|
||||||
|
$(LOCAL_PATH)/media/media_profiles_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_vendor.xml
|
||||||
|
|
||||||
|
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_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2.xml \
|
||||||
|
frameworks/av/media/libstagefright/data/media_codecs_google_c2_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2_audio.xml \
|
||||||
|
frameworks/av/media/libstagefright/data/media_codecs_google_c2_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2_video.xml \
|
||||||
|
frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \
|
||||||
|
frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \
|
||||||
|
frameworks/av/media/libstagefright/data/media_codecs_google_video_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video_le.xml
|
||||||
|
|
||||||
# Overlay
|
# Overlay
|
||||||
DEVICE_PACKAGE_OVERLAYS += \
|
DEVICE_PACKAGE_OVERLAYS += \
|
||||||
$(LOCAL_PATH)/overlay
|
$(LOCAL_PATH)/overlay
|
||||||
|
|
360
media/media_codecs.xml
Normal file
360
media/media_codecs.xml
Normal file
|
@ -0,0 +1,360 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Copyright (C) 2012-2020 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.
|
||||||
|
|
||||||
|
|
||||||
|
-->
|
||||||
|
<!--
|
||||||
|
Non-Secure decoder capabilities
|
||||||
|
(MB is defined as 16x16)
|
||||||
|
|
||||||
|
_______________________________________________________
|
||||||
|
| Codec | W H fps Mbps MB/s |
|
||||||
|
|_____________|_________________________________________|
|
||||||
|
| h264 | 1920 1088 60 60 489600 |
|
||||||
|
| hevc | 1920 1080 60 60 489600 |
|
||||||
|
| vp9 | 1920 1088 60 60 489600 |
|
||||||
|
| mpeg4-sw | 1920 1088 30 40 244800 |
|
||||||
|
| h263-sw | 864 480 30 16 48600 |
|
||||||
|
|_____________|_________________________________________|
|
||||||
|
|
||||||
|
Secure decoder capabilities
|
||||||
|
(MB is defined as 16x16)
|
||||||
|
|
||||||
|
_____________________________________________________
|
||||||
|
| Codec | W H fps Mbps MB/s |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
| h264 | 1920 1088 60 35 489600 |
|
||||||
|
| vp9 | 1920 1088 60 35 489600 |
|
||||||
|
| hevc | 1920 1088 60 35 489600 |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
|
||||||
|
|
||||||
|
Non-Secure encoder capabilities (Secure not supported)
|
||||||
|
(MB is defined as 16x16)
|
||||||
|
|
||||||
|
______________________________________________________
|
||||||
|
| Codec | W H fps Mbps MB/s |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
| h264 | 1920 1088 60 60 489600 |
|
||||||
|
| hevc | 1920 1088 60 60 489600 |
|
||||||
|
| mpeg4-sw | 864 480 30 8 48600 |
|
||||||
|
| h263-sw | 864 480 30 2 48600 |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
-->
|
||||||
|
|
||||||
|
<MediaCodecs>
|
||||||
|
<Include href="media_codecs_google_audio.xml" />
|
||||||
|
<!-- <Include href="media_codecs_dolby_audio.xml" /> -->
|
||||||
|
<Include href="media_codecs_google_telephony.xml" />
|
||||||
|
<Settings>
|
||||||
|
<Setting name="max-video-encoder-input-buffers" value="11" />
|
||||||
|
</Settings>
|
||||||
|
<Encoders>
|
||||||
|
<!-- 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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="60" />
|
||||||
|
<Limit name="performance-point-1280x720" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="quality" range="0-100" default="80" />
|
||||||
|
<Feature name="bitrate-modes" value="VBR,CBR" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="60" />
|
||||||
|
<Limit name="performance-point-1280x720" value="120" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.hevc.cq" type="video/hevc" >
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<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="512x512" max="512x512" />
|
||||||
|
<Limit name="frame-rate" range="1-20" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="quality" range="0-100" default="80" />
|
||||||
|
<Feature name="bitrate-modes" value="CQ" />
|
||||||
|
<Limit name="performance-point-512x512" value="2025" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.heic" type="image/vnd.android.heic" >
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<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="512x512" max="8192x8192" />
|
||||||
|
<Limit name="frame-rate" range="1-20" />
|
||||||
|
<Limit name="concurrent-instances" max="6" />
|
||||||
|
<Limit name="quality" range="0-100" default="80" />
|
||||||
|
<Feature name="bitrate-modes" value="CQ" />
|
||||||
|
<Limit name="performance-point-8192x4320" value="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="6" />
|
||||||
|
</MediaCodec>
|
||||||
|
<!-- Video Software -->
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.h263sw" 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="96x96" max="864x480" />
|
||||||
|
<Limit name="alignment" value="4x4" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||||
|
<Limit name="bitrate" range="1-2000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="performance-point-720x480" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" 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="96x96" max="864x480" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||||
|
<Limit name="bitrate" range="1-8000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="performance-point-720x480" value="30" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="60" />
|
||||||
|
<Limit name="performance-point-1280x720" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-35000000" />
|
||||||
|
<Limit name="frame-rate" range="1-60" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="secure-playback" required="true" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="6" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="60" />
|
||||||
|
<Limit name="performance-point-1280x720" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-35000000" />
|
||||||
|
<Limit name="frame-rate" range="1-60" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="secure-playback" required="true" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="60" />
|
||||||
|
<Limit name="performance-point-1280x720" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-35000000" />
|
||||||
|
<Limit name="frame-rate" range="1-60" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="secure-playback" required="true" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<!-- Video Software -->
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.h263sw" type="video/3gpp" >
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<Quirk name="requires-allocate-on-output-ports" />
|
||||||
|
<Limit name="size" min="96x96" max="864x480" />
|
||||||
|
<Limit name="alignment" value="4x4" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||||
|
<Limit name="bitrate" range="1-16000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="4" />
|
||||||
|
<Limit name="performance-point-720x480" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es">
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<Quirk name="requires-allocate-on-output-ports" />
|
||||||
|
<Limit name="size" min="96x96" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-40000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="4" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true">
|
||||||
|
<!-- profiles and levels: ProfileMain : MainTierLevel51 -->
|
||||||
|
<Limit name="size" min="2x2" max="1280x720" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="8x8" />
|
||||||
|
<Limit name="block-count" range="1-14400" />
|
||||||
|
<Limit name="blocks-per-second" range="1-432000" />
|
||||||
|
<Limit name="bitrate" range="1-2000000" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.avc.decoder" type="video/avc" update="true">
|
||||||
|
<!-- profiles and levels: ProfileHigh : Level51 -->
|
||||||
|
<Limit name="size" min="2x2" max="1280x720" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="block-count" range="1-3600" />
|
||||||
|
<Limit name="blocks-per-second" range="1-108000" />
|
||||||
|
<Limit name="bitrate" range="1-20000000" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
</MediaCodec>
|
||||||
|
</Decoders>
|
||||||
|
<Include href="media_codecs_google_video.xml" />
|
||||||
|
</MediaCodecs>
|
179
media/media_codecs_performance.xml
Normal file
179
media/media_codecs_performance.xml
Normal file
|
@ -0,0 +1,179 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<!--
|
||||||
|
Copyright (c) 2015-2017, 2019-2020 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.
|
||||||
|
u 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="138-185" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="90-123" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="59-86" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="59-72" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.hevc" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="137-188" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="88-116" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="59-75" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="43-49" />
|
||||||
|
<Limit name="measured-frame-rate-3840x2160" range="20-27" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.hevc.cq" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="226-226" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.h263sw" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="155-212" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="51-77" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="68-101" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="44-59" />
|
||||||
|
<Limit name="measured-frame-rate-640x480" range="73-83" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="30-50" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.h264.encoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="215-215" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="100-100" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="56-56" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="30-30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.h263.encoder" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="200-210" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.mpeg4.encoder" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="250-320" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.avc.encoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="220-289" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="98-106" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="60-65" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="32-33" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.hevc.encoder" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="29-33" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="7-10" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="3-6" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="2-3" />
|
||||||
|
<Limit name="measured-frame-rate-3840x2160" range="1-2" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.h263.encoder" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="189-233" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.mpeg4.encoder" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="199-228" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="132-169" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="80-95" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="34-35" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="21-22" />
|
||||||
|
</MediaCodec>
|
||||||
|
</Encoders>
|
||||||
|
<Decoders>
|
||||||
|
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="223-314" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="190-307" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="178-217" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="98-102" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="237-330" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="260-313" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="234-321" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="190-231" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="130-150" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.h263sw" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="325-489" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="271-337" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="418-551" />
|
||||||
|
<Limit name="measured-frame-rate-480x360" range="245-265" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="80-200" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="377-377" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="288-367" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="201-209" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="124-124" />
|
||||||
|
<Limit name="measured-frame-rate-3840x2160" range="51-51" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.h264.decoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="270-310" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="68-68" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="32-32" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="6-10" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.h263.decoder" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="104-279" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="200-200" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.hevc.decoder" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="520-650" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="145-190" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="235-245" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="88-100" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="48-52" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.mpeg4.decoder" update="true">
|
||||||
|
<Type name="video/mp4v-es">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="430-450" />
|
||||||
|
</Type>
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="640-720" />
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="200-230" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="81-90" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="60-85" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="33-55" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.avc.decoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="63-165" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="42-59" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="17-24" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="8-12" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="67-232" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="57-89" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="69-99" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="35-51" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="20-29" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.h263.decoder" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="206-224" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="200-215" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.mpeg4.decoder" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="200-300" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="205-232" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="253-284" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="30-35" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="182-360" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="85-200" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="35-49" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="23-33" />
|
||||||
|
</MediaCodec>
|
||||||
|
</Decoders>
|
||||||
|
</MediaCodecs>
|
179
media/media_codecs_performance_v1.xml
Normal file
179
media/media_codecs_performance_v1.xml
Normal file
|
@ -0,0 +1,179 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<!--
|
||||||
|
Copyright (c) 2015-2017, 2019-2020 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.
|
||||||
|
u 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="55-65" />
|
||||||
|
</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="55-65" />
|
||||||
|
<Limit name="measured-frame-rate-3840x2160" range="20-27" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.hevc.cq" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="226-226" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.h263sw" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="60-90" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="55-85" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="125-135" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="55-85" />
|
||||||
|
<Limit name="measured-frame-rate-640x480" range="47-52" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="30-50" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.h264.encoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="215-215" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="100-100" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="56-56" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="30-30" />
|
||||||
|
</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="250-320" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.avc.encoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="124-176" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="53-76" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="35-50" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="19-28" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.hevc.encoder" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="17-24" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="7-10" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="3-6" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="2-3" />
|
||||||
|
<Limit name="measured-frame-rate-3840x2160" range="1-2" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.h263.encoder" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="130-175" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.mpeg4.encoder" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="119-168" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="85-119" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="41-65" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="21-30" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="10-15" />
|
||||||
|
</MediaCodec>
|
||||||
|
</Encoders>
|
||||||
|
<Decoders>
|
||||||
|
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="480-510" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="460-490" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="350-400" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1088" range="180-190" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="510-530" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="465-620" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="200-390" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="210-230" />
|
||||||
|
<Limit name="measured-frame-rate-3840x2160" range="65-75" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.h263sw" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="356-356" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="292-292" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="418-551" />
|
||||||
|
<Limit name="measured-frame-rate-480x360" range="245-265" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="80-200" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="377-377" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="323-323" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="262-262" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="220-220" />
|
||||||
|
<Limit name="measured-frame-rate-3840x2160" range="51-51" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.h264.decoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="270-310" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="68-68" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="32-32" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="6-10" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.h263.decoder" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="104-279" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="200-200" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.hevc.decoder" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="520-650" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="145-190" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="235-245" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="88-100" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="48-52" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.mpeg4.decoder" update="true">
|
||||||
|
<Type name="video/mp4v-es">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="430-450" />
|
||||||
|
</Type>
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="640-720" />
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="200-230" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="81-90" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="60-85" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="33-55" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.avc.decoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="63-165" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="42-59" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="17-24" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="8-12" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="67-232" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="57-89" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="69-99" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="35-51" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="20-29" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.h263.decoder" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="376-524" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="310-415" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.mpeg4.decoder" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="406-543" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="160-480" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="133-184" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="15-22" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="182-360" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="85-200" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="35-49" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="23-33" />
|
||||||
|
</MediaCodec>
|
||||||
|
</Decoders>
|
||||||
|
</MediaCodecs>
|
177
media/media_codecs_performance_v2.xml
Normal file
177
media/media_codecs_performance_v2.xml
Normal file
|
@ -0,0 +1,177 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<!--
|
||||||
|
Copyright (c) 2015-2017, 2019-2020 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.
|
||||||
|
u 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="55-65" />
|
||||||
|
</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="55-65" />
|
||||||
|
<Limit name="measured-frame-rate-3840x2160" range="20-27" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.hevc.cq" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="226-226" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.h263sw" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="150-240" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="80-160" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="120-290" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="55-85" />
|
||||||
|
<Limit name="measured-frame-rate-640x480" range="47-52" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="30-50" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.h264.encoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="215-215" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="100-100" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="56-56" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="30-30" />
|
||||||
|
</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="250-320" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.avc.encoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="124-176" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="53-76" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="35-50" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="19-28" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.hevc.encoder" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="17-24" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="8-11" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.h263.encoder" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="320-345" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.mpeg4.encoder" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="300-340" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="85-119" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="41-65" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="21-30" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="10-15" />
|
||||||
|
</MediaCodec>
|
||||||
|
</Encoders>
|
||||||
|
<Decoders>
|
||||||
|
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="440-990" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="460-490" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="350-400" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1088" range="180-190" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="510-530" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="465-620" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="200-390" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="210-230" />
|
||||||
|
<Limit name="measured-frame-rate-3840x2160" range="65-75" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.h263sw" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="356-356" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="292-292" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="270-295" />
|
||||||
|
<Limit name="measured-frame-rate-480x360" range="245-265" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="80-200" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="820-850"/>
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="377-377" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="323-323" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="262-262" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="65-72" />
|
||||||
|
<Limit name="measured-frame-rate-3840x2160" range="51-51" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.h264.decoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="270-310" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="68-68" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="32-32" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="6-10" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.h263.decoder" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="104-279" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="200-200" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.hevc.decoder" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="520-650" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="145-190" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="235-245" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="88-100" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="48-52" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.mpeg4.decoder" update="true">
|
||||||
|
<Type name="video/mp4v-es">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="430-450" />
|
||||||
|
</Type>
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="640-720" />
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="200-230" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="81-90" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="60-85" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="33-55" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.avc.decoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="63-165" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="42-59" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="17-24" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="8-12" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="67-232" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="57-89" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="69-99" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="35-51" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="20-29" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.h263.decoder" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="376-524" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="310-415" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.mpeg4.decoder" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="406-543" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="160-480" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="133-184" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="15-22" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="182-360" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="85-200" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="35-49" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="23-33" />
|
||||||
|
</MediaCodec>
|
||||||
|
</Decoders>
|
||||||
|
</MediaCodecs>
|
179
media/media_codecs_performance_v3.xml
Normal file
179
media/media_codecs_performance_v3.xml
Normal file
|
@ -0,0 +1,179 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<!--
|
||||||
|
Copyright (c) 2015-2017, 2019-2021 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.
|
||||||
|
u 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="55-65" />
|
||||||
|
</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="55-65" />
|
||||||
|
<Limit name="measured-frame-rate-3840x2160" range="20-27" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.hevc.cq" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="226-226" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.h263sw" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="60-90" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="55-85" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="125-135" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="55-85" />
|
||||||
|
<Limit name="measured-frame-rate-640x480" range="47-52" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="30-50" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.h264.encoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="215-215" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="100-100" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="56-56" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="30-30" />
|
||||||
|
</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="250-320" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.avc.encoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="124-176" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="53-76" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="35-50" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="19-28" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.hevc.encoder" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="17-24" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="7-10" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="3-6" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="2-3" />
|
||||||
|
<Limit name="measured-frame-rate-3840x2160" range="1-2" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.h263.encoder" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="130-175" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.mpeg4.encoder" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="119-168" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.vp8.encoder" type="video/x-vnd.on2.vp8" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="85-119" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="41-65" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="21-30" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="10-15" />
|
||||||
|
</MediaCodec>
|
||||||
|
</Encoders>
|
||||||
|
<Decoders>
|
||||||
|
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="480-510" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="460-490" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="350-400" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1088" range="180-190" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="510-530" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="465-620" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="200-390" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="210-230" />
|
||||||
|
<Limit name="measured-frame-rate-3840x2160" range="65-75" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.h263sw" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="830-1280" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="292-292" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="418-551" />
|
||||||
|
<Limit name="measured-frame-rate-480x360" range="245-265" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="80-200" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.decoder.vp9" type="video/x-vnd.on2.vp9" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="377-377" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="323-323" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="262-262" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="220-220" />
|
||||||
|
<Limit name="measured-frame-rate-3840x2160" range="51-51" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.h264.decoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="270-310" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="68-68" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="32-32" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="6-10" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.h263.decoder" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="104-279" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="200-200" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.hevc.decoder" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="520-650" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="145-190" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="235-245" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="88-100" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="48-52" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.mpeg4.decoder" update="true">
|
||||||
|
<Type name="video/mp4v-es">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="430-450" />
|
||||||
|
</Type>
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.google.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="640-720" />
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="200-230" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="81-90" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="60-85" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="33-55" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.avc.decoder" type="video/avc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x240" range="63-165" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="42-59" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="17-24" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="8-12" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true">
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="67-232" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="57-89" />
|
||||||
|
<Limit name="measured-frame-rate-720x480" range="69-99" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="35-51" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="20-29" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.h263.decoder" type="video/3gpp" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="1374-1403" />
|
||||||
|
<Limit name="measured-frame-rate-352x288" range="310-415" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.mpeg4.decoder" type="video/mp4v-es" update="true">
|
||||||
|
<Limit name="measured-frame-rate-176x144" range="406-543" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.vp8.decoder" type="video/x-vnd.on2.vp8" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="950-965" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="133-184" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="15-22" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
|
||||||
|
<Limit name="measured-frame-rate-320x180" range="182-360" />
|
||||||
|
<Limit name="measured-frame-rate-640x360" range="85-200" />
|
||||||
|
<Limit name="measured-frame-rate-1280x720" range="35-49" />
|
||||||
|
<Limit name="measured-frame-rate-1920x1080" range="23-33" />
|
||||||
|
</MediaCodec>
|
||||||
|
</Decoders>
|
||||||
|
</MediaCodecs>
|
346
media/media_codecs_vendor.xml
Normal file
346
media/media_codecs_vendor.xml
Normal file
|
@ -0,0 +1,346 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Copyright (C) 2012-2020 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.
|
||||||
|
|
||||||
|
|
||||||
|
-->
|
||||||
|
<!--
|
||||||
|
Non-Secure decoder capabilities
|
||||||
|
(MB is defined as 16x16)
|
||||||
|
|
||||||
|
_______________________________________________________
|
||||||
|
| Codec | W H fps Mbps MB/s |
|
||||||
|
|_____________|_________________________________________|
|
||||||
|
| h264 | 1920 1088 60 60 489600 |
|
||||||
|
| hevc | 1920 1080 60 60 489600 |
|
||||||
|
| vp9 | 1920 1088 60 60 489600 |
|
||||||
|
| mpeg4-sw | 1920 1088 30 40 244800 |
|
||||||
|
| h263-sw | 864 480 30 16 48600 |
|
||||||
|
|_____________|_________________________________________|
|
||||||
|
|
||||||
|
Secure decoder capabilities
|
||||||
|
(MB is defined as 16x16)
|
||||||
|
|
||||||
|
_____________________________________________________
|
||||||
|
| Codec | W H fps Mbps MB/s |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
| h264 | 1920 1088 60 35 489600 |
|
||||||
|
| vp9 | 1920 1088 60 35 489600 |
|
||||||
|
| hevc | 1920 1088 60 35 489600 |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
|
||||||
|
|
||||||
|
Non-Secure encoder capabilities (Secure not supported)
|
||||||
|
(MB is defined as 16x16)
|
||||||
|
|
||||||
|
______________________________________________________
|
||||||
|
| Codec | W H fps Mbps MB/s |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
| h264 | 1920 1088 60 60 489600 |
|
||||||
|
| hevc | 1920 1088 60 60 489600 |
|
||||||
|
| mpeg4-sw | 864 480 30 8 48600 |
|
||||||
|
| h263-sw | 864 480 30 2 48600 |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
-->
|
||||||
|
|
||||||
|
<MediaCodecs>
|
||||||
|
<Include href="media_codecs_google_audio.xml" />
|
||||||
|
<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>
|
||||||
|
<!-- 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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="60" />
|
||||||
|
<Limit name="performance-point-1280x720" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="quality" range="0-100" default="80" />
|
||||||
|
<Feature name="bitrate-modes" value="VBR,CBR" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="60" />
|
||||||
|
<Limit name="performance-point-1280x720" value="120" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.hevc.cq" type="video/hevc" >
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<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="128x128" max="512x512" />
|
||||||
|
<Limit name="frame-rate" range="1-20" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="quality" range="0-100" default="80" />
|
||||||
|
<Feature name="bitrate-modes" value="CQ" />
|
||||||
|
<Limit name="performance-point-512x512" value="2025" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.heic" type="image/vnd.android.heic" >
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<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="512x512" max="8192x8192" />
|
||||||
|
<Limit name="frame-rate" range="1-20" />
|
||||||
|
<Limit name="concurrent-instances" max="6" />
|
||||||
|
<Limit name="quality" range="0-100" default="80" />
|
||||||
|
<Feature name="bitrate-modes" value="CQ" />
|
||||||
|
<Limit name="performance-point-8192x4320" value="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="6" />
|
||||||
|
</MediaCodec>
|
||||||
|
<!-- Video Software -->
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.h263sw" 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="96x96" max="864x480" />
|
||||||
|
<Limit name="alignment" value="4x4" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||||
|
<Limit name="bitrate" range="1-2000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-720x480" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" 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="96x96" max="864x480" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||||
|
<Limit name="bitrate" range="1-8000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-720x480" value="30" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="60" />
|
||||||
|
<Limit name="performance-point-1280x720" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-35000000" />
|
||||||
|
<Limit name="frame-rate" range="1-60" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="secure-playback" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Limit name="concurrent-instances" max="6" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="60" />
|
||||||
|
<Limit name="performance-point-1280x720" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-35000000" />
|
||||||
|
<Limit name="frame-rate" range="1-60" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="secure-playback" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="60" />
|
||||||
|
<Limit name="performance-point-1280x720" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-35000000" />
|
||||||
|
<Limit name="frame-rate" range="1-60" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="secure-playback" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<!-- Video Software -->
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.h263sw" type="video/3gpp" >
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<Quirk name="requires-allocate-on-output-ports" />
|
||||||
|
<Limit name="size" min="96x96" max="864x480" />
|
||||||
|
<Limit name="alignment" value="4x4" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||||
|
<Limit name="bitrate" range="1-16000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Limit name="concurrent-instances" max="4" />
|
||||||
|
<Limit name="performance-point-720x480" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es">
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<Quirk name="requires-allocate-on-output-ports" />
|
||||||
|
<Limit name="size" min="96x96" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-40000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Limit name="concurrent-instances" max="4" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true">
|
||||||
|
<!-- profiles and levels: ProfileMain : MainTierLevel51 -->
|
||||||
|
<Limit name="size" min="2x2" max="1280x720" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="8x8" />
|
||||||
|
<Limit name="block-count" range="1-3600" />
|
||||||
|
<Limit name="blocks-per-second" range="1-108000" />
|
||||||
|
<Limit name="bitrate" range="1-2000000" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.avc.decoder" type="video/avc" update="true">
|
||||||
|
<!-- profiles and levels: ProfileHigh : Level51 -->
|
||||||
|
<Limit name="size" min="2x2" max="1280x720" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="block-count" range="1-3600" />
|
||||||
|
<Limit name="blocks-per-second" range="1-108000" />
|
||||||
|
<Limit name="bitrate" range="1-20000000" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
</MediaCodec>
|
||||||
|
</Decoders>
|
||||||
|
<Include href="media_codecs_google_video_le.xml" />
|
||||||
|
</MediaCodecs>
|
26
media/media_codecs_vendor_audio.xml
Normal file
26
media/media_codecs_vendor_audio.xml
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
<?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.
|
||||||
|
-->
|
||||||
|
<Included>
|
||||||
|
<Decoders>
|
||||||
|
<!-- SimpleOMXComponet based software decoder-->
|
||||||
|
<MediaCodec name="OMX.qti.audio.decoder.flac" type="audio/flac" rank="0" >
|
||||||
|
<Limit name="concurrent-instances" max="10" />
|
||||||
|
</MediaCodec>
|
||||||
|
</Decoders>
|
||||||
|
</Included>
|
351
media/media_codecs_vendor_v1.xml
Normal file
351
media/media_codecs_vendor_v1.xml
Normal file
|
@ -0,0 +1,351 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Copyright (C) 2012-2020 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.
|
||||||
|
|
||||||
|
|
||||||
|
-->
|
||||||
|
<!--
|
||||||
|
Non-Secure decoder capabilities
|
||||||
|
(MB is defined as 16x16)
|
||||||
|
|
||||||
|
_______________________________________________________
|
||||||
|
| Codec | W H fps Mbps MB/s |
|
||||||
|
|_____________|_________________________________________|
|
||||||
|
| h264 | 1920 1088 30 60 244800 |
|
||||||
|
| hevc | 1920 1080 30 60 244800 |
|
||||||
|
| vp9 | 1920 1088 30 60 244800 |
|
||||||
|
| mpeg4-sw | 1920 1088 30 40 244800 |
|
||||||
|
| h263-sw | 864 480 30 16 48600 |
|
||||||
|
|_____________|_________________________________________|
|
||||||
|
|
||||||
|
Secure decoder capabilities
|
||||||
|
(MB is defined as 16x16)
|
||||||
|
|
||||||
|
_____________________________________________________
|
||||||
|
| Codec | W H fps Mbps MB/s |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
| h264 | 1920 1088 30 35 244800 |
|
||||||
|
| vp9 | 1920 1088 30 35 244800 |
|
||||||
|
| hevc | 1920 1088 30 35 244800 |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
|
||||||
|
|
||||||
|
Non-Secure encoder capabilities (Secure not supported)
|
||||||
|
(MB is defined as 16x16)
|
||||||
|
|
||||||
|
______________________________________________________
|
||||||
|
| Codec | W H fps Mbps MB/s |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
| h264 | 1920 1088 30 60 244800 |
|
||||||
|
| hevc | 1920 1088 30 60 244800 |
|
||||||
|
| mpeg4-sw | 864 480 30 8 48600 |
|
||||||
|
| h263-sw | 864 480 30 2 48600 |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
-->
|
||||||
|
|
||||||
|
<MediaCodecs>
|
||||||
|
<Include href="media_codecs_google_audio.xml" />
|
||||||
|
<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>
|
||||||
|
<!-- 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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
<Limit name="performance-point-1280x720" value="60" />
|
||||||
|
<Limit name="performance-point-720x480" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="quality" range="0-100" default="80" />
|
||||||
|
<Feature name="bitrate-modes" value="VBR,CBR" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
<Limit name="performance-point-1280x720" value="60" />
|
||||||
|
<Limit name="performance-point-720x480" value="120" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.hevc.cq" type="video/hevc" >
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<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="128x128" max="512x512" />
|
||||||
|
<Limit name="frame-rate" range="1-20" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="quality" range="0-100" default="80" />
|
||||||
|
<Feature name="bitrate-modes" value="CQ" />
|
||||||
|
<Limit name="performance-point-512x512" value="2025" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.heic" type="image/vnd.android.heic" >
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<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="512x512" max="8192x8192" />
|
||||||
|
<Limit name="frame-rate" range="1-20" />
|
||||||
|
<Limit name="concurrent-instances" max="6" />
|
||||||
|
<Limit name="quality" range="0-100" default="80" />
|
||||||
|
<Feature name="bitrate-modes" value="CQ" />
|
||||||
|
<Limit name="performance-point-8192x4320" value="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="6" />
|
||||||
|
</MediaCodec>
|
||||||
|
<!-- Video Software -->
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.h263sw" 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="96x96" max="864x480" />
|
||||||
|
<Limit name="alignment" value="4x4" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||||
|
<Limit name="bitrate" range="1-2000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-720x480" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" 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="96x96" max="864x480" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||||
|
<Limit name="bitrate" range="1-8000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-720x480" value="30" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
<Limit name="performance-point-1280x720" value="60" />
|
||||||
|
<Limit name="performance-point-720x480" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-35000000" />
|
||||||
|
<Limit name="frame-rate" range="1-60" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="secure-playback" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Limit name="concurrent-instances" max="6" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
<Limit name="performance-point-1280x720" value="60" />
|
||||||
|
<Limit name="performance-point-720x480" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-35000000" />
|
||||||
|
<Limit name="frame-rate" range="1-60" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="secure-playback" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
<Limit name="performance-point-1280x720" value="60" />
|
||||||
|
<Limit name="performance-point-720x480" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-35000000" />
|
||||||
|
<Limit name="frame-rate" range="1-60" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="secure-playback" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<!-- Video Software -->
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.h263sw" type="video/3gpp" >
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<Quirk name="requires-allocate-on-output-ports" />
|
||||||
|
<Limit name="size" min="96x96" max="864x480" />
|
||||||
|
<Limit name="alignment" value="4x4" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||||
|
<Limit name="bitrate" range="1-16000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Limit name="concurrent-instances" max="4" />
|
||||||
|
<Limit name="performance-point-720x480" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es">
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<Quirk name="requires-allocate-on-output-ports" />
|
||||||
|
<Limit name="size" min="96x96" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-40000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Limit name="concurrent-instances" max="4" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true">
|
||||||
|
<!-- profiles and levels: ProfileMain : MainTierLevel51 -->
|
||||||
|
<Limit name="size" min="2x2" max="1280x720" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="8x8" />
|
||||||
|
<Limit name="block-count" range="1-3600" />
|
||||||
|
<Limit name="blocks-per-second" range="1-108000" />
|
||||||
|
<Limit name="bitrate" range="1-2000000" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.avc.decoder" type="video/avc" update="true">
|
||||||
|
<!-- profiles and levels: ProfileHigh : Level51 -->
|
||||||
|
<Limit name="size" min="2x2" max="1280x720" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="block-count" range="1-3600" />
|
||||||
|
<Limit name="blocks-per-second" range="1-108000" />
|
||||||
|
<Limit name="bitrate" range="1-20000000" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
</MediaCodec>
|
||||||
|
</Decoders>
|
||||||
|
<Include href="media_codecs_google_video_le.xml" />
|
||||||
|
</MediaCodecs>
|
351
media/media_codecs_vendor_v2.xml
Normal file
351
media/media_codecs_vendor_v2.xml
Normal file
|
@ -0,0 +1,351 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Copyright (C) 2012-2020 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.
|
||||||
|
|
||||||
|
|
||||||
|
-->
|
||||||
|
<!--
|
||||||
|
Non-Secure decoder capabilities
|
||||||
|
(MB is defined as 16x16)
|
||||||
|
|
||||||
|
_______________________________________________________
|
||||||
|
| Codec | W H fps Mbps MB/s |
|
||||||
|
|_____________|_________________________________________|
|
||||||
|
| h264 | 1920 1088 30 60 244800 |
|
||||||
|
| hevc | 1920 1080 30 60 244800 |
|
||||||
|
| vp9 | 1920 1088 30 60 244800 |
|
||||||
|
| mpeg4-sw | 1920 1088 30 40 244800 |
|
||||||
|
| h263-sw | 864 480 30 16 48600 |
|
||||||
|
|_____________|_________________________________________|
|
||||||
|
|
||||||
|
Secure decoder capabilities
|
||||||
|
(MB is defined as 16x16)
|
||||||
|
|
||||||
|
_____________________________________________________
|
||||||
|
| Codec | W H fps Mbps MB/s |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
| h264 | 1920 1088 30 35 244800 |
|
||||||
|
| vp9 | 1920 1088 30 35 244800 |
|
||||||
|
| hevc | 1920 1088 30 35 244800 |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
|
||||||
|
|
||||||
|
Non-Secure encoder capabilities (Secure not supported)
|
||||||
|
(MB is defined as 16x16)
|
||||||
|
|
||||||
|
______________________________________________________
|
||||||
|
| Codec | W H fps Mbps MB/s |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
| h264 | 1920 1088 30 60 244800 |
|
||||||
|
| hevc | 1920 1088 30 60 244800 |
|
||||||
|
| mpeg4-sw | 864 480 30 8 48600 |
|
||||||
|
| h263-sw | 864 480 30 2 48600 |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
-->
|
||||||
|
|
||||||
|
<MediaCodecs>
|
||||||
|
<Include href="media_codecs_google_audio.xml" />
|
||||||
|
<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>
|
||||||
|
<!-- 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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
<Limit name="performance-point-1280x720" value="60" />
|
||||||
|
<Limit name="performance-point-720x480" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="quality" range="0-100" default="80" />
|
||||||
|
<Feature name="bitrate-modes" value="VBR,CBR" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
<Limit name="performance-point-1280x720" value="60" />
|
||||||
|
<Limit name="performance-point-720x480" value="120" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.hevc.cq" type="video/hevc" >
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<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="128x128" max="512x512" />
|
||||||
|
<Limit name="frame-rate" range="1-20" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="quality" range="0-100" default="80" />
|
||||||
|
<Feature name="bitrate-modes" value="CQ" />
|
||||||
|
<Limit name="performance-point-512x512" value="2025" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.heic" type="image/vnd.android.heic" >
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<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="512x512" max="8192x8192" />
|
||||||
|
<Limit name="frame-rate" range="1-20" />
|
||||||
|
<Limit name="concurrent-instances" max="6" />
|
||||||
|
<Limit name="quality" range="0-100" default="80" />
|
||||||
|
<Feature name="bitrate-modes" value="CQ" />
|
||||||
|
<Limit name="performance-point-8192x4320" value="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="6" />
|
||||||
|
</MediaCodec>
|
||||||
|
<!-- Video Software -->
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.h263sw" 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="96x96" max="864x480" />
|
||||||
|
<Limit name="alignment" value="4x4" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||||
|
<Limit name="bitrate" range="1-2000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-720x480" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" 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="96x96" max="864x480" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||||
|
<Limit name="bitrate" range="1-8000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-720x480" value="30" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
<Limit name="performance-point-1280x720" value="60" />
|
||||||
|
<Limit name="performance-point-720x480" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-35000000" />
|
||||||
|
<Limit name="frame-rate" range="1-60" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="secure-playback" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Limit name="concurrent-instances" max="6" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
<Limit name="performance-point-1280x720" value="60" />
|
||||||
|
<Limit name="performance-point-720x480" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-35000000" />
|
||||||
|
<Limit name="frame-rate" range="1-60" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="secure-playback" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
<Limit name="performance-point-1280x720" value="60" />
|
||||||
|
<Limit name="performance-point-720x480" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-35000000" />
|
||||||
|
<Limit name="frame-rate" range="1-60" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="secure-playback" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<!-- Video Software -->
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.h263sw" type="video/3gpp" >
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<Quirk name="requires-allocate-on-output-ports" />
|
||||||
|
<Limit name="size" min="96x96" max="864x480" />
|
||||||
|
<Limit name="alignment" value="4x4" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||||
|
<Limit name="bitrate" range="1-16000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Limit name="concurrent-instances" max="4" />
|
||||||
|
<Limit name="performance-point-720x480" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es">
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<Quirk name="requires-allocate-on-output-ports" />
|
||||||
|
<Limit name="size" min="96x96" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-40000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Limit name="concurrent-instances" max="4" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true">
|
||||||
|
<!-- profiles and levels: ProfileMain : MainTierLevel51 -->
|
||||||
|
<Limit name="size" min="2x2" max="1280x720" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="8x8" />
|
||||||
|
<Limit name="block-count" range="1-3600" />
|
||||||
|
<Limit name="blocks-per-second" range="1-108000" />
|
||||||
|
<Limit name="bitrate" range="1-2000000" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.avc.decoder" type="video/avc" update="true">
|
||||||
|
<!-- profiles and levels: ProfileHigh : Level51 -->
|
||||||
|
<Limit name="size" min="2x2" max="1280x720" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="block-count" range="1-3600" />
|
||||||
|
<Limit name="blocks-per-second" range="1-108000" />
|
||||||
|
<Limit name="bitrate" range="1-20000000" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
</MediaCodec>
|
||||||
|
</Decoders>
|
||||||
|
<Include href="media_codecs_google_video_le.xml" />
|
||||||
|
</MediaCodecs>
|
358
media/media_codecs_vendor_v3.xml
Normal file
358
media/media_codecs_vendor_v3.xml
Normal file
|
@ -0,0 +1,358 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Copyright (C) 2012-2021 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.
|
||||||
|
|
||||||
|
|
||||||
|
-->
|
||||||
|
<!--
|
||||||
|
Non-Secure decoder capabilities
|
||||||
|
(MB is defined as 16x16)
|
||||||
|
|
||||||
|
_______________________________________________________
|
||||||
|
| Codec | W H fps Mbps MB/s |
|
||||||
|
|_____________|_________________________________________|
|
||||||
|
| h264 | 1920 1088 60 60 489600 |
|
||||||
|
| hevc | 1920 1080 60 60 489600 |
|
||||||
|
| vp9 | 1920 1088 60 60 489600 |
|
||||||
|
| mpeg4-sw | 1920 1088 30 40 244800 |
|
||||||
|
| h263-sw | 864 480 30 16 48600 |
|
||||||
|
|_____________|_________________________________________|
|
||||||
|
|
||||||
|
Secure decoder capabilities
|
||||||
|
(MB is defined as 16x16)
|
||||||
|
|
||||||
|
_____________________________________________________
|
||||||
|
| Codec | W H fps Mbps MB/s |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
| h264 | 1920 1088 60 35 489600 |
|
||||||
|
| vp9 | 1920 1088 60 35 489600 |
|
||||||
|
| hevc | 1920 1088 60 35 489600 |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
|
||||||
|
|
||||||
|
Non-Secure encoder capabilities (Secure not supported)
|
||||||
|
(MB is defined as 16x16)
|
||||||
|
|
||||||
|
______________________________________________________
|
||||||
|
| Codec | W H fps Mbps MB/s |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
| h264 | 1920 1088 60 60 489600 |
|
||||||
|
| hevc | 1920 1088 60 60 489600 |
|
||||||
|
| mpeg4-sw | 864 480 30 8 48600 |
|
||||||
|
| h263-sw | 864 480 30 2 48600 |
|
||||||
|
|__________|_________________________________________|
|
||||||
|
-->
|
||||||
|
|
||||||
|
<MediaCodecs>
|
||||||
|
<Include href="media_codecs_google_audio.xml" />
|
||||||
|
<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>
|
||||||
|
<!-- 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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="60" />
|
||||||
|
<Limit name="performance-point-1280x720" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="quality" range="0-100" default="80" />
|
||||||
|
<Feature name="bitrate-modes" value="VBR,CBR" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="60" />
|
||||||
|
<Limit name="performance-point-1280x720" value="120" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.hevc.cq" type="video/hevc" >
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<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="128x128" max="512x512" />
|
||||||
|
<Limit name="frame-rate" range="1-20" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="quality" range="0-100" default="80" />
|
||||||
|
<Feature name="bitrate-modes" value="CQ" />
|
||||||
|
<Limit name="performance-point-512x512" value="2025" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.heic" type="image/vnd.android.heic" >
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<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="512x512" max="8192x8192" />
|
||||||
|
<Limit name="frame-rate" range="1-20" />
|
||||||
|
<Limit name="concurrent-instances" max="6" />
|
||||||
|
<Limit name="quality" range="0-100" default="80" />
|
||||||
|
<Feature name="bitrate-modes" value="CQ" />
|
||||||
|
<Limit name="performance-point-8192x4320" value="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="6" />
|
||||||
|
</MediaCodec>
|
||||||
|
<!-- Video Software -->
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.h263sw" 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="96x96" max="864x480" />
|
||||||
|
<Limit name="alignment" value="4x4" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||||
|
<Limit name="bitrate" range="1-2000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="performance-point-720x480" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qcom.video.encoder.mpeg4sw" 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="96x96" max="864x480" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||||
|
<Limit name="bitrate" range="1-8000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="performance-point-720x480" value="30" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="60" />
|
||||||
|
<Limit name="performance-point-1280x720" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-35000000" />
|
||||||
|
<Limit name="frame-rate" range="1-60" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Feature name="secure-playback" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="6" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="60" />
|
||||||
|
<Limit name="performance-point-1280x720" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-35000000" />
|
||||||
|
<Limit name="frame-rate" range="1-60" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Feature name="secure-playback" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-60000000" />
|
||||||
|
<Limit name="frame-rate" range="1-120" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="16" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="60" />
|
||||||
|
<Limit name="performance-point-1280x720" value="120" />
|
||||||
|
</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="128x128" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="64" max="489600" />
|
||||||
|
<Limit name="bitrate" range="1-35000000" />
|
||||||
|
<Limit name="frame-rate" range="1-60" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Feature name="secure-playback" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="3" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<!-- Video Software -->
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.h263sw" type="video/3gpp" >
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<Quirk name="requires-allocate-on-output-ports" />
|
||||||
|
<Limit name="size" min="96x96" max="864x480" />
|
||||||
|
<Limit name="alignment" value="4x4" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="48600" />
|
||||||
|
<Limit name="bitrate" range="1-16000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="4" />
|
||||||
|
<Limit name="performance-point-720x480" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="OMX.qti.video.decoder.mpeg4sw" type="video/mp4v-es">
|
||||||
|
<Quirk name="requires-allocate-on-input-ports" />
|
||||||
|
<Quirk name="requires-allocate-on-output-ports" />
|
||||||
|
<Limit name="size" min="96x96" max="1920x1088" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="blocks-per-second" min="36" max="244800" />
|
||||||
|
<Limit name="bitrate" range="1-40000000" />
|
||||||
|
<Limit name="frame-rate" range="1-30" />
|
||||||
|
<Feature name="can-swap-width-height" required="true" />
|
||||||
|
<Limit name="concurrent-instances" max="4" />
|
||||||
|
<Limit name="performance-point-1920x1080" value="30" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.hevc.decoder" type="video/hevc" update="true">
|
||||||
|
<!-- profiles and levels: ProfileMain : MainTierLevel51 -->
|
||||||
|
<Limit name="size" min="2x2" max="1280x720" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="8x8" />
|
||||||
|
<Limit name="block-count" range="1-14400" />
|
||||||
|
<Limit name="blocks-per-second" range="1-432000" />
|
||||||
|
<Limit name="bitrate" range="1-2000000" />
|
||||||
|
</MediaCodec>
|
||||||
|
<MediaCodec name="c2.android.avc.decoder" type="video/avc" update="true">
|
||||||
|
<!-- profiles and levels: ProfileHigh : Level51 -->
|
||||||
|
<Limit name="size" min="2x2" max="1280x720" />
|
||||||
|
<Limit name="alignment" value="2x2" />
|
||||||
|
<Limit name="block-size" value="16x16" />
|
||||||
|
<Limit name="block-count" range="1-3600" />
|
||||||
|
<Limit name="blocks-per-second" range="1-108000" />
|
||||||
|
<Limit name="bitrate" range="1-20000000" />
|
||||||
|
<Feature name="adaptive-playback" />
|
||||||
|
</MediaCodec>
|
||||||
|
</Decoders>
|
||||||
|
<Include href="media_codecs_google_video_le.xml" />
|
||||||
|
</MediaCodecs>
|
643
media/media_profiles.xml
Normal file
643
media/media_profiles.xml
Normal file
|
@ -0,0 +1,643 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Copyright (C) 2010 The Android Open Source Project
|
||||||
|
Copyright (C) 2012-2013 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 (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|6) #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|heaac|aaceld|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|6) #REQUIRED>
|
||||||
|
<!ATTLIST AudioEncoderCap maxChannels (1|2|6) #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>
|
||||||
|
]>
|
||||||
|
<!--
|
||||||
|
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">
|
||||||
|
|
||||||
|
<EncoderProfile quality="low" fileFormat="3gp" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="128000"
|
||||||
|
width="320"
|
||||||
|
height="240"
|
||||||
|
frameRate="15" />
|
||||||
|
|
||||||
|
<Audio codec="amrnb"
|
||||||
|
bitRate="12200"
|
||||||
|
sampleRate="8000"
|
||||||
|
channels="1" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="high" fileFormat="mp4" duration="10">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="50000000"
|
||||||
|
width="3840"
|
||||||
|
height="2160"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="320000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="qvga" fileFormat="3gp" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="128000"
|
||||||
|
width="320"
|
||||||
|
height="240"
|
||||||
|
frameRate="15" />
|
||||||
|
|
||||||
|
<Audio codec="amrnb"
|
||||||
|
bitRate="12200"
|
||||||
|
sampleRate="8000"
|
||||||
|
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="128000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="14000000"
|
||||||
|
width="1280"
|
||||||
|
height="720"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="320000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="1080p" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="20000000"
|
||||||
|
width="1920"
|
||||||
|
height="1080"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="320000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="anamorphic1920" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="20000000"
|
||||||
|
width="1920"
|
||||||
|
height="816"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="320000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<!-- CAMCORDER_QUALITY_HIGH_SPEED_LOW/720P : 720p@240fps; 56.0 Mbps -->
|
||||||
|
<EncoderProfile quality="highspeedlow" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="56000000"
|
||||||
|
width="1280"
|
||||||
|
height="720"
|
||||||
|
frameRate="240" />
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="96000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="1" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<!-- CAMCORDER_QUALITY_HIGH_SPEED_HIGH/1080P : 1080p@120fps; 50.0 Mbps -->
|
||||||
|
<EncoderProfile quality="highspeedhigh" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="50000000"
|
||||||
|
width="1920"
|
||||||
|
height="1080"
|
||||||
|
frameRate="120" />
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="96000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="1" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="highspeed720p" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="56000000"
|
||||||
|
width="1280"
|
||||||
|
height="720"
|
||||||
|
frameRate="240" />
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="96000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="1" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="highspeed1080p" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="50000000"
|
||||||
|
width="1920"
|
||||||
|
height="1080"
|
||||||
|
frameRate="120" />
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="96000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="1" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="2160p" fileFormat="mp4" duration="10">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="50000000"
|
||||||
|
width="3840"
|
||||||
|
height="2160"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="320000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="anamorphic3840" fileFormat="mp4" duration="10">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="50000000"
|
||||||
|
width="3840"
|
||||||
|
height="1632"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="320000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="timelapselow" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="512000"
|
||||||
|
width="320"
|
||||||
|
height="240"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="amrnb"
|
||||||
|
bitRate="12200"
|
||||||
|
sampleRate="8000"
|
||||||
|
channels="1" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="timelapsehigh" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="50000000"
|
||||||
|
width="3840"
|
||||||
|
height="2160"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="128000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="timelapseqvga" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="512000"
|
||||||
|
width="320"
|
||||||
|
height="240"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="amrnb"
|
||||||
|
bitRate="12200"
|
||||||
|
sampleRate="8000"
|
||||||
|
channels="1" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="6000000"
|
||||||
|
width="640"
|
||||||
|
height="480"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="128000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="10000000"
|
||||||
|
width="1280"
|
||||||
|
height="720"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="128000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="20000000"
|
||||||
|
width="1920"
|
||||||
|
height="1080"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="128000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="timelapse2160p" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="50000000"
|
||||||
|
width="3840"
|
||||||
|
height="2160"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="128000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
|
||||||
|
<ImageEncoding quality="95" />
|
||||||
|
<ImageEncoding quality="80" />
|
||||||
|
<ImageEncoding quality="70" />
|
||||||
|
<ImageDecoding memCap="20000000" />
|
||||||
|
|
||||||
|
</CamcorderProfiles>
|
||||||
|
<!-- Front Camera -->
|
||||||
|
<CamcorderProfiles cameraId="1">
|
||||||
|
|
||||||
|
<EncoderProfile quality="low" fileFormat="3gp" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="128000"
|
||||||
|
width="320"
|
||||||
|
height="240"
|
||||||
|
frameRate="15" />
|
||||||
|
|
||||||
|
<Audio codec="amrnb"
|
||||||
|
bitRate="12200"
|
||||||
|
sampleRate="8000"
|
||||||
|
channels="1" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="high" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="17000000"
|
||||||
|
width="1920"
|
||||||
|
height="1080"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="320000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="qvga" fileFormat="3gp" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="128000"
|
||||||
|
width="320"
|
||||||
|
height="240"
|
||||||
|
frameRate="15" />
|
||||||
|
|
||||||
|
<Audio codec="amrnb"
|
||||||
|
bitRate="12200"
|
||||||
|
sampleRate="8000"
|
||||||
|
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="128000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="10000000"
|
||||||
|
width="1280"
|
||||||
|
height="720"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="320000"
|
||||||
|
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="320000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="anamorphic1920" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="20000000"
|
||||||
|
width="1920"
|
||||||
|
height="816"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="320000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="highspeedlow" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="17000000"
|
||||||
|
width="640"
|
||||||
|
height="480"
|
||||||
|
frameRate="120" />
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="96000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="1" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="highspeedhigh" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="17000000"
|
||||||
|
width="640"
|
||||||
|
height="480"
|
||||||
|
frameRate="120" />
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="96000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="1" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="highspeed480p" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="17000000"
|
||||||
|
width="640"
|
||||||
|
height="480"
|
||||||
|
frameRate="120" />
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="96000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="1" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="timelapselow" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="512000"
|
||||||
|
width="320"
|
||||||
|
height="240"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="amrnb"
|
||||||
|
bitRate="12200"
|
||||||
|
sampleRate="8000"
|
||||||
|
channels="1" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="timelapsehigh" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="17000000"
|
||||||
|
width="1920"
|
||||||
|
height="1080"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="128000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="timelapseqvga" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="512000"
|
||||||
|
width="320"
|
||||||
|
height="240"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="amrnb"
|
||||||
|
bitRate="12200"
|
||||||
|
sampleRate="8000"
|
||||||
|
channels="1" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="6000000"
|
||||||
|
width="640"
|
||||||
|
height="480"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="128000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</EncoderProfile>
|
||||||
|
|
||||||
|
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="10000000"
|
||||||
|
width="1280"
|
||||||
|
height="720"
|
||||||
|
frameRate="30" />
|
||||||
|
|
||||||
|
<!-- audio setting is ignored -->
|
||||||
|
<Audio codec="aac"
|
||||||
|
bitRate="128000"
|
||||||
|
sampleRate="48000"
|
||||||
|
channels="2" />
|
||||||
|
</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="128000"
|
||||||
|
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="60000000"
|
||||||
|
minFrameWidth="176" maxFrameWidth="3840"
|
||||||
|
minFrameHeight="144" maxFrameHeight="2160"
|
||||||
|
minFrameRate="15" maxFrameRate="60" />
|
||||||
|
|
||||||
|
<VideoEncoderCap name="h263" enabled="true"
|
||||||
|
minBitRate="64000" maxBitRate="2000000"
|
||||||
|
minFrameWidth="176" maxFrameWidth="720"
|
||||||
|
minFrameHeight="144" maxFrameHeight="480"
|
||||||
|
minFrameRate="15" maxFrameRate="30" />
|
||||||
|
|
||||||
|
<VideoEncoderCap name="m4v" enabled="true"
|
||||||
|
minBitRate="64000" maxBitRate="20000000"
|
||||||
|
minFrameWidth="176" maxFrameWidth="1920"
|
||||||
|
minFrameHeight="144" maxFrameHeight="1080"
|
||||||
|
minFrameRate="15" maxFrameRate="30" />
|
||||||
|
|
||||||
|
<AudioEncoderCap name="aac" enabled="true"
|
||||||
|
minBitRate="8000" maxBitRate="512000"
|
||||||
|
minSampleRate="8000" maxSampleRate="48000"
|
||||||
|
minChannels="1" maxChannels="4" />
|
||||||
|
|
||||||
|
<AudioEncoderCap name="heaac" enabled="true"
|
||||||
|
minBitRate="8000" maxBitRate="128000"
|
||||||
|
minSampleRate="16000" maxSampleRate="48000"
|
||||||
|
minChannels="1" maxChannels="2" />
|
||||||
|
|
||||||
|
<AudioEncoderCap name="aaceld" enabled="true"
|
||||||
|
minBitRate="16000" maxBitRate="384000"
|
||||||
|
minSampleRate="16000" maxSampleRate="48000"
|
||||||
|
minChannels="1" maxChannels="2" />
|
||||||
|
|
||||||
|
<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.
|
||||||
|
-->
|
||||||
|
<!-- IKVPREL2KK-2424 Disable WMV and WMA support -->
|
||||||
|
<VideoDecoderCap name="wmv" enabled="false"/>
|
||||||
|
<AudioDecoderCap name="wma" enabled="false"/>
|
||||||
|
</MediaSettings>
|
867
media/media_profiles_V1_0.xml
Normal file
867
media/media_profiles_V1_0.xml
Normal file
|
@ -0,0 +1,867 @@
|
||||||
|
<?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|2|3|4|5) #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>
|
||||||
|
]>
|
||||||
|
<!--
|
||||||
|
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="30" />
|
||||||
|
<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="30" />
|
||||||
|
<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>
|
||||||
|
<CamcorderProfiles cameraId="2">
|
||||||
|
|
||||||
|
<EncoderProfile quality="qvga" fileFormat="3gp" duration="60">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="128000"
|
||||||
|
width="320"
|
||||||
|
height="240"
|
||||||
|
frameRate="30" />
|
||||||
|
<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="3">
|
||||||
|
|
||||||
|
<EncoderProfile quality="qvga" fileFormat="3gp" duration="60">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="128000"
|
||||||
|
width="320"
|
||||||
|
height="240"
|
||||||
|
frameRate="30" />
|
||||||
|
<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>
|
||||||
|
<CamcorderProfiles cameraId="4">
|
||||||
|
|
||||||
|
<EncoderProfile quality="qvga" fileFormat="3gp" duration="60">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="128000"
|
||||||
|
width="320"
|
||||||
|
height="240"
|
||||||
|
frameRate="30" />
|
||||||
|
<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="5">
|
||||||
|
|
||||||
|
<EncoderProfile quality="qvga" fileFormat="3gp" duration="60">
|
||||||
|
<Video codec="h264"
|
||||||
|
bitRate="128000"
|
||||||
|
width="320"
|
||||||
|
height="240"
|
||||||
|
frameRate="30" />
|
||||||
|
<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"/>
|
||||||
|
</MediaSettings>
|
2240
media/media_profiles_khaje.xml
Normal file
2240
media/media_profiles_khaje.xml
Normal file
File diff suppressed because it is too large
Load diff
1197
media/media_profiles_scuba.xml
Normal file
1197
media/media_profiles_scuba.xml
Normal file
File diff suppressed because it is too large
Load diff
1206
media/media_profiles_vendor.xml
Normal file
1206
media/media_profiles_vendor.xml
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue