mpegvideo_enc: disable optimized huffman coding with AMV or slice threads
authorRostislav Pehlivanov <atomnuker@gmail.com>
Tue, 4 Apr 2017 09:58:37 +0000 (10:58 +0100)
committerMichael Niedermayer <michael@niedermayer.cc>
Sun, 9 Apr 2017 19:53:31 +0000 (21:53 +0200)
Doesn't work yet with slice threading and won't work with AMV.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavcodec/mpegvideo_enc.c

index 71a858f..db241c8 100644 (file)
@@ -399,6 +399,9 @@ FF_ENABLE_DEPRECATION_WARNINGS
         return AVERROR(EINVAL);
     }
 
+    if (avctx->codec_id == AV_CODEC_ID_AMV || (avctx->active_thread_type & FF_THREAD_SLICE))
+        s->huffman = 0;
+
     if (s->intra_dc_precision > (avctx->codec_id == AV_CODEC_ID_MPEG2VIDEO ? 3 : 0)) {
         av_log(avctx, AV_LOG_ERROR, "intra dc precision too large\n");
         return AVERROR(EINVAL);