Fix bugs in previous commit that caused FTBFS in synfig and ETL FTBFS with older...
[synfig.git] / synfig-core / tags / synfig_0_61_05 / synfig-core / src / modules / mod_libavcodec / libavformat / framehook.h
1 #ifndef _FRAMEHOOK_H
2 #define _FRAMEHOOK_H
3
4 /*
5  * Prototypes for interface to .so that implement a video processing hook 
6  */
7
8 #include "avcodec.h"
9
10 /* Function must be called 'Configure' */
11 typedef int (FrameHookConfigure)(void **ctxp, int argc, char *argv[]);
12 typedef FrameHookConfigure *FrameHookConfigureFn;
13 extern FrameHookConfigure Configure;
14
15 /* Function must be called 'Process' */
16 typedef void (FrameHookProcess)(void *ctx, struct AVPicture *pict, enum PixelFormat pix_fmt, int width, int height, int64_t pts);
17 typedef FrameHookProcess *FrameHookProcessFn;
18 extern FrameHookProcess Process;
19
20 /* Function must be called 'Release' */
21 typedef void (FrameHookRelease)(void *ctx);
22 typedef FrameHookRelease *FrameHookReleaseFn;
23 extern FrameHookRelease Release;
24
25 extern int frame_hook_add(int argc, char *argv[]);
26 extern void frame_hook_process(struct AVPicture *pict, enum PixelFormat pix_fmt, int width, int height);
27 extern void frame_hook_release();
28
29 #endif