@ -724,6 +724,9 @@ FF_ENABLE_DEPRECATION_WARNINGS
x4 - > params . i_width = avctx - > width ;
x4 - > params . i_height = avctx - > height ;
# if X264_BUILD >= 153
x4 - > params . i_bitdepth = av_pix_fmt_desc_get ( avctx - > pix_fmt ) - > comp [ 0 ] . depth ;
# endif
av_reduce ( & sw , & sh , avctx - > sample_aspect_ratio . num , avctx - > sample_aspect_ratio . den , 4096 ) ;
x4 - > params . vui . i_sar_width = sw ;
x4 - > params . vui . i_sar_height = sh ;
@ -837,6 +840,24 @@ FF_ENABLE_DEPRECATION_WARNINGS
return 0 ;
}
static const enum AVPixelFormat pix_fmts [ ] = {
AV_PIX_FMT_YUV420P ,
AV_PIX_FMT_YUVJ420P ,
AV_PIX_FMT_YUV422P ,
AV_PIX_FMT_YUVJ422P ,
AV_PIX_FMT_YUV444P ,
AV_PIX_FMT_YUVJ444P ,
AV_PIX_FMT_YUV420P10 ,
AV_PIX_FMT_YUV422P10 ,
AV_PIX_FMT_YUV444P10 ,
AV_PIX_FMT_NV12 ,
AV_PIX_FMT_NV16 ,
AV_PIX_FMT_NV20 ,
# ifdef X264_CSP_NV21
AV_PIX_FMT_NV21 ,
# endif
AV_PIX_FMT_NONE
} ;
static const enum AVPixelFormat pix_fmts_8bit [ ] = {
AV_PIX_FMT_YUV420P ,
AV_PIX_FMT_YUVJ420P ,
@ -874,12 +895,14 @@ static const enum AVPixelFormat pix_fmts_8bit_rgb[] = {
static av_cold void X264_init_static ( AVCodec * codec )
{
if ( x264_bit_depth = = 8 )
if ( X264_BIT_DEPTH = = 8 )
codec - > pix_fmts = pix_fmts_8bit ;
else if ( x264_bit_depth = = 9 )
else if ( X264_BIT_DEPTH = = 9 )
codec - > pix_fmts = pix_fmts_9bit ;
else if ( x264_bit_depth = = 10 )
else if ( X264_BIT_DEPTH = = 10 )
codec - > pix_fmts = pix_fmts_10bit ;
else /* X264_BIT_DEPTH == 0 */
codec - > pix_fmts = pix_fmts ;
}
# define OFFSET(x) offsetof(X264Context, x)