]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/nellymoserdec.c
avcodec/hevcdec: fix stat_coeff save/load for persistent_rice_adaptation_enabled_flag
[ffmpeg] / libavcodec / nellymoserdec.c
index d667d9ce79fc73b243c17d356c12fb561df58d2d..e091ec94bde4721e6e38f811f3a429c9c08b34f0 100644 (file)
@@ -34,6 +34,7 @@
 #include "libavutil/channel_layout.h"
 #include "libavutil/float_dsp.h"
 #include "libavutil/lfg.h"
+#include "libavutil/mem_internal.h"
 #include "libavutil/random_seed.h"
 
 #define BITSTREAM_READER_LE
@@ -128,13 +129,12 @@ static av_cold int decode_init(AVCodecContext * avctx) {
     s->scale_bias = 1.0/(32768*8);
     avctx->sample_fmt = AV_SAMPLE_FMT_FLT;
 
-    /* Generate overlap window */
-    if (!ff_sine_128[127])
-        ff_init_ff_sine_windows(7);
-
     avctx->channels       = 1;
     avctx->channel_layout = AV_CH_LAYOUT_MONO;
 
+    /* Generate overlap window */
+    ff_init_ff_sine_windows(7);
+
     return 0;
 }
 
@@ -195,7 +195,8 @@ AVCodec ff_nellymoser_decoder = {
     .init           = decode_init,
     .close          = decode_end,
     .decode         = decode_tag,
-    .capabilities   = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_PARAM_CHANGE,
+    .capabilities   = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_PARAM_CHANGE | AV_CODEC_CAP_CHANNEL_CONF,
     .sample_fmts    = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLT,
                                                       AV_SAMPLE_FMT_NONE },
+    .caps_internal  = FF_CODEC_CAP_INIT_THREADSAFE,
 };