aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2003-01-09 11:37:08 +0000
committerMichael Niedermayer <michaelni@gmx.at>2003-01-09 11:37:08 +0000
commit2826984994807ef03d559da119594eddb8331651 (patch)
treebc78b7e303d54b0a25532b6d07c6f769c2baba3c
parente5ab4fdd8e9710e6de7ad02c808d6abec94c279b (diff)
downloadffmpeg-2826984994807ef03d559da119594eddb8331651.tar.gz
fixed wmv2 slices
Originally committed as revision 1425 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--libavcodec/h263dec.c2
-rw-r--r--libavcodec/msmpeg4.c4
-rw-r--r--libavcodec/wmv2.c14
3 files changed, 6 insertions, 14 deletions
diff --git a/libavcodec/h263dec.c b/libavcodec/h263dec.c
index 93a14a06ee..cb473ea87b 100644
--- a/libavcodec/h263dec.c
+++ b/libavcodec/h263dec.c
@@ -580,7 +580,7 @@ retry:
break;
}
- if(s->msmpeg4_version!=4 && s->h263_pred)
+ if(s->msmpeg4_version<4 && s->h263_pred)
ff_mpeg4_clean_buffers(s);
decode_slice(s);
diff --git a/libavcodec/msmpeg4.c b/libavcodec/msmpeg4.c
index a08418874c..f2647cf0da 100644
--- a/libavcodec/msmpeg4.c
+++ b/libavcodec/msmpeg4.c
@@ -502,7 +502,7 @@ static void msmpeg4_encode_motion(MpegEncContext * s,
static inline void handle_slices(MpegEncContext *s){
if (s->mb_x == 0) {
if (s->slice_height && (s->mb_y % s->slice_height) == 0) {
- if(s->msmpeg4_version != 4){
+ if(s->msmpeg4_version < 4){
ff_mpeg4_clean_buffers(s);
}
s->first_slice_line = 1;
@@ -691,7 +691,7 @@ static inline int msmpeg4_pred_dc(MpegEncContext * s, int n,
b = dc_val[ - 1 - wrap];
c = dc_val[ - wrap];
- if(s->first_slice_line && (n&2)==0 && s->msmpeg4_version!=4){
+ if(s->first_slice_line && (n&2)==0 && s->msmpeg4_version<4){
b=c=1024;
}
diff --git a/libavcodec/wmv2.c b/libavcodec/wmv2.c
index d25b7a5f17..bdd5652285 100644
--- a/libavcodec/wmv2.c
+++ b/libavcodec/wmv2.c
@@ -330,8 +330,9 @@ static int decode_ext_header(Wmv2Context *w){
s->slice_height = s->mb_height / code;
if(s->avctx->debug&FF_DEBUG_PICT_INFO){
- printf("fps:%d, br:%d, qpbit:%d, abt_flag:%d, j_type_bit:%d, tl_mv_flag:%d, mbrl_bit:%d, code:%d, flag3:%d\n",
- fps, s->bit_rate, w->mspel_bit, w->abt_flag, w->j_type_bit, w->top_left_mv_flag, w->per_mb_rl_bit, code, w->flag3);
+ printf("fps:%d, br:%d, qpbit:%d, abt_flag:%d, j_type_bit:%d, tl_mv_flag:%d, mbrl_bit:%d, code:%d, flag3:%d, slices:%d\n",
+ fps, s->bit_rate, w->mspel_bit, w->abt_flag, w->j_type_bit, w->top_left_mv_flag, w->per_mb_rl_bit, code, w->flag3,
+ code);
}
return 0;
}
@@ -577,16 +578,7 @@ static void wmv2_add_block(Wmv2Context *w, DCTELEM *block1, uint8_t *dst, int st
MpegEncContext * const s= &w->s;
uint8_t temp[2][64];
int i;
-
- if(w->abt_type_table[n] && 0){
- int a,b;
- a= block1[0];
- b= w->abt_block2[n][0];
- block1[0]= a+b;
- w->abt_block2[n][0]= a-b;
- }
-
switch(w->abt_type_table[n]){
case 0:
if (s->block_last_index[n] >= 0) {