[FFmpeg-devel] [PATCH 1/2] avcodec/h264_slice: Use non_j_pixfmt() in the format match code

wm4 nfxjfg at googlemail.com
Sun Oct 11 21:28:12 CEST 2015


On Sun, 11 Oct 2015 21:16:26 +0200
Michael Niedermayer <michaelni at gmx.at> wrote:

> From: Michael Niedermayer <michael at niedermayer.cc>
> 
> Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> ---
>  libavcodec/h264_slice.c |   24 ++++++++++++------------
>  1 file changed, 12 insertions(+), 12 deletions(-)
> 
> diff --git a/libavcodec/h264_slice.c b/libavcodec/h264_slice.c
> index a346ccb..cce97d9 100644
> --- a/libavcodec/h264_slice.c
> +++ b/libavcodec/h264_slice.c
> @@ -865,6 +865,17 @@ static void init_scan_tables(H264Context *h)
>      }
>  }
>  
> +static enum AVPixelFormat non_j_pixfmt(enum AVPixelFormat a)
> +{
> +    switch (a) {
> +    case AV_PIX_FMT_YUVJ420P: return AV_PIX_FMT_YUV420P;
> +    case AV_PIX_FMT_YUVJ422P: return AV_PIX_FMT_YUV422P;
> +    case AV_PIX_FMT_YUVJ444P: return AV_PIX_FMT_YUV444P;
> +    default:
> +        return a;
> +    }
> +}
> +
>  static enum AVPixelFormat get_pixel_format(H264Context *h, int force_callback)
>  {
>  #define HWACCEL_MAX (CONFIG_H264_DXVA2_HWACCEL + \
> @@ -972,7 +983,7 @@ static enum AVPixelFormat get_pixel_format(H264Context *h, int force_callback)
>      *fmt = AV_PIX_FMT_NONE;
>  
>      for (i=0; choices[i] != AV_PIX_FMT_NONE; i++)
> -        if (choices[i] == h->avctx->pix_fmt && !force_callback)
> +        if (non_j_pixfmt(choices[i]) == non_j_pixfmt(h->avctx->pix_fmt) && !force_callback)
>              return choices[i];
>      return ff_thread_get_format(h->avctx, choices);
>  }
> @@ -1129,17 +1140,6 @@ fail:
>      return ret;
>  }
>  
> -static enum AVPixelFormat non_j_pixfmt(enum AVPixelFormat a)
> -{
> -    switch (a) {
> -    case AV_PIX_FMT_YUVJ420P: return AV_PIX_FMT_YUV420P;
> -    case AV_PIX_FMT_YUVJ422P: return AV_PIX_FMT_YUV422P;
> -    case AV_PIX_FMT_YUVJ444P: return AV_PIX_FMT_YUV444P;
> -    default:
> -        return a;
> -    }
> -}
> -
>  /**
>   * Decode a slice header.
>   * This will (re)intialize the decoder and call h264_frame_start() as needed.

Not particularly fond of this weird thing spreading.

Can't we finally execute the half-decade old deprecation of the J
formats?


More information about the ffmpeg-devel mailing list