Commit cfc36666 authored by Carl Eugen Hoyos's avatar Carl Eugen Hoyos

Force automatic thread_count to 1 for cbr mjpeg frame threading.

Constant bit rate mjpeg encoding fails for threads > 1 and frame threading.
parent 72afa381
...@@ -125,6 +125,14 @@ int ff_frame_thread_encoder_init(AVCodecContext *avctx, AVDictionary *options){ ...@@ -125,6 +125,14 @@ int ff_frame_thread_encoder_init(AVCodecContext *avctx, AVDictionary *options){
|| !(avctx->codec->capabilities & CODEC_CAP_INTRA_ONLY)) || !(avctx->codec->capabilities & CODEC_CAP_INTRA_ONLY))
return 0; return 0;
if( !avctx->thread_count
&& avctx->codec_id == AV_CODEC_ID_MJPEG
&& !(avctx->flags & CODEC_FLAG_QSCALE)) {
av_log(avctx, AV_LOG_DEBUG,
"Forcing thread count to 1 for MJPEG encoding, use -thread_type slice "
"or a constant quantizer if you want to use multiple cpu cores\n");
avctx->thread_count = 1;
}
if(!avctx->thread_count) { if(!avctx->thread_count) {
avctx->thread_count = av_cpu_count(); avctx->thread_count = av_cpu_count();
avctx->thread_count = FFMIN(avctx->thread_count, MAX_THREADS); avctx->thread_count = FFMIN(avctx->thread_count, MAX_THREADS);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment