summaryrefslogtreecommitdiff
authoryang.xu <yang.xu@amlogic.com>2018-03-15 03:08:23 (GMT)
committer yang.xu <yang.xu@amlogic.com>2018-03-15 04:27:53 (GMT)
commit7e509e28ea86142567fb070f8fc73c0aa8627629 (patch)
tree17717c746e7526f3b94a4466fe11567d314049e0
parent6201d668229c9230f22a27833b3a2f90c59e6f5f (diff)
downloadeinstein-7e509e28ea86142567fb070f8fc73c0aa8627629.zip
einstein-7e509e28ea86142567fb070f8fc73c0aa8627629.tar.gz
einstein-7e509e28ea86142567fb070f8fc73c0aa8627629.tar.bz2
add load media_codecs_ext.xml
PD# 147395 i. add load media_codecs_ext.xml 2. open media ext Change-Id: Ic187a9cfd9d86f69324ce0dc5baa675192bad185
Diffstat
-rw-r--r--device.mk5
-rw-r--r--files/media_codecs.xml57
-rw-r--r--files/media_codecs_ext.xml153
3 files changed, 161 insertions, 54 deletions
diff --git a/device.mk b/device.mk
index 0ff9157..ef61b69 100644
--- a/device.mk
+++ b/device.mk
@@ -35,6 +35,11 @@ PRODUCT_COPY_FILES += \
device/amlogic/einstein/files/mesondisplay.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/mesondisplay.cfg \
device/amlogic/einstein/manifest.xml:$(TARGET_COPY_OUT_VENDOR)/manifest.xml
+ifeq ($(TARGET_WITH_MEDIA_EXT), true)
+PRODUCT_COPY_FILES += \
+ device/amlogic/einstein/files/media_codecs_ext.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_ext.xml
+endif
+
# remote IME config file
PRODUCT_COPY_FILES += \
device/amlogic/einstein/files/remote.conf:$(TARGET_COPY_OUT_VENDOR)/etc/remote.conf \
diff --git a/files/media_codecs.xml b/files/media_codecs.xml
index daaa711..be2f50b 100644
--- a/files/media_codecs.xml
+++ b/files/media_codecs.xml
@@ -143,50 +143,6 @@ Only the three quirks included above are recognized at this point:
<Feature name="adaptive-playback" />
<Limit name="concurrent-instances" max="1" />
</MediaCodec>
- <MediaCodec name="OMX.amlogic.vc1.decoder.awesome" type="video/vc1" >
- <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="" />
- <Limit name="bitrate" range="1-300000000" />
- <Feature name="adaptive-playback" />
- <Limit name="concurrent-instances" max="1" />
- </MediaCodec>
- <MediaCodec name="OMX.amlogic.wvc1.decoder.awesome" type="video/wvc1" >
- <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="" />
- <Limit name="bitrate" range="1-300000000" />
- <Feature name="adaptive-playback" />
- <Limit name="concurrent-instances" max="1" />
- </MediaCodec>
- <MediaCodec name="OMX.amlogic.wmv3.decoder.awesome" type="video/wmv3" >
- <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="972000" />
- <Limit name="bitrate" range="1-300000000" />
- <Feature name="adaptive-playback" />
- <Limit name="concurrent-instances" max="1" />
- </MediaCodec>
- <MediaCodec name="OMX.amlogic.mswmv3.decoder.awesome" type="video/x-ms-wmv" >
- <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="972000" />
- <Limit name="bitrate" range="1-300000000" />
- <Feature name="adaptive-playback" />
- </MediaCodec>
- <MediaCodec name="OMX.amlogic.mjpeg.decoder.awesome" type="video/mjpeg" >
- <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="972000" />
- <Limit name="bitrate" range="1-300000000" />
- <Feature name="adaptive-playback" />
- <Limit name="concurrent-instances" max="1" />
- </MediaCodec>
<MediaCodec name="OMX.amlogic.vp9.decoder.awesome" type="video/x-vnd.on2.vp9" >
<Limit name="size" min="64x64" max="3840x2160" />
<Limit name="alignment" value="2x2" />
@@ -207,16 +163,6 @@ Only the three quirks included above are recognized at this point:
<Feature name="tunneled-playback" />
<Limit name="concurrent-instances" max="1" />
</MediaCodec>
- <MediaCodec name="OMX.amlogic.vp6.decoder.sw" type="video/x-vnd.on2.vp6" />
- <MediaCodec name="OMX.amlogic.vp6a.decoder.sw" type="video/x-vnd.on2.vp6a" />
- <MediaCodec name="OMX.amlogic.vp6f.decoder.sw" type="video/x-vnd.on2.vp6f" />
- <MediaCodec name="OMX.amlogic.rm10.decoder.sw" type="video/rm10" />
- <MediaCodec name="OMX.amlogic.rm20.decoder.sw" type="video/rm20" />
- <MediaCodec name="OMX.amlogic.rm30.decoder.sw" type="video/rm30" />
- <MediaCodec name="OMX.amlogic.rm40.decoder.sw" type="video/rm40" />
- <MediaCodec name="OMX.amlogic.wmv2.decoder.sw" type="video/wmv2" />
- <MediaCodec name="OMX.amlogic.wmv1.decoder.sw" type="video/wmv1" />
- <MediaCodec name="OMX.google.ffmpeg.decoder.sw" type="audio/ffmpeg" />
<MediaCodec name="OMX.google.amrnb.decoder" type="audio/3gpp" />
<MediaCodec name="OMX.google.amrwb.decoder" type="audio/amr-wb" />
<MediaCodec name="OMX.google.aac.decoder" type="audio/mp4a-latm" />
@@ -234,7 +180,10 @@ Only the three quirks included above are recognized at this point:
<MediaCodec name="OMX.google.ape.decoder" type="audio/ape" />
<MediaCodec name="OMX.google.truehd.decoder" type="audio/truehd" />
<MediaCodec name="OMX.google.raw.decoder" type="audio/raw" />
+ <MediaCodec name="OMX.amlogic.audio.decoder.ac3" type="audio/ac3" />
+ <MediaCodec name="OMX.amlogic.audio.decoder.eac3" type="audio/eac3" />
<MediaCodec name="OMX.google.dtshd.decoder" type="audio/dtshd" />
+ <MediaCodec name="OMX.google.mp2.decoder" type="audio/mpeg-L2" />
<MediaCodec name="OMX.google.opus.decoder" type="audio/opus">
<Limit name="channel-count" max="8" />
<Limit name="sample-rate" ranges="48000" />
diff --git a/files/media_codecs_ext.xml b/files/media_codecs_ext.xml
new file mode 100644
index 0000000..8365f96
--- a/dev/null
+++ b/files/media_codecs_ext.xml
@@ -0,0 +1,153 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!-- Copyright (C) 2012 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 MediaCodecs (Decoders,Encoders)>
+<!ELEMENT Decoders (MediaCodec*)>
+<!ELEMENT Encoders (MediaCodec*)>
+<!ELEMENT MediaCodec (Type*,Quirk*)>
+<!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.
+
+-->
+
+<MediaCodecs>
+ <Decoders>
+ <MediaCodec name="OMX.amlogic.vc1.decoder.awesome" type="video/vc1" >
+ <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="" />
+ <Limit name="bitrate" range="1-300000000" />
+ <Feature name="adaptive-playback" />
+ <Limit name="concurrent-instances" max="1" />
+ </MediaCodec>
+ <MediaCodec name="OMX.amlogic.wvc1.decoder.awesome" type="video/wvc1" >
+ <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="" />
+ <Limit name="bitrate" range="1-300000000" />
+ <Feature name="adaptive-playback" />
+ <Limit name="concurrent-instances" max="1" />
+ </MediaCodec>
+ <MediaCodec name="OMX.amlogic.wmv3.decoder.awesome" type="video/wmv3" >
+ <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="972000" />
+ <Limit name="bitrate" range="1-300000000" />
+ <Feature name="adaptive-playback" />
+ <Limit name="concurrent-instances" max="1" />
+ </MediaCodec>
+ <MediaCodec name="OMX.amlogic.mswmv3.decoder.awesome" type="video/x-ms-wmv" >
+ <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="972000" />
+ <Limit name="bitrate" range="1-300000000" />
+ <Feature name="adaptive-playback" />
+ </MediaCodec>
+ <MediaCodec name="OMX.amlogic.mjpeg.decoder.awesome" type="video/mjpeg" >
+ <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="972000" />
+ <Limit name="bitrate" range="1-300000000" />
+ <Feature name="adaptive-playback" />
+ <Limit name="concurrent-instances" max="1" />
+ </MediaCodec>
+ <MediaCodec name="OMX.amlogic.avs.decoder.awesome" type="video/avs" >
+ <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="972000" />
+ <Limit name="bitrate" range="1-300000000" />
+ <Feature name="adaptive-playback" />
+ <Limit name="concurrent-instances" max="1" />
+ </MediaCodec>
+ <MediaCodec name="OMX.amlogic.vp6a.decoder.sw" type="video/x-vnd.on2.vp6a" />
+ <MediaCodec name="OMX.amlogic.vp6f.decoder.sw" type="video/x-vnd.on2.vp6f" />
+ <MediaCodec name="OMX.amlogic.rm10.decoder.sw" type="video/rm10" />
+ <MediaCodec name="OMX.amlogic.rm20.decoder.sw" type="video/rm20" />
+ <MediaCodec name="OMX.amlogic.rm30.decoder.sw" type="video/rm30" />
+ <MediaCodec name="OMX.amlogic.rm40.decoder.sw" type="video/rm40" />
+ <MediaCodec name="OMX.amlogic.wmv2.decoder.sw" type="video/wmv2" />
+ <MediaCodec name="OMX.amlogic.wmv1.decoder.sw" type="video/wmv1" />
+ <MediaCodec name="OMX.amlogic.vp8.decoder.sw" type="video/x-vnd.on2.vp8">
+ <Limit name="size" min="2x2" max="2048x2048" />
+ <Limit name="alignment" value="2x2" />
+ <Limit name="block-size" value="16x16" />
+ <Limit name="block-count" range="1-8160" />
+ <Limit name="blocks-per-second" range="1-500000" />
+ <Limit name="bitrate" range="1-40000000" />
+ <Feature name="adaptive-playback" />
+ </MediaCodec>
+ <MediaCodec name="OMX.amlogic.audio.decoder.ffmpeg" type="audio/ffmpeg" />
+ </Decoders>
+
+</MediaCodecs>