avcodec/proresdec : move dsp init after codec tag check
authorMartin Vignali <martin.vignali@gmail.com>
Sat, 17 Nov 2018 22:33:12 +0000 (23:33 +0100)
committerMartin Vignali <martin.vignali@gmail.com>
Sun, 2 Dec 2018 11:55:20 +0000 (12:55 +0100)
libavcodec/proresdec2.c

index 130a4e3..835df19 100644 (file)
@@ -53,15 +53,6 @@ static av_cold int decode_init(AVCodecContext *avctx)
 
     avctx->bits_per_raw_sample = 10;
 
-    ff_blockdsp_init(&ctx->bdsp, avctx);
-    ff_proresdsp_init(&ctx->prodsp, avctx);
-
-    ff_init_scantable_permutation(idct_permutation,
-                                  ctx->prodsp.idct_permutation_type);
-
-    permute(ctx->progressive_scan, ff_prores_progressive_scan, idct_permutation);
-    permute(ctx->interlaced_scan, ff_prores_interlaced_scan, idct_permutation);
-
     switch (avctx->codec_tag) {
     case MKTAG('a','p','c','o'):
         avctx->profile = FF_PROFILE_PRORES_PROXY;
@@ -86,6 +77,15 @@ static av_cold int decode_init(AVCodecContext *avctx)
         av_log(avctx, AV_LOG_WARNING, "Unknown prores profile %d\n", avctx->codec_tag);
     }
 
+    ff_blockdsp_init(&ctx->bdsp, avctx);
+    ff_proresdsp_init(&ctx->prodsp, avctx);
+
+    ff_init_scantable_permutation(idct_permutation,
+                                  ctx->prodsp.idct_permutation_type);
+
+    permute(ctx->progressive_scan, ff_prores_progressive_scan, idct_permutation);
+    permute(ctx->interlaced_scan, ff_prores_interlaced_scan, idct_permutation);
+
     return 0;
 }