summaryrefslogtreecommitdiffstats
path: root/media/libavextensions
diff options
context:
space:
mode:
authorSteve Kondik <steve@cyngn.com>2015-10-22 09:47:18 -0700
committerSteve Kondik <steve@cyngn.com>2015-10-22 09:47:18 -0700
commitf939831843ffa12bfc7851c3ef805835f2f8fdae (patch)
tree733e80d11ed31f0e88cfd3199189df48c5587c90 /media/libavextensions
parent4a0d8447e0aaebff6dbfb25bb61b811f5fd9e68f (diff)
parent57be3741eee1899226e6dfd9d6b755a2ffe3109f (diff)
downloadframeworks_av-f939831843ffa12bfc7851c3ef805835f2f8fdae.zip
frameworks_av-f939831843ffa12bfc7851c3ef805835f2f8fdae.tar.gz
frameworks_av-f939831843ffa12bfc7851c3ef805835f2f8fdae.tar.bz2
Merge branch 'm' of git://codeaurora.org/platform/frameworks/av into cm-13.0
Diffstat (limited to 'media/libavextensions')
-rw-r--r--media/libavextensions/Android.mk3
-rw-r--r--media/libavextensions/stagefright/AVExtensions.h20
-rw-r--r--media/libavextensions/stagefright/AVFactory.cpp18
-rw-r--r--media/libavextensions/stagefright/AVUtils.cpp6
4 files changed, 45 insertions, 2 deletions
diff --git a/media/libavextensions/Android.mk b/media/libavextensions/Android.mk
index 7cefb75..3918857 100644
--- a/media/libavextensions/Android.mk
+++ b/media/libavextensions/Android.mk
@@ -22,6 +22,7 @@ ifeq ($(TARGET_ENABLE_QC_AV_ENHANCEMENTS),true)
endif
LOCAL_MODULE:= libavextensions
+LOCAL_CLANG := false
LOCAL_MODULE_TAGS := optional
@@ -49,6 +50,7 @@ ifeq ($(TARGET_ENABLE_QC_AV_ENHANCEMENTS),true)
endif
LOCAL_MODULE:= libavmediaextentions
+LOCAL_CLANG := false
LOCAL_MODULE_TAGS := optional
@@ -82,6 +84,7 @@ ifeq ($(TARGET_ENABLE_QC_AV_ENHANCEMENTS),true)
endif
LOCAL_MODULE:= libavmediaserviceextensions
+LOCAL_CLANG := false
LOCAL_MODULE_TAGS := optional
diff --git a/media/libavextensions/stagefright/AVExtensions.h b/media/libavextensions/stagefright/AVExtensions.h
index 832fc28..9c712e4 100644
--- a/media/libavextensions/stagefright/AVExtensions.h
+++ b/media/libavextensions/stagefright/AVExtensions.h
@@ -34,6 +34,7 @@
#include <system/audio.h>
#include <camera/ICamera.h>
#include <media/mediarecorder.h>
+#include <media/IOMX.h>
namespace android {
@@ -53,6 +54,7 @@ class CameraParameters;
class MediaBuffer;
struct AudioSource;
class CameraSource;
+class CameraSourceTimeLapse;
class ICamera;
class ICameraRecordingProxy;
class String16;
@@ -84,7 +86,7 @@ struct AVFactory {
uint32_t channels,
uint32_t outSampleRate = 0);
- virtual CameraSource *CreateFromCamera(
+ virtual CameraSource *CreateCameraSourceFromCamera(
const sp<ICamera> &camera,
const sp<ICameraRecordingProxy> &proxy,
int32_t cameraId,
@@ -94,6 +96,18 @@ struct AVFactory {
int32_t frameRate,
const sp<IGraphicBufferProducer>& surface,
bool storeMetaDataInVideoBuffers = true);
+
+ virtual CameraSourceTimeLapse *CreateCameraSourceTimeLapseFromCamera(
+ const sp<ICamera> &camera,
+ const sp<ICameraRecordingProxy> &proxy,
+ int32_t cameraId,
+ const String16& clientName,
+ uid_t clientUid,
+ Size videoSize,
+ int32_t videoFrameRate,
+ const sp<IGraphicBufferProducer>& surface,
+ int64_t timeBetweenFrameCaptureUs,
+ bool storeMetaDataInVideoBuffers = true);
// ----- NO TRESSPASSING BEYOND THIS LINE ------
DECLARE_LOADABLE_SINGLETON(AVFactory);
};
@@ -183,6 +197,10 @@ struct AVUtils {
virtual void cacheCaptureBuffers(sp<ICamera> camera, video_encoder encoder);
virtual const char *getCustomCodecsLocation();
+ virtual void setIntraPeriod(
+ int nPFrames, int nBFrames, const sp<IOMX> OMXhandle,
+ IOMX::node_id nodeID);
+
private:
HEVCMuxer mHEVCMuxer;
// ----- NO TRESSPASSING BEYOND THIS LINE ------
diff --git a/media/libavextensions/stagefright/AVFactory.cpp b/media/libavextensions/stagefright/AVFactory.cpp
index 19977e9..90ac7b2 100644
--- a/media/libavextensions/stagefright/AVFactory.cpp
+++ b/media/libavextensions/stagefright/AVFactory.cpp
@@ -43,6 +43,7 @@
#include <media/stagefright/MediaHTTP.h>
#include <media/stagefright/AudioSource.h>
#include <media/stagefright/CameraSource.h>
+#include <media/stagefright/CameraSourceTimeLapse.h>
#include <camera/CameraParameters.h>
#include "common/ExtensionsLoader.hpp"
@@ -88,7 +89,7 @@ AudioSource* AVFactory::createAudioSource(
channels, outSampleRate);
}
-CameraSource* AVFactory::CreateFromCamera(
+CameraSource* AVFactory::CreateCameraSourceFromCamera(
const sp<ICamera> &camera,
const sp<ICameraRecordingProxy> &proxy,
int32_t cameraId,
@@ -103,6 +104,21 @@ CameraSource* AVFactory::CreateFromCamera(
storeMetaDataInVideoBuffers);
}
+CameraSourceTimeLapse* AVFactory::CreateCameraSourceTimeLapseFromCamera(
+ const sp<ICamera> &camera,
+ const sp<ICameraRecordingProxy> &proxy,
+ int32_t cameraId,
+ const String16& clientName,
+ uid_t clientUid,
+ Size videoSize,
+ int32_t videoFrameRate,
+ const sp<IGraphicBufferProducer>& surface,
+ int64_t timeBetweenFrameCaptureUs,
+ bool storeMetaDataInVideoBuffers) {
+ return CameraSourceTimeLapse::CreateFromCamera(camera, proxy, cameraId,
+ clientName, clientUid, videoSize, videoFrameRate, surface,
+ timeBetweenFrameCaptureUs, storeMetaDataInVideoBuffers);
+}
// ----- NO TRESSPASSING BEYOND THIS LINE ------
AVFactory::AVFactory() {
}
diff --git a/media/libavextensions/stagefright/AVUtils.cpp b/media/libavextensions/stagefright/AVUtils.cpp
index 9219fc2..324ff9b 100644
--- a/media/libavextensions/stagefright/AVUtils.cpp
+++ b/media/libavextensions/stagefright/AVUtils.cpp
@@ -169,6 +169,12 @@ const char *AVUtils::getCustomCodecsLocation() {
return "/etc/media_codecs.xml";
}
+void AVUtils::setIntraPeriod(
+ int, int, const sp<IOMX>,
+ IOMX::node_id) {
+ return;
+}
+
// ----- NO TRESSPASSING BEYOND THIS LINE ------
AVUtils::AVUtils() {}