X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fmm_camcorder_audiorec.c;h=71930c6d40629137e59c949009b06d352fc15dd6;hb=633f96af86163942d6f4237f0ab2b5204b9e1930;hp=f0df3e41712a5adc8895df0a50084caa6955fbdd;hpb=39fde29c62f2adbb796311dfe41f8c3cb7a7e0aa;p=platform%2Fcore%2Fmultimedia%2Flibmm-camcorder.git diff --git a/src/mm_camcorder_audiorec.c b/src/mm_camcorder_audiorec.c index f0df3e4..71930c6 100644 --- a/src/mm_camcorder_audiorec.c +++ b/src/mm_camcorder_audiorec.c @@ -195,6 +195,11 @@ static int __mmcamcorder_create_audiop_with_encodebin(MMHandleType handle) srcpad = gst_element_get_static_pad(sc->encode_element[_MMCAMCORDER_ENCSINK_AENC].gst, "src"); MMCAMCORDER_ADD_BUFFER_PROBE(srcpad, _MMCAMCORDER_HANDLER_AUDIOREC, __mmcamcorder_audio_dataprobe_record, hcamcorder); + + /* for replay gain tag */ + MMCAMCORDER_ADD_EVENT_PROBE(srcpad, _MMCAMCORDER_HANDLER_AUDIOREC, + __mmcamcorder_eventprobe_monitor, hcamcorder); + gst_object_unref(srcpad); srcpad = NULL; @@ -433,7 +438,7 @@ _mmcamcorder_audio_command(MMHandleType handle, int command) /* MSDOS_SUPER_MAGIC : 0x4d44 */ if (file_system_type == MSDOS_SUPER_MAGIC && (info->max_size == 0 || info->max_size > FAT32_FILE_SYSTEM_MAX_SIZE)) { - _mmcam_dbg_warn("FAT32 and too large max[%"G_GUINT64_FORMAT"], set max as %"G_GUINT64_FORMAT, + _mmcam_dbg_warn("FAT32 and too large max[%"G_GUINT64_FORMAT"], set max as %lu", info->max_size, FAT32_FILE_SYSTEM_MAX_SIZE); info->max_size = FAT32_FILE_SYSTEM_MAX_SIZE; } else { @@ -509,11 +514,10 @@ _mmcamcorder_audio_command(MMHandleType handle, int command) if (ret != MM_ERROR_NONE) goto _ERR_CAMCORDER_AUDIO_COMMAND; - if (info->bMuxing) { + if (info->bMuxing) MMCAMCORDER_G_OBJECT_SET(sc->encode_element[_MMCAMCORDER_ENCSINK_ENCBIN].gst, "block", FALSE); - } else { + else MMCAMCORDER_G_OBJECT_SET(sc->encode_element[_MMCAMCORDER_ENCSINK_AQUE].gst, "empty-buffers", FALSE); - } _mmcamcorder_gst_set_state(handle, sc->encode_element[_MMCAMCORDER_ENCSINK_SINK].gst, GST_STATE_NULL); @@ -661,11 +665,10 @@ int _mmcamcorder_audio_handle_eos(MMHandleType handle) _mmcamcorder_send_message(handle, &msg); - if (info->bMuxing) { + if (info->bMuxing) MMCAMCORDER_G_OBJECT_SET(sc->encode_element[_MMCAMCORDER_ENCSINK_ENCBIN].gst, "block", FALSE); - } else { + else MMCAMCORDER_G_OBJECT_SET(sc->encode_element[_MMCAMCORDER_ENCSINK_AQUE].gst, "empty-buffers", FALSE); - } _mmcamcorder_gst_set_state(handle, pipeline, GST_STATE_NULL); @@ -934,11 +937,10 @@ static GstPadProbeReturn __mmcamcorder_audio_dataprobe_record(GstPad *pad, GstPa _mmcam_dbg_warn("Free Space : [%" G_GUINT64_FORMAT "], file size : [%" G_GUINT64_FORMAT "]", free_space, audioinfo->filesize); - if (audioinfo->bMuxing) { + if (audioinfo->bMuxing) MMCAMCORDER_G_OBJECT_SET(sc->encode_element[_MMCAMCORDER_ENCSINK_ENCBIN].gst, "block", TRUE); - } else { + else MMCAMCORDER_G_OBJECT_SET(sc->encode_element[_MMCAMCORDER_ENCSINK_AQUE].gst, "empty-buffers", TRUE); - } sc->isMaxsizePausing = TRUE; msg.id = MM_MESSAGE_CAMCORDER_NO_FREE_SPACE; @@ -975,11 +977,10 @@ static GstPadProbeReturn __mmcamcorder_audio_dataprobe_record(GstPad *pad, GstPa audioinfo->max_size, audioinfo->filesize, trailer_size); /* just same as pause status. After blocking two queue, this function will not call again. */ - if (audioinfo->bMuxing) { + if (audioinfo->bMuxing) MMCAMCORDER_G_OBJECT_SET(sc->encode_element[_MMCAMCORDER_ENCSINK_ENCBIN].gst, "block", TRUE); - } else { + else MMCAMCORDER_G_OBJECT_SET(sc->encode_element[_MMCAMCORDER_ENCSINK_AQUE].gst, "empty-buffers", TRUE); - } msg.id = MM_MESSAGE_CAMCORDER_RECORDING_STATUS; msg.param.recording_status.elapsed = (unsigned long long)rec_pipe_time; @@ -987,7 +988,7 @@ static GstPadProbeReturn __mmcamcorder_audio_dataprobe_record(GstPad *pad, GstPa msg.param.recording_status.remained_time = 0; _mmcamcorder_send_message((MMHandleType)hcamcorder, &msg); - _mmcam_dbg_warn("Last filesize sent by message : %d", audioinfo->filesize + trailer_size); + _mmcam_dbg_warn("Last filesize sent by message : %"G_GUINT64_FORMAT, audioinfo->filesize + trailer_size); sc->isMaxsizePausing = TRUE; msg.id = MM_MESSAGE_CAMCORDER_MAX_SIZE; @@ -1002,11 +1003,10 @@ static GstPadProbeReturn __mmcamcorder_audio_dataprobe_record(GstPad *pad, GstPa _mmcam_dbg_warn("Current time : [%" G_GUINT64_FORMAT "], Maximum time : [%" G_GUINT64_FORMAT "]", \ rec_pipe_time, audioinfo->max_time); - if (audioinfo->bMuxing) { + if (audioinfo->bMuxing) MMCAMCORDER_G_OBJECT_SET(sc->encode_element[_MMCAMCORDER_ENCSINK_ENCBIN].gst, "block", TRUE); - } else { + else MMCAMCORDER_G_OBJECT_SET(sc->encode_element[_MMCAMCORDER_ENCSINK_AQUE].gst, "empty-buffers", TRUE); - } sc->isMaxtimePausing = TRUE; msg.id = MM_MESSAGE_CAMCORDER_TIME_LIMIT;