Hi, I reverted some changes and re-enabled hardware video encoding/decoding. Recording video now works fine with a Galaxy S3 and the proprietary firmware blobs (namely mfc_fw.bin, SlimISP_GD.bin and SlimISP_ZD.bin). Playback of the recorded videos with vlc is quite smooth, even in 1080p. Without the blobs, taking pictures still works fine (as before). BTW except for two bugs I noticed, the app Open Camera also works. This app provides lots of additional settings and is available from F-Droid.
Signed-off-by: Wolfgang Wiedmeyer <wolf...@wiedmeyer.de> --- BoardCommonConfig.mk | 9 +++++++++ common.mk | 21 +++++++++++++++++++++ configs/80cfw | 10 ++++++++++ configs/media_codecs.xml | 10 ++++++++++ 4 files changed, 50 insertions(+) create mode 100644 configs/80cfw diff --git a/BoardCommonConfig.mk b/BoardCommonConfig.mk index b4ae1bf..e0f6852 100644 --- a/BoardCommonConfig.mk +++ b/BoardCommonConfig.mk @@ -90,6 +90,15 @@ BOARD_CAMERA_HAVE_ISO := true COMMON_GLOBAL_CFLAGS += -DHAVE_ISO COMMON_GLOBAL_CFLAGS += -DSAMSUNG_CAMERA_HARDWARE +# OMX +BOARD_USE_SAMSUNG_COLORFORMAT := true +BOARD_NONBLOCK_MODE_PROCESS := true +BOARD_USE_STOREMETADATA := true +BOARD_USE_METADATABUFFERTYPE := true +BOARD_USES_MFC_FPS := true +BOARD_USE_S3D_SUPPORT := true +BOARD_USE_CSC_FIMC := false + # RIL BOARD_MOBILEDATA_INTERFACE_NAME := "pdp0" diff --git a/common.mk b/common.mk index 18b0715..93bed95 100644 --- a/common.mk +++ b/common.mk @@ -38,6 +38,10 @@ PRODUCT_COPY_FILES += \ $(COMMON_PATH)/configs/audio_effects.conf:system/etc/audio_effects.conf \ $(COMMON_PATH)/configs/audio_policy.conf:system/etc/audio_policy.conf +# Camera FW +PRODUCT_COPY_FILES += \ + $(COMMON_PATH)/configs/80cfw:system/etc/init.d/80cfw + # Vold and Storage PRODUCT_COPY_FILES += \ $(COMMON_PATH)/configs/vold.fstab:system/etc/vold.fstab @@ -81,6 +85,23 @@ PRODUCT_PACKAGES += \ charger \ charger_res_images +# MFC API +PRODUCT_PACKAGES += \ + libsecmfcdecapi \ + libsecmfcencapi + +# OMX +PRODUCT_PACKAGES += \ + libstagefrighthw \ + libSEC_OMX_Resourcemanager \ + libSEC_OMX_Core \ + libOMX.SEC.AVC.Decoder \ + libOMX.SEC.M4V.Decoder \ + libOMX.SEC.WMV.Decoder \ + libOMX.SEC.AVC.Encoder \ + libOMX.SEC.M4V.Encoder +# libOMX.SEC.VP8.Decoder + PRODUCT_COPY_FILES += \ $(COMMON_PATH)/configs/media_profiles.xml:system/etc/media_profiles.xml \ $(COMMON_PATH)/configs/media_codecs.xml:system/etc/media_codecs.xml diff --git a/configs/80cfw b/configs/80cfw new file mode 100644 index 0000000..7b803ff --- /dev/null +++ b/configs/80cfw @@ -0,0 +1,10 @@ +#!/system/bin/sh +# +# Copy camera firmware to /data/cfw +# + +busybox cp /system/vendor/firmware/SlimISP_*.bin /data/cfw/ + +busybox chown system /data/cfw/* +busybox chgrp media /data/cfw/* +busybox chmod 0775 /data/cfw/* diff --git a/configs/media_codecs.xml b/configs/media_codecs.xml index e4298a8..c8719db 100644 --- a/configs/media_codecs.xml +++ b/configs/media_codecs.xml @@ -77,6 +77,12 @@ Only the three quirks included above are recognized at this point: <MediaCodecs> <Decoders> + <MediaCodec name="OMX.SEC.AVC.Decoder" type="video/avc" /> + <MediaCodec name="OMX.SEC.MPEG4.Decoder" type="video/mp4v-es" /> + <MediaCodec name="OMX.SEC.H263.Decoder" type="video/3gpp" /> + <MediaCodec name="OMX.SEC.AVC.Decoder" type="video/avc" /> + <MediaCodec name="OMX.SEC.VP8.Decoder" type="video/x-vnd.on2.vp8" /> + <MediaCodec name="OMX.google.mp3.decoder" type="audio/mpeg" /> <MediaCodec name="OMX.google.amrnb.decoder" type="audio/3gpp" /> <MediaCodec name="OMX.google.amrwb.decoder" type="audio/amr-wb" /> @@ -91,6 +97,10 @@ Only the three quirks included above are recognized at this point: </Decoders> <Encoders> + <MediaCodec name="OMX.SEC.MPEG4.Encoder" type="video/mp4v-es" /> + <MediaCodec name="OMX.SEC.H263.Encoder" type="video/3gpp" /> + <MediaCodec name="OMX.SEC.AVC.Encoder" type="video/avc" /> + <MediaCodec name="OMX.google.amrnb.encoder" type="audio/3gpp" /> <MediaCodec name="OMX.google.amrwb.encoder" type="audio/amr-wb" /> <MediaCodec name="OMX.google.aac.encoder" type="audio/mp4a-latm" /> -- 2.1.4 _______________________________________________ Replicant mailing list Replicant@lists.osuosl.org http://lists.osuosl.org/mailman/listinfo/replicant