view framehook.h @ 207:7865656658dc libavformat

stdin patch by (Charles Yates <charles dot yates at pandora dot be>) * removes use of read_key and getchar when input is received on stdin (this was corrupting the packet reading) * terminates av_encode when a termination signal is received (use of ctrl-c issued a term_exit and subsequent uses of q failed) * specific correction to yuv4mpeg pipe reading - the defined header was too short to allow for extended yuv4mpeg flags [as used by smil2yuv and y4mscaler and accepted by mjpeg tools]
author michaelni
date Fri, 29 Aug 2003 20:51:10 +0000
parents a58a8a53eb46
children 96f8086bc2ba
line wrap: on
line source

#ifndef _FRAMEHOOK_H
#define _FRAMEHOOK_H

/*
 * Prototypes for interface to .so that implement a video processing hook 
 */

#include "avcodec.h"

/* Function must be called 'Configure' */
typedef int (FrameHookConfigure)(void **ctxp, int argc, char *argv[]);
typedef FrameHookConfigure *FrameHookConfigureFn;
extern FrameHookConfigure Configure;

/* Function must be called 'Process' */
typedef void (FrameHookProcess)(void *ctx, struct AVPicture *pict, enum PixelFormat pix_fmt, int width, int height, int64_t pts);
typedef FrameHookProcess *FrameHookProcessFn;
extern FrameHookProcess Process;

/* Function must be called 'Release' */
typedef void (FrameHookRelease)(void *ctx);
typedef FrameHookRelease *FrameHookReleaseFn;
extern FrameHookRelease Release;

extern int frame_hook_add(int argc, char *argv[]);
extern void frame_hook_process(struct AVPicture *pict, enum PixelFormat pix_fmt, int width, int height);
extern void frame_hook_release();

#endif