diff options
author | Stefan Gehrer <stefan.gehrer@gmx.de> | 2010-02-18 18:23:48 +0000 |
---|---|---|
committer | Stefan Gehrer <stefan.gehrer@gmx.de> | 2010-02-18 18:23:48 +0000 |
commit | 3cc3581dc029b9a84df61ac8797fae0bf4a05a3f (patch) | |
tree | b486080fc97ffb21c96e8fba29a8404704daf59a | |
parent | bf7c17192f7507e09d71e3f6be320aa6dced4b68 (diff) | |
download | ffmpeg-3cc3581dc029b9a84df61ac8797fae0bf4a05a3f.tar.gz |
fix intra prediction modes with inter-MB neighbors,
the old sample clips are in violation of the 2006 spec
Originally committed as revision 21883 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r-- | libavcodec/cavs.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/libavcodec/cavs.h b/libavcodec/cavs.h index fce55c3b71..127185574e 100644 --- a/libavcodec/cavs.h +++ b/libavcodec/cavs.h @@ -248,8 +248,13 @@ static inline void modify_pred(const int_fast8_t *mod_table, int *mode) { } static inline void set_intra_mode_default(AVSContext *h) { - h->pred_mode_Y[3] = h->pred_mode_Y[6] = INTRA_L_LP; - h->top_pred_Y[h->mbx*2+0] = h->top_pred_Y[h->mbx*2+1] = INTRA_L_LP; + if(h->stream_revision > 0) { + h->pred_mode_Y[3] = h->pred_mode_Y[6] = NOT_AVAIL; + h->top_pred_Y[h->mbx*2+0] = h->top_pred_Y[h->mbx*2+1] = NOT_AVAIL; + } else { + h->pred_mode_Y[3] = h->pred_mode_Y[6] = INTRA_L_LP; + h->top_pred_Y[h->mbx*2+0] = h->top_pred_Y[h->mbx*2+1] = INTRA_L_LP; + } } static inline void set_mvs(cavs_vector *mv, enum cavs_block size) { |