summaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
Diffstat (limited to 'src/include')
-rw-r--r--src/include/mm_player.h5
-rw-r--r--src/include/mm_player_priv.h17
-rw-r--r--src/include/mm_player_utils.h2
3 files changed, 23 insertions, 1 deletions
diff --git a/src/include/mm_player.h b/src/include/mm_player.h
index a35b5ef..787b42d 100644
--- a/src/include/mm_player.h
+++ b/src/include/mm_player.h
@@ -2338,6 +2338,11 @@ int mm_player_set_file_buffering_path(MMHandleType player, const char *file_path
int mm_player_set_sound_stream_info(MMHandleType player, char *stream_type, int stream_index);
/**
+ * This function is to manage the playback according to the external storage state
+ */
+int mm_player_manage_external_storage_state(MMHandleType player, int state);
+
+/**
@}
*/
diff --git a/src/include/mm_player_priv.h b/src/include/mm_player_priv.h
index 284a151..e4996b9 100644
--- a/src/include/mm_player_priv.h
+++ b/src/include/mm_player_priv.h
@@ -37,6 +37,7 @@
#include <stdlib.h>
#include <stdio.h>
#include <tbm_bufmgr.h>
+#include <storage.h>
#include "mm_player.h"
#include "mm_player_internal.h"
#include "mm_player_audioeffect.h"
@@ -327,6 +328,12 @@ enum StreamingSrcError {
MMPLAYER_STREAMING_ERROR_OPTION_NOT_SUPPORTED,
};
+typedef enum {
+ MMPLAYER_PATH_VOD = 0,
+ MMPLAYER_PATH_TEXT,
+ MMPLAYER_PATH_MAX
+} MMPlayerPathType;
+
/*---------------------------------------------------------------------------
| GLOBAL DATA TYPE DEFINITIONS: |
---------------------------------------------------------------------------*/
@@ -367,6 +374,12 @@ typedef struct {
} MMPlayerParseProfile;
typedef struct {
+ storage_type_e type;
+ storage_state_e state;
+ int id;
+} MMPlayerStorageInfo;
+
+typedef struct {
bool is_pending;
MMPlayerPosFormatType format;
unsigned long pos;
@@ -568,6 +581,7 @@ typedef struct {
/* content profile */
MMPlayerParseProfile profile;
+ MMPlayerStorageInfo storage_info[MMPLAYER_PATH_MAX];
/* streaming service type */
MMStreamingType streaming_type;
@@ -845,6 +859,7 @@ void _mm_player_media_packet_video_stream_internal_buffer_unref(void *buffer);
int _mmplayer_set_pcm_spec(MMHandleType hplayer, int samplerate, int channel);
int _mmplayer_get_timeout(MMHandleType hplayer, int *timeout);
int _mmplayer_get_num_of_video_out_buffers(MMHandleType hplayer, int *num, int *extra_num);
+int _mmplayer_manage_external_storage_state(MMHandleType hplayer, int state);
int __mmplayer_gst_set_state(mm_player_t* player, GstElement * pipeline, GstState state, gboolean async, gint timeout);
int __mmplayer_set_state(mm_player_t* player, int state);
int __mmplayer_check_state(mm_player_t* player, enum PlayerCommandState command);
@@ -867,7 +882,7 @@ gboolean __mmplayer_check_useful_message(mm_player_t *player, GstMessage * messa
gboolean __mmplayer_handle_gst_error(mm_player_t* player, GstMessage * message, GError* error);
gint __gst_handle_core_error(mm_player_t* player, int code);
gint __gst_handle_library_error(mm_player_t* player, int code);
-gint __gst_handle_resource_error(mm_player_t* player, int code);
+gint __gst_handle_resource_error(mm_player_t* player, int code, GstMessage * message);
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);
diff --git a/src/include/mm_player_utils.h b/src/include/mm_player_utils.h
index 099986f..9176954 100644
--- a/src/include/mm_player_utils.h
+++ b/src/include/mm_player_utils.h
@@ -30,6 +30,7 @@
#include <mm_types.h>
#include <mm_error.h>
#include <mm_message.h>
+#include "mm_player_priv.h"
#ifdef __cplusplus
extern "C" {
@@ -293,6 +294,7 @@ char** util_get_cookie_list(const char *cookies);
bool util_check_valid_url(const char *proxy);
const char* util_get_charset(const char *file_path);
int util_get_pixtype(unsigned int fourcc);
+bool util_get_storage_info(const char *path, MMPlayerStorageInfo *storage_info);
#ifdef __cplusplus
}