From fb45748a1e1d0c4913cec195693c85bfdc45bd26 Mon Sep 17 00:00:00 2001 From: Nipun Kwatra Date: Wed, 18 Aug 2010 15:19:19 -0700 Subject: [PATCH] setParamMaxFileDurationUs should allow zero time input as per API of setMaxDuration. according to MediaRecorder::setMaxDuration documentation we should disable duration limit when zero or negative time is passed. Currently setParamMaxFileDurationUs was treating zero/negative as an error case. Fixed that. Change-Id: I468c3bcc74cb5a34ee3e172cef5147550d6be096 --- media/libmediaplayerservice/StagefrightRecorder.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/media/libmediaplayerservice/StagefrightRecorder.cpp b/media/libmediaplayerservice/StagefrightRecorder.cpp index 3c6d01bab7d5e..796731b451bcf 100644 --- a/media/libmediaplayerservice/StagefrightRecorder.cpp +++ b/media/libmediaplayerservice/StagefrightRecorder.cpp @@ -341,10 +341,14 @@ status_t StagefrightRecorder::setParamVideoEncodingBitRate(int32_t bitRate) { status_t StagefrightRecorder::setParamMaxFileDurationUs(int64_t timeUs) { LOGV("setParamMaxFileDurationUs: %lld us", timeUs); - if (timeUs <= 100000LL) { // XXX: 100 milli-seconds + if (timeUs <= 0) { + LOGW("Max file duration is not positive: %lld us. Disabling duration limit.", timeUs); + timeUs = 0; // Disable the duration limit for zero or negative values. + } else if (timeUs <= 100000LL) { // XXX: 100 milli-seconds LOGE("Max file duration is too short: %lld us", timeUs); return BAD_VALUE; } + mMaxFileDurationUs = timeUs; return OK; }