6 #ifndef __VIDPLUGIN_H__ 7 #define __VIDPLUGIN_H__ 16 #ifdef HAVE_SYSTEM_WEED 17 #include <weed/weed-palettes.h> 19 #include "../../../../libweed/weed-palettes.h" 25 #if defined __x86_64__ 26 # define __WORDSIZE 64 27 #ifndef __WORDSIZE_COMPAT32 28 # define __WORDSIZE_COMPAT32 1 31 # define __WORDSIZE 32 35 #ifndef __PRI64_PREFIX 37 # define __PRI64_PREFIX "l" 39 # define __PRI64_PREFIX "ll" 43 # define PRId64 __PRI64_PREFIX "d" 44 # define PRIu64 __PRI64_PREFIX "u" 45 #endif // ifndef PRI64d 59 #define ABS(a) (a > 0 ? a : -a) 64 #define PATH_MAX MAX_PATH 71 #define CPU_BITS ((sizeof(void *)) << 3) 93 #define VPP_CAN_RESIZE 1<<0 94 #define VPP_CAN_RETURN 1<<1 95 #define VPP_LOCAL_DISPLAY 1<<2 99 boolean init_screen(
int width,
int height,
boolean fullscreen, uint64_t window_id,
int argc,
char **argv);
110 boolean render_frame(
int hsize,
int vsize, int64_t timecode,
void **pixel_data,
void **return_data,
114 void exit_screen(int16_t mouse_x, int16_t mouse_y);
131 #define MOD_CONTROL_MASK 1<<2 132 #define MOD_ALT_MASK 1<<3 133 #define MOD_NEEDS_TRANSLATION 1<<15 163 boolean init_audio(
int sample_rate,
int nchans,
int argc,
char **argv);
172 #endif // #ifndef __VIDPLUGIN_H__ uint64_t get_capabilities(int palette)
host will call this
void exit_screen(int16_t mouse_x, int16_t mouse_y)
destroy the screen, return mouse to original posn., allow the host GUI to take over (optional) ...
int boolean
Definition: videoplugin.h:50
const int * get_yuv_palette_clamping(int palette)
plugin send list of palette clamping types, in order of preference (optional); -1 terminates list ...
boolean set_yuv_palette_subspace(int subspace_type)
host sets the palette subspace (optional)
const char * get_init_rfx(int intention)
optional
boolean set_palette(int palette)
host sets the palette used
void *() func_ptr(void *)
Definition: videoplugin.h:47
boolean init_audio(int sample_rate, int nchans, int argc, char **argv)
boolean set_fps(double fps)
const int * get_yuv_palette_sampling(int palette)
plugin send list of palette sampling types, in order of preference (optional); -1 terminates list ...
const char * version(void)
_palette * palette
Definition: main.c:108
boolean set_yuv_palette_sampling(int sampling_type)
host sets the palette sampling (optional)
const char * get_fps_list(int palette)
const int * get_audio_fmts(void)
boolean(* keyfunc)(boolean down, uint16_t unicode, uint16_t keymod)
This is a host function - a pointer to it is passed in send_keycodes()
Definition: videoplugin.h:129
boolean render_frame(int hsize, int vsize, int64_t timecode, void **pixel_data, void **return_data, void **play_params)
const void ** get_play_params(func_ptr func)
boolean set_yuv_palette_clamping(int clamping_type)
host sets the palette sampling (optional)
boolean render_audio_frame_float(float **audio, int nsamps)
boolean send_keycodes(keyfunc)
host calls this fn to send keycodes, plugin should call key function with a unicode keycode and modif...
const char * get_description(void)
optional
const char * module_check_init(void)
host calls at startup
const int * get_palette_list(void)
plugin send list of palettes, in order of preference
const int * get_yuv_palette_subspace(int palette)
plugin send list of palette subspace types, in order of preference (optional); -1 terminates list ...
boolean init_screen(int width, int height, boolean fullscreen, uint64_t window_id, int argc, char **argv)
ready the screen to play (optional)
void module_unload(void)
this is called when module is unloaded