diff options
Diffstat (limited to 'media/libavextensions/stagefright/AVExtensions.h')
-rw-r--r-- | media/libavextensions/stagefright/AVExtensions.h | 20 |
1 files changed, 19 insertions, 1 deletions
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 ------ |