* So, application PID should be set before realizing with mm_player_set_attribute(). \n
*
* @param player [in] Handle of player
+ * @param pid [in] application PID
*
* @return This function returns zero on success, or negative value with error code.
*
int mm_player_sound_register(MMHandleType player, int pid);
/**
+ * This function get the application PID that is registered \n
+ * So, application PID should be set before realizing with mm_player_set_attribute(). \n
+ *
+ * @param player [in] Handle of player
+ * @param pid [out] application PID
+ *
+ * @return This function returns zero on success, or negative value with error code.
+ *
+ * @pre Player state should be MM_PLAYER_STATE_NULL.
+ * @remark None
+ */
+int mm_player_get_client_pid (MMHandleType player, int* pid);
+
+/**
* This function parses uri and makes gstreamer pipeline by uri scheme. \n
* So, uri should be set before realizing with mm_player_set_attribute(). \n
*
gint __gst_handle_resource_error( mm_player_t* player, int code );
gint __gst_handle_stream_error( mm_player_t* player, GError* error, GstMessage * message );
int _mmplayer_sound_register_with_pid(MMHandleType hplayer, int pid);
+int _mmplayer_get_client_pid(MMHandleType hplayer, int* pid);
int __mmplayer_get_video_angle(mm_player_t* player, int *user_angle, int *org_angle);
#ifdef __cplusplus
}
return result;
}
+int mm_player_get_client_pid (MMHandleType player, int* pid)
+{
+ int result = MM_ERROR_NONE;
+
+ MMPLAYER_RETURN_VAL_IF_FAIL(player, MM_ERROR_PLAYER_NOT_INITIALIZED);
+ MMPLAYER_RETURN_VAL_IF_FAIL(pid, MM_ERROR_INVALID_ARGUMENT);
+
+ MMPLAYER_CMD_LOCK( player );
+
+ result = _mmplayer_get_client_pid(player, pid);
+
+ MMPLAYER_CMD_UNLOCK( player );
+
+ return result;
+}
+
int mm_player_realize(MMHandleType player)
{
int result = MM_ERROR_NONE;
}
int
+_mmplayer_get_client_pid(MMHandleType hplayer, int* pid)
+{
+ mm_player_t* player = (mm_player_t*) hplayer;
+
+ MMPLAYER_FENTER();
+
+ MMPLAYER_RETURN_VAL_IF_FAIL ( player, MM_ERROR_PLAYER_NOT_INITIALIZED );
+
+ *pid = player->sound_focus.pid;
+
+ LOGD("registered pid[%d] %p", *pid, player);
+
+ MMPLAYER_FLEAVE();
+
+ return MM_ERROR_NONE;
+}
+
+int
_mmplayer_realize(MMHandleType hplayer) // @
{
mm_player_t* player = (mm_player_t*)hplayer;