From 59d9e31c503e5c2f49448362a0d3a8f1150fb6c2 Mon Sep 17 00:00:00 2001 From: Nipun Kwatra Date: Mon, 13 Sep 2010 18:52:55 -0700 Subject: Checks for auxiliary video recording. - Check that time lapse mode is on when using auxiliary video recording. - Check that auxiliary video size is strictly less than the main video size. Change-Id: Ic49d25e6ac30f6f885ce4f5fb38dbe0cc7bc1be1 --- media/libmediaplayerservice/StagefrightRecorder.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'media/libmediaplayerservice/StagefrightRecorder.cpp') diff --git a/media/libmediaplayerservice/StagefrightRecorder.cpp b/media/libmediaplayerservice/StagefrightRecorder.cpp index 77a9cca..fe5074b 100644 --- a/media/libmediaplayerservice/StagefrightRecorder.cpp +++ b/media/libmediaplayerservice/StagefrightRecorder.cpp @@ -1193,8 +1193,6 @@ status_t StagefrightRecorder::setupMPEG4Recording( } if ((videoWidth != mVideoWidth) || (videoHeight != mVideoHeight)) { // Use downsampling from the original source. - CHECK(videoWidth <= mVideoWidth); - CHECK(videoHeight <= mVideoHeight); cameraMediaSource = new VideoSourceDownSampler(cameraMediaSource, videoWidth, videoHeight); } @@ -1244,6 +1242,10 @@ void StagefrightRecorder::setupMPEG4MetaData(int64_t startTimeUs, int32_t totalB status_t StagefrightRecorder::startMPEG4Recording() { if (mCaptureAuxVideo) { + if (!mCaptureTimeLapse) { + LOGE("Auxiliary video can be captured only in time lapse mode"); + return UNKNOWN_ERROR; + } LOGV("Creating MediaSourceSplitter"); sp cameraSource; status_t err = setupCameraSource(&cameraSource); @@ -1278,6 +1280,12 @@ status_t StagefrightRecorder::startMPEG4Recording() { LOGE("Auxiliary File writer is not avaialble"); return UNKNOWN_ERROR; } + if ((mAuxVideoWidth > mVideoWidth) || (mAuxVideoHeight > mVideoHeight) || + ((mAuxVideoWidth == mVideoWidth) && mAuxVideoHeight == mVideoHeight)) { + LOGE("Auxiliary video size (%d x %d) same or larger than the main video size (%d x %d)", + mAuxVideoWidth, mAuxVideoHeight, mVideoWidth, mVideoHeight); + return UNKNOWN_ERROR; + } int32_t totalBitrateAux; err = setupMPEG4Recording(mCaptureAuxVideo, -- cgit v1.1