-int mm_exif_mnote_create (ExifData *exif)
-{
- ExifData* ed = exif;
- ExifDataOption o = 0;
- if(!ed){
- mmf_debug (MMF_DEBUG_ERROR,"[%05d][%s] invalid argument exif=%p \n", __LINE__, __func__,ed);
- return MM_ERROR_CAMCORDER_INVALID_ARGUMENT;
- }
-
- if(!exif_data_mnote_data_new(ed, MAKER_SAMSUNG, o )){
- mmf_debug (MMF_DEBUG_ERROR,"[%05d][%s] exif_mnote_data_samsung_new() failed. \n", __LINE__, __func__);
- return MM_ERROR_CAMCORDER_MNOTE_CREATION;
- }
-
- return MM_ERROR_NONE;
-}
-
-
-int mm_exif_mnote_set_add_entry (ExifData *exif, MnoteSamsungTag tag, int index, int subindex1, int subindex2)
-{
- ExifData *ed = exif;
- ExifMnoteData *md;
-
- ExifShort product_id = 32768; //should be modified
- char serialNum[] = "SerialNum123"; //should be modified
-
- if(!ed){
- mmf_debug (MMF_DEBUG_ERROR,"[%05d][%s] invalid argument exif=%p \n", __LINE__, __func__,ed);
- return MM_ERROR_CAMCORDER_INVALID_ARGUMENT;
- }
-
- md = exif_data_get_mnote_data (ed);
- if(!md){
- mmf_debug (MMF_DEBUG_ERROR,"[%05d][%s] exif_data_get_mnote_data() failed. \n", __LINE__, __func__);
- return MM_ERROR_CAMCORDER_MNOTE_CREATION;
- }
-
- if(!exif_data_mnote_set_mem_for_adding_entry(md, MAKER_SAMSUNG)){
- mmf_debug (MMF_DEBUG_ERROR,"[%05d][%s] exif_data_mnote_set_mem_for_adding_entry() failed. \n", __LINE__, __func__);
- return MM_ERROR_CAMCORDER_MNOTE_MALLOC;
- }
-
- exif_mnote_data_set_byte_order(md, (ExifByteOrder) exif_data_get_data_order(ed));
-
- switch(tag){
- case MNOTE_SAMSUNG_TAG_MNOTE_VERSION:
- if(!exif_data_mnote_set_add_entry(md, MAKER_SAMSUNG, tag, EXIF_FORMAT_UNDEFINED, 4, index)){
- mmf_debug (MMF_DEBUG_ERROR,"[%05d][%s] exif_data_mnote_set_add_entry() failed. \n", __LINE__, __func__);
- return MM_ERROR_CAMCORDER_MNOTE_ADD_ENTRY;
- }
- break;
- case MNOTE_SAMSUNG_TAG_DEVICE_ID:
- if(!exif_data_mnote_set_add_entry(md, MAKER_SAMSUNG, tag, EXIF_FORMAT_LONG, 1, index)){
- mmf_debug (MMF_DEBUG_ERROR,"[%05d][%s] exif_data_mnote_set_add_entry() failed. \n", __LINE__, __func__);
- return MM_ERROR_CAMCORDER_MNOTE_ADD_ENTRY;
- }
- break;
- case MNOTE_SAMSUNG_TAG_MODEL_ID:
- if(!exif_data_mnote_set_add_entry_subtag(md, MAKER_SAMSUNG, tag, EXIF_FORMAT_LONG, 1, MNOTE_SAMSUNG_SUBTAG_MODEL_ID_CLASS, subindex1, MNOTE_SAMSUNG_SUBTAG_MODEL_ID_DEVEL, subindex2, product_id )){
- mmf_debug (MMF_DEBUG_ERROR,"[%05d][%s] exif_data_mnote_set_add_entry_subtag() failed. \n", __LINE__, __func__);
- return MM_ERROR_CAMCORDER_MNOTE_ADD_ENTRY;
- }
- break;
- case MNOTE_SAMSUNG_TAG_COLOR_INFO:
- case MNOTE_SAMSUNG_TAG_SERIAL_NUM:
- if(!exif_data_mnote_set_add_entry_string(md, MAKER_SAMSUNG, tag, EXIF_FORMAT_ASCII, strlen(serialNum), serialNum)){
- mmf_debug (MMF_DEBUG_ERROR,"[%05d][%s] exif_data_mnote_set_add_entry_string() failed. \n", __LINE__, __func__);
- return MM_ERROR_CAMCORDER_MNOTE_ADD_ENTRY;
- }
- break;
- case MNOTE_SAMSUNG_TAG_IMAGE_COUNT:
- case MNOTE_SAMSUNG_TAG_GPS_INFO01:
- case MNOTE_SAMSUNG_TAG_GPS_INFO02:
- case MNOTE_SAMSUNG_TAG_PREVIEW_IMAGE:
- case MNOTE_SAMSUNG_TAG_FAVOR_TAGGING:
- case MNOTE_SAMSUNG_TAG_SRW_COMPRESS:
- case MNOTE_SAMSUNG_TAG_COLOR_SPACE:
- if(!exif_data_mnote_set_add_entry(md, MAKER_SAMSUNG, tag, EXIF_FORMAT_LONG, 1, index)){
- mmf_debug (MMF_DEBUG_ERROR,"[%05d][%s] exif_data_mnote_set_add_entry() failed. \n", __LINE__, __func__);
- return MM_ERROR_CAMCORDER_MNOTE_ADD_ENTRY;
- }
- break;
- case MNOTE_SAMSUNG_TAG_AE:
- case MNOTE_SAMSUNG_TAG_AF:
- case MNOTE_SAMSUNG_TAG_AWB01:
- case MNOTE_SAMSUNG_TAG_AWB02:
- case MNOTE_SAMSUNG_TAG_IPC:
- case MNOTE_SAMSUNG_TAG_SCENE_RESULT:
- case MNOTE_SAMSUNG_TAG_SADEBUG_INFO01:
- case MNOTE_SAMSUNG_TAG_SADEBUG_INFO02:
- case MNOTE_SAMSUNG_TAG_FACE_DETECTION:
- if(!exif_data_mnote_set_add_entry(md, MAKER_SAMSUNG, tag, EXIF_FORMAT_LONG, 1, index)){
- mmf_debug (MMF_DEBUG_ERROR,"[%05d][%s] exif_data_mnote_set_add_entry() failed. \n", __LINE__, __func__);
- return MM_ERROR_CAMCORDER_MNOTE_ADD_ENTRY;
- }
- break;
- case MNOTE_SAMSUNG_TAG_FACE_FEAT01:
- case MNOTE_SAMSUNG_TAG_FACE_FEAT02:
- case MNOTE_SAMSUNG_TAG_FACE_RECOG:
- case MNOTE_SAMSUNG_TAG_LENS_INFO:
- case MNOTE_SAMSUNG_TAG_THIRDPARTY:
- break;
- default:
- break;
- }
- return MM_ERROR_NONE;