diff options
author | Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de> | 2016-01-14 22:14:14 +0100 |
---|---|---|
committer | Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de> | 2016-01-14 22:14:14 +0100 |
commit | 998f3a696f0d671832624637c771e3bda3e0c9f5 (patch) | |
tree | 67c89508c2eaad57389ffac29d673a09bc8bfaba /media/libmediaplayerservice | |
parent | 1c47b26b1ae695c355e4ec0c317716a397588206 (diff) | |
parent | 8ad656861c764ea4f8bf8539cb568b01edbf647d (diff) | |
download | frameworks_av-998f3a696f0d671832624637c771e3bda3e0c9f5.zip frameworks_av-998f3a696f0d671832624637c771e3bda3e0c9f5.tar.gz frameworks_av-998f3a696f0d671832624637c771e3bda3e0c9f5.tar.bz2 |
Merge branch 'cm-13.0' of https://github.com/CyanogenMod/android_frameworks_av into replicant-6.0
Diffstat (limited to 'media/libmediaplayerservice')
-rw-r--r-- | media/libmediaplayerservice/StagefrightRecorder.cpp | 15 | ||||
-rw-r--r-- | media/libmediaplayerservice/StagefrightRecorder.h | 4 |
2 files changed, 15 insertions, 4 deletions
diff --git a/media/libmediaplayerservice/StagefrightRecorder.cpp b/media/libmediaplayerservice/StagefrightRecorder.cpp index 6baca4d..c4c5741 100644 --- a/media/libmediaplayerservice/StagefrightRecorder.cpp +++ b/media/libmediaplayerservice/StagefrightRecorder.cpp @@ -1622,12 +1622,14 @@ status_t StagefrightRecorder::setupVideoEncoder( } } - setupCustomVideoEncoderParams(cameraSource, format); - format->setInt32("bitrate", mVideoBitRate); format->setInt32("frame-rate", mFrameRate); format->setInt32("i-frame-interval", mIFramesIntervalSec); + if (cameraSource != NULL) { + setupCustomVideoEncoderParams(cameraSource, format); + } + if (mVideoTimeScale > 0) { format->setInt32("time-scale", mVideoTimeScale); } @@ -2094,4 +2096,13 @@ status_t StagefrightRecorder::setSourcePause(bool pause) { } return err; } + +void StagefrightRecorder::setupCustomVideoEncoderParams(sp<MediaSource> cameraSource, + sp<AMessage> &format) { + + // Setup HFR if needed + AVUtils::get()->HFRUtils().initializeHFR(cameraSource->getFormat(), format, + mMaxFileDurationUs, mVideoEncoder); +} + } // namespace android diff --git a/media/libmediaplayerservice/StagefrightRecorder.h b/media/libmediaplayerservice/StagefrightRecorder.h index 72dc77b..d93fc3b 100644 --- a/media/libmediaplayerservice/StagefrightRecorder.h +++ b/media/libmediaplayerservice/StagefrightRecorder.h @@ -154,8 +154,8 @@ protected: status_t setupCameraSource(sp<CameraSource> *cameraSource); status_t setupAudioEncoder(const sp<MediaWriter>& writer); virtual status_t setupVideoEncoder(sp<MediaSource> cameraSource, sp<MediaSource> *source); - virtual void setupCustomVideoEncoderParams(sp<MediaSource> /*cameraSource*/, - sp<AMessage> &/*format*/) {} + virtual void setupCustomVideoEncoderParams(sp<MediaSource> cameraSource, + sp<AMessage> &format); virtual bool setCustomVideoEncoderMime(const video_encoder videoEncoder, sp<AMessage> format); // Encoding parameter handling utilities |