diff options
author | Vitor Sessak <vitor1001@gmail.com> | 2007-06-25 12:09:23 +0000 |
---|---|---|
committer | Benoit Fouet <benoit.fouet@free.fr> | 2007-06-25 12:09:23 +0000 |
commit | 03e3e765447a2a0f8f6563ae6e0cd8ed592a8dfe (patch) | |
tree | 627ae4475b7e719050c6a9d9e418fc044d937c30 /libavcodec/roqvideo.h | |
parent | 606975ab01b61f41d8c598e9fc881d246e844bda (diff) | |
download | ffmpeg-03e3e765447a2a0f8f6563ae6e0cd8ed592a8dfe.tar.gz |
RoQ video encoder
patch by Vitor: \vitor1001 gmail com/
original thread: [FFmpeg-devel] RoQ video encoder (take 3)
date: 06/08/2007 10:34 PM
Originally committed as revision 9420 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/roqvideo.h')
-rw-r--r-- | libavcodec/roqvideo.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/libavcodec/roqvideo.h b/libavcodec/roqvideo.h index 41c4ed1795..b405dfdf91 100644 --- a/libavcodec/roqvideo.h +++ b/libavcodec/roqvideo.h @@ -24,6 +24,7 @@ #include "avcodec.h" #include "dsputil.h" +#include "random.h" typedef struct { unsigned char y[4]; @@ -34,6 +35,10 @@ typedef struct { int idx[4]; } roq_qcell; +typedef struct { + int d[2]; +} motion_vect; + typedef struct RoqContext { AVCodecContext *avctx; @@ -41,6 +46,7 @@ typedef struct RoqContext { AVFrame frames[2]; AVFrame *last_frame; AVFrame *current_frame; + int first_frame; int y_stride; int c_stride; @@ -49,7 +55,22 @@ typedef struct RoqContext { unsigned char *buf; int size; + int width, height; + + /* Encoder only data */ + AVRandomState randctx; + uint64_t lambda; + + motion_vect *this_motion4; + motion_vect *last_motion4; + + motion_vect *this_motion8; + motion_vect *last_motion8; + + unsigned int framesSinceKeyframe; + AVFrame *frame_to_enc; + uint8_t *out_buf; } RoqContext; #define RoQ_INFO 0x1001 |