annotate libmpcodecs/native/svq1.h @ 6505:e3a166f8e81f

imported from xine, generalized, created header file, all tables moved to svq1_cb.h (was: svq1_codebooks.h) TODO: use libavcodec's MC and bit parsing routines, maybe VLC too, finally move the whole decoder to libavcodec
author arpi
date Sat, 22 Jun 2002 23:07:41 +0000
parents
children a2086150099b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6505
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
1
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
2 #define SVQ1_BLOCK_SKIP 0
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
3 #define SVQ1_BLOCK_INTER 1
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
4 #define SVQ1_BLOCK_INTER_4V 2
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
5 #define SVQ1_BLOCK_INTRA 3
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
6
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
7 #define SVQ1_FRAME_INTRA 0
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
8 #define SVQ1_FRAME_INTER 1
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
9 #define SVQ1_FRAME_DROPPABLE 2
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
10
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
11 /* motion vector (prediction) */
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
12 typedef struct svq1_pmv_s {
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
13 int x;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
14 int y;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
15 } svq1_pmv_t;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
16
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
17 typedef struct svq1_s {
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
18 int frame_code;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
19 int frame_type;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
20 int frame_width;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
21 int frame_height;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
22 int luma_width;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
23 int luma_height;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
24 int chroma_width;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
25 int chroma_height;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
26 svq1_pmv_t *motion;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
27 uint8_t *current;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
28 uint8_t *previous;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
29 int offsets[3];
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
30 int reference_frame;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
31
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
32 uint8_t *base[3];
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
33 int width;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
34 int height;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
35 } svq1_t;
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
36
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
37 int svq1_decode_frame (svq1_t *svq1, uint8_t *buffer);
e3a166f8e81f imported from xine, generalized, created header file, all tables moved to
arpi
parents:
diff changeset
38 void svq1_free (svq1_t *svq1);