MM_ATTRS_FLAG_RW, /* Flag */
{(void *)MM_STREAMRECORDER_VIDEO_TYPE_TBM_BO}, /* Default value */
MM_ATTRS_VALID_TYPE_INT_RANGE, /* Validity type */
- MM_STREAMRECORDER_VIDEO_TYPE_TBM_BO, /* Validity val1 (min, *array,...) */
- MM_STREAMRECORDER_VIDEO_TYPE_NORMAL_BUFFER, /* Validity val2 (max, count, ...) */
+ {.int_min = MM_STREAMRECORDER_VIDEO_TYPE_TBM_BO}, /* Validity val1 (min, *array,...) */
+ {.int_max = MM_STREAMRECORDER_VIDEO_TYPE_NORMAL_BUFFER}, /* Validity val2 (max, count, ...) */
NULL, /* Runtime setting function of the attribute */
},
/* 1 */
MM_ATTRS_FLAG_RW,
{(void *)MM_STREAMRECORDER_INPUT_FORMAT_NV12},
MM_ATTRS_VALID_TYPE_INT_RANGE,
- MM_STREAMRECORDER_INPUT_FORMAT_INVALID,
- MM_STREAMRECORDER_INPUT_FORMAT_NUM,
+ {.int_min = MM_STREAMRECORDER_INPUT_FORMAT_INVALID},
+ {.int_max = MM_STREAMRECORDER_INPUT_FORMAT_NUM},
NULL,
},
/* 2 */
MM_ATTRS_FLAG_RW,
{(void *)0},
MM_ATTRS_VALID_TYPE_INT_RANGE,
- 0,
- _MMSTREAMRECORDER_MAX_INT,
+ {.int_min = 0},
+ {.int_max = _MMSTREAMRECORDER_MAX_INT},
NULL,
},
/* 3 */
MM_ATTRS_FLAG_RW,
{(void *)0},
MM_ATTRS_VALID_TYPE_INT_RANGE,
- 0,
- _MMSTREAMRECORDER_MAX_INT,
+ {.int_min = 0},
+ {.int_max = _MMSTREAMRECORDER_MAX_INT},
NULL, /*_mmstreamrecorder_commit_video_bitrate, */
},
/* 4 */
MM_ATTRS_FLAG_RW,
{(void *)0},
MM_ATTRS_VALID_TYPE_INT_ARRAY,
- 0,
- 0,
+ {.int_array = NULL},
+ {.count = 0},
NULL,
},
/* 5 */
MM_ATTRS_FLAG_RW,
{(void *)0},
MM_ATTRS_VALID_TYPE_INT_ARRAY,
- 0,
- 0,
+ {.int_array = NULL},
+ {.count = 0},
NULL,
},
/* 6 */
MMF_VALUE_TYPE_INT,
MM_ATTRS_FLAG_RW,
{(void *)MM_STREAMRECORDER_AUDIO_FORMAT_PCM_S16_LE},
- MMF_VALUE_TYPE_INT,
- MM_STREAMRECORDER_AUDIO_FORMAT_PCM_U8,
- MM_STREAMRECORDER_AUDIO_FORMAT_PCM_S16_LE,
+ MM_ATTRS_VALID_TYPE_INT_RANGE,
+ {.int_min = MM_STREAMRECORDER_AUDIO_FORMAT_PCM_U8},
+ {.int_max = MM_STREAMRECORDER_AUDIO_FORMAT_PCM_S16_LE},
_mmstreamrecorder_commit_audio_bitformat,
},
/* 7 */
MM_ATTRS_FLAG_RW,
{(void *)128000},
MM_ATTRS_VALID_TYPE_INT_RANGE,
- 0,
- _MMSTREAMRECORDER_MAX_INT,
+ {.int_min = 0},
+ {.int_max = _MMSTREAMRECORDER_MAX_INT},
_mmstreamrecorder_commit_audio_bitrate,
},
/* 8 */
MM_ATTRS_FLAG_RW,
{(void *)0},
MM_ATTRS_VALID_TYPE_INT_RANGE,
- 0,
- _MMSTREAMRECORDER_MAX_INT,
+ {.int_min = 0},
+ {.int_max = _MMSTREAMRECORDER_MAX_INT},
_mmstreamrecorder_commit_audio_samplingrate,
},
/* 9 */
MM_ATTRS_FLAG_RW,
{(void *)0},
MM_ATTRS_VALID_TYPE_INT_ARRAY,
- 0,
- 0,
+ {.int_array = NULL},
+ {.count = 0},
_mmstreamrecorder_commit_video_encoder,
},
/* 10 */
MM_ATTRS_FLAG_RW,
{(void *)0},
MM_ATTRS_VALID_TYPE_INT_ARRAY,
- 0,
- 0,
+ {.int_array = NULL},
+ {.count = 0},
_mmstreamrecorder_commit_audio_encoder,
},
/* 11 */
MM_ATTRS_FLAG_RW,
{(void *)2},
MM_ATTRS_VALID_TYPE_INT_RANGE,
- 0,
- _MMSTREAMRECORDER_MAX_INT,
+ {.int_min = 0},
+ {.int_max = _MMSTREAMRECORDER_MAX_INT},
_mmstreamrecorder_commit_audio_channel,
},
/* 12 */
MM_ATTRS_FLAG_RW,
{(void *)0},
MM_ATTRS_VALID_TYPE_INT_ARRAY,
- 0,
- 0,
+ {.int_array = NULL},
+ {.count = 0},
NULL,
},
/* 13 */
MM_ATTRS_FLAG_RW,
{NULL},
MM_ATTRS_VALID_TYPE_NONE,
- 0,
- 0,
+ {0},
+ {0},
NULL,
},
/* 14 */
MM_ATTRS_FLAG_RW,
{(void *)FALSE},
MM_ATTRS_VALID_TYPE_NONE,
- 0,
- _MMSTREAMRECORDER_MAX_INT,
+ {0},
+ {_MMSTREAMRECORDER_MAX_INT},
_mmstreamrecorder_commit_video_enable,
},
/* 15 */
MM_ATTRS_FLAG_RW,
{(void *)FALSE},
MM_ATTRS_VALID_TYPE_NONE,
- 0,
- _MMSTREAMRECORDER_MAX_INT,
+ {0},
+ {_MMSTREAMRECORDER_MAX_INT},
_mmstreamrecorder_commit_audio_enable,
},
/* 16 */
MM_ATTRS_FLAG_RW,
{(void *)MM_STREAMRECORDER_MODE_MEDIABUFFER},
MM_ATTRS_VALID_TYPE_NONE,
- 0,
- _MMSTREAMRECORDER_MAX_INT,
+ {0},
+ {_MMSTREAMRECORDER_MAX_INT},
NULL,
},
/*17*/
MM_ATTRS_FLAG_RW,
{(void *)0},
MM_ATTRS_VALID_TYPE_INT_RANGE,
- 0,
- _MMSTREAMRECORDER_MAX_INT,
+ {.int_min = 0},
+ {.int_max = _MMSTREAMRECORDER_MAX_INT},
NULL,
},
/*18*/
MM_ATTRS_FLAG_RW,
{(void *)0},
MM_ATTRS_VALID_TYPE_INT_RANGE,
- 0,
- _MMSTREAMRECORDER_MAX_INT,
+ {.int_min = 0},
+ {.int_max = _MMSTREAMRECORDER_MAX_INT},
NULL,
},
/* Video width */
total_count = _mmstreamrecorder_get_available_format(handle, KEYWORD_VIDEO_WIDTH, &format);
- stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_WIDTH].validity_value1 = (int)format;
- stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_WIDTH].validity_value2 = (int)total_count;
+ stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_WIDTH].validity_value_1.int_array = format;
+ stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_WIDTH].validity_value_2.count = total_count;
/* Video height */
total_count = _mmstreamrecorder_get_available_format(handle, KEYWORD_VIDEO_HEIGHT, &format);
- stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_HEIGHT].validity_value1 = (int)format;
- stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_HEIGHT].validity_value2 = (int)total_count;
+ stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_HEIGHT].validity_value_1.int_array = format;
+ stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_HEIGHT].validity_value_2.count = total_count;
/* Audio encoder */
total_count = _mmstreamrecorder_get_available_format(handle, KEYWORD_AUDIO_ENCODERS, &format);
- stream_attrs_const_info[MM_STR_AUDIO_ENCODER].validity_value1 = (int)format;
- stream_attrs_const_info[MM_STR_AUDIO_ENCODER].validity_value2 = (int)total_count;
+ stream_attrs_const_info[MM_STR_AUDIO_ENCODER].validity_value_1.int_array = format;
+ stream_attrs_const_info[MM_STR_AUDIO_ENCODER].validity_value_2.count = total_count;
/*Video encoder*/
total_count = _mmstreamrecorder_get_available_format(handle, KEYWORD_VIDEO_ENCODERS, &format);
- stream_attrs_const_info[MM_STR_VIDEO_ENCODER].validity_value1 = (int)format;
- stream_attrs_const_info[MM_STR_VIDEO_ENCODER].validity_value2 = (int)total_count;
+ stream_attrs_const_info[MM_STR_VIDEO_ENCODER].validity_value_1.int_array = format;
+ stream_attrs_const_info[MM_STR_VIDEO_ENCODER].validity_value_2.count = total_count;
/* File Format */
total_count = _mmstreamrecorder_get_available_format(handle, KEYWORD_FILE_FORMATS, &format);
- stream_attrs_const_info[MM_STR_FILE_FORMAT].validity_value1 = (int)format;
- stream_attrs_const_info[MM_STR_FILE_FORMAT].validity_value2 = (int)total_count;
+ stream_attrs_const_info[MM_STR_FILE_FORMAT].validity_value_1.int_array = format;
+ stream_attrs_const_info[MM_STR_FILE_FORMAT].validity_value_2.count = total_count;
return MM_ERROR_NONE;
}
_mmstreamrec_dbg_log("START");
- allocated_memory = (int *)(stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_WIDTH].validity_value1);
+ allocated_memory = (int *)(stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_WIDTH].validity_value_1.int_array);
if (allocated_memory) {
free(allocated_memory);
- stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_WIDTH].validity_value1 = (int)NULL;
- stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_WIDTH].validity_value2 = (int)0;
+ stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_WIDTH].validity_value_1.int_array = NULL;
+ stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_WIDTH].validity_value_2.count = 0;
}
- allocated_memory = (int *)(stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_HEIGHT].validity_value1);
+ allocated_memory = (int *)(stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_HEIGHT].validity_value_1.int_array);
if (allocated_memory) {
free(allocated_memory);
- stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_HEIGHT].validity_value1 = (int)NULL;
- stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_HEIGHT].validity_value2 = (int)0;
+ stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_HEIGHT].validity_value_1.int_array = NULL;
+ stream_attrs_const_info[MM_STR_VIDEO_RESOLUTION_HEIGHT].validity_value_2.count = 0;
}
- allocated_memory = (int *)(stream_attrs_const_info[MM_STR_AUDIO_ENCODER].validity_value1);
+ allocated_memory = (int *)(stream_attrs_const_info[MM_STR_AUDIO_ENCODER].validity_value_1.int_array);
if (allocated_memory) {
free(allocated_memory);
- stream_attrs_const_info[MM_STR_AUDIO_ENCODER].validity_value1 = (int)NULL;
- stream_attrs_const_info[MM_STR_AUDIO_ENCODER].validity_value2 = (int)0;
+ stream_attrs_const_info[MM_STR_AUDIO_ENCODER].validity_value_1.int_array = NULL;
+ stream_attrs_const_info[MM_STR_AUDIO_ENCODER].validity_value_2.count = 0;
}
- allocated_memory = (int *)(stream_attrs_const_info[MM_STR_VIDEO_ENCODER].validity_value1);
+ allocated_memory = (int *)(stream_attrs_const_info[MM_STR_VIDEO_ENCODER].validity_value_1.int_array);
if (allocated_memory) {
free(allocated_memory);
- stream_attrs_const_info[MM_STR_VIDEO_ENCODER].validity_value1 = (int)NULL;
- stream_attrs_const_info[MM_STR_VIDEO_ENCODER].validity_value2 = (int)0;
+ stream_attrs_const_info[MM_STR_VIDEO_ENCODER].validity_value_1.int_array = NULL;
+ stream_attrs_const_info[MM_STR_VIDEO_ENCODER].validity_value_2.count = 0;
}
- allocated_memory = (int *)(stream_attrs_const_info[MM_STR_FILE_FORMAT].validity_value1);
+ allocated_memory = (int *)(stream_attrs_const_info[MM_STR_FILE_FORMAT].validity_value_1.int_array);
if (allocated_memory) {
free(allocated_memory);
- stream_attrs_const_info[MM_STR_FILE_FORMAT].validity_value1 = (int)NULL;
- stream_attrs_const_info[MM_STR_FILE_FORMAT].validity_value2 = (int)0;
+ stream_attrs_const_info[MM_STR_FILE_FORMAT].validity_value_1.int_array = NULL;
+ stream_attrs_const_info[MM_STR_FILE_FORMAT].validity_value_2.count = 0;
}
_mmstreamrec_dbg_log("DONE");
switch (stream_attrs_const_info[idx].validity_type) {
case MM_ATTRS_VALID_TYPE_INT_ARRAY:
- if (stream_attrs_const_info[idx].validity_value1 && stream_attrs_const_info[idx].validity_value2 > 0)
- mmf_attrs_set_valid_array(attrs, idx, (const int *)(stream_attrs_const_info[idx].validity_value1), stream_attrs_const_info[idx].validity_value2, (int)(stream_attrs_const_info[idx].default_value.value_int));
+ if (stream_attrs_const_info[idx].validity_value_1.int_array &&
+ stream_attrs_const_info[idx].validity_value_2.count > 0)
+ mmf_attrs_set_valid_array(attrs, idx,
+ (const int *)(stream_attrs_const_info[idx].validity_value_1.int_array),
+ stream_attrs_const_info[idx].validity_value_2.count,
+ stream_attrs_const_info[idx].default_value.value_int);
break;
case MM_ATTRS_VALID_TYPE_INT_RANGE:
- mmf_attrs_set_valid_range(attrs, idx, stream_attrs_const_info[idx].validity_value1, stream_attrs_const_info[idx].validity_value2, (int)(stream_attrs_const_info[idx].default_value.value_int));
+ mmf_attrs_set_valid_range(attrs, idx,
+ stream_attrs_const_info[idx].validity_value_1.int_min,
+ stream_attrs_const_info[idx].validity_value_2.int_max,
+ stream_attrs_const_info[idx].default_value.value_int);
break;
case MM_ATTRS_VALID_TYPE_DOUBLE_ARRAY:
- if (stream_attrs_const_info[idx].validity_value1 && stream_attrs_const_info[idx].validity_value2 > 0)
- mmf_attrs_set_valid_double_array(attrs, idx, (const double *)(stream_attrs_const_info[idx].validity_value1), stream_attrs_const_info[idx].validity_value2, (double)(stream_attrs_const_info[idx].default_value.value_double));
+ if (stream_attrs_const_info[idx].validity_value_1.double_array &&
+ stream_attrs_const_info[idx].validity_value_2.count > 0)
+ mmf_attrs_set_valid_double_array(attrs, idx,
+ (const double *)(stream_attrs_const_info[idx].validity_value_1.double_array),
+ stream_attrs_const_info[idx].validity_value_2.count,
+ stream_attrs_const_info[idx].default_value.value_double);
break;
case MM_ATTRS_VALID_TYPE_DOUBLE_RANGE:
- mmf_attrs_set_valid_double_range(attrs, idx, (double)(stream_attrs_const_info[idx].validity_value1), (double)(stream_attrs_const_info[idx].validity_value2), (double)(stream_attrs_const_info[idx].default_value.value_double));
+ mmf_attrs_set_valid_double_range(attrs, idx,
+ stream_attrs_const_info[idx].validity_value_1.double_min,
+ stream_attrs_const_info[idx].validity_value_2.double_max,
+ stream_attrs_const_info[idx].default_value.value_double);
break;
case MM_ATTRS_VALID_TYPE_NONE:
break;