Statistics
| Branch: | Revision:

ffmpeg / libavformat / framehook.h @ 80a289b9

History | View | Annotate | Download (1.76 KB)

1 04d7f601 Diego Biurrun
/*
2
 * video processing hooks
3
 * copyright (c) 2000, 2001 Fabrice Bellard
4
 *
5 b78e7197 Diego Biurrun
 * This file is part of FFmpeg.
6
 *
7
 * FFmpeg is free software; you can redistribute it and/or
8 04d7f601 Diego Biurrun
 * modify it under the terms of the GNU Lesser General Public
9
 * License as published by the Free Software Foundation; either
10 b78e7197 Diego Biurrun
 * version 2.1 of the License, or (at your option) any later version.
11 04d7f601 Diego Biurrun
 *
12 b78e7197 Diego Biurrun
 * FFmpeg is distributed in the hope that it will be useful,
13 04d7f601 Diego Biurrun
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15
 * Lesser General Public License for more details.
16
 *
17
 * You should have received a copy of the GNU Lesser General Public
18 b78e7197 Diego Biurrun
 * License along with FFmpeg; if not, write to the Free Software
19 04d7f601 Diego Biurrun
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20
 */
21
22 3b2cbbed Philip Gladstone
#ifndef _FRAMEHOOK_H
23
#define _FRAMEHOOK_H
24
25
/*
26 115329f1 Diego Biurrun
 * Prototypes for interface to .so that implement a video processing hook
27 3b2cbbed Philip Gladstone
 */
28
29
#include "avcodec.h"
30
31
/* Function must be called 'Configure' */
32 042f2465 Philip Gladstone
typedef int (FrameHookConfigure)(void **ctxp, int argc, char *argv[]);
33
typedef FrameHookConfigure *FrameHookConfigureFn;
34
extern FrameHookConfigure Configure;
35 3b2cbbed Philip Gladstone
36
/* Function must be called 'Process' */
37 0c1a9eda Zdenek Kabelac
typedef void (FrameHookProcess)(void *ctx, struct AVPicture *pict, enum PixelFormat pix_fmt, int width, int height, int64_t pts);
38 042f2465 Philip Gladstone
typedef FrameHookProcess *FrameHookProcessFn;
39
extern FrameHookProcess Process;
40
41
/* Function must be called 'Release' */
42
typedef void (FrameHookRelease)(void *ctx);
43
typedef FrameHookRelease *FrameHookReleaseFn;
44
extern FrameHookRelease Release;
45 3b2cbbed Philip Gladstone
46
extern int frame_hook_add(int argc, char *argv[]);
47
extern void frame_hook_process(struct AVPicture *pict, enum PixelFormat pix_fmt, int width, int height);
48 7906085f Falk H├╝ffner
extern void frame_hook_release(void);
49 3b2cbbed Philip Gladstone
50
#endif