Mercurial > libavcodec.hg
comparison h264pred.h @ 6036:ce3b68242317 libavcodec
Correct spatial prediction mode in RV30/40 for vertical left direction
and add its version that does not rely on down left neighbour subblock.
author | kostya |
---|---|
date | Mon, 17 Dec 2007 18:43:34 +0000 |
parents | 1d83e9c34641 |
children | f7cbb7733146 |
comparison
equal
deleted
inserted
replaced
6035:4de95581b38a | 6036:ce3b68242317 |
---|---|
48 #define TOP_DC_PRED 10 | 48 #define TOP_DC_PRED 10 |
49 #define DC_128_PRED 11 | 49 #define DC_128_PRED 11 |
50 | 50 |
51 #define DIAG_DOWN_LEFT_PRED_RV40_NODOWN 12 | 51 #define DIAG_DOWN_LEFT_PRED_RV40_NODOWN 12 |
52 #define HOR_UP_PRED_RV40_NODOWN 13 | 52 #define HOR_UP_PRED_RV40_NODOWN 13 |
53 #define VERT_LEFT_PRED_RV40_NODOWN 14 | |
53 | 54 |
54 #define DC_PRED8x8 0 | 55 #define DC_PRED8x8 0 |
55 #define HOR_PRED8x8 1 | 56 #define HOR_PRED8x8 1 |
56 #define VERT_PRED8x8 2 | 57 #define VERT_PRED8x8 2 |
57 #define PLANE_PRED8x8 3 | 58 #define PLANE_PRED8x8 3 |
63 | 64 |
64 /** | 65 /** |
65 * Context for storing H.264 prediction functions | 66 * Context for storing H.264 prediction functions |
66 */ | 67 */ |
67 typedef struct H264PredContext{ | 68 typedef struct H264PredContext{ |
68 void (*pred4x4 [9+3+2])(uint8_t *src, uint8_t *topright, int stride);//FIXME move to dsp? | 69 void (*pred4x4 [9+3+3])(uint8_t *src, uint8_t *topright, int stride);//FIXME move to dsp? |
69 void (*pred8x8l [9+3])(uint8_t *src, int topleft, int topright, int stride); | 70 void (*pred8x8l [9+3])(uint8_t *src, int topleft, int topright, int stride); |
70 void (*pred8x8 [4+3])(uint8_t *src, int stride); | 71 void (*pred8x8 [4+3])(uint8_t *src, int stride); |
71 void (*pred16x16[4+3])(uint8_t *src, int stride); | 72 void (*pred16x16[4+3])(uint8_t *src, int stride); |
72 }H264PredContext; | 73 }H264PredContext; |
73 | 74 |