20 |
* along with this program ; if not, write to the Free Software |
* along with this program ; if not, write to the Free Software |
21 |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
22 |
* |
* |
23 |
* $Id: decoder.c,v 1.80 2007-04-16 19:01:28 Skal Exp $ |
* $Id: decoder.c,v 1.81 2009-05-28 15:42:06 Isibaar Exp $ |
24 |
* |
* |
25 |
****************************************************************************/ |
****************************************************************************/ |
26 |
|
|
201 |
|
|
202 |
dec->fixed_dimensions = (dec->width > 0 && dec->height > 0); |
dec->fixed_dimensions = (dec->width > 0 && dec->height > 0); |
203 |
|
|
204 |
if (dec->fixed_dimensions) |
if (dec->fixed_dimensions) { |
205 |
return decoder_resize(dec); |
int ret = decoder_resize(dec); |
206 |
|
if (ret == XVID_ERR_MEMORY) create->handle = NULL; |
207 |
|
return ret; |
208 |
|
} |
209 |
else |
else |
210 |
return 0; |
return 0; |
211 |
} |
} |
751 |
bound = read_video_packet_header(bs, dec, 0, |
bound = read_video_packet_header(bs, dec, 0, |
752 |
&quant, NULL, NULL, &intra_dc_threshold); |
&quant, NULL, NULL, &intra_dc_threshold); |
753 |
x = bound % mb_width; |
x = bound % mb_width; |
754 |
y = bound / mb_width; |
y = MIN((bound / mb_width), (mb_height-1)); |
755 |
} |
} |
756 |
mb = &dec->mbs[y * dec->mb_width + x]; |
mb = &dec->mbs[y * dec->mb_width + x]; |
757 |
|
|
978 |
bound = read_video_packet_header(bs, dec, fcode - 1, |
bound = read_video_packet_header(bs, dec, fcode - 1, |
979 |
&quant, &fcode, NULL, &intra_dc_threshold); |
&quant, &fcode, NULL, &intra_dc_threshold); |
980 |
x = bound % mb_width; |
x = bound % mb_width; |
981 |
y = bound / mb_width; |
y = MIN((bound / mb_width), (mb_height-1)); |
982 |
} |
} |
983 |
mb = &dec->mbs[y * dec->mb_width + x]; |
mb = &dec->mbs[y * dec->mb_width + x]; |
984 |
|
|
1387 |
int bound = read_video_packet_header(bs, dec, resync_len, &quant, |
int bound = read_video_packet_header(bs, dec, resync_len, &quant, |
1388 |
&fcode_forward, &fcode_backward, &intra_dc_threshold); |
&fcode_forward, &fcode_backward, &intra_dc_threshold); |
1389 |
x = bound % dec->mb_width; |
x = bound % dec->mb_width; |
1390 |
y = bound / dec->mb_width; |
y = MIN((bound / dec->mb_width), (dec->mb_height-1)); |
1391 |
/* reset predicted macroblocks */ |
/* reset predicted macroblocks */ |
1392 |
dec->p_fmv = dec->p_bmv = zeromv; |
dec->p_fmv = dec->p_bmv = zeromv; |
1393 |
/* update resync len with new fcodes */ |
/* update resync len with new fcodes */ |