Reinitialize the h264 decoder context on every valid aspect ratio

change, not only size changes.

Patch by Janusz Krzysztofik foo=zyszt <jkr$foo@tis.icnet.pl>.

Originally committed as revision 22597 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Janusz Krzysztofik 2010-03-18 23:36:54 +00:00 committed by Stefano Sabatini
parent 15ba015f71
commit 5388f0b479
1 changed files with 2 additions and 1 deletions

View File

@ -1774,7 +1774,8 @@ static int decode_slice_header(H264Context *h, H264Context *h0){
s->height= 16*s->mb_height - 4*FFMIN(h->sps.crop_bottom, 3);
if (s->context_initialized
&& ( s->width != s->avctx->width || s->height != s->avctx->height)) {
&& ( s->width != s->avctx->width || s->height != s->avctx->height
|| av_cmp_q(h->sps.sar, s->avctx->sample_aspect_ratio))) {
if(h != h0)
return -1; // width / height changed during parallelized decoding
free_tables(h);