[FFmpeg-devel] [PATCH] libvpxdec: apply RGB to 444P16 instead of 422P16.

James Zern jzern at google.com
Fri Sep 11 21:55:35 CEST 2015


On Fri, Sep 11, 2015 at 10:43 AM, Ronald S. Bultje <rsbultje at gmail.com> wrote:
> ---
>  libavcodec/libvpxdec.c | 20 ++++++++++----------
>  1 file changed, 10 insertions(+), 10 deletions(-)
>

lgtm. sorry I wasn't paying attention with the last patch.

> diff --git a/libavcodec/libvpxdec.c b/libavcodec/libvpxdec.c
> index eb05f26..7267590 100644
> --- a/libavcodec/libvpxdec.c
> +++ b/libavcodec/libvpxdec.c
> @@ -112,20 +112,10 @@ static int set_pix_fmt(AVCodecContext *avctx, struct vpx_image *img)
>      case VPX_IMG_FMT_I42216:
>          avctx->profile = FF_PROFILE_VP9_3;
>          if (img->bit_depth == 10) {
> -#if VPX_IMAGE_ABI_VERSION >= 3
> -            avctx->pix_fmt = avctx->colorspace == AVCOL_SPC_RGB ?
> -                             AV_PIX_FMT_GBRP10LE : AV_PIX_FMT_YUV422P10LE;
> -#else
>              avctx->pix_fmt = AV_PIX_FMT_YUV422P10LE;
> -#endif
>              return 0;
>          } else if (img->bit_depth == 12) {
> -#if VPX_IMAGE_ABI_VERSION >= 3
> -            avctx->pix_fmt = avctx->colorspace == AVCOL_SPC_RGB ?
> -                             AV_PIX_FMT_GBRP12LE : AV_PIX_FMT_YUV422P12LE;
> -#else
>              avctx->pix_fmt = AV_PIX_FMT_YUV422P12LE;
> -#endif
>              return 0;
>          } else {
>              return AVERROR_INVALIDDATA;
> @@ -146,10 +136,20 @@ static int set_pix_fmt(AVCodecContext *avctx, struct vpx_image *img)
>      case VPX_IMG_FMT_I44416:
>          avctx->profile = FF_PROFILE_VP9_3;
>          if (img->bit_depth == 10) {
> +#if VPX_IMAGE_ABI_VERSION >= 3
> +            avctx->pix_fmt = avctx->colorspace == AVCOL_SPC_RGB ?
> +                             AV_PIX_FMT_GBRP10LE : AV_PIX_FMT_YUV444P10LE;
> +#else
>              avctx->pix_fmt = AV_PIX_FMT_YUV444P10LE;
> +#endif
>              return 0;
>          } else if (img->bit_depth == 12) {
> +#if VPX_IMAGE_ABI_VERSION >= 3
> +            avctx->pix_fmt = avctx->colorspace == AVCOL_SPC_RGB ?
> +                             AV_PIX_FMT_GBRP12LE : AV_PIX_FMT_YUV444P12LE;
> +#else
>              avctx->pix_fmt = AV_PIX_FMT_YUV444P12LE;
> +#endif
>              return 0;
>          } else {
>              return AVERROR_INVALIDDATA;
> --
> 2.1.2
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


More information about the ffmpeg-devel mailing list