diff options
author | nick <nick@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-01-05 10:13:25 +0000 |
---|---|---|
committer | nick <nick@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-01-05 10:13:25 +0000 |
commit | 76c7e8371b711de7d00736588ff766eb763e829c (patch) | |
tree | 6c27fe9570cad774c1b91c08c6b566595074cc03 /vidix/vidixlib.h | |
parent | 71d96baf240f404bb0dd102a7bcab46f7d0bc811 (diff) | |
download | mpv-76c7e8371b711de7d00736588ff766eb763e829c.tar.bz2 mpv-76c7e8371b711de7d00736588ff766eb763e829c.tar.xz |
preliminary version
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@3992 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'vidix/vidixlib.h')
-rw-r--r-- | vidix/vidixlib.h | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/vidix/vidixlib.h b/vidix/vidixlib.h new file mode 100644 index 0000000000..fd023d5de0 --- /dev/null +++ b/vidix/vidixlib.h @@ -0,0 +1,78 @@ +/* + * vidixlib.h + * VIDIXLib - Library for VIDeo Interface for *niX + * This interface is introduced as universal one to MPEG decoder, + * BES == Back End Scaler and YUV2RGB hw accelerators. + * In the future it may be expanded up to capturing and audio things. + * Main goal of this this interface imlpementation is providing DGA + * everywhere where it's possible (unlike X11 and other). + * Copyright 2002 Nick Kurshev + * Licence: GPL + * This interface is based on v4l2, fbvid.h, mga_vid.h projects + * and personally my ideas. + * NOTE: This interface is introduces as APP interface. + * Don't use it for driver. + * It provides multistreaming. This mean that APP can handle + * several streams simultaneously. (Example: Video capturing and video + * playback or capturing, video playback, audio encoding and so on). +*/ +#ifndef VIDIXLIB_H +#define VIDIXLIB_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include "vidix.h" + +typedef void * VDL_HANDLE; + + /* returns library version */ +extern unsigned vdlGetVersion( void ); + + /* Opens corresponded video driver and returns handle + of associated stream. + path - specifies path where drivers are located. + name - specifies prefered driver name (can be NULL). + cap - specifies driver capability (TYPE_* constants). + returns !0 if ok else NULL. + */ +extern VDL_HANDLE vdlOpen(const char *path,const char *name,unsigned cap); + /* Closes stream and corresponded driver. */ +extern void vdlClose(VDL_HANDLE stream); + + /* Queries driver capabilities. Return 0 if ok else errno */ +extern int vdlGetCapability(VDL_HANDLE, vidix_capability_t *); + + /* Queries support for given fourcc. Returns 0 if ok else errno */ +extern int vdlQueryFourcc(VDL_HANDLE,vidix_fourcc_t *); + + /* Returns 0 if ok else errno */ +extern int vdlConfigPlayback(VDL_HANDLE,const vidix_playback_t *); + + /* Returns 0 if ok else errno */ +extern int vdlMapPlayback(VDL_HANDLE,vidix_dga_t *); + + /* Returns 0 if ok else errno */ +extern int vdlPlaybackOn(VDL_HANDLE); + + /* Returns 0 if ok else errno */ +extern int vdlPlaybackOff(VDL_HANDLE); + + /* Returns 0 if ok else errno */ +extern int vdlPlaybackFrameSelect(VDL_HANDLE, unsigned frame_idx ); + + /* Returns 0 if ok else errno */ +extern int vdlPlaybackGetEq(VDL_HANDLE, vidix_video_eq_t * ); + + /* Returns 0 if ok else errno */ +extern int vdlPlaybackSetEq(VDL_HANDLE, const vidix_video_eq_t * ); + + /* Returns 0 if ok else errno */ +extern int vdlPlaybackCopyFrame(VDL_HANDLE, const vidix_dma_t * ); + +#ifdef __cplusplus +} +#endif + +#endif |