diff --git a/libavcodec/frame_thread_encoder.c b/libavcodec/frame_thread_encoder.c index a9c1423502..786599679d 100644 --- a/libavcodec/frame_thread_encoder.c +++ b/libavcodec/frame_thread_encoder.c @@ -133,6 +133,12 @@ int ff_frame_thread_encoder_init(AVCodecContext *avctx, AVDictionary *options){ "or a constant quantizer if you want to use multiple cpu cores\n"); avctx->thread_count = 1; } + if( avctx->thread_count > 1 + && avctx->codec_id == AV_CODEC_ID_MJPEG + && !(avctx->flags & CODEC_FLAG_QSCALE)) + av_log(avctx, AV_LOG_WARNING, + "MJPEG CBR encoding works badly with frame multi-threading, consider " + "using -threads 1, -thread_type slice or a constant quantizer.\n"); if(!avctx->thread_count) { avctx->thread_count = av_cpu_count(); avctx->thread_count = FFMIN(avctx->thread_count, MAX_THREADS);