diff --git a/libavcodec/h264.h b/libavcodec/h264.h index 392f2f5a7c..b3707ab1c6 100644 --- a/libavcodec/h264.h +++ b/libavcodec/h264.h @@ -87,7 +87,7 @@ #define CABAC(h) h->pps.cabac #endif -#define CHROMA (h->sps.chroma_format_idc) +#define CHROMA(h) (h->sps.chroma_format_idc) #define CHROMA422(h) (h->sps.chroma_format_idc == 2) #define CHROMA444(h) (h->sps.chroma_format_idc == 3) diff --git a/libavcodec/h264_loopfilter.c b/libavcodec/h264_loopfilter.c index 26dc5bcee5..475070ae1b 100644 --- a/libavcodec/h264_loopfilter.c +++ b/libavcodec/h264_loopfilter.c @@ -241,7 +241,7 @@ static av_always_inline void h264_filter_mb_fast_internal(H264Context *h, unsigned int uvlinesize, int pixel_shift) { - int chroma = CHROMA && !(CONFIG_GRAY && (h->flags&CODEC_FLAG_GRAY)); + int chroma = CHROMA(h) && !(CONFIG_GRAY && (h->flags&CODEC_FLAG_GRAY)); int chroma444 = CHROMA444(h); int chroma422 = CHROMA422(h); @@ -707,7 +707,7 @@ void ff_h264_filter_mb( H264Context *h, int mb_x, int mb_y, uint8_t *img_y, uint const int mvy_limit = IS_INTERLACED(mb_type) ? 2 : 4; int first_vertical_edge_done = 0; av_unused int dir; - int chroma = CHROMA && !(CONFIG_GRAY && (h->flags&CODEC_FLAG_GRAY)); + int chroma = CHROMA(h) && !(CONFIG_GRAY && (h->flags&CODEC_FLAG_GRAY)); int qp_bd_offset = 6 * (h->sps.bit_depth_luma - 8); int a = h->slice_alpha_c0_offset - qp_bd_offset; int b = h->slice_beta_offset - qp_bd_offset;