summaryrefslogtreecommitdiffstats
path: root/vidix/vidixlib.h
diff options
context:
space:
mode:
authorben <ben@b3059339-0415-0410-9bf9-f77b7e298cf2>2007-04-01 11:06:06 +0000
committerben <ben@b3059339-0415-0410-9bf9-f77b7e298cf2>2007-04-01 11:06:06 +0000
commit257a77dc3d0e793d4051521391b3dc7bef59d522 (patch)
tree5e8a8b96062ea25c1116e0801a0b7cafd1bbc452 /vidix/vidixlib.h
parentcdcae64dc01b9e30d7a2ea3afb14df955a9d9a94 (diff)
downloadmpv-257a77dc3d0e793d4051521391b3dc7bef59d522.tar.bz2
mpv-257a77dc3d0e793d4051521391b3dc7bef59d522.tar.xz
switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22875 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'vidix/vidixlib.h')
-rw-r--r--vidix/vidixlib.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/vidix/vidixlib.h b/vidix/vidixlib.h
index e1585669d9..cf4c38d7fa 100644
--- a/vidix/vidixlib.h
+++ b/vidix/vidixlib.h
@@ -25,6 +25,37 @@ extern "C" {
#include "vidix.h"
+typedef struct VDXDriver {
+ const char *name;
+ struct VDXDriver *next;
+ int (* probe) (int verbose, int force);
+ unsigned int (* get_version)(void);
+ int (* get_caps) (vidix_capability_t *cap);
+ int (*query_fourcc)(vidix_fourcc_t *);
+ int (*init)(void);
+ void (*destroy)(void);
+ int (*config_playback)(vidix_playback_t *);
+ int (*playback_on)( void );
+ int (*playback_off)( void );
+ /* Functions below can be missed in driver ;) */
+ int (*frame_sel)( unsigned frame_idx );
+ int (*get_eq)( vidix_video_eq_t * );
+ int (*set_eq)( const vidix_video_eq_t * );
+ int (*get_deint)( vidix_deinterlace_t * );
+ int (*set_deint)( const vidix_deinterlace_t * );
+ int (*copy_frame)( const vidix_dma_t * );
+ int (*get_gkey)( vidix_grkey_t * );
+ int (*set_gkey)( const vidix_grkey_t * );
+ int (*get_num_fx)( unsigned * );
+ int (*get_fx)( vidix_oem_fx_t * );
+ int (*set_fx)( const vidix_oem_fx_t * );
+} VDXDriver;
+
+typedef struct VDXContext {
+ VDXDriver *drv;
+ /* might be filled in by much more info later on */
+} VDXContext;
+
typedef void * VDL_HANDLE;
/* returns library version */