diff options
author | Gilbok Lee <gilbok.lee@samsung.com> | 2015-03-03 14:58:39 +0900 |
---|---|---|
committer | Gilbok Lee <gilbok.lee@samsung.com> | 2015-03-03 14:58:39 +0900 |
commit | 20ef3608560da3b582b3a9627eaa5e49a1a63575 (patch) | |
tree | eea8f08678b50d996279a276d8a3cd14df4cc25c /src | |
parent | 1c3443edde98c0724e4275240be71b8cac87aeea (diff) | |
download | libmm-radio-20ef3608560da3b582b3a9627eaa5e49a1a63575.tar.gz libmm-radio-20ef3608560da3b582b3a9627eaa5e49a1a63575.tar.bz2 libmm-radio-20ef3608560da3b582b3a9627eaa5e49a1a63575.zip |
fixed build break and syncronize with tizen 2.4submit/tizen/20150302.020544accepted/tizen/wearable/20150304.012026accepted/tizen/tv/20150304.011753accepted/tizen/mobile/20150304.012147accepted/tizen/common/20150303.154718
Change-Id: I3821b7c98f7ad31c40d3237781c07d86c1aa2210
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile.am | 7 | ||||
-rw-r--r-- | src/include/mm_radio_utils.h | 8 | ||||
-rwxr-xr-x[-rw-r--r--] | src/mm_radio.c | 71 | ||||
-rwxr-xr-x | src/mm_radio_priv.c | 36 |
4 files changed, 67 insertions, 55 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index ac06ac6..4f7a481 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -10,18 +10,15 @@ libmmfradio_la_SOURCES = mm_radio.c \ libmmfradio_la_CFLAGS = -I. -I./include \ $(GTHREAD_CFLAGS) \ $(MMCOMMON_CFLAGS) \ - $(MMTA_CFLAGS) \ $(MMSESSION_CFLAGS) \ $(AUDIOSESSIONMGR_CFLAGS) \ $(MMSOUND_CFLAGS) \ $(GST_CFLAGS) \ $(GSTAPP_CFLAGS) \ - -DMMF_LOG_OWNER=0x200000 -DMMF_DEBUG_PREFIX=\"MM-RADIO\" \ - -DGST_EXT_TIME_ANALYSIS - + -DMMF_LOG_OWNER=0x200000 -DMMF_DEBUG_PREFIX=\"MM-RADIO\" + libmmfradio_la_LIBADD = $(GTHREAD_LIBS) \ $(MMCOMMON_LIBS) \ - $(MMTA_LIBS)\ $(MMSESSION_LIBS) \ $(AUDIOSESSIONMGR_LIBS) \ $(MMSOUND_LIBS) \ diff --git a/src/include/mm_radio_utils.h b/src/include/mm_radio_utils.h index 13c3765..b873483 100644 --- a/src/include/mm_radio_utils.h +++ b/src/include/mm_radio_utils.h @@ -34,6 +34,7 @@ #define MMRADIO_LOG_ERROR debug_error #define MMRADIO_LOG_WARNING debug_warning #define MMRADIO_LOG_CRITICAL debug_critical +#define MMRADIO_SLOG_DEBUG secure_debug_log /* general */ #ifndef ARRAY_SIZE @@ -54,6 +55,13 @@ if ( ! x_radio ) \ return MM_ERROR_RADIO_NOT_INITIALIZED; \ } +#define MMRADIO_CHECK_INSTANCE_RETURN_VOID( x_radio ) \ +if ( ! x_radio ) \ +{ \ + debug_error("radio instance is NULL\n"); \ + return; \ +} + #define MMRADIO_CHECK_DEVICE_STATE( x_radio ) \ if ( x_radio->radio_fd < 0 ) \ { \ diff --git a/src/mm_radio.c b/src/mm_radio.c index 8370451..ac93895 100644..100755 --- a/src/mm_radio.c +++ b/src/mm_radio.c @@ -18,7 +18,7 @@ * limitations under the License. * */ - + /*=========================================================================================== | | | INCLUDE FILES | @@ -32,7 +32,6 @@ #include <mm_types.h> #include <mm_message.h> #include "mm_debug.h" -#include <mm_ta.h> /*=========================================================================================== | | @@ -86,12 +85,11 @@ int mm_radio_create(MMHandleType *hradio) { int result = MM_ERROR_NONE; mm_radio_t* new_radio = NULL; - + MMRADIO_LOG_FENTER(); return_val_if_fail(hradio, MM_ERROR_RADIO_NOT_INITIALIZED); - MMTA_INIT(); /* alloc radio structure */ new_radio = (mm_radio_t*) malloc(sizeof(mm_radio_t)); @@ -124,9 +122,9 @@ ERROR: *hradio = (MMHandleType)0; MMRADIO_LOG_FLEAVE(); - + /* FIXIT : need to specify more error case */ - return MM_ERROR_RADIO_NO_FREE_SPACE; + return result; } int mm_radio_destroy(MMHandleType hradio) @@ -135,26 +133,23 @@ int mm_radio_destroy(MMHandleType hradio) mm_radio_t* radio = (mm_radio_t*)hradio; MMRADIO_LOG_FENTER(); - + return_val_if_fail(radio, MM_ERROR_RADIO_NOT_INITIALIZED); - result = _mmradio_destroy( radio ); - + result = _mmradio_destroy( radio ); + if ( result != MM_ERROR_NONE ) { debug_error("failed to destroy radio\n"); } - + /* free radio */ MMRADIO_FREEIF( radio ); - MMTA_ACUM_ITEM_SHOW_RESULT_TO(MMTA_SHOW_FILE); - //MMTA_ACUM_ITEM_SHOW_RESULT_TO(MMTA_SHOW_STDOUT); - MMTA_RELEASE(); MMRADIO_LOG_FLEAVE(); - + return result; } @@ -162,16 +157,14 @@ int mm_radio_realize(MMHandleType hradio) { int result = MM_ERROR_NONE; mm_radio_t* radio = (mm_radio_t*)hradio; - + MMRADIO_LOG_FENTER(); return_val_if_fail(radio, MM_ERROR_RADIO_NOT_INITIALIZED); MMRADIO_CMD_LOCK( radio ); - __ta__("[KPI] initialize media radio service", - result = _mmradio_realize( radio ); - ) + result = _mmradio_realize( radio ); MMRADIO_CMD_UNLOCK( radio ); @@ -184,21 +177,19 @@ int mm_radio_unrealize(MMHandleType hradio) { int result = MM_ERROR_NONE; mm_radio_t* radio = (mm_radio_t*)hradio; - + MMRADIO_LOG_FENTER(); return_val_if_fail(radio, MM_ERROR_RADIO_NOT_INITIALIZED); MMRADIO_CMD_LOCK( radio ); - __ta__("[KPI] cleanup media radio service", - result = _mmradio_unrealize( radio ); - ) - + result = _mmradio_unrealize( radio ); + MMRADIO_CMD_UNLOCK( radio ); MMRADIO_LOG_FLEAVE(); - + return result; } @@ -206,7 +197,7 @@ int mm_radio_set_message_callback(MMHandleType hradio, MMMessageCallback callbac { int result = MM_ERROR_NONE; mm_radio_t* radio = (mm_radio_t*)hradio; - + MMRADIO_LOG_FENTER(); return_val_if_fail(radio, MM_ERROR_RADIO_NOT_INITIALIZED); @@ -218,7 +209,7 @@ int mm_radio_set_message_callback(MMHandleType hradio, MMMessageCallback callbac MMRADIO_CMD_UNLOCK( radio ); MMRADIO_LOG_FLEAVE(); - + return result; } @@ -227,9 +218,9 @@ int mm_radio_get_state(MMHandleType hradio, MMRadioStateType* pState) int result = MM_ERROR_NONE; mm_radio_t* radio = (mm_radio_t*)hradio; int state = 0; - + MMRADIO_LOG_FENTER(); - + return_val_if_fail(radio, MM_ERROR_RADIO_NOT_INITIALIZED); return_val_if_fail(pState, MM_ERROR_COMMON_INVALID_ARGUMENT); @@ -250,14 +241,13 @@ int mm_radio_start(MMHandleType hradio) { int result = MM_ERROR_NONE; mm_radio_t* radio = (mm_radio_t*)hradio; - + MMRADIO_LOG_FENTER(); return_val_if_fail(radio, MM_ERROR_RADIO_NOT_INITIALIZED); MMRADIO_CMD_LOCK( radio ); - MMTA_ACUM_ITEM_BEGIN("[KPI] start media radio service", false); result = _mmradio_start( radio ); MMRADIO_CMD_UNLOCK( radio ); @@ -271,16 +261,14 @@ int mm_radio_stop(MMHandleType hradio) { int result = MM_ERROR_NONE; mm_radio_t* radio = (mm_radio_t*)hradio; - + MMRADIO_LOG_FENTER(); return_val_if_fail(radio, MM_ERROR_RADIO_NOT_INITIALIZED); MMRADIO_CMD_LOCK( radio ); - __ta__("[KPI] stop media radio service", - result = _mmradio_stop( radio ); - ) + result = _mmradio_stop( radio ); MMRADIO_CMD_UNLOCK( radio ); @@ -297,10 +285,12 @@ int mm_radio_seek(MMHandleType hradio, MMRadioSeekDirectionType direction) MMRADIO_LOG_FENTER(); return_val_if_fail(radio, MM_ERROR_RADIO_NOT_INITIALIZED); - return_val_if_fail(direction >= MM_RADIO_SEEK_UP && direction <= MM_RADIO_SEEK_DOWN, MM_ERROR_INVALID_ARGUMENT); + return_val_if_fail(direction >= MM_RADIO_SEEK_UP && direction <= MM_RADIO_SEEK_DOWN, MM_ERROR_INVALID_ARGUMENT); MMRADIO_CMD_LOCK( radio ); + radio->seek_direction = direction; + result = _mmradio_seek( radio, direction ); MMRADIO_CMD_UNLOCK( radio ); @@ -405,7 +395,7 @@ int mm_radio_set_mute(MMHandleType hradio, bool muted) MMRADIO_CMD_LOCK(radio); - if (muted) + if (muted) { result = _mmradio_mute(radio); } @@ -434,14 +424,7 @@ int mm_radio_get_signal_strength(MMHandleType hradio, int *value) MMRADIO_CMD_LOCK( radio ); - if (ioctl(radio->radio_fd, VIDIOC_G_TUNER, &(radio->vt)) < 0) - { - debug_error("ioctl VIDIOC_G_TUNER error\n"); - - return MM_ERROR_RADIO_INTERNAL; - } - - *value = radio->vt.signal; + ret = _mm_radio_get_signal_strength(radio, value); MMRADIO_CMD_UNLOCK( radio ); diff --git a/src/mm_radio_priv.c b/src/mm_radio_priv.c index 8f3eb24..d2bb2df 100755 --- a/src/mm_radio_priv.c +++ b/src/mm_radio_priv.c @@ -34,7 +34,6 @@ #include <unistd.h> #include <errno.h> #include <mm_sound.h> -#include <mm_ta.h> #include <mm_error.h> #include <mm_debug.h> @@ -731,7 +730,7 @@ _mmradio_realize_pipeline(mm_radio_t* radio) radio->pGstreamer_s->avsysaudiosrc= gst_element_factory_make("avsysaudiosrc","fm audio src"); radio->pGstreamer_s->queue2= gst_element_factory_make("queue2","queue2"); - radio->pGstreamer_s->avsysaudiosink= gst_element_factory_make("avsysaudiosink","audio sink"); + radio->pGstreamer_s->avsysaudiosink= gst_element_factory_make("pulsesink","audio sink"); g_object_set(radio->pGstreamer_s->avsysaudiosrc, "latency", 2, NULL); g_object_set(radio->pGstreamer_s->avsysaudiosink, "sync", false, NULL); @@ -830,7 +829,7 @@ _mmradio_destroy_pipeline(mm_radio_t * radio) g_free (radio->pGstreamer_s); return MM_ERROR_RADIO_INVALID_STATE; } else { - debug_log ("[%s][%05d] GST_STATE_NULL ret_state = %d (GST_STATE_CHANGE_SUCCESS)\n", __func__, __LINE__, ret_state); + debug_log("[%s][%05d] GST_STATE_NULL ret_state = %d (GST_STATE_CHANGE_SUCCESS)\n", __func__, __LINE__, ret_state); } gst_object_unref (radio->pGstreamer_s->pipeline); g_free (radio->pGstreamer_s); @@ -921,6 +920,31 @@ _mmradio_stop_scan(mm_radio_t* radio) return MM_ERROR_NONE; } +int +_mm_radio_get_signal_strength(mm_radio_t* radio, int *value) +{ + MMRADIO_LOG_FENTER(); + MMRADIO_CHECK_INSTANCE( radio ); + + return_val_if_fail( value, MM_ERROR_INVALID_ARGUMENT ); + + /* just return stored frequency if radio device is not ready */ + if ( radio->radio_fd < 0 ) + { + MMRADIO_SLOG_DEBUG("Device not ready so sending 0\n"); + *value = 0; + return MM_ERROR_NONE; + } + if (ioctl(radio->radio_fd, VIDIOC_G_TUNER, &(radio->vt)) < 0) + { + debug_error("ioctl VIDIOC_G_TUNER error\n"); + return MM_ERROR_RADIO_INTERNAL; + } + *value = radio->vt.signal; + MMRADIO_LOG_FLEAVE(); + return MM_ERROR_NONE; +} + void __mmradio_scan_thread(mm_radio_t* radio) { @@ -933,9 +957,7 @@ __mmradio_scan_thread(mm_radio_t* radio) vs.seek_upward = 1; /* up : 1 ------- down : 0 */ MMRADIO_LOG_FENTER(); - MMRADIO_CHECK_INSTANCE( radio ); - if( _mmradio_mute(radio) != MM_ERROR_NONE) goto FINISHED; @@ -1020,6 +1042,8 @@ FINISHED: MMRADIO_LOG_FLEAVE(); pthread_exit(NULL); + + return; } bool @@ -1051,7 +1075,6 @@ __mmradio_seek_thread(mm_radio_t* radio) vs.wrap_around = DEFAULT_WRAP_AROUND; MMRADIO_LOG_FENTER(); - MMRADIO_CHECK_INSTANCE( radio ); /* check direction */ @@ -1150,6 +1173,7 @@ SEEK_FAILED: param.radio_scan.frequency = -1; MMRADIO_POST_MSG(radio, MM_MESSAGE_RADIO_SEEK_FINISH, ¶m); pthread_exit(NULL); + return; } static bool |