summaryrefslogtreecommitdiffstats
path: root/media/libmedia/MediaProfiles.cpp
diff options
context:
space:
mode:
authorNipun Kwatra <nkwatra@google.com>2010-09-06 15:59:02 -0700
committerNipun Kwatra <nkwatra@google.com>2010-09-10 14:22:08 -0700
commitc0a84782589eececdfa7e723e8aa0e572d0d79f5 (patch)
treee1d1fa10c5696915e536bc603f7071d648f08e42 /media/libmedia/MediaProfiles.cpp
parent155e833a7a5fc3e193691324cf9326da1bc3289a (diff)
downloadframeworks_av-c0a84782589eececdfa7e723e8aa0e572d0d79f5.zip
frameworks_av-c0a84782589eececdfa7e723e8aa0e572d0d79f5.tar.gz
frameworks_av-c0a84782589eececdfa7e723e8aa0e572d0d79f5.tar.bz2
Added specific resolution and time lapse profiles.
- Added enums QUALITY_{QCIF,480P,720P,1080P} QUALITY_TIME_LAPSE_{LOW,HIGH,QCIF,480P,720P,1080P} in CamcorderProfile and corresponding ones in MediaProfiles. - Added functions createDefaultCamcorderTimeLapseLowProfile, createDefaultCamcorderTimeLapseHighProfile to set default values. - Moved javadoc for constants to the get() function. Change-Id: Ib8b3f8d29395dff77a397d1e6b44cfaf8c481d4d
Diffstat (limited to 'media/libmedia/MediaProfiles.cpp')
-rw-r--r--media/libmedia/MediaProfiles.cpp49
1 files changed, 48 insertions, 1 deletions
diff --git a/media/libmedia/MediaProfiles.cpp b/media/libmedia/MediaProfiles.cpp
index 3869389..37a33ed 100644
--- a/media/libmedia/MediaProfiles.cpp
+++ b/media/libmedia/MediaProfiles.cpp
@@ -59,8 +59,19 @@ const MediaProfiles::NameToTagMap MediaProfiles::sAudioDecoderNameMap[] = {
};
const MediaProfiles::NameToTagMap MediaProfiles::sCamcorderQualityNameMap[] = {
+ {"low", CAMCORDER_QUALITY_LOW},
{"high", CAMCORDER_QUALITY_HIGH},
- {"low", CAMCORDER_QUALITY_LOW}
+ {"qcif", CAMCORDER_QUALITY_QCIF},
+ {"480p", CAMCORDER_QUALITY_480P},
+ {"720p", CAMCORDER_QUALITY_720P},
+ {"1080p", CAMCORDER_QUALITY_1080P},
+
+ {"timelapselow", CAMCORDER_QUALITY_TIME_LAPSE_LOW},
+ {"timelapsehigh", CAMCORDER_QUALITY_TIME_LAPSE_HIGH},
+ {"timelapseqcif", CAMCORDER_QUALITY_TIME_LAPSE_QCIF},
+ {"timelapse480p", CAMCORDER_QUALITY_TIME_LAPSE_480P},
+ {"timelapse720p", CAMCORDER_QUALITY_TIME_LAPSE_720P},
+ {"timelapse1080p", CAMCORDER_QUALITY_TIME_LAPSE_1080P}
};
/*static*/ void
@@ -411,6 +422,40 @@ MediaProfiles::createDefaultVideoEncoders(MediaProfiles *profiles)
}
/*static*/ MediaProfiles::CamcorderProfile*
+MediaProfiles::createDefaultCamcorderTimeLapseHighProfile()
+{
+ MediaProfiles::VideoCodec *videoCodec =
+ new MediaProfiles::VideoCodec(VIDEO_ENCODER_H263, 20000000, 720, 480, 20);
+
+ AudioCodec *audioCodec = new AudioCodec(AUDIO_ENCODER_AMR_NB, 12200, 8000, 1);
+ CamcorderProfile *profile = new MediaProfiles::CamcorderProfile;
+ profile->mCameraId = 0;
+ profile->mFileFormat = OUTPUT_FORMAT_THREE_GPP;
+ profile->mQuality = CAMCORDER_QUALITY_TIME_LAPSE_HIGH;
+ profile->mDuration = 60;
+ profile->mVideoCodec = videoCodec;
+ profile->mAudioCodec = audioCodec;
+ return profile;
+}
+
+/*static*/ MediaProfiles::CamcorderProfile*
+MediaProfiles::createDefaultCamcorderTimeLapseLowProfile()
+{
+ MediaProfiles::VideoCodec *videoCodec =
+ new MediaProfiles::VideoCodec(VIDEO_ENCODER_H263, 1000000, 176, 144, 20);
+
+ AudioCodec *audioCodec = new AudioCodec(AUDIO_ENCODER_AMR_NB, 12200, 8000, 1);
+ CamcorderProfile *profile = new MediaProfiles::CamcorderProfile;
+ profile->mCameraId = 0;
+ profile->mFileFormat = OUTPUT_FORMAT_THREE_GPP;
+ profile->mQuality = CAMCORDER_QUALITY_TIME_LAPSE_LOW;
+ profile->mDuration = 60;
+ profile->mVideoCodec = videoCodec;
+ profile->mAudioCodec = audioCodec;
+ return profile;
+}
+
+/*static*/ MediaProfiles::CamcorderProfile*
MediaProfiles::createDefaultCamcorderHighProfile()
{
MediaProfiles::VideoCodec *videoCodec =
@@ -449,6 +494,8 @@ MediaProfiles::createDefaultCamcorderLowProfile()
/*static*/ void
MediaProfiles::createDefaultCamcorderProfiles(MediaProfiles *profiles)
{
+ profiles->mCamcorderProfiles.add(createDefaultCamcorderTimeLapseHighProfile());
+ profiles->mCamcorderProfiles.add(createDefaultCamcorderTimeLapseLowProfile());
profiles->mCamcorderProfiles.add(createDefaultCamcorderHighProfile());
profiles->mCamcorderProfiles.add(createDefaultCamcorderLowProfile());
}