snprintf(locale_path, sizeof(locale_path), "%s/locale", respath);
bindtextdomain(PACKAGE, locale_path);
evas_object_show(ad->win);
- sound_manager_set_session_type(SOUND_SESSION_TYPE_ALARM);
/* Feedback initialize */
ret = feedback_initialize();
#define STW_TIMER_VALUE 0.03
#define UPTIME_FILE "/proc/uptime"
-#define RING_DEFALT_TONE "/opt/share/settings/Alarms/Alarm_Timer.ogg"
-#define RING_GEAR_ALARM_TONE "/opt/share/settings/Alarms/Alarm_Masterpiece.ogg"
-#define RING_ON_CALL_TONE "/opt/share/settings/Alarms/Alarms_on_call.ogg"
+#define RING_ON_CALL_TONE "/opt/usr/data/settings/Alarms/Alarms_on_call.ogg"
#define VCONF_RETURN_TYPE "file/private/walarm/app_msg"
#include <widget_errno.h>
#include "sound.h"
+static sound_stream_info_h stream_info = NULL;
/*
* @brief: callback function atached to sound player in case of erros.
* @param[error_code]: in, error code
if (mm_player)
player_destroy(*(mm_player));
+ if (stream_info) {
+ sound_manager_destroy_stream_information(stream_info);
+ stream_info = NULL;
+ }
+
FREEIF(mm_player);
}
+static void _stream_focus_changed_cb(sound_stream_info_h stream_info,
+ sound_stream_focus_mask_e focus_mask,
+ sound_stream_focus_state_e focus_state,
+ sound_stream_focus_change_reason_e reason,
+ int sound_behavior,
+ const char *extra_info,
+ void *user_data) {
+ _E("_stream_focus_changed_cb state: %d, Reason:", focus_state, reason);
+
+ switch (focus_state) {
+ case SOUND_STREAM_FOCUS_STATE_ACQUIRED:
+ if (mm_player)
+ player_start(*(mm_player));
+ break;
+ case SOUND_STREAM_FOCUS_STATE_RELEASED:
+ player_pause(*(mm_player));
+ break;
+ }
+}
+
/*
* @brief: function to create sound player
*/
_D("player create");
int ret = SUCCESS;
+ sound_stream_type_e stream_type = SOUND_STREAM_TYPE_ALARM;
+ sound_manager_create_stream_information(stream_type, _stream_focus_changed_cb, NULL, &stream_info);
+ sound_manager_acquire_focus(stream_info, SOUND_STREAM_FOCUS_FOR_BOTH, SOUND_BEHAVIOR_NONE, NULL);
/* Player create */
if (!mm_player) {
}
}
- /* Player set sound type */
- ret = player_set_sound_type(*(mm_player), SOUND_TYPE_ALARM);
- if (PLAYER_ERROR_NONE != ret) {
- _E("player_set_sound_type Error ID: %x", ret);
- player_destroy(*(mm_player));
- FREEIF(mm_player);
- return;
- }
+ player_set_sound_stream_info(*(mm_player), stream_info);
/* Player set error cb */
player_set_error_cb(*(mm_player), _ring_player_error_cb, NULL);