[FFmpeg-devel] [HACK] fix CAVS decoder crashes

Reimar Döffinger Reimar.Doeffinger
Sat Dec 18 13:13:37 CET 2010


On Sat, Dec 18, 2010 at 02:44:40AM +0100, Michael Niedermayer wrote:
> > @@ -234,7 +234,7 @@
> >      for(block=0;block<4;block++) {
> >          d = h->cy + h->luma_scan[block];
> >          ff_cavs_load_intra_pred_luma(h, top, &left, block);
> > -        h->intra_pred_l[h->pred_mode_Y[ff_cavs_scan3x3[block]]]
> > +        h->intra_pred_l[FFMAX(h->pred_mode_Y[ff_cavs_scan3x3[block]], 0)]
> 
> as stefan has no time, some comments that might help debuging
> The intra pred stuff (likely) has to be >= 0 for intra blocks
> It (likely) is allowed to be negative for non intra blocks

I don't think so, -1 is the value these are initialized to, meaning
"not available".
For normal decoding this gets replaced by a "fallback" value.
The reason I don't want to investigate is because I consider the
approach of _ever_ assigning invalid values to pred_mode_Y
non-robust design and changing the design requires someone who
knows what they are doing.



More information about the ffmpeg-devel mailing list