initial revision.
[swftools.git] / lib / h.263 / swfvideo.h
1 /* mkvideo.c
2    Create a video file.
3
4    Part of the swftools package.
5    
6    Copyright (c) 2003 Matthias Kramm <kramm@quiss.org> */
7
8 #ifndef __swfvideo_h__
9 #define __swfvideo_h__
10
11 #include "../rfxswf.h"
12
13 typedef struct _YUV
14 {
15     unsigned char y,u,v;
16 } YUV;
17
18 typedef struct _VIDEOSTREAM
19 {
20     int width;
21     int height;
22     int frame;
23     int linex;
24     int olinex;
25     YUV*oldpic;
26     YUV*current;
27     int bbx,bby;
28     int*mvdx;
29     int*mvdy;
30
31     /* modifyable: */
32     int do_motion; //enable motion compensation (slow!)
33
34 } VIDEOSTREAM;
35
36 void swf_SetVideoStreamDefine(TAG*tag, VIDEOSTREAM*stream, U16 frames, U16 width, U16 height);
37 void swf_SetVideoStreamIFrame(TAG*tag, VIDEOSTREAM*s, RGBA*pic, int quant/* 1-31, 1=best quality, 31=best compression*/);
38 void swf_SetVideoStreamPFrame(TAG*tag, VIDEOSTREAM*s, RGBA*pic, int quant/* 1-31, 1=best quality, 31=best compression*/);
39 void swf_VideoStreamClear(VIDEOSTREAM*stream);
40
41 #endif