aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2003-02-28 16:06:40 +0000
committerMichael Niedermayer <michaelni@gmx.at>2003-02-28 16:06:40 +0000
commit179386025eadce8a440a548b78008342de7c73a3 (patch)
tree172a07d7df1c3295c84f005b6cb22b4ed5b1fa11 /libavcodec
parente51d6d27a6240f269878b4c110135195113b628b (diff)
downloadffmpeg-179386025eadce8a440a548b78008342de7c73a3.tar.gz
10l
Originally committed as revision 1615 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/h263.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/libavcodec/h263.c b/libavcodec/h263.c
index 98be0fe118..9fe405a078 100644
--- a/libavcodec/h263.c
+++ b/libavcodec/h263.c
@@ -1519,7 +1519,7 @@ static void h263_encode_block(MpegEncContext * s, DCTELEM * block, int n)
level = 1;
block[0] = 1;
}
- if (level == 128)
+ if (level == 128) //FIXME check rv10
put_bits(&s->pb, 8, 0xff);
else
put_bits(&s->pb, 8, level & 0xff);
@@ -3548,7 +3548,8 @@ static int h263_decode_block(MpegEncContext * s, DCTELEM * block,
}
} else if (s->mb_intra) {
/* DC coef */
- if (s->h263_rv10 && s->rv10_version == 3 && s->pict_type == I_TYPE) {
+ if(s->h263_rv10){
+ if (s->rv10_version == 3 && s->pict_type == I_TYPE) {
int component, diff;
component = (n <= 3 ? 0 : n - 4 + 1);
level = s->last_dc[component];
@@ -3562,10 +3563,13 @@ static int h263_decode_block(MpegEncContext * s, DCTELEM * block,
} else {
s->rv10_first_dc_coded[component] = 1;
}
- } else {
+ } else {
+ level = get_bits(&s->gb, 8);
+ }
+ }else{
level = get_bits(&s->gb, 8);
if((level&0x7F) == 0){
- fprintf("illegal dc at %d %d\n", s->mb_x, s->mb_y);
+ fprintf(stderr, "illegal dc %d at %d %d\n", level, s->mb_x, s->mb_y);
return -1;
}
if (level == 255)