diff options
| author | Ethan Chen <intervigil@gmail.com> | 2015-08-14 16:34:35 -0700 |
|---|---|---|
| committer | Alberto Guanti <albertoguanti@gmail.com> | 2015-08-19 06:57:29 -0700 |
| commit | a8fc1cb0889e40e0c216421bee74fdcd9bcd63f0 (patch) | |
| tree | 0f9fe7cd9bf1eef4d686bad1177c3577d72128b0 | |
| parent | 32c6432a8aafa15df2e9caafe09df108316daa9f (diff) | |
i9500: Enable MP3, MPEG2, VP8, WMV hardware codecs
* Exynos5410 MFCv6 is not capable of SEIREN_AUDIO
* Exynos5410 MFCv6 is not capable of VP8 encoding
* Exynos5410 MFCv6 is not capable of HEVC decoding
* Exynos WMA codec is software, and does not compile, continue to rely
on FFMPEG for WMA support.
Change-Id: I8ec607231f9efd6b4112843f2d43ee18897f27fc
| -rw-r--r-- | BoardConfig.mk | 3 | ||||
| -rw-r--r-- | configs/media_codecs.xml | 51 | ||||
| -rw-r--r-- | i9500.mk | 5 |
3 files changed, 54 insertions, 5 deletions
diff --git a/BoardConfig.mk b/BoardConfig.mk index 11765a5..f5523ce 100644 --- a/BoardConfig.mk +++ b/BoardConfig.mk @@ -101,6 +101,9 @@ COMMON_GLOBAL_CFLAGS += -DUSE_NATIVE_SEC_NV12TILED NUM_FRAMEBUFFER_SURFACE_BUFFERS := 3 USE_OPENGL_RENDERER := true +# Media +BOARD_USE_ALP_AUDIO := true + # NFC BOARD_NFC_HAL_SUFFIX := universal5410 diff --git a/configs/media_codecs.xml b/configs/media_codecs.xml index 781d548..b3afcc1 100644 --- a/configs/media_codecs.xml +++ b/configs/media_codecs.xml @@ -79,7 +79,18 @@ Only the three quirks included above are recognized at this point: <MediaCodecs> <Decoders> - <MediaCodec name="OMX.Exynos.MPEG4.Decoder" type="video/mp4v-es" > + <!-- Video --> + <MediaCodec name="OMX.Exynos.AVC.Decoder" type="video/avc" > + <Quirk name="requires-allocate-on-input-ports" /> + <Quirk name="requires-allocate-on-output-ports" /> + <Limit name="size" min="32x32" max="8192x8192" /> + <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-80000000" /> + <Feature name="adaptive-playback" /> + </MediaCodec> + <MediaCodec name="OMX.Exynos.AVC.Decoder.secure" type="video/avc" > <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> <Limit name="size" min="32x32" max="1920x1088" /> @@ -88,6 +99,7 @@ Only the three quirks included above are recognized at this point: <Limit name="blocks-per-second" min="1" max="489600" /> <Limit name="bitrate" range="1-80000000" /> <Feature name="adaptive-playback" /> + <Feature name="secure-playback" required="true" /> </MediaCodec> <MediaCodec name="OMX.Exynos.H263.Decoder" type="video/3gpp" > <Quirk name="requires-allocate-on-input-ports" /> @@ -99,7 +111,29 @@ Only the three quirks included above are recognized at this point: <Limit name="bitrate" range="1-80000000" /> <Feature name="adaptive-playback" /> </MediaCodec> - <MediaCodec name="OMX.Exynos.AVC.Decoder" type="video/avc" > + <MediaCodec name="OMX.Exynos.MPEG2.Decoder" type="video/mpeg2" > + <Quirk name="requires-allocate-on-input-ports" /> + <Quirk name="requires-allocate-on-output-ports" /> + <Quirk name="decoder-ignores-streamcorrupt-error" /> + <Quirk name="video-controller-check-enable" /> + <Limit name="size" min="32x32" 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-80000000" /> + <Feature name="adaptive-playback" /> + </MediaCodec> + <MediaCodec name="OMX.Exynos.MPEG4.Decoder" type="video/mp4v-es" > + <Quirk name="requires-allocate-on-input-ports" /> + <Quirk name="requires-allocate-on-output-ports" /> + <Limit name="size" min="32x32" 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-80000000" /> + <Feature name="adaptive-playback" /> + </MediaCodec> + <MediaCodec name="OMX.Exynos.VP8.Decoder" type="video/x-vnd.on2.vp8" > <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> <Limit name="size" min="32x32" max="8192x8192" /> @@ -109,7 +143,7 @@ Only the three quirks included above are recognized at this point: <Limit name="bitrate" range="1-80000000" /> <Feature name="adaptive-playback" /> </MediaCodec> - <MediaCodec name="OMX.Exynos.AVC.Decoder.secure" type="video/avc" > + <MediaCodec name="OMX.Exynos.WMV.Decoder" type="video/x-ms-wmv" > <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> <Limit name="size" min="32x32" max="1920x1088" /> @@ -118,11 +152,18 @@ Only the three quirks included above are recognized at this point: <Limit name="blocks-per-second" min="1" max="489600" /> <Limit name="bitrate" range="1-80000000" /> <Feature name="adaptive-playback" /> - <Feature name="secure-playback" required="true" /> + </MediaCodec> + + <!-- Audio --> + <MediaCodec name="OMX.Exynos.MP3.Decoder" type="audio/mpeg" > + <Limit name="channel-count" max="2" /> + <Limit name="sample-rate" ranges="8000,11025,12000,16000,22050,24000,32000,44100,48000" /> + <Limit name="bitrate" range="8000-960000" /> </MediaCodec> </Decoders> <Encoders> + <!-- Video --> <MediaCodec name="OMX.Exynos.AVC.Encoder" type="video/avc" > <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> @@ -150,6 +191,8 @@ Only the three quirks included above are recognized at this point: <Limit name="blocks-per-second" min="1" max="489600" /> <Limit name="bitrate" range="1-40000000" /> </MediaCodec> + + <!-- Audio --> </Encoders> <Include href="media_codecs_google_audio.xml" /> @@ -143,10 +143,13 @@ PRODUCT_COPY_FILES += \ PRODUCT_PACKAGES += \ libExynosOMX_Core \ libOMX.Exynos.AVC.Decoder \ + libOMX.Exynos.AVC.Encoder \ + libOMX.Exynos.MP3.Decoder \ libOMX.Exynos.MPEG2.Decoder \ libOMX.Exynos.MPEG4.Decoder \ - libOMX.Exynos.AVC.Encoder \ libOMX.Exynos.MPEG4.Encoder \ + libOMX.Exynos.VP8.Decoder \ + libOMX.Exynos.WMV.Decoder \ libstagefrighthw # Radio |
