diff options
author | Shalaj Jain <shalajj@codeaurora.org> | 2015-07-21 20:25:16 -0700 |
---|---|---|
committer | Satish Kamuju <skamuj@codeaurora.org> | 2015-10-06 17:32:39 +0530 |
commit | 68ec69bc44e7d362a3f88fec3459654b270f86cd (patch) | |
tree | ab69ac56e55022c8f098cd3d0843a1bd5f51ea72 /media/libavextensions | |
parent | 4d0485d7daead3a28cac12c2e2cea25c2ade654d (diff) | |
download | frameworks_av-68ec69bc44e7d362a3f88fec3459654b270f86cd.zip frameworks_av-68ec69bc44e7d362a3f88fec3459654b270f86cd.tar.gz frameworks_av-68ec69bc44e7d362a3f88fec3459654b270f86cd.tar.bz2 |
avextensions: Add support for Codec Extension features
Add support for Codec extension features like
skype, vqzip, b-frame encoding, prefer adaptive playback etc.
Add extensions to support encode batching.
Also enable Werror for libavextensions.
Change-Id: Ia342d4abe4bb1e21b9ff2b8213fb96421485a333
Diffstat (limited to 'media/libavextensions')
-rw-r--r-- | media/libavextensions/Android.mk | 6 | ||||
-rw-r--r-- | media/libavextensions/mediaplayerservice/AVNuExtensions.h | 2 | ||||
-rw-r--r-- | media/libavextensions/mediaplayerservice/AVNuUtils.cpp | 9 | ||||
-rw-r--r-- | media/libavextensions/stagefright/AVExtensions.h | 8 | ||||
-rw-r--r-- | media/libavextensions/stagefright/AVUtils.cpp | 8 |
5 files changed, 20 insertions, 13 deletions
diff --git a/media/libavextensions/Android.mk b/media/libavextensions/Android.mk index 26c9f85..0bc886d 100644 --- a/media/libavextensions/Android.mk +++ b/media/libavextensions/Android.mk @@ -15,7 +15,7 @@ LOCAL_C_INCLUDES:= \ $(TOP)/hardware/qcom/media/mm-core/inc \ $(TOP)/frameworks/av/media/libstagefright \ -LOCAL_CFLAGS += -Wno-multichar +LOCAL_CFLAGS += -Wno-multichar -Werror ifeq ($(TARGET_ENABLE_QC_AV_ENHANCEMENTS),true) LOCAL_CFLAGS += -DENABLE_AV_ENHANCEMENTS @@ -42,7 +42,7 @@ LOCAL_C_INCLUDES:= \ $(TOP)/external/flac/include \ $(TOP)/hardware/qcom/media/mm-core/inc -LOCAL_CFLAGS += -Wno-multichar +LOCAL_CFLAGS += -Wno-multichar -Werror ifeq ($(TARGET_ENABLE_QC_AV_ENHANCEMENTS),true) LOCAL_CFLAGS += -DENABLE_AV_ENHANCEMENTS @@ -75,7 +75,7 @@ LOCAL_C_INCLUDES:= \ $(TOP)/external/flac/include \ $(TOP)/hardware/qcom/media/mm-core/inc -LOCAL_CFLAGS += -Wno-multichar +LOCAL_CFLAGS += -Wno-multichar -Werror ifeq ($(TARGET_ENABLE_QC_AV_ENHANCEMENTS),true) LOCAL_CFLAGS += -DENABLE_AV_ENHANCEMENTS diff --git a/media/libavextensions/mediaplayerservice/AVNuExtensions.h b/media/libavextensions/mediaplayerservice/AVNuExtensions.h index 6ab790f..4d1421c 100644 --- a/media/libavextensions/mediaplayerservice/AVNuExtensions.h +++ b/media/libavextensions/mediaplayerservice/AVNuExtensions.h @@ -81,6 +81,8 @@ struct AVNuUtils { virtual status_t convertToSinkFormatIfNeeded(const sp<ABuffer> &, sp<ABuffer> &, audio_format_t sinkFormat, bool isOffload); + virtual void printFileName(int fd); + // ----- NO TRESSPASSING BEYOND THIS LINE ------ DECLARE_LOADABLE_SINGLETON(AVNuUtils); }; diff --git a/media/libavextensions/mediaplayerservice/AVNuUtils.cpp b/media/libavextensions/mediaplayerservice/AVNuUtils.cpp index 2e2e511..bc07c90 100644 --- a/media/libavextensions/mediaplayerservice/AVNuUtils.cpp +++ b/media/libavextensions/mediaplayerservice/AVNuUtils.cpp @@ -44,7 +44,6 @@ namespace android { - sp<MetaData> AVNuUtils::createPCMMetaFromSource(const sp<MetaData> &sMeta) { return sMeta; } @@ -93,18 +92,18 @@ void AVNuUtils::setSourcePCMFormat(const sp<MetaData> &) { void AVNuUtils::setDecodedPCMFormat(const sp<AMessage> &) { } + status_t AVNuUtils::convertToSinkFormatIfNeeded(const sp<ABuffer> &, sp<ABuffer> &, audio_format_t /*sinkFormat*/, bool /*isOffload*/) { return INVALID_OPERATION; } +void AVNuUtils::printFileName(int) {} // ----- NO TRESSPASSING BEYOND THIS LINE ------ -AVNuUtils::AVNuUtils() { -} +AVNuUtils::AVNuUtils() {} -AVNuUtils::~AVNuUtils() { -} +AVNuUtils::~AVNuUtils() {} //static AVNuUtils *AVNuUtils::sInst = diff --git a/media/libavextensions/stagefright/AVExtensions.h b/media/libavextensions/stagefright/AVExtensions.h index 2ebfcde..f2a079f 100644 --- a/media/libavextensions/stagefright/AVExtensions.h +++ b/media/libavextensions/stagefright/AVExtensions.h @@ -44,6 +44,8 @@ struct IMediaHTTPConnection; struct MediaCodec; struct MediaHTTP; struct NuCachedSource2; +class CameraParameters; +class MediaBuffer; /* * Factory to create objects of base-classes in libstagefright @@ -97,6 +99,12 @@ struct AVUtils { virtual bool canOffloadAPE(const sp<MetaData> &meta); + virtual void extractCustomCameraKeys( + const CameraParameters& /*params*/, sp<MetaData> &/*meta*/) {} + virtual void printFileName(int /*fd*/) {} + virtual void addDecodingTimesFromBatch(MediaBuffer * /*buf*/, + List<int64_t> &/*decodeTimeQueue*/) {} + // ----- NO TRESSPASSING BEYOND THIS LINE ------ DECLARE_LOADABLE_SINGLETON(AVUtils); }; diff --git a/media/libavextensions/stagefright/AVUtils.cpp b/media/libavextensions/stagefright/AVUtils.cpp index 502154f..a683f48 100644 --- a/media/libavextensions/stagefright/AVUtils.cpp +++ b/media/libavextensions/stagefright/AVUtils.cpp @@ -101,7 +101,7 @@ sp<MediaCodec> AVUtils::createCustomComponentByName( return NULL; } -bool AVUtils::canOffloadAPE(const sp<MetaData> &meta) { +bool AVUtils::canOffloadAPE(const sp<MetaData> &) { return true; } @@ -110,11 +110,9 @@ bool AVUtils::isEnhancedExtension(const char *) { } // ----- NO TRESSPASSING BEYOND THIS LINE ------ -AVUtils::AVUtils() { -} +AVUtils::AVUtils() {} -AVUtils::~AVUtils() { -} +AVUtils::~AVUtils() {} //static AVUtils *AVUtils::sInst = |