| <?xml version="1.0" encoding="utf-8"?> |
| <!-- Copyright (C) 2012-2013 The Android Open Source Project |
| Copyright (C) 2014 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. |
| --> |
| |
| <!-- |
| 8974 Encoder capabilities |
| ______________________________________________________ |
| | Codec | W H fps Mbps MB/s | |
| |__________|_________________________________________| |
| | h264 | 3840 2160 30 100 972000 | |
| | | 4096 2160 24 100 829440 | |
| | mpeg4 | 1920 1088 30 40 244800 | |
| | vp8 | 1920 1088 30 20 244800 | |
| | h263 | 864 480 30 2 48600 | |
| |__________|_________________________________________| |
| |
| 8974 Decoder capabilities |
| ______________________________________________________ |
| | Codec | W H fps Mbps MB/s | |
| |__________|_________________________________________| |
| | h264 | 3840 2160 30 100 972000 | |
| | | 4096 2160 24 100 829440 | |
| | hevc | 1280 720 30 2 108000 | |
| | hevchybd | 1920 1088 30 6 244800 | |
| | mpeg4 | 1920 1088 60 60 489600 | |
| | vc1 | 1920 1088 60 60 489600 | |
| | vp8 | 3820 2160 30 20 972000 | |
| | divx3 | 720 480 30 2 40500 | |
| | div4/5/6 | 1920 1088 30 10 244800 | |
| | h263 | 864 480 30 2 48600 | |
| | mpeg2 | 1920 1088 30 40 244800 | |
| |__________|_________________________________________| |
| |
| --> |
| |
| <MediaCodecs> |
| <Include href="media_codecs_google_audio.xml" /> |
| <Include href="media_codecs_google_telephony.xml" /> |
| <Settings> |
| <Setting name="max-video-encoder-input-buffers" value="9" /> |
| </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="96x64" max="4096x2160" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="972000" /> |
| <Limit name="bitrate" range="1-100000000" /> |
| <Limit name="concurrent-instances" max="13" /> |
| </MediaCodec> |
| <MediaCodec name="OMX.qcom.video.encoder.mpeg4" type="video/mp4v-es" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Quirk name="requires-loaded-to-idle-after-allocation"/> |
| <Limit name="size" min="96x64" max="1920x1088" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="244800" /> |
| <Limit name="bitrate" range="1-40000000" /> |
| <Limit name="concurrent-instances" max="13" /> |
| </MediaCodec> |
| <MediaCodec name="OMX.qcom.video.encoder.h263" type="video/3gpp" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Quirk name="requires-loaded-to-idle-after-allocation" /> |
| <Limit name="size" min="96x64" max="864x480" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="48600" /> |
| <Limit name="bitrate" range="1-2000000" /> |
| <Limit name="concurrent-instances" max="13" /> |
| </MediaCodec> |
| <MediaCodec name="OMX.qcom.video.encoder.vp8" type="video/x-vnd.on2.vp8" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Quirk name="requires-loaded-to-idle-after-allocation" /> |
| <Limit name="size" min="96x64" max="1920x1088" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="244800" /> |
| <Limit name="bitrate" range="1-20000000" /> |
| <Limit name="concurrent-instances" max="13" /> |
| </MediaCodec> |
| </Encoders> |
| |
| <Decoders> |
| <!-- Video Hardware --> |
| <MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Limit name="size" min="64x64" max="4096x2160" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="972000" /> |
| <Limit name="bitrate" range="1-100000000" /> |
| <Feature name="adaptive-playback" /> |
| <Limit name="concurrent-instances" max="10" /> |
| </MediaCodec> |
| <MediaCodec name="OMX.qcom.video.decoder.avc.secure" type="video/avc" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Limit name="size" min="64x64" max="4096x2160" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="972000" /> |
| <Limit name="bitrate" range="1-100000000" /> |
| <Feature name="adaptive-playback" /> |
| <Feature name="secure-playback" required="true" /> |
| <Limit name="concurrent-instances" max="4" /> |
| </MediaCodec> |
| <MediaCodec name="OMX.qcom.video.decoder.mpeg2" type="video/mpeg2" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Limit name="size" min="96x64" max="1920x1088" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="244800" /> |
| <Limit name="bitrate" range="1-40000000" /> |
| <Feature name="adaptive-playback" /> |
| <Limit name="concurrent-instances" max="13" /> |
| </MediaCodec> |
| <MediaCodec name="OMX.qcom.video.decoder.mpeg2.secure" type="video/mpeg2" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Limit name="size" min="96x64" max="1920x1088" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="244800" /> |
| <Limit name="bitrate" range="1-40000000" /> |
| <Feature name="adaptive-playback" /> |
| <Feature name="secure-playback" required="true" /> |
| <Limit name="concurrent-instances" max="13" /> |
| </MediaCodec> |
| <MediaCodec name="OMX.qcom.video.decoder.mpeg4" type="video/mp4v-es" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Limit name="size" min="64x64" max="1920x1088" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="489600" /> |
| <Limit name="bitrate" range="1-60000000" /> |
| <Feature name="adaptive-playback" /> |
| <Limit name="concurrent-instances" max="13" /> |
| </MediaCodec> |
| <MediaCodec name="OMX.qcom.video.decoder.h263" type="video/3gpp" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Limit name="size" min="64x64" max="864x480" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="48600" /> |
| <Limit name="bitrate" range="1-2000000" /> |
| <Feature name="adaptive-playback" /> |
| <Limit name="concurrent-instances" max="13" /> |
| </MediaCodec> |
| <MediaCodec name="OMX.qcom.video.decoder.vc1" type="video/x-ms-wmv" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Limit name="size" min="64x64" max="1920x1088" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="489600" /> |
| <Limit name="bitrate" range="1-60000000" /> |
| <Feature name="adaptive-playback" /> |
| <Limit name="concurrent-instances" max="13" /> |
| </MediaCodec> |
| <MediaCodec name="OMX.qcom.video.decoder.divx" type="video/divx" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Limit name="size" min="64x64" max="1920x1088" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="244800" /> |
| <Limit name="bitrate" range="1-10000000" /> |
| <Feature name="adaptive-playback" /> |
| <Limit name="concurrent-instances" max="13" /> |
| </MediaCodec> |
| <MediaCodec name="OMX.qcom.video.decoder.divx311" type="video/divx311" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Limit name="size" min="64x64" max="720x480" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="40500" /> |
| <Limit name="bitrate" range="1-2000000" /> |
| <Feature name="adaptive-playback" /> |
| <Limit name="concurrent-instances" max="13" /> |
| </MediaCodec> |
| <MediaCodec name="OMX.qcom.video.decoder.divx4" type="video/divx4" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Limit name="size" min="64x64" max="1920x1088" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="244800" /> |
| <Limit name="bitrate" range="1-10000000" /> |
| <Feature name="adaptive-playback" /> |
| <Limit name="concurrent-instances" max="13" /> |
| </MediaCodec> |
| <MediaCodec name="OMX.qcom.video.decoder.vp8" type="video/x-vnd.on2.vp8" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Limit name="size" min="64x64" max="3840x2160" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="972000" /> |
| <Limit name="bitrate" range="1-20000000" /> |
| <Feature name="adaptive-playback" /> |
| <Limit name="concurrent-instances" max="13" /> |
| </MediaCodec> |
| <MediaCodec name="OMX.qcom.video.decoder.hevc" type="video/hevc" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Limit name="size" min="64x64" max="1280x720" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="108000" /> |
| <Limit name="bitrate" range="1-2000000" /> |
| <Feature name="adaptive-playback" /> |
| <Limit name="concurrent-instances" max="3" /> |
| </MediaCodec> |
| <!-- <MediaCodec name="OMX.qcom.video.decoder.hevchybrid" type="video/hevc" > |
| <Quirk name="requires-allocate-on-input-ports" /> |
| <Quirk name="requires-allocate-on-output-ports" /> |
| <Limit name="size" min="64x64" max="1920x1088" /> |
| <Limit name="alignment" value="2x2" /> |
| <Limit name="block-size" value="16x16" /> |
| <Limit name="blocks-per-second" min="1" max="244800" /> |
| <Limit name="bitrate" range="1-6000000" /> |
| <Feature name="adaptive-playback" /> |
| <Limit name="concurrent-instances" max="2" /> |
| </MediaCodec> --> |
| </Decoders> |
| <Include href="media_codecs_google_video.xml" /> |
| </MediaCodecs> |