forked from enlightenment/efl
parent
535b7783cb
commit
8914cccc83
|
@ -180,6 +180,10 @@ AC_ARG_WITH(xine-config,
|
|||
|
||||
|
||||
V=`$ECORE_CONFIG --version`
|
||||
if [ -z "$V" ]; then
|
||||
echo "Error. Ecore is not installed or $ECORE_CONFIG cannot be found. Abort."
|
||||
exit -1
|
||||
fi
|
||||
VV=`vser $V`
|
||||
VM="1.0.0_pre7"
|
||||
VVM=`vser $VM`
|
||||
|
@ -189,6 +193,10 @@ if test $VV -lt $VVM; then
|
|||
fi
|
||||
|
||||
V=`$EVAS_CONFIG --version`
|
||||
if [ -z "$V" ]; then
|
||||
echo "Error. Evas is not installed or $EVAS_CONFIG cannot be found. Abort."
|
||||
exit -1
|
||||
fi
|
||||
VV=`vser $V`
|
||||
VM="1.0.0_pre13"
|
||||
VVM=`vser $VM`
|
||||
|
@ -198,6 +206,10 @@ if test $VV -lt $VVM; then
|
|||
fi
|
||||
|
||||
V=`$EDJE_CONFIG --version`
|
||||
if [ -z "$V" ]; then
|
||||
echo "Error. Edje is not installed or $EDJE_CONFIG cannot be found. Abort."
|
||||
exit -1
|
||||
fi
|
||||
VV=`vser $V`
|
||||
VM="0.5.0"
|
||||
VVM=`vser $VM`
|
||||
|
@ -207,6 +219,10 @@ if test $VV -lt $VVM; then
|
|||
fi
|
||||
|
||||
V=`$XINE_CONFIG --version`
|
||||
if [ -z "$V" ]; then
|
||||
echo "Error. Xine is not installed or $XINE_CONFIG cannot be found. Abort."
|
||||
exit -1
|
||||
fi
|
||||
VV=`vser $V`
|
||||
VM="1.0.0"
|
||||
VVM=`vser $VM`
|
||||
|
|
|
@ -36,7 +36,19 @@ enum _Emotion_Event
|
|||
EMOTION_EVENT_10
|
||||
};
|
||||
|
||||
typedef enum _Emotion_Event Emotion_Event;
|
||||
enum _Emotion_Meta_Info
|
||||
{
|
||||
EMOTION_META_INFO_TRACK_TITLE,
|
||||
EMOTION_META_INFO_TRACK_ARTIST,
|
||||
EMOTION_META_INFO_TRACK_ALBUM,
|
||||
EMOTION_META_INFO_TRACK_YEAR,
|
||||
EMOTION_META_INFO_TRACK_GENRE,
|
||||
EMOTION_META_INFO_TRACK_COMMENT,
|
||||
EMOTION_META_INFO_TRACK_DISC_ID
|
||||
};
|
||||
|
||||
typedef enum _Emotion_Event Emotion_Event;
|
||||
typedef enum _Emotion_Meta_Info Emotion_Meta_Info;
|
||||
|
||||
#define EMOTION_CHANNEL_AUTO -1
|
||||
#define EMOTION_CHANNEL_DEFAULT 0
|
||||
|
@ -90,5 +102,6 @@ const char *emotion_object_ref_file_get (Evas_Object *obj);
|
|||
int emotion_object_ref_num_get (Evas_Object *obj);
|
||||
int emotion_object_spu_button_count_get (Evas_Object *obj);
|
||||
int emotion_object_spu_button_get (Evas_Object *obj);
|
||||
|
||||
const char *emotion_object_meta_info_get (Evas_Object *obj, Emotion_Meta_Info meta);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -7,6 +7,14 @@
|
|||
|
||||
#include "config.h"
|
||||
|
||||
#define META_TRACK_TITLE 1
|
||||
#define META_TRACK_ARTIST 2
|
||||
#define META_TRACK_GENRE 3
|
||||
#define META_TRACK_COMMENT 4
|
||||
#define META_TRACK_ALBUM 5
|
||||
#define META_TRACK_YEAR 6
|
||||
#define META_TRACK_DISCID 7
|
||||
|
||||
typedef struct _Emotion_Video_Module Emotion_Video_Module;
|
||||
|
||||
struct _Emotion_Video_Module
|
||||
|
@ -57,6 +65,7 @@ struct _Emotion_Video_Module
|
|||
void (*speed_set) (void *ef, double speed);
|
||||
double (*speed_get) (void *ef);
|
||||
int (*eject) (void *ef);
|
||||
const char * (*meta_get) (void *ef, int meta);
|
||||
|
||||
void *handle;
|
||||
};
|
||||
|
|
|
@ -694,6 +694,43 @@ emotion_object_spu_button_get(Evas_Object *obj)
|
|||
return sd->spu.button;
|
||||
}
|
||||
|
||||
const char *
|
||||
emotion_object_meta_info_get(Evas_Object *obj, Emotion_Meta_Info meta)
|
||||
{
|
||||
Smart_Data *sd;
|
||||
|
||||
E_SMART_OBJ_GET_RETURN(sd, obj, E_OBJ_NAME, NULL);
|
||||
if (!sd->module) return NULL;
|
||||
if (!sd->video) return NULL;
|
||||
switch (meta)
|
||||
{
|
||||
case EMOTION_META_INFO_TRACK_TITLE:
|
||||
return sd->module->meta_get(sd->video, META_TRACK_TITLE);
|
||||
break;
|
||||
case EMOTION_META_INFO_TRACK_ARTIST:
|
||||
return sd->module->meta_get(sd->video, META_TRACK_ARTIST);
|
||||
break;
|
||||
case EMOTION_META_INFO_TRACK_ALBUM:
|
||||
return sd->module->meta_get(sd->video, META_TRACK_ALBUM);
|
||||
break;
|
||||
case EMOTION_META_INFO_TRACK_YEAR:
|
||||
return sd->module->meta_get(sd->video, META_TRACK_YEAR);
|
||||
break;
|
||||
case EMOTION_META_INFO_TRACK_GENRE:
|
||||
return sd->module->meta_get(sd->video, META_TRACK_GENRE);
|
||||
break;
|
||||
case EMOTION_META_INFO_TRACK_COMMENT:
|
||||
return sd->module->meta_get(sd->video, META_TRACK_COMMENT);
|
||||
break;
|
||||
case EMOTION_META_INFO_TRACK_DISC_ID:
|
||||
return sd->module->meta_get(sd->video, META_TRACK_DISCID);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -50,7 +50,7 @@ static const char *em_chapter_name_get(void *ef, int chapter);
|
|||
static void em_speed_set(void *ef, double speed);
|
||||
static double em_speed_get(void *ef);
|
||||
static int em_eject(void *ef);
|
||||
|
||||
static const char *em_meta_get(Emotion_Xine_Video *ev, int meta);
|
||||
|
||||
static void *_em_seek (void *par);
|
||||
static int _em_fd_active (void *data, Ecore_Fd_Handler *fdh);
|
||||
|
@ -321,6 +321,7 @@ em_file_open(const char *file, Evas_Object *obj)
|
|||
pthread_create(&ev->get_pos_len_th, NULL, _em_get_pos_len_th, ev);
|
||||
pthread_attr_destroy(&thattr);
|
||||
}
|
||||
// em_debug(ev);
|
||||
return ev;
|
||||
}
|
||||
|
||||
|
@ -969,6 +970,38 @@ em_eject(void *ef)
|
|||
xine_eject(ev->stream);
|
||||
}
|
||||
|
||||
static const char *
|
||||
em_meta_get(Emotion_Xine_Video *ev, int meta)
|
||||
{
|
||||
switch (meta)
|
||||
{
|
||||
case META_TRACK_TITLE:
|
||||
return xine_get_meta_info(ev->stream, XINE_META_INFO_TITLE);
|
||||
break;
|
||||
case META_TRACK_ARTIST:
|
||||
return xine_get_meta_info(ev->stream, XINE_META_INFO_ARTIST);
|
||||
break;
|
||||
case META_TRACK_GENRE:
|
||||
return xine_get_meta_info(ev->stream, XINE_META_INFO_GENRE);
|
||||
break;
|
||||
case META_TRACK_COMMENT:
|
||||
return xine_get_meta_info(ev->stream, XINE_META_INFO_COMMENT);
|
||||
break;
|
||||
case META_TRACK_ALBUM:
|
||||
return xine_get_meta_info(ev->stream, XINE_META_INFO_ALBUM);
|
||||
break;
|
||||
case META_TRACK_YEAR:
|
||||
return xine_get_meta_info(ev->stream, XINE_META_INFO_YEAR);
|
||||
break;
|
||||
case META_TRACK_DISCID:
|
||||
return xine_get_meta_info(ev->stream, XINE_META_INFO_CDINDEX_DISCID);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1299,7 +1332,6 @@ _em_get_pos_len(Emotion_Xine_Video *ev)
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
static Emotion_Video_Module em_module =
|
||||
|
@ -1349,7 +1381,8 @@ static Emotion_Video_Module em_module =
|
|||
em_chapter_name_get, /* chapter_name_get */
|
||||
em_speed_set, /* speed_set */
|
||||
em_speed_get, /* speed_get */
|
||||
em_eject /* eject */
|
||||
em_eject, /* eject */
|
||||
em_meta_get /* meta_get */
|
||||
};
|
||||
|
||||
Emotion_Video_Module *
|
||||
|
@ -1429,13 +1462,13 @@ em_debug(Emotion_Xine_Video *ev)
|
|||
printf("video_channels = %i\n", video_channels);
|
||||
printf("video_streams = %i\n", video_streams);
|
||||
printf("video_seekable = %i\n", video_seekable);
|
||||
// printf("title = %s\n", title);
|
||||
// printf("comment = %s\n", comment);
|
||||
// printf("artist = %s\n", artist);
|
||||
// printf("genre = %s\n", genre);
|
||||
// printf("album = %s\n", album);
|
||||
// printf("year = %s\n", year);
|
||||
// printf("cdindex_discid = %s\n", cdindex_discid);
|
||||
printf("title = %s\n", title);
|
||||
printf("comment = %s\n", comment);
|
||||
printf("artist = %s\n", artist);
|
||||
printf("genre = %s\n", genre);
|
||||
printf("album = %s\n", album);
|
||||
printf("year = %s\n", year);
|
||||
printf("cdindex_discid = %s\n", cdindex_discid);
|
||||
printf("video_channel = %i\n", video_channel);
|
||||
printf("audio_channel = %i\n", audio_channel);
|
||||
printf("spu_channels = %i\n", spu_channel);
|
||||
|
|
Loading…
Reference in New Issue