diff --git a/plugins/obs-ffmpeg/obs-ffmpeg-output.c b/plugins/obs-ffmpeg/obs-ffmpeg-output.c index b04df3b7abefdaa5e836eadd487f10fa8f5f87b9..e5df0c6c2ce257638f8a82d06342ab0e0a861e3f 100644 --- a/plugins/obs-ffmpeg/obs-ffmpeg-output.c +++ b/plugins/obs-ffmpeg/obs-ffmpeg-output.c @@ -221,8 +221,11 @@ static bool create_video_stream(struct ffmpeg_data *data) data->config.video_encoder)) return false; - closest_format = avcodec_find_best_pix_fmt_of_list( - data->vcodec->pix_fmts, data->config.format, 0, NULL); + closest_format = data->config.format; + if (data->vcodec->pix_fmts) { + closest_format = avcodec_find_best_pix_fmt_of_list( + data->vcodec->pix_fmts, data->config.format, 0, NULL); + } #if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57, 48, 101) context = avcodec_alloc_context3(data->vcodec);