X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fmm_camcorder_audiorec.c;h=fdf2a64edceee91a229168b1c3c8b1fa5bef83fd;hb=982d21f432623a9029d6d5e11f520b5df1f1df97;hp=4bb2253970cb93efa6901f9f5a8c18ade938385e;hpb=c8f57d6b6b2d7fc65adeedb5acd6eae45d28537f;p=platform%2Fcore%2Fmultimedia%2Flibmm-camcorder.git diff --git a/src/mm_camcorder_audiorec.c b/src/mm_camcorder_audiorec.c index 4bb2253..fdf2a64 100644 --- a/src/mm_camcorder_audiorec.c +++ b/src/mm_camcorder_audiorec.c @@ -351,7 +351,6 @@ _mmcamcorder_audio_command(MMHandleType handle, int command) int err = 0; int size=0; guint64 free_space = 0; - guint64 free_space_exceptsystem = 0; char *dir_name = NULL; char *err_attr_name = NULL; @@ -439,18 +438,9 @@ _mmcamcorder_audio_command(MMHandleType handle, int command) /* TODO : check free space before recording start */ dir_name = g_path_get_dirname(info->filename); if (dir_name) { - err = _mmcamcorder_get_freespace(dir_name, &free_space); - if(_mmcamcorder_check_file_path(dir_name)) { - if (_mmcamcorder_get_freespace_except_system(&free_space_exceptsystem) == MM_ERROR_NONE) { - hcamcorder->system_memory = free_space - free_space_exceptsystem; - free_space = free_space - hcamcorder->system_memory; - } else { - hcamcorder->system_memory = 0; - } - } + err = _mmcamcorder_get_freespace(dir_name, hcamcorder->root_directory, &free_space); - _mmcam_dbg_warn("current space - %s [%" G_GUINT64_FORMAT "], system [%" G_GUINT64_FORMAT "]", - dir_name, free_space, hcamcorder->system_memory); + _mmcam_dbg_warn("current space - %s [%" G_GUINT64_FORMAT "]", dir_name, free_space); if (_mmcamcorder_get_file_system_type(dir_name, &file_system_type) == 0) { /* MSDOS_SUPER_MAGIC : 0x4d44 */ @@ -666,7 +656,7 @@ int _mmcamcorder_audio_handle_eos(MMHandleType handle) report->recording_filename = strdup(info->filename); msg.param.data= report; - _mmcamcroder_send_message(handle, &msg); + _mmcamcorder_send_message(handle, &msg); if (info->bMuxing) { MMCAMCORDER_G_OBJECT_SET(sc->encode_element[_MMCAMCORDER_ENCSINK_ENCBIN].gst, "block", FALSE); @@ -789,7 +779,7 @@ static GstPadProbeReturn __mmcamcorder_audio_dataprobe_voicerecorder(GstPad *pad msg.id = MM_MESSAGE_CAMCORDER_CURRENT_VOLUME; msg.param.rec_volume_dB = curdcb; - _mmcamcroder_send_message((MMHandleType)hcamcorder, &msg); + _mmcamcorder_send_message((MMHandleType)hcamcorder, &msg); /* CALL audio stream callback */ if ((hcamcorder->astream_cb) && buffer && mapinfo.data && mapinfo.size > 0) @@ -892,10 +882,16 @@ static GstPadProbeReturn __mmcamcorder_audio_dataprobe_record(GstPad *pad, GstPa /* to minimizing free space check overhead */ count = count % _MMCAMCORDER_FREE_SPACE_CHECK_INTERVAL; if (count++ == 0) { - gint free_space_ret = _mmcamcorder_get_freespace(filename, &free_space); + char *dir_name = g_path_get_dirname(filename); + gint free_space_ret = 0; - if(_mmcamcorder_check_file_path(filename) && hcamcorder->system_memory) { - free_space = free_space - hcamcorder->system_memory; + if (dir_name) { + free_space_ret = _mmcamcorder_get_freespace(dir_name, hcamcorder->root_directory, &free_space); + g_free(dir_name); + dir_name = NULL; + } else { + _mmcam_dbg_err("failed to get dir name from [%s]", filename); + free_space_ret = -1; } /*_mmcam_dbg_log("check free space for recording");*/ @@ -912,7 +908,7 @@ static GstPadProbeReturn __mmcamcorder_audio_dataprobe_record(GstPad *pad, GstPa } else { msg.param.code = MM_ERROR_FILE_READ; } - _mmcamcroder_send_message((MMHandleType)hcamcorder, &msg); + _mmcamcorder_send_message((MMHandleType)hcamcorder, &msg); } else { sc->ferror_count++; } @@ -934,7 +930,7 @@ static GstPadProbeReturn __mmcamcorder_audio_dataprobe_record(GstPad *pad, GstPa sc->isMaxsizePausing = TRUE; msg.id = MM_MESSAGE_CAMCORDER_NO_FREE_SPACE; - _mmcamcroder_send_message((MMHandleType)hcamcorder, &msg); + _mmcamcorder_send_message((MMHandleType)hcamcorder, &msg); return GST_PAD_PROBE_DROP; /* skip this buffer */ } @@ -979,13 +975,13 @@ static GstPadProbeReturn __mmcamcorder_audio_dataprobe_record(GstPad *pad, GstPa msg.param.recording_status.elapsed = (unsigned long long)rec_pipe_time; msg.param.recording_status.filesize = (unsigned long long)((audioinfo->filesize + trailer_size) >> 10); msg.param.recording_status.remained_time = 0; - _mmcamcroder_send_message((MMHandleType)hcamcorder, &msg); + _mmcamcorder_send_message((MMHandleType)hcamcorder, &msg); _mmcam_dbg_warn("Last filesize sent by message : %d", audioinfo->filesize + trailer_size); sc->isMaxsizePausing = TRUE; msg.id = MM_MESSAGE_CAMCORDER_MAX_SIZE; - _mmcamcroder_send_message((MMHandleType)hcamcorder, &msg); + _mmcamcorder_send_message((MMHandleType)hcamcorder, &msg); /* skip this buffer */ return GST_PAD_PROBE_DROP; @@ -1004,7 +1000,7 @@ static GstPadProbeReturn __mmcamcorder_audio_dataprobe_record(GstPad *pad, GstPa sc->isMaxtimePausing = TRUE; msg.id = MM_MESSAGE_CAMCORDER_TIME_LIMIT; - _mmcamcroder_send_message((MMHandleType)hcamcorder, &msg); + _mmcamcorder_send_message((MMHandleType)hcamcorder, &msg); /* skip this buffer */ return GST_PAD_PROBE_DROP; @@ -1018,7 +1014,7 @@ static GstPadProbeReturn __mmcamcorder_audio_dataprobe_record(GstPad *pad, GstPa msg.param.recording_status.elapsed = (unsigned long long)rec_pipe_time; msg.param.recording_status.filesize = (unsigned long long)((audioinfo->filesize + trailer_size) >> 10); msg.param.recording_status.remained_time = remained_time; - _mmcamcroder_send_message((MMHandleType)hcamcorder, &msg); + _mmcamcorder_send_message((MMHandleType)hcamcorder, &msg); return GST_PAD_PROBE_OK; } else { @@ -1076,7 +1072,7 @@ static gboolean __mmcamcorder_audio_add_metadata_info_m4a(MMHandleType handle) geo_info.altitude = altitude *10000; } - f = fopen(info->filename, "rb+"); + f = fopen64(info->filename, "rb+"); if (f == NULL) { strerror_r(errno, err_msg, 128); _mmcam_dbg_err("file open failed [%s]", err_msg); @@ -1100,7 +1096,7 @@ static gboolean __mmcamcorder_audio_add_metadata_info_m4a(MMHandleType handle) goto fail; } - udta_pos = ftell(f); + udta_pos = ftello(f); if (udta_pos < 0) { goto ftell_fail; } @@ -1126,7 +1122,7 @@ static gboolean __mmcamcorder_audio_add_metadata_info_m4a(MMHandleType handle) } } - current_pos = ftell(f); + current_pos = ftello(f); if (current_pos < 0) { goto ftell_fail; } @@ -1147,7 +1143,7 @@ static gboolean __mmcamcorder_audio_add_metadata_info_m4a(MMHandleType handle) /* find moov container. update moov container size. */ - if((current_pos = ftell(f))<0) + if((current_pos = ftello(f))<0) goto ftell_fail; if (_mmcamcorder_find_fourcc(f, MMCAM_FOURCC('m','o','o','v'), TRUE)) { @@ -1157,7 +1153,7 @@ static gboolean __mmcamcorder_audio_add_metadata_info_m4a(MMHandleType handle) goto fail; } - moov_pos = ftell(f); + moov_pos = ftello(f); if (moov_pos < 0) { goto ftell_fail; }