sinek/include gtkxine.h,1.4,1.5
[email protected] Tue, 14 Jan 2003 02:44:26 -0800
| Newsgroups | gmane.comp.video.sinek.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/sinek/sinek/include
In directory sc8-pr-cvs1:/tmp/cvs-serv28995/include
Modified Files:
gtkxine.h
Log Message:
yikes, what a pain in the ass. anyways, it now displays video at the correct framerate.
Index: gtkxine.h
===================================================================
RCS file: /cvsroot/sinek/sinek/include/gtkxine.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- gtkxine.h 6 Jan 2003 06:54:14 -0000 1.4
+++ gtkxine.h 14 Jan 2003 10:44:24 -0000 1.5
@@ -27,8 +27,13 @@
typedef struct _GtkXine GtkXine;
typedef struct _GtkXineClass GtkXineClass;
+typedef enum _GtkXineStatus GtkXineStatus;
typedef enum _GtkXinePlaybackSpeed GtkXinePlaybackSpeed;
typedef enum _GtkXineVisualType GtkXineVisualType;
+typedef enum _GtkXineAspectRatio GtkXineAspectRatio;
+typedef enum _GtkXineEventType GtkXineEventType;
+typedef struct _GtkXineEvent GtkXineEvent;
+typedef enum _GtkXineVersion GtkXineVersion;
struct _GtkXineClass
{
@@ -40,6 +45,14 @@
void (*reserved4) (void);
};
+enum _GtkXineStatus
+{
+ GTK_XINE_STATUS_IDLE = XINE_STATUS_IDLE,
+ GTK_XINE_STATUS_STOPPED = XINE_STATUS_STOP,
+ GTK_XINE_STATUS_PLAYING = XINE_STATUS_PLAY,
+ GTK_XINE_STATUS_QUIT = XINE_STATUS_QUIT,
+};
+
enum _GtkXinePlaybackSpeed
{
GTK_XINE_PLAYBACK_SPEED_PAUSE = XINE_SPEED_PAUSE,
@@ -50,6 +63,63 @@
GTK_XINE_PLAYBACK_SPEED_FOUR_FAST = XINE_SPEED_FAST_4,
};
+enum _GtkXineAspectRatio
+{
+ GTK_XINE_ASPECT_AUTO = XINE_VO_ASPECT_AUTO,
+ GTK_XINE_ASPECT_SQUARE = XINE_VO_ASPECT_SQUARE,
+ GTK_XINE_ASPECT_4_3 = XINE_VO_ASPECT_4_3,
+ GTK_XINE_ASPECT_ANAMORPHIC = XINE_VO_ASPECT_ANAMORPHIC,
+ GTK_XINE_ASPECT_DVB = XINE_VO_ASPECT_DVB,
+ GTK_XINE_ASPECT_NUM_RATIOS = XINE_VO_ASPECT_NUM_RATIOS,
+ GTK_XINE_ASPECT_PAN_SCAN = XINE_VO_ASPECT_PAN_SCAN,
+ GTK_XINE_ASPECT_DONT_TOUCH = XINE_VO_ASPECT_DONT_TOUCH,
+};
+
+enum _GtkXineEventType
+{
+ /* received from the backend */
+ GTK_XINE_EVENT_TYPE_PLAYBACK_FINISHED = XINE_EVENT_UI_PLAYBACK_FINISHED,
+ GTK_XINE_EVENT_TYPE_CHANNEL_CHANGED = XINE_EVENT_UI_CHANNELS_CHANGED,
+ GTK_XINE_EVENT_TYPE_SET_TITLE = XINE_EVENT_UI_SET_TITLE,
+ GTK_XINE_EVENT_TYPE_MESSAGE = XINE_EVENT_UI_MESSAGE,
+ GTK_XINE_EVENT_TYPE_FRAME_FORMAT_CHANGE = XINE_EVENT_FRAME_FORMAT_CHANGE,
+ GTK_XINE_EVENT_TYPE_AUDIO_LEVEL = XINE_EVENT_AUDIO_LEVEL,
+ GTK_XINE_EVENT_TYPE_QUIT = XINE_EVENT_QUIT,
+ GTK_XINE_EVENT_PROGRESS = XINE_EVENT_PROGRESS,
+
+ /* sent to the backend by the UI */
+ GTK_XINE_EVENT_MOUSE_BUTTON = XINE_EVENT_INPUT_MOUSE_BUTTON,
+ GTK_XINE_EVENT_MOUSE_MOVE = XINE_EVENT_INPUT_MOUSE_MOVE,
+ GTK_XINE_EVENT_MENU1 = XINE_EVENT_INPUT_MENU1,
+ GTK_XINE_EVENT_MENU2 = XINE_EVENT_INPUT_MENU2,
+ GTK_XINE_EVENT_MENU3 = XINE_EVENT_INPUT_MENU3,
+ GTK_XINE_EVENT_MENU4 = XINE_EVENT_INPUT_MENU4,
+ GTK_XINE_EVENT_MENU5 = XINE_EVENT_INPUT_MENU5,
+ GTK_XINE_EVENT_MENU6 = XINE_EVENT_INPUT_MENU6,
+ GTK_XINE_EVENT_MENU7 = XINE_EVENT_INPUT_MENU7,
+ GTK_XINE_EVENT_UP = XINE_EVENT_INPUT_UP,
+ GTK_XINE_EVENT_DOWN = XINE_EVENT_INPUT_DOWN,
+ GTK_XINE_EVENT_LEFT = XINE_EVENT_INPUT_LEFT,
+ GTK_XINE_EVENT_RIGHT = XINE_EVENT_INPUT_RIGHT, /* .. B, A, B, A */
+ GTK_XINE_EVENT_SELECT = XINE_EVENT_INPUT_SELECT,
+ GTK_XINE_EVENT_NEXT = XINE_EVENT_INPUT_NEXT,
+ GTK_XINE_EVENT_PREVIOUS = XINE_EVENT_INPUT_PREVIOUS,
+ GTK_XINE_EVENT_ANGLE_NEXT = XINE_EVENT_INPUT_ANGLE_NEXT,
+ GTK_XINE_EVENT_ANGLE_PREVIOUS = XINE_EVENT_INPUT_ANGLE_PREVIOUS,
+ GTK_XINE_EVENT_BUTTON_FORCE = XINE_EVENT_INPUT_BUTTON_FORCE,
+ GTK_XINE_EVENT_NUMBER_0 = XINE_EVENT_INPUT_NUMBER_0,
+ GTK_XINE_EVENT_NUMBER_1 = XINE_EVENT_INPUT_NUMBER_1,
+ GTK_XINE_EVENT_NUMBER_2 = XINE_EVENT_INPUT_NUMBER_2,
+ GTK_XINE_EVENT_NUMBER_3 = XINE_EVENT_INPUT_NUMBER_3,
+ GTK_XINE_EVENT_NUMBER_4 = XINE_EVENT_INPUT_NUMBER_4,
+ GTK_XINE_EVENT_NUMBER_5 = XINE_EVENT_INPUT_NUMBER_5,
+ GTK_XINE_EVENT_NUMBER_6 = XINE_EVENT_INPUT_NUMBER_6,
+ GTK_XINE_EVENT_NUMBER_7 = XINE_EVENT_INPUT_NUMBER_7,
+ GTK_XINE_EVENT_NUMBER_8 = XINE_EVENT_INPUT_NUMBER_8,
+ GTK_XINE_EVENT_NUMBER_9 = XINE_EVENT_INPUT_NUMBER_9,
+ GTK_XINE_EVENT_NUMBER_10_ADD = XINE_EVENT_INPUT_NUMBER_10_ADD,
+};
+
#if 0
// for now, only support X11
enum _GtkXineVisualType
@@ -64,24 +134,31 @@
};
#endif
+struct _GtkXineEvent
+{
+ GtkXineEventType type;
+ void *stream;
+ void *user_data;
+ void *opaque[20];
+};
+enum _GtkXineVersion
+{
+ GTK_XINE_MAJOR_VERSION = XINE_MAJOR_VERSION,
+ GTK_XINE_MINOR_VERSION = XINE_MINOR_VERSION,
+ GTK_XINE_SUB_VERSION = XINE_SUB_VERSION,
+};
-/**
- ** The default behavior for the warning handler is to print to stderr.
- ** The default behavior for the error handler is to print to stderr, and
- ** then exit.
- ** Audio and video drivers default to "auto". A value of "null" will cause
+/** Audio and video drivers default to "auto". A value of "null" will cause
** them to not load.
*/
-typedef void (*message_handler_cb) (const char *msg);
+typedef void (*gtk_xine_event_cb) (void *user_data, const GtkXineEvent *event);
GtkType gtk_xine_get_type (void);
GtkWidget* gtk_xine_new (void);
-int gtk_xine_set_warning_handler (GtkXine *xine, message_handler_cb cb);
-int gtk_xine_set_error_handler (GtkXine *xine, message_handler_cb cb);
const char *gtk_xine_set_audio_driver (GtkXine *xine, const char *name);
-const char *gtk_xine_set_x11_video_driver (GtkXine *xine, const char *name, GtkWidget *videowin);
+const char *gtk_xine_set_video_driver (GtkXine *xine, const char *name, GtkWidget *videowin);
/*const char *gtk_xine_set_fb_video_driver (GtkXine *xine, const char *name);*/
/* config file */
@@ -105,6 +182,11 @@
int gtk_xine_play_from_position (GtkXine *xine, int start);
int gtk_xine_play_from_time (GtkXine *xine, time_t start);
int gtk_xine_stop (GtkXine *xine);
+GtkXineStatus gtk_xine_get_status (GtkXine *xine);
+
+void gtk_xine_event_listener (GtkXine *xine, gtk_xine_event_cb event_cb, void *user_data);
+void gtk_xine_event_send (GtkXine *xine, GtkXineEventType type, void *user_data);
+
uint32_t gtk_xine_stream_has_audio (GtkXine *xine);
uint32_t gtk_xine_stream_has_video (GtkXine *xine);
@@ -113,6 +195,8 @@
GtkXinePlaybackSpeed gtk_xine_set_speed (GtkXine *xine, GtkXinePlaybackSpeed speed);
GtkXinePlaybackSpeed gtk_xine_get_speed (GtkXine *xine);
+int gtk_xine_set_av_offset (GtkXine *xine, int avoffset);
+int gtk_xine_get_av_offset (GtkXine *xine);
int gtk_xine_set_audio_channel (GtkXine *xine, int channel);
int gtk_xine_get_audio_channel (GtkXine *xine);
int gtk_xine_set_spu_channel (GtkXine *xine, int channel);
@@ -125,7 +209,15 @@
int gtk_xine_set_mute (GtkXine *xine, int muted);
int gtk_xine_get_mute (GtkXine *xine);
+GtkXineAspectRatio gtk_xine_set_aspect_ratio (GtkXine *xine, GtkXineAspectRatio ratio);
+GtkXineAspectRatio gtk_xine_get_aspect_ratio (GtkXine *xine);
+int gtk_xine_set_deinterlace (GtkXine *xine, int deinterlace);
+int gtk_xine_get_deinterlace (GtkXine *xine);
+int gtk_xine_set_tvmode (GtkXine *xine, int tvmode);
+int gtk_xine_get_tvmode (GtkXine *xine);
+
+/* XXX: get_{audio,spu}_lang */
int gtk_xine_get_current_position (GtkXine *xine);
time_t gtk_xine_get_current_time (GtkXine *xine);
@@ -133,7 +225,13 @@
void gtk_xine_eject (GtkXine *xine);
int gtk_xine_is_seekable (GtkXine *xine);
-
+
+void gtk_xine_send_videowin_visible (GtkXine *xine, int visible);
+
+int gtk_xine_get_major_version (GtkXine *xine);
+int gtk_xine_get_minor_version (GtkXine *xine);
+int gtk_xine_get_sub_version (GtkXine *xine);
+
#ifdef __cplusplus
}
#endif
-------------------------------------------------------
This SF.NET email is sponsored by: FREE SSL Guide from Thawte
are you planning your Web Server Security? Click here to get a FREE
Thawte SSL guide and find the answers to all your SSL security issues.
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0026en