[FFmpeg-devel] [PATCH 08/16] lavc/h264dec: support all color formats in videotoolbox hwaccel

James Almer jamrial at gmail.com
Mon Nov 22 23:00:44 EET 2021


On 11/22/2021 5:53 PM, rcombs wrote:
> ---
>   libavcodec/h264_slice.c | 7 ++++---
>   1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/libavcodec/h264_slice.c b/libavcodec/h264_slice.c
> index 89ea16a57f..476a14d485 100644
> --- a/libavcodec/h264_slice.c
> +++ b/libavcodec/h264_slice.c
> @@ -798,6 +798,10 @@ static enum AVPixelFormat get_pixel_format(H264Context *h, int force_callback)
>       const enum AVPixelFormat *choices = pix_fmts;
>       int i;
>   
> +#if CONFIG_H264_VIDEOTOOLBOX_HWACCEL
> +    *fmt++ = AV_PIX_FMT_VIDEOTOOLBOX;

Does Videotoolbox support 9, 12 and 14 bit h264? Also, I'd prefer if you 
add one of these lines per bitdepth case instead. It's cleaner looking 
and proper.

> +#endif
> +
>       switch (h->ps.sps->bit_depth_luma) {
>       case 9:
>           if (CHROMA444(h)) {
> @@ -872,9 +876,6 @@ static enum AVPixelFormat get_pixel_format(H264Context *h, int force_callback)
>   #endif
>   #if CONFIG_H264_VAAPI_HWACCEL
>               *fmt++ = AV_PIX_FMT_VAAPI;
> -#endif
> -#if CONFIG_H264_VIDEOTOOLBOX_HWACCEL
> -            *fmt++ = AV_PIX_FMT_VIDEOTOOLBOX;
>   #endif
>               if (h->avctx->codec->pix_fmts)
>                   choices = h->avctx->codec->pix_fmts;
> 



More information about the ffmpeg-devel mailing list