[FFmpeg-devel] [PATCH] Set gray (128) U/V planes for chroma-less samples. Fixes two fate samples when played with -flags emu_edge.

Ronald S. Bultje rsbultje
Thu Jan 20 20:14:20 CET 2011


---
 libavcodec/h264_cabac.c |    2 ++
 libavcodec/h264_cavlc.c |    2 ++
 2 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/libavcodec/h264_cabac.c b/libavcodec/h264_cabac.c
index 5aad4d7..efc2b71 100644
--- a/libavcodec/h264_cabac.c
+++ b/libavcodec/h264_cabac.c
@@ -1373,6 +1373,8 @@ decode_intra_mb:
             pred_mode= ff_h264_check_intra_pred_mode( h, pred_mode );
             if( pred_mode < 0 ) return -1;
             h->chroma_pred_mode= pred_mode;
+        } else {
+            h->chroma_pred_mode= DC_128_PRED8x8;
         }
     } else if( partition_count == 4 ) {
         int i, j, sub_partition_count[4], list, ref[2][4];
diff --git a/libavcodec/h264_cavlc.c b/libavcodec/h264_cavlc.c
index 55ff022..c9d28d0 100644
--- a/libavcodec/h264_cavlc.c
+++ b/libavcodec/h264_cavlc.c
@@ -665,6 +665,8 @@ decode_intra_mb:
             if(pred_mode < 0)
                 return -1;
             h->chroma_pred_mode= pred_mode;
+        } else {
+            h->chroma_pred_mode = DC_128_PRED8x8;
         }
     }else if(partition_count==4){
         int i, j, sub_partition_count[4], list, ref[2][4];
-- 
1.7.2.1




More information about the ffmpeg-devel mailing list