summaryrefslogtreecommitdiffstats
path: root/media/libavextensions
diff options
context:
space:
mode:
authorSurajit Podder <spodder@codeaurora.org>2015-07-22 18:58:29 +0530
committerSatish Kamuju <skamuj@codeaurora.org>2015-10-06 17:35:24 +0530
commitbd019775a921ae9165e924e4d37bc838a7ef5781 (patch)
treee0ca419e9f0d1d28a9caed2d00ebcb7021284c4e /media/libavextensions
parent61f6cfa961d22a9a54d91366fefec135f091012d (diff)
downloadframeworks_av-bd019775a921ae9165e924e4d37bc838a7ef5781.zip
frameworks_av-bd019775a921ae9165e924e4d37bc838a7ef5781.tar.gz
frameworks_av-bd019775a921ae9165e924e4d37bc838a7ef5781.tar.bz2
video: Port AOSP fixes
Includes following fixes: f510d0c libstagefright: Disable multi slice mode for video encode ca46843 audio: Fix for failure in CTS MediaRecorderTest cases b4d0490 libstagefright: check the audio source when adding to MPEG4Writer 89c6c3f libstagefright: Allocate cached camera buffers for sw encoders f2c387b libstagefright: Choose target specific media_codecs.xml f3e7122 libstagefright: Implement fallback mechanism to SW decoder Change-Id: I90398b2fead1f4e163935bf1db342e24275f7933
Diffstat (limited to 'media/libavextensions')
-rw-r--r--media/libavextensions/stagefright/AVExtensions.h7
-rw-r--r--media/libavextensions/stagefright/AVUtils.cpp12
2 files changed, 18 insertions, 1 deletions
diff --git a/media/libavextensions/stagefright/AVExtensions.h b/media/libavextensions/stagefright/AVExtensions.h
index 3e51463..4d73f59 100644
--- a/media/libavextensions/stagefright/AVExtensions.h
+++ b/media/libavextensions/stagefright/AVExtensions.h
@@ -32,6 +32,8 @@
#include <media/stagefright/DataSource.h>
#include <common/AVExtensionsCommon.h>
#include <system/audio.h>
+#include <camera/ICamera.h>
+#include <media/mediarecorder.h>
namespace android {
@@ -141,9 +143,12 @@ struct AVUtils {
return mHEVCMuxer;
}
+ virtual bool isAudioMuxFormatSupported(const char *mime);
+ virtual void cacheCaptureBuffers(sp<ICamera> camera, video_encoder encoder);
+ virtual const char *getCustomCodecsLocation();
+
private:
HEVCMuxer mHEVCMuxer;
-
// ----- NO TRESSPASSING BEYOND THIS LINE ------
DECLARE_LOADABLE_SINGLETON(AVUtils);
};
diff --git a/media/libavextensions/stagefright/AVUtils.cpp b/media/libavextensions/stagefright/AVUtils.cpp
index 8e7c39d..5113446 100644
--- a/media/libavextensions/stagefright/AVUtils.cpp
+++ b/media/libavextensions/stagefright/AVUtils.cpp
@@ -143,6 +143,18 @@ void AVUtils::HEVCMuxer::getHEVCCodecSpecificDataFromInputFormatIfPossible(
return;
}
+bool AVUtils::isAudioMuxFormatSupported(const char *) {
+ return true;
+}
+
+void AVUtils::cacheCaptureBuffers(sp<ICamera>, video_encoder) {
+ return;
+}
+
+const char *AVUtils::getCustomCodecsLocation() {
+ return "/etc/media_codecs.xml";
+}
+
// ----- NO TRESSPASSING BEYOND THIS LINE ------
AVUtils::AVUtils() {}