return findFlag ? E_SUCCESS : E_UNSUPPORTED_TYPE;
}
-_ResolutionType
-_CameraUtil::ConvertResolutionType(const Tizen::Graphics::Dimension &resolution)
-{
- _ResolutionType resolutionType = _RES_NONE;
-
- if ( resolution.width == 128 && resolution.height == 96 )
- {
- resolutionType = _RES_128X96;
- }
- else if ( resolution.width == 160 && resolution.height == 120 )
- {
- resolutionType = _RES_160X120;
- }
- else if ( resolution.width == 176 && resolution.height == 144 )
- {
- resolutionType = _RES_176X144;
- }
- else if ( resolution.width == 176 && resolution.height == 176 )
- {
- resolutionType = _RES_176X176;
- }
- else if ( resolution.width == 240 && resolution.height == 320 )
- {
- resolutionType = _RES_240X320;
- }
- else if ( resolution.width == 320 && resolution.height == 240 )
- {
- resolutionType = _RES_320X240;
- }
- else if ( resolution.width == 240 && resolution.height == 400 )
- {
- resolutionType = _RES_240X400;
- }
- else if ( resolution.width == 400 && resolution.height == 240 )
- {
- resolutionType = _RES_400X240;
- }
- else if ( resolution.width == 352 && resolution.height == 288 )
- {
- resolutionType = _RES_352X288;
- }
- else if ( resolution.width == 480 && resolution.height == 360 )
- {
- resolutionType = _RES_480X360;
- }
- else if ( resolution.width == 640 && resolution.height == 360 )
- {
- resolutionType = _RES_640X360;
- }
- else if ( resolution.width == 640 && resolution.height == 480 )
- {
- resolutionType = _RES_640X480;
- }
- else if ( resolution.width == 720 && resolution.height == 480 )
- {
- resolutionType = _RES_720X480;
- }
- else if ( resolution.width == 800 && resolution.height == 480 )
- {
- resolutionType = _RES_800X480;
- }
- else if ( resolution.width == 800 && resolution.height == 600 )
- {
- resolutionType = _RES_800X600;
- }
- else if ( resolution.width == 960 && resolution.height == 720 )
- {
- resolutionType = _RES_960X720;
- }
- else if ( resolution.width == 1280 && resolution.height == 720 )
- {
- resolutionType = _RES_1280X720;
- }
- else if ( resolution.width == 1280 && resolution.height == 960 )
- {
- resolutionType = _RES_1280X960;
- }
- else if ( resolution.width == 1392 && resolution.height == 1392 )
- {
- resolutionType = _RES_1392X1392;
- }
- else if ( resolution.width == 1600 && resolution.height == 1200 )
- {
- resolutionType = _RES_1600X1200;
- }
- else if ( resolution.width == 1920 && resolution.height == 1080 )
- {
- resolutionType = _RES_1920X1080;
- }
-
- return resolutionType;
-}
-
typedef struct
{
CameraDirection physicalDirection;
typedef struct
{
int mmAttrBitrate;
- _ResolutionType resolution;
+ int width; //max boundary
+ int height; // min boundary
RecordingQuality quality;
}_VideoQualityTable;
static const _VideoQualityTable _VIDEO_QUALITY[] =
{
- {48000, _RES_128X96, RECORDING_QUALITY_LOW},
- {64000, _RES_128X96, RECORDING_QUALITY_MEDIUM},
- {80000, _RES_128X96, RECORDING_QUALITY_HIGH},
- {72000, _RES_160X120, RECORDING_QUALITY_LOW},
- {97000, _RES_160X120, RECORDING_QUALITY_MEDIUM},
- {120000, _RES_160X120, RECORDING_QUALITY_HIGH},
- {96000, _RES_176X144, RECORDING_QUALITY_LOW},
- {128000, _RES_176X144, RECORDING_QUALITY_MEDIUM},
- {160000, _RES_176X144, RECORDING_QUALITY_HIGH},
- {96000, _RES_176X176, RECORDING_QUALITY_LOW},
- {128000, _RES_176X176, RECORDING_QUALITY_MEDIUM},
- {160000, _RES_176X176, RECORDING_QUALITY_HIGH},
- {96000, _RES_240X320, RECORDING_QUALITY_LOW},
- {128000, _RES_240X320, RECORDING_QUALITY_MEDIUM},
- {160000, _RES_240X320, RECORDING_QUALITY_HIGH},
- {96000, _RES_320X240, RECORDING_QUALITY_LOW},
- {128000, _RES_320X240, RECORDING_QUALITY_MEDIUM},
- {160000, _RES_320X240, RECORDING_QUALITY_HIGH},
- {96000, _RES_240X400, RECORDING_QUALITY_LOW},
- {128000, _RES_240X400, RECORDING_QUALITY_MEDIUM},
- {160000, _RES_240X400, RECORDING_QUALITY_HIGH},
- {96000, _RES_400X240, RECORDING_QUALITY_LOW},
- {128000, _RES_400X240, RECORDING_QUALITY_MEDIUM},
- {160000, _RES_400X240, RECORDING_QUALITY_HIGH},
- {96000, _RES_352X288, RECORDING_QUALITY_LOW},
- {128000, _RES_352X288, RECORDING_QUALITY_MEDIUM},
- {160000, _RES_352X288, RECORDING_QUALITY_HIGH},
- {96000, _RES_480X360, RECORDING_QUALITY_LOW},
- {128000, _RES_480X360, RECORDING_QUALITY_MEDIUM},
- {160000, _RES_480X360, RECORDING_QUALITY_HIGH},
- {96000, _RES_640X360, RECORDING_QUALITY_LOW},
- {128000, _RES_640X360, RECORDING_QUALITY_MEDIUM},
- {160000, _RES_640X360, RECORDING_QUALITY_HIGH},
-
- {2000000, _RES_640X480, RECORDING_QUALITY_LOW},
- {2500000, _RES_640X480, RECORDING_QUALITY_MEDIUM},
- {3000000, _RES_640X480, RECORDING_QUALITY_HIGH},
- {2200000, _RES_720X480, RECORDING_QUALITY_LOW},
- {2800000, _RES_720X480, RECORDING_QUALITY_MEDIUM},
- {3300000, _RES_720X480, RECORDING_QUALITY_HIGH},
-
- {96000, _RES_800X480, RECORDING_QUALITY_LOW},
- {128000, _RES_800X480, RECORDING_QUALITY_MEDIUM},
- {160000, _RES_800X480, RECORDING_QUALITY_HIGH},
- {96000, _RES_800X600, RECORDING_QUALITY_LOW},
- {128000, _RES_800X600, RECORDING_QUALITY_MEDIUM},
- {160000, _RES_800X600, RECORDING_QUALITY_HIGH},
-
- {2000000, _RES_960X720, RECORDING_QUALITY_LOW},
- {2500000, _RES_960X720, RECORDING_QUALITY_MEDIUM},
- {3000000, _RES_960X720, RECORDING_QUALITY_HIGH},
-
- {2000000, _RES_1280X720, RECORDING_QUALITY_LOW},
- {2500000, _RES_1280X720, RECORDING_QUALITY_MEDIUM},
- {3000000, _RES_1280X720, RECORDING_QUALITY_HIGH},
-
- {2000000, _RES_1280X960, RECORDING_QUALITY_LOW},
- {2500000, _RES_1280X960, RECORDING_QUALITY_MEDIUM},
- {3000000, _RES_1280X960, RECORDING_QUALITY_HIGH},
-
- {2000000, _RES_1392X1392, RECORDING_QUALITY_LOW},
- {2500000, _RES_1392X1392, RECORDING_QUALITY_MEDIUM},
- {3000000, _RES_1392X1392, RECORDING_QUALITY_HIGH},
-
- {2200000, _RES_1600X1200, RECORDING_QUALITY_LOW},
- {2800000, _RES_1600X1200, RECORDING_QUALITY_MEDIUM},
- {3300000, _RES_1600X1200, RECORDING_QUALITY_HIGH},
- {2200000, _RES_1920X1080, RECORDING_QUALITY_LOW},
- {2800000, _RES_1920X1080, RECORDING_QUALITY_MEDIUM},
- {3300000, _RES_1920X1080, RECORDING_QUALITY_HIGH},
+ {48000, 128, 96, RECORDING_QUALITY_LOW},
+ {64000, 128, 96, RECORDING_QUALITY_MEDIUM},
+ {80000, 128, 96, RECORDING_QUALITY_HIGH},
+
+ {72000, 162, 120, RECORDING_QUALITY_LOW},
+ {97000, 160, 120, RECORDING_QUALITY_MEDIUM},
+ {120000, 160, 120, RECORDING_QUALITY_HIGH},
+
+ {96000, 800, 600, RECORDING_QUALITY_LOW},
+ {128000, 800, 600, RECORDING_QUALITY_MEDIUM},
+ {160000, 800, 600, RECORDING_QUALITY_HIGH},
+
+ {96000, 0xfffe, 0xfffe, RECORDING_QUALITY_LOW},
+ {160000, 0xfffe, 0xfffe, RECORDING_QUALITY_MEDIUM},
+ {4000000, 0xfffe, 0xfffe, RECORDING_QUALITY_HIGH},
};
result
-_RecorderUtil::GetMmVideoQuality(_ResolutionType resolution, RecordingQuality quality, int& mmAttrBitrate)
+_RecorderUtil::GetMmVideoQuality(const Tizen::Graphics::Dimension& dim, RecordingQuality quality, int& mmAttrBitrate)
{
bool findFlag = false;
int size = sizeof(_VIDEO_QUALITY)/sizeof(_VIDEO_QUALITY[0]);
for (int i = 0; i < size; i++)
{
- if (_VIDEO_QUALITY[i].resolution == resolution && _VIDEO_QUALITY[i].quality == quality)
+ if (_VIDEO_QUALITY[i].width >= dim.width && _VIDEO_QUALITY[i].height >= dim.height && _VIDEO_QUALITY[i].quality == quality)
{
mmAttrBitrate = _VIDEO_QUALITY[i].mmAttrBitrate;
findFlag = true;