|
@@ -786,8 +786,6 @@ static enum AVPixelFormat get_pixel_format(H264Context *h, int force_callback)
|
|
|
CONFIG_H264_VDPAU_HWACCEL + \
|
|
CONFIG_H264_VDPAU_HWACCEL + \
|
|
|
CONFIG_H264_VULKAN_HWACCEL)
|
|
CONFIG_H264_VULKAN_HWACCEL)
|
|
|
enum AVPixelFormat pix_fmts[HWACCEL_MAX + 2], *fmt = pix_fmts;
|
|
enum AVPixelFormat pix_fmts[HWACCEL_MAX + 2], *fmt = pix_fmts;
|
|
|
- const enum AVPixelFormat *choices = pix_fmts;
|
|
|
|
|
- int i;
|
|
|
|
|
|
|
|
|
|
switch (h->ps.sps->bit_depth_luma) {
|
|
switch (h->ps.sps->bit_depth_luma) {
|
|
|
case 9:
|
|
case 9:
|
|
@@ -888,9 +886,7 @@ static enum AVPixelFormat get_pixel_format(H264Context *h, int force_callback)
|
|
|
#if CONFIG_H264_VAAPI_HWACCEL
|
|
#if CONFIG_H264_VAAPI_HWACCEL
|
|
|
*fmt++ = AV_PIX_FMT_VAAPI;
|
|
*fmt++ = AV_PIX_FMT_VAAPI;
|
|
|
#endif
|
|
#endif
|
|
|
- if (h->avctx->codec->pix_fmts)
|
|
|
|
|
- choices = h->avctx->codec->pix_fmts;
|
|
|
|
|
- else if (h->avctx->color_range == AVCOL_RANGE_JPEG)
|
|
|
|
|
|
|
+ if (h->avctx->color_range == AVCOL_RANGE_JPEG)
|
|
|
*fmt++ = AV_PIX_FMT_YUVJ420P;
|
|
*fmt++ = AV_PIX_FMT_YUVJ420P;
|
|
|
else
|
|
else
|
|
|
*fmt++ = AV_PIX_FMT_YUV420P;
|
|
*fmt++ = AV_PIX_FMT_YUV420P;
|
|
@@ -904,10 +900,10 @@ static enum AVPixelFormat get_pixel_format(H264Context *h, int force_callback)
|
|
|
|
|
|
|
|
*fmt = AV_PIX_FMT_NONE;
|
|
*fmt = AV_PIX_FMT_NONE;
|
|
|
|
|
|
|
|
- for (i=0; choices[i] != AV_PIX_FMT_NONE; i++)
|
|
|
|
|
- if (choices[i] == h->avctx->pix_fmt && !force_callback)
|
|
|
|
|
- return choices[i];
|
|
|
|
|
- return ff_thread_get_format(h->avctx, choices);
|
|
|
|
|
|
|
+ for (int i = 0; pix_fmts[i] != AV_PIX_FMT_NONE; i++)
|
|
|
|
|
+ if (pix_fmts[i] == h->avctx->pix_fmt && !force_callback)
|
|
|
|
|
+ return pix_fmts[i];
|
|
|
|
|
+ return ff_thread_get_format(h->avctx, pix_fmts);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/* export coded and cropped frame dimensions to AVCodecContext */
|
|
/* export coded and cropped frame dimensions to AVCodecContext */
|